计算文本间相识度的算法

1. jarcard距离

公式:有字符串A和字符串B,A和B所含字符的交集/A和B所含字符的并集,就是两句话的相识度。

2. 编辑距离

公式:有字符串A和B, 字符串A需要变成字符串B需要使用的编辑的步数N,编辑的方式可以是增加,删除, 字符串A和B中的最大的字符长度为L, 那么两句话的相识度为:1 - N/L

3. 将语句装换成句向量,通过计算向量间的距离来计算相识度。

步骤:1.分词处理

           2.去停词处理

           3.使用gensim,将词转成词向量

           4.将词向量转成句向量

           5.对向量X进行hash值处理,(X*W+B)/S,将其存在数组中,若存在相同位置的字符串通过链表存储,以上是待匹配的字符串的存储

           6.将待匹配的字符串也经过上面的步骤得到hash值,索引数组中的位置,若该位置有多个字符串,可在再通过欧式距离求相似度。若不存在,可找相邻位置上的字符串。

将词向量转句向量的方法:

1. 分词累加厚求平均值的方式

2. 使用tf-idf做加权平均

3. 使用词移距离,计算一个字符串中一个词到另一个字符串中所有词的距离之和,可以使用if-idf作为权重

4. 使用seq2seq模型来生成句向量

使用中间上下文C,作为句向量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值