matlab源代码 语义相似度计算,如何计算两个句子之间的相似度(句法和语义)...
我应该每次取两个句子并计算它们是否相似。我的意思是,在语法和语义上都是这样。如何计算两个句子之间的相似度(句法和语义)
INPUT1:奥巴马签署法律。奥巴马签署了一项新法律。
INPUT2: 总线停在这里。 车辆停在这里。
INPUT3:纽约的火灾。 纽约被烧毁。
INPUT4:在纽约的火灾。在纽约大火中死亡50人。
我不想用本体树作为灵魂。我写了一个代码来计算句子之间Levenshtein distance(LD),然后决定是否第二个句子:
可以忽略不计(INPUT1和2),
应更换的第一句话(INPUT 3),或
与第一句(INPUT4)一起存储。
我对代码不满意,因为LD只计算语法级别(还有其他什么方法?)。语义如何融入(比如公交车就像是一辆车?)。
的代码放在这里:
%# As the difference is computed, a decision is made on the new event
%# (string 2) to be ignored, to replace existing event (string 1) or to be
%# stored separately. The higher the LD metric, the higher the difference
%# between two strings. Of course, lower difference indices either identical
%# or similar events. However, the higher difference indicates the new event
%# as a fresh event.
%#.........................................................................
%# Calculating the LD between two strings of events.
%#.........................................................................
L1=length(str1)+1;
L2=length(str2)+1;
L=zeros(L1,L2); %# Initializing the new length.
g=+1; %# just constant
m=+0; %# match is cheaper, we seek to minimize
d=+1; %# not-a-match is more costly.
% do BC's
L(:,1)=([0:L1-1]*g)';
L(1,:)=[0:L2-1]*g;
m4=0; %# loop invariant
%# Calculating required edits.
for idx=2:L1;
for idy=2:L2
if(str1(idx-1)==str2(idy-1))
score=m;
else
score=d;
end
m1=L(idx-1,idy-1) + score;
m2=L(idx-1,idy) + g;
m3=L(idx,idy-1) + g;
L(idx,idy)=min(m1,min(m2,m3)); % only minimum edits allowed.
end
end
%# The LD between two strings.
D=L(L1,L2);
%#....................................................................
%# Making decision on what to do with the new event (string 2).
%#...................................................................
if (D<=4) %# Distance is so less that string 2 seems identical to string 1.
store=str1; %# Hence string 2 is ignored. String 1 remains stored.
elseif (D>=5 && D<=15) %# Distance is larger to be identical but not enough to
%# make string 2 an individual event.
store= str2; %# String 2 is somewhat similar to string 1.
%# So, string 1 is replaced with string 2 and stored.
else
%# For all other distances, string 2 is stored along with string 1.
store={str1; str2};
end
任何帮助表示赞赏。
2010-09-07
Tinglin
+0
“语义上”。没有简单的文本书算法。自然语言(特别是英语)是一个非常复杂而反复无常的野兽。 –
2010-09-07 22:16:49
+0
@Amro:“'#'”使它们变灰,因为这里的注释是SO? –
2010-09-14 08:41:33
+0
@Lazer:是的,它的眼睛更容易..我希望StackOverflow引入了包含代码块的功能,如:'...',以便为该特定语言正确突出显示 –
2010-09-14 15:54:46
matlab源代码 语义相似度计算,如何计算两个句子之间的相似度(句法和语义)...相关推荐
- python 句子相似度 库_利用python语句的word2vec查找两个句子之间的相似度
我想用word2vectors计算两个句子之间的相似度,我试图得到一个句子向量的向量,这样我就可以计算出一个句子向量的平均值来找到余弦相似度.我试过这个代码,但它不起作用.它给出的输出是带有一的句子向 ...
- python 两个word文档之间的相似度_如何用 word2vec 计算两个句子之间的相似度?
现在是2018年7月,在这里总结这个问题下已有的答案,并补充一些2017年以来这方面研究的新进展. 从大类上分,计算句子相似度的方法可以分为两类: 1)无监督的方法,即不使用额外的标注数据,常用的方法 ...
- jaccard相似度_如何计算两个字符串之间的文本相似度?
推荐阅读: 面试BAT 却被小小字符串秒杀?这13道题帮你一举击败字符串算法题 字节跳动秋招面经:后端开发工程师,已拿意向书 前言 平时的编码中,我们经常需要判断两个文本的相似性,不管是用来做文本纠错 ...
- 如何计算两个文档的相似度(一)
下面的内容转自我爱自然语言处理博客,感谢博主,学到很多东西. 原文链接:http://www.52nlp.cn/%E5%A6%82%E4%BD%95%E8%AE%A1%E7%AE%97%E4%B8%A ...
- 如何计算两个字符串之间的文本相似度?
如何计算两个字符串之间的文本相似度? 前言 平时的编码中,我们经常需要判断两个文本的相似性,不管是用来做文本纠错或者去重等等,那么我们应该以什么维度来判断相似性呢?这些算法又怎么实现呢?这篇文章对常见 ...
- 如何利用计算机计算天数,计算机如何计算两个日期之间的天数
计算机是如何计算两个日期之间的天数的,这个问题看起来好像很简单,但是仔细一想,好像还没那么简单,月与月之间天数不一样,平年和闰年也会影响天数. 举个例子: 2017年2月1日-2017年6月1日中间有 ...
- ITK:计算两个图像之间的均方度量值
ITK:计算两个图像之间的均方度量值 内容提要 输出结果 C++实现代码 内容提要 计算两个图像之间的均方根度量. 输出结果 来自2张图像的数据通过输出传递: [-10, -10]: 23101.7 ...
- 计算时间差 html,javascript如何计算两个日期之间的天数差?
javascript如何计算两个日期之间的天数差?下面本篇文章就来给大家介绍一下使用javascript计算两个日期之间的天数差,希望对大家有所帮助. 在javascript中计算两个日期之间的天数差 ...
- Python 求解向量夹角:如何计算两个向量之间的夹角?
Python 求解向量夹角:如何计算两个向量之间的夹角? 向量夹角是计算机视觉和人工智能等多个领域中常用的数学概念,它可以用于判断两个向量之间的相似度和相关性.在 Python 程序中,我们可以使用 ...
最新文章
- 人工智能在未来将要经历的七个阶段
- MathType公式行距设置的方法
- 开发日记-20190703 关键词 读书笔记《Linux 系统管理技术手册(第二版)》DAY 9
- Codeforces Round #337 (Div. 2) C. Harmony Analysis
- CodeLite+TDM-GCC调试C++程序,断点无效问题
- 【HTML5CSS3进阶学习01】气泡组件的实现
- 每天一个Linux命令(3):ls命令
- 【数据治理】数据治理工具-元数据管理
- 红帽linux免费下载链接,redhat linux 下载大全 完全整理
- 设置nextcloud上传文件的大小
- 华为HG8240F光猫破解
- TCP/IP协议卷学习---基础部分(十六 BOOTP)
- 微电影|小白创作微电影的辛酸
- VS Code 呈现缩进参考线以及语法高亮改变
- WordPress采集插件:QQWorld收藏家豪华版
- SQL如何删除所有字段都相同的重复数据?
- 汽车软件测试的挑战-2022
- Docker常用的命令记录
- Python极简讲义——一本书入门数据分析与机器学习(序言)
- CTF pwn/re手在学习过程中的零碎操作积累
热门文章
- 牛客16589 机器翻译
- 【剑指offer】面试题52:两个链表的第一个公共节点(java)
- Leetcode--188. 买卖股票的最佳时机Ⅳ
- 央视曝光紫砂锅名单_大家看今天中午《每周质量报告》没,美的牌 紫砂锅含有剧毒。家里有这牌子...
- python代数式的表达方式_关于python字典类型最疯狂的表达方式
- python google drive api_使用google-drive-api python获取文件的链接
- 一篇文章搞懂数据仓库:常用ETL工具、方法
- wireshark、tcpdump、dsniff、Ettercap、NetStumbler、netsniff-ng
- Replace Type Code with Class(以类取代类型码)
- android 文本倒影,android案例---图片处理倒影效果