Sobes.tech
Middle

Чӣ гуна метавон эмбеддингҳои дархостҳо ва маҳсулотро муқоиса кард, барои ёфтани номзадҳои мувофиқ?

sobes.tech AI

Ҷавоб аз AI

Барои муқоиса кардани вгражданиҳои дархостҳо ва маҳсулотҳо, одатан аз меъёрҳои монандӣ ё масофа дар фазои векторӣ истифода мешавад. Роҳҳои асосӣ:

  • Меҳрии косинус (Cosine Similarity): кунҷи байни ду векторро меомӯзад, дар назар нагирифта, дарозии онҳоро. Бисёр истифода мешавад, зеро хуб ба наздикӣ маъноӣ нишон медиҳад.

  • Масофаи Евклид (Euclidean Distance): масофаи мустақим байни нуқтаҳоро дар фазо меомӯзад.

  • Масофаи Манхэттен (Manhattan Distance): ҷамъи фарқиятҳои абсолютӣ дар ҳар як координата.

Барои ҷустуҷӯи маҳсулоти мувофиқ ба дархост:

  1. Дархост ва маҳсулотҳоро бо ёрии модел (масалан, BERT, Word2Vec) ба вгражданиҳо табдил диҳед.
  2. Меҳрии косинусро байни вгражданиҳои дархост ва ҳар як вграждани маҳсулот ҳисоб кунед.
  3. Маҳсулотҳоро бар асоси монандии камшаванда тартиб диҳед — беҳтаринҳо дар боло хоҳанд буд.

Масалан дар Python бо истифодаи меҳрии косинус:

from sklearn.metrics.pairwise import cosine_similarity
import numpy as np

query_embedding = np.array([[0.1, 0.3, 0.5]])
product_embeddings = np.array([
    [0.2, 0.1, 0.4],
    [0.9, 0.8, 0.7],
    [0.05, 0.3, 0.5]
])

similarities = cosine_similarity(query_embedding, product_embeddings)
# similarities.shape = (1, шумораи_маҳсулот)

# Индекси маҳсулотҳо, ки бар асоси монандӣ тартиб дода шудаанд
sorted_indices = np.argsort(-similarities[0])

print("Маҳсулоти мувофиқ дар тартиби монандӣ:", sorted_indices)

Барои ҷустуҷӯи масштабӣ дар коллекияҳои калон, китобхонаҳо ва индексҳои махсус истифода мешаванд, масалан FAISS ё Annoy.