Middle — Senior
Чӣ гуна метавон наздикии косинусиро байни саволҳо ҳисоб кард?
sobes.tech AI
Ҷавоб аз AI
Меъёри мувофиқати косинусӣ, ки миқёри мувофиқати байни ду вектор аст, ки ҳамчун косинуси кунҷи байни онҳо ҳисоб карда мешавад. Барои саволҳо (масалан, матнӣ), аввал бояд ҳар як саволро ҳамчун вектор (embedding) намоиш диҳед, масалан, бо истифода аз моделҳои Word2Vec, BERT ё TF-IDF.
Чӣ гуна ҳисоб кардани мувофиқати косинусӣ:
- Ҳар як саволро ба векторҳои рақамӣ табдил диҳед.
- Косинуси кунҷи байни ду векторро ҳисоб кунед:
[ \text{cosine_similarity}(A, B) = \frac{A \cdot B}{|A| |B|} = \frac{\sum_{i=1}^n A_i B_i}{\sqrt{\sum_{i=1}^n A_i^2} \sqrt{\sum_{i=1}^n B_i^2}} ]
Масалан дар Python бо истифода аз китобхонаи numpy:
import numpy as np
def cosine_similarity(vec1, vec2):
dot_product = np.dot(vec1, vec2)
norm_a = np.linalg.norm(vec1)
norm_b = np.linalg.norm(vec2)
return dot_product / (norm_a * norm_b)
# Масалҳои векторӣ
q1 = np.array([1, 2, 3])
q2 = np.array([4, 5, 6])
similarity = cosine_similarity(q1, q2)
print(f"Меъёри мувофиқати косинусӣ: {similarity}")
Ин тариқ, меъёри мувофиқати косинусӣ нишон медиҳад, ки саволҳо дар чӣ андоза аз рӯи маъно дар фазои embeddingҳо монанданд.