1. 聚能聊>
  2. 话题详情

【开眼界】你听过的最牛的语义匹配的算法是什么?

现在大家天天都在说人工智能~ 智能的第一步就是——理解用户意思。

全文检索算是理解用户意思吗?——不完全是。原因是:全文检索只能做字面的匹配,如果用户输入不准确,则并不能找到答案。

那么都有什么办法来理解用户意思呢?

珺姐不才,只听过组里算法同学给普及的word mover’s distance算法,听起来还是挺高大上的有木有?

The WMD distance measures the dissimilarity between two text documents as the minimum amount of distance that the embedded words of one document need to “travel” to reach the embedded words of another document. 原来句子和句子之间的意思理解是通过travel distance来衡量的。瞬间觉得word还能游动起来有木有!

这比全文检索强大在哪里呢?

请看下面的这张图,“奥巴马”和“总统”这两个词在字面上相差甚远,但是他们的词向量的空间距离却是很接近的。如果使用全文检索,这完全是两个不同的词。

image

大家也来谈谈自己知晓的牛逼的语义匹配的算法吧?一起开眼界!学起来!

参与话题

奖品区域 活动规则 已 结束

  • 奖品一

    云栖定制电脑包 x 2

  • 奖品二

    阿里云代金券 x 1

41个回答

2

舜刀

赞,现在wmd已经有不错的效果,人工智能大力发展下,算法和整套流程(数据,模型训练,效果持续优化等)会更加完善,现在整个行业在人工智能上都开始大力投入,会加速推动人工智能的发展,期待人工智能的发展对我们生活造成的变化~~~

2

北方的郎 已获得云栖定制电脑包 复制链接去分享

以前忘了要做什么项目来着,看过一点WordNet。它是一个覆盖范围宽广的英语词汇语义网。名词,动词,形容词和副词各自被组织成一个同义词的网络,每个同义词集合都代表一个基本的语义概念,并且这些集合之间也由各种关系连接。(一个多义词将出现在它的每个意思的同义词集合中)。不过后来没有用。
刚才用语义匹配+神经网络搜了一下。呵呵,果然没有神经网络做不了的:百度SimNet,一种有监督的神经网络语义匹配模型 。SimNet 在语义表示上沿袭了隐式连续向量表示的方式,但对语义匹配问题在深度学习框架下进行了 End-to-End 的建模,将词语的 Embedding 表示与句篇的语义表示、语义的向量表示与匹配度计算、文本对的匹配度计算与 pair-wise 的有监督学习全部统一在一个整体框架内。在实际应用场景下,海量的用户点击行为数据可以转化大规模的弱标记数据,搭配我们研发的高效并行训练算法,大数据训练的 SimNet 显著超越了主题模型类算法的效果,并首次实现了可完全取代基于字面匹配的策略,而且可以直接建模非相似度类的匹配问题。在网页搜索任务上的初次使用即展现出极大威力,带来了相关性的明显提升。

2

iamadog3333 已获得阿里云代金券 复制链接去分享

语义理解是个非常有前景和挑战性的问题。

我们最近每天会实时抓取全网上的财经新闻、上市公司公告和社交舆论内容,同时对这些财经内容进行NLP处理,识别出这个财经新闻与哪个股票相关,内容的作者对股票的情绪是看空还是看多,提取新闻中的事件,并把这些信息量化,为投资者提供实时数据服务。

主要用了word2vector 文本分类 事件提取等技术。感觉里面的坑还是很多的。要不断调整。

我的一些有道云笔记。http://note.youdao.com/noteshare?id=f4b6aaf60ea8e1578d87ccd7e4251597

2

浮生递归 复制链接去分享

唉,U盘的诱惑力真是太大了。哈。

现在做语义匹配算法的企业还不多吧,算专精行业,并不是随便哪家公司就能进行深入开发应用的。虽然语义匹配算法很重要,将来做为人机交互的数据基础,肯定到处都是。

目前阶段而言,应用更成熟的还是在搜索引擎行业。比如国内的中文分词技术。

中文分词技术属于自然语言处理技术范畴,对于一句话,人可以通过自己的知识来明白哪些是词,哪些不是词,但如何让计算机也能理解?其处理过程就是分词算法。

现有的分词算法可分为三大类:基于字符串匹配的分词方法、基于理解的分词方法和基于统计的分词方法。

1、基于字符串匹配的分词方法
正向最大匹配法(由左到右的方向);
逆向最大匹配法(由右到左的方向);
最少切分(使每一句中切出的词数最小)。

2、基于理解的分词方法.

3、基于统计的分词方法

4、基于规则的分词方法
最小匹配算法
最大匹配算法
逐字匹配算法
神经网络分词算法
联想—回溯法
N-最段路径分词算法

除上面之外,还有基于词频统计的切词法, 基于期望的切词法,有穷多级列举法等。

算法中的难题
有了成熟的分词算法,是否就能容易的解决中文分词的问题呢?事实远非如此。中文是一种十分复杂的语言,让计算机理解中文语言更是困难。在中文分词过程中,有两大难题一直没有完全突破:歧义识别和新词识别。

0

1506800862901700 复制链接去分享

对这个完全不在行

珺姐 回复

嘻嘻 一起学习下~

评论
0

1920830803931993 复制链接去分享

a

铁血伟伟 回复

高深,看不懂,我在努力

评论
1

叶叶580 复制链接去分享

一点小猜测:不同语言的语法不同,表达方式不同,可能所需方式也不同。拿汉语来说,要让机器人“听懂”人话,还要防止提问的输入不准确,可能首先定义主谓宾;针对问题的话,可能得先分清“什么”“怎样”“怎办”“多少”等基本疑问词的含义;然后提炼出问题的重点部分,想想都是非常庞大的工作量。

0

1967900887086215 复制链接去分享

语义匹配算法这个具体意思?

云改进 回复

就是用什么办法能计算出两句话的意思上的相近度

评论
0

1288702161575587 复制链接去分享

@

0

手辨 复制链接去分享

👏👏👏👏👏

0

1233801463304967 复制链接去分享

......

0

1704909304772030 复制链接去分享

人工智能与大数据结合,实现最精确匹配度,算法准确好坏往往决定了速度和广度。

0

1045601160259544 复制链接去分享

长短时记忆(LSTM)

0

业然 复制链接去分享

最简单的就是,简单易懂

0

1122701335429166 复制链接去分享

1

0

1653852306077995 复制链接去分享

在学习中。。。

0

1338700688580411 复制链接去分享

等机器能理解奥巴马就是美国总统的时候人工智能才算真正的到来!

0

1124897943028286 复制链接去分享

不懂

0

1514489121411511 复制链接去分享

不是很理解

0

centoskernel 复制链接去分享

单字词理解语义,和多字词理解差别很大,索引也一样,前提是准确相近,才高效

2