Aan de slagBegin gratis

Gebruikersgeschiedenis toevoegen aan de aanbevelingsengine

Voor veel aanbevelingsscenario’s, zoals films of aankopen, is één datapunt als basis voor de volgende aanbeveling niet genoeg. In zulke gevallen moet je alle of een deel van de gebruikersgeschiedenis embedden voor nauwkeurigere en relevantere aanbevelingen.

In deze oefening breid je je productaanbevelingssysteem uit zodat het rekening houdt met alle producten die de gebruiker eerder heeft bezocht. Die staan in een lijst met dictionaries genaamd user_history.

De volgende aangepaste functies zijn beschikbaar: create_embeddings(texts), create_product_text(product) en find_n_closest(query_vector, embeddings, n=3). numpy is ook geïmporteerd als np.

Deze oefening maakt deel uit van de cursus

Introductie tot Embeddings met de OpenAI API

Bekijk cursus

Oefeninstructies

  • Combineer de tekstkenmerken voor elk product in user_history, embed de resulterende strings en bereken de gemiddelde embeddings met numpy.
  • Filter products om alle producten te verwijderen die aanwezig zijn in user_history.
  • Combineer de kenmerken voor elk product in products_filtered en embed de resulterende strings.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

# Prepare and embed the user_history, and calculate the mean embeddings
history_texts = [____ for article in user_history]
history_embeddings = ____
mean_history_embeddings = ____

# Filter products to remove any in user_history
products_filtered = ____

# Combine product features and embed the resulting texts
product_texts = ____
product_embeddings = ____

hits = find_n_closest(mean_history_embeddings, product_embeddings)

for hit in hits:
  product = products_filtered[hit['index']]
  print(product['title'])
Code bewerken en uitvoeren