Creare consigli personalizzati sui film


In questo tutorial utilizzeremo Set di dati Movielens da dimostrare come caricare il catalogo dei prodotti e gli eventi utente in Vertex AI Search for Retail e addestra un modello di suggerimento personalizzato sui prodotti. Set di dati Movielens contiene un catalogo di film (prodotti) e valutazioni di film degli utenti (eventi utente).

Tratteremo ogni valutazione positiva dei film (valutazione >= 4) come una visualizzazione di pagina del prodotto . Addestreremo un modello di consigli di tipo Altri film che potrebbero piacerti che farà consigli di film in base a qualsiasi utente o a un film di riferimento nel nostro set di dati.

Tempo stimato:

  • Primi passaggi per iniziare l'addestramento del modello: circa 1,5 ore.
  • In attesa dell'addestramento del modello: circa 2 giorni.
  • Valutazione delle previsioni del modello e pulizia: circa 30 minuti.

Obiettivi

  • Scopri come importare i dati di prodotti ed eventi utente da BigQuery in Vertex AI Search per il retail.
  • Addestra e valuta i modelli di suggerimenti.

Costi

Questo tutorial utilizza componenti fatturabili di Google Cloud, tra cui:

  • Cloud Storage
  • BigQuery
  • Vertex AI Search per il retail

Per ulteriori informazioni sui costi di Cloud Storage, consulta Prezzi di Cloud Storage.

Per ulteriori informazioni sui costi di BigQuery, consulta Prezzi di BigQuery.

Per saperne di più sui costi di Vertex AI Search per il retail, consulta la pagina Prezzi di Vertex AI Search per il retail.

Prima di iniziare

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Make sure that billing is enabled for your Google Cloud project.

Prepara il set di dati

Aperto Console Google Cloud, seleziona il tuo progetto Google Cloud. Prendi nota dell'ID progetto nella scheda Informazioni sul progetto nella pagina della dashboard. Ti servirà l'ID progetto per i passaggi successivi. Quindi, fai clic sul pulsante Attiva Cloud Shell. nella parte superiore della console.

Cloud Shell

All'interno di un nuovo frame nella parte inferiore della console Google Cloud si apre una sessione di Cloud Shell e viene visualizzato un prompt della riga di comando.

Importa il set di dati

  1. Utilizzando Cloud Shell, scarica e decomprimi il set di dati di origine:

    wget https://files.grouplens.org/datasets/movielens/ml-latest.zip
    unzip ml-latest.zip
    
  2. Crea un bucket Cloud Storage e carica i dati al suo interno:

    gcloud storage buckets create gs://PROJECT_ID-movielens-data
    gcloud storage cp ml-latest/movies.csv ml-latest/ratings.csv \
      gs://PROJECT_ID-movielens-data
    
  3. Crea un set di dati BigQuery:

    bq mk movielens
    
  4. Carica movies.csv in una nuova tabella BigQuery per i filmati:

    bq load --skip_leading_rows=1 movielens.movies \
      gs://PROJECT_ID-movielens-data/movies.csv \
      movieId:integer,title,genres
    
  5. Carica ratings.csv in una nuova tabella BigQuery delle valutazioni:

    bq load --skip_leading_rows=1 movielens.ratings \
      gs://PROJECT_ID-movielens-data/ratings.csv \
      userId:integer,movieId:integer,rating:float,time:timestamp
    

Crea le viste BigQuery

  1. Crea una visualizzazione che converte la tabella dei film nel schema del catalogo dei prodotti di vendita al dettaglio:

    bq mk --project_id=PROJECT_ID \
     --use_legacy_sql=false \
     --view '
     SELECT
       CAST(movieId AS string) AS id,
       SUBSTR(title, 0, 128) AS title,
       SPLIT(genres, "|") AS categories
     FROM `PROJECT_ID.movielens.movies`' \
    movielens.products
    

    Ora la nuova vista ha lo schema previsto da Vertex AI Search for Retail. Poi scegli BIG DATA -> BigQuery dalla barra laterale sinistra. Quindi, dalla barra di esplorazione a sinistra, espandi il nome del progetto e seleziona movielens -> products per aprire la pagina di query per questa vista.

    Visualizzazione Prodotti

  2. Ora convertiamo le valutazioni dei film in eventi utente. Ecco cosa:

    • Ignora le valutazioni negative dei film (<4)
    • Tratta ogni valutazione positiva come un evento di visualizzazione della pagina del prodotto (detail-page-view)
    • Ridimensiona la sequenza temporale di Movielens negli ultimi 90 giorni. Lo facciamo per due motivi:
      • Vertex AI Search for Retail richiede che gli eventi utente non risalgano a prima del 2015. Movielens le valutazioni risalgono al 1995.
      • Vertex AI Search for Retail utilizza gli eventi utente degli ultimi 90 giorni per soddisfare le richieste di previsione per un utente. Ogni utente risulterà avere eventi recenti quando facciamo previsioni per qualsiasi utente in un secondo momento.

    Crea una vista BigQuery. Il comando seguente utilizza una query SQL che soddisfano i requisiti di conversione indicati sopra.

    bq mk --project_id=PROJECT_ID \
     --use_legacy_sql=false \
     --view '
     WITH t AS (
       SELECT
         MIN(UNIX_SECONDS(time)) AS old_start,
         MAX(UNIX_SECONDS(time)) AS old_end,
         UNIX_SECONDS(TIMESTAMP_SUB(
           CURRENT_TIMESTAMP(), INTERVAL 90 DAY)) AS new_start,
         UNIX_SECONDS(CURRENT_TIMESTAMP()) AS new_end
       FROM `PROJECT_ID.movielens.ratings`)
     SELECT
       CAST(userId AS STRING) AS visitorId,
       "detail-page-view" AS eventType,
       FORMAT_TIMESTAMP(
         "%Y-%m-%dT%X%Ez",
         TIMESTAMP_SECONDS(CAST(
           (t.new_start + (UNIX_SECONDS(time) - t.old_start) *
             (t.new_end - t.new_start) / (t.old_end - t.old_start))
         AS int64))) AS eventTime,
       [STRUCT(STRUCT(movieId AS id) AS product)] AS productDetails,
     FROM `PROJECT_ID.movielens.ratings`, t
     WHERE rating >= 4' \
    movielens.user_events
    

Importare il catalogo dei prodotti e gli eventi utente

Ora è tutto pronto per importare il catalogo dei prodotti e i dati sugli eventi utente in Vertex AI Search for Retail.

  1. Abilita l'API Vertex AI Search for Retail per il tuo progetto Google Cloud.

    ABILITA L'API

  2. Fai clic su Inizia.

  3. Vai alla scheda Dati > nella console Search for Retail.

    Vai alla pagina Dati

  4. Fai clic su Importa.

Importa il catalogo dei prodotti

  1. Compila il modulo per importare i prodotti dalla visualizzazione BigQuery creato sopra:

    • Seleziona il tipo di importazione: Catalogo dei prodotti.
    • Seleziona il nome del ramo predefinito.
    • Seleziona l'origine dei dati: BigQuery.
    • Seleziona lo schema dei dati: Schema dei prodotti retail.
    • Inserisci il nome della visualizzazione BigQuery dei prodotti che hai creato sopra (PROJECT_ID.movielens.products).

  2. Fai clic su Importa.

  3. Attendi che siano stati importati tutti i prodotti. L'operazione dovrebbe richiedere 5-10 minuti.

    Puoi controllare lo stato dell'operazione di importazione nell'attività di importazione. Quando L'importazione è completata, lo stato dell'operazione di importazione diventa Riuscito.

    Attività di importazione prodotti

Importa gli eventi utente

  1. Importa la vista BigQuery user_events:

    • Seleziona il tipo di importazione: Eventi utente.
    • Seleziona l'origine dei dati: BigQuery.
    • Seleziona lo schema dei dati: Schema eventi utente retail.
    • Inserisci il nome della vista BigQuery user_events che hai creato sopra.
  2. Fai clic su Importa.

  3. Attendi che sia stato importato almeno un milione di eventi prima di andare al passaggio successivo, in modo da soddisfare i requisiti dei dati per l'addestramento di un nuovo modello.

    Puoi controllare lo stato dell'operazione nell'attività di importazione. Il processo richiede per il completamento dell'operazione.

    Attività di importazione eventi

Addestra e valuta i modelli di suggerimenti

Creare un modello di suggerimenti

  1. Vai alla pagina Modelli nella console Ricerca per la vendita al dettaglio.

    Vai alla pagina Modelli

  2. Fai clic su Crea modello:

    • Assegna un nome al modello.
    • Seleziona Altri che potrebbero piacerti come tipo di modello.
    • Scegli Percentuale di clic (CTR) come scopo commerciale.
  3. Fai clic su Crea.

    Crea modello

    Viene avviato l'addestramento del nuovo modello.

    Modello creato

Crea una configurazione di pubblicazione

  1. Vai alla pagina Configurazioni di pubblicazione nella console Ricerca per la vendita al dettaglio.

    Vai alla pagina Configurazioni di pubblicazione

  2. Fai clic su Crea configurazione di pubblicazione:

    • Seleziona Consiglio.
    • Assegna un nome alla configurazione di pubblicazione.
    • Seleziona il modello che hai creato.
  3. Fai clic su Crea.

Attendi che il modello sia "Pronto per l'esecuzione di query"

Sono necessari circa due giorni per l'addestramento del modello e la sua preparazione alle query.

Per visualizzare lo stato, fai clic sulla configurazione di pubblicazione creata nella Pagina Configurazioni di pubblicazione.

Il campo Modello pronto per ricevere query indica al termine del processo.

Visualizza un'anteprima dei suggerimenti

Quando il modello è pronto per ricevere query:

  1. Vai alla pagina Configurazioni di pubblicazione nella console di Search for Retail.

    Vai alla pagina Configurazioni di pubblicazione
  2. Fai clic sul nome della configurazione di pubblicazione per passare alla relativa pagina dei dettagli.
  3. Fai clic sulla scheda *Valuta.
  4. Inserisci un ID film di riferimento, ad esempio 4993 per "Il Signore degli Anelli: La Compagnia dell'Anello (2001)".

    Inserisci l&#39;ID

  5. Fai clic su Anteprima della previsione per visualizzare l'elenco degli elementi consigliati a destra della pagina.

Esegui la pulizia

Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questo tutorial, elimina il progetto che contiene le risorse oppure mantieni il progetto ed elimina le singole risorse.

Elimina il progetto

  1. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. In the project list, select the project that you want to delete, and then click Delete.
  3. In the dialog, type the project ID, and then click Shut down to delete the project.

Elimina singole risorse

  1. Vai alla pagina Configurazioni di pubblicazione ed elimina la configurazione di pubblicazione che hai scelto. è stato creato.

  2. Vai alla pagina Modelli ed elimina il modello.

  3. Elimina il set di dati BigQuery in Cloud Shell:

    bq rm --recursive --dataset movielens
    
  4. Elimina il bucket Cloud Storage e i relativi contenuti:

    gcloud storage rm gs://PROJECT_ID-movielens-data --recursive
    

Passaggi successivi