Hinzufügen der Benutzerhistorie zur Empfehlungsmaschine
Für viele Empfehlungsfälle, wie z.B. Film- oder Kaufempfehlungen, reicht es nicht aus, die nächste Empfehlung auf einen Datenpunkt zu stützen. In diesen Fällen musst du den gesamten oder einen Teil des Verlaufs der Nutzerin oder des Nutzers einbetten, um genauere und relevante Empfehlungen zu erhalten.
In dieser Übung wirst du dein Produktempfehlungssystem so erweitern, dass es alle Produkte berücksichtigt, die der Nutzer zuvor besucht hat und die in einer Liste von Wörterbüchern namens user_history
gespeichert sind.
Die folgenden benutzerdefinierten Funktionen stehen dir zur Verfügung: create_embeddings(texts)
, create_product_text(product)
, und find_n_closest(query_vector, embeddings, n=3)
. numpy
wurde auch als np
importiert.
Diese Übung ist Teil des Kurses
Einführung in Embeddings mit der OpenAI API
Anleitung zur Übung
- Kombiniere die Textmerkmale für jedes Produkt in
user_history
, bette die resultierenden Zeichenketten ein und berechne die mittleren Einbettungen mitnumpy
. - Filter
products
um alle Produkte zu entfernen, die inuser_history
enthalten sind. - Kombiniere die Merkmale für jedes Produkt in
products_filtered
und bette die resultierenden Strings ein.
Interaktive Übung zum Anfassen
Probieren Sie diese Übung aus, indem Sie diesen Beispielcode ausführen.
# 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'])