- 문서의 유사도
- 주로 문서들 간에 동일한 단어 또는 비슷한 단어가 얼마나 공통적으로 많이 사용되었는지에 의존
1. 코사인 유사도 Cosine Similarity
: 두 벡터 간의 코사인 각도를 이용하여 구할 수 있는 두 벡터의 유사도
- $similarity=cos(Θ)=\frac{A⋅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}}$
- 예시
from sklearn.feature_extraction.text import IfidfVectorizer
from sklearn.metrics.pairwise import cosine_similarity
2. 유클리드 거리 Euclidean distance
- $\sqrt{(q_{1}-p_{1})^{2}+(q_{2}-p_{2})^{2}+\ ...\ +(q_{n}-p_{n})^{2}}=\sqrt{\sum_{i=1}^{n}(q_{i}-p_{i})^{2}}$
3. 자카드 유사도 Jaccard similarity
- $J(A,B)=\frac{|A∩B|}{|A∪B|}=\frac{|A∩B|}{|A|+|B|-|A∩B|}$