Začněte nyníZačněte zdarma

Klasifikace sentimentu recenzí

Teď, když máš embeddingy spočítané, je čas vypočítat kosinové vzdálenosti a najít nejpodobnější label.

Definuješ funkci find_closest(), která porovná embeddingy jednoho vektoru s více ostatními a vrátí nejmenší vzdálenost spolu s jejím indexem. Pak budeš procházet recenze a pomocí find_closest() najdeš pro každou z nich nejbližší vzdálenost a pomocí indexu extraktuješ klasifikovaný label.

Objekty class_embeddings a review_embeddings z předchozího cvičení máš k dispozici, stejně jako reviews a sentiments.

Toto cvičení je součástí kurzu

Introduction to Embeddings with the OpenAI API

Zobrazit kurz

Pokyny k cvičení

  • Definuj funkci find_closest(), která vrátí vzdálenost a index nejpodobnějšího embeddingu k query_vector.
  • Pomocí find_closest() najdi nejbližší vzdálenost mezi embeddingy každé recenze a class_embeddings.
  • Pomocí 'index' hodnoty closest vyber z sentiments a extrahuj 'label'.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# Define a function to return the minimum distance and its index
def find_closest(query_vector, embeddings):
  distances = []
  for index, embedding in enumerate(embeddings):
    dist = distance.cosine(____, ____)
    distances.append({"distance": dist, "index": index})
  return ____(distances, key=lambda x: x["distance"])

for index, review in enumerate(reviews):
  # Find the closest distance and its index using find_closest()
  closest = ____(review_embeddings[____], ____)
  # Subset sentiments using the index from closest
  label = ____
  print(f'"{review}" was classified as {label}')
Upravit a spustit kód