目錄
1.1 餘弦相似度介紹
如何衡量兩個向量的相似程度?我們用夾角的大小,來衡量向量的相似程度,夾角越小,向量越相似。
- 夾角0度:方向相同,線段重合,表示完全相似
- 夾角90度:方向正交,完全不相似
餘弦曲線圖:
以二維空間爲例,向量a和向量b的餘弦計算如下:
通常,向量是用座標表示,向量a = [x1, y1],向量b = [x2, y2],那麼餘弦的計算形式如下:
推廣到n維向量,假定向量A和向量B是兩個n維向量,記A=[],B=[],那麼餘弦計算如下:
1.2 餘弦相似度舉例
簡單起見,舉個判斷兩個句子的相似度:
句子A:我喜歡看電影,不喜歡看電視劇
句子B:我不喜歡看電影,也不喜歡看電視劇
第一步:分詞
句子A:我/喜歡/看/電影,不/喜歡/看/電視劇
句子B:我/不/喜歡/看/電影,也/不/喜歡/看/電視劇
第二步:列出所有詞
[我,喜歡,看,電影,電視劇,不,也]
第三步:計算詞頻
句子A--->[我:1,喜歡:2,看:2,電影:1,電視劇:1,不:1,也:0]
句子B--->[我:1,喜歡:2,看:2,電影:1,電視劇:1,不:2,也:1]
第四步:向量表示
向量A--->[1, 2, 2, 1, 1, 1, 0]
向量B--->[1, 2, 2, 1, 1, 2, 1]
第五步:計算餘弦相似度
1.3 TF-IDF算法