Middle
Чӣ гуна метавон эмбеддингҳои дархостҳо ва маҳсулотро муқоиса кард, барои ёфтани номзадҳои мувофиқ?
sobes.tech AI
Ҷавоб аз AI
Барои муқоиса кардани вгражданиҳои дархостҳо ва маҳсулотҳо, одатан аз меъёрҳои монандӣ ё масофа дар фазои векторӣ истифода мешавад. Роҳҳои асосӣ:
-
Меҳрии косинус (Cosine Similarity): кунҷи байни ду векторро меомӯзад, дар назар нагирифта, дарозии онҳоро. Бисёр истифода мешавад, зеро хуб ба наздикӣ маъноӣ нишон медиҳад.
-
Масофаи Евклид (Euclidean Distance): масофаи мустақим байни нуқтаҳоро дар фазо меомӯзад.
-
Масофаи Манхэттен (Manhattan Distance): ҷамъи фарқиятҳои абсолютӣ дар ҳар як координата.
Барои ҷустуҷӯи маҳсулоти мувофиқ ба дархост:
- Дархост ва маҳсулотҳоро бо ёрии модел (масалан, BERT, Word2Vec) ба вгражданиҳо табдил диҳед.
- Меҳрии косинусро байни вгражданиҳои дархост ва ҳар як вграждани маҳсулот ҳисоб кунед.
- Маҳсулотҳоро бар асоси монандии камшаванда тартиб диҳед — беҳтаринҳо дар боло хоҳанд буд.
Масалан дар 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.