600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > NLP基础 - 计算文本的相似度

NLP基础 - 计算文本的相似度

时间:2020-06-30 07:42:11

相关推荐

NLP基础 - 计算文本的相似度

NLP基础 - 计算文本的相似度

一、计算文本的相似度简介二、举例

一、计算文本的相似度简介

计算两个文本间的相似度在NLP领域中的应用非常广,包括:搜索引擎、问答系统、聊天机器人、文本分类等。

计算两个文本之间(我们用向量s1、s2来表示)的相似度有很多种方法,这里主要介绍两种方法**“欧式距离”和“余弦相似度”**。(这里假设向量s1 = (x1,x2,x3)、s2 = (y1,y2,y3))

欧式距离是指在N维空间中两个点之间的真实距离,或者向量的自然长度(即该点到原点的距离)。“两个向量间”距离越小,相似度越大;距离越大,相似度越小。公式:

但是,欧氏距离有一个缺点,即“没有考虑向量的方向”;而余弦相似度“即考虑向量的方向,又考虑向量的大小”

余弦相似度是指在一个向量空间中,将两个向量夹角间的余弦值作为衡量两个个体之间差异的大小。“两个向量间”余弦值越接近1(夹角趋于0),相似度越大余弦值越接近于0(夹角趋于90度),相似度越小。公式:

二、举例

(注:这里的向量采用词频统计的方式)

词典为:[我们,又,去,爬山,今天,你们,昨天,跑步]

s1: “我们 今天 去 爬山” = [1,0,1,1,1,0,0,0]

s2: “你们 昨天 跑步” = [0,0,0,0,0,1,1,1]

s3: “你们 又 去 爬山 又 去 跑步” = [0,2,2,1,0,1,0,1]

欧式距离计算: 余弦相似度计算:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。