首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何利用深层次学习的NLP功能,如SRL、LSA、POS、NER、实体类型、关系类型等,找到文本的语义相似性?

如何利用深层次学习的NLP功能,如SRL、LSA、POS、NER、实体类型、关系类型等,找到文本的语义相似性?
EN

Data Science用户
提问于 2017-07-18 06:56:52
回答 2查看 452关注 0票数 4

我有类似于下面的文本,我想找出这些文本和意图之间的语义相似性。

( 1)辞职的不同步骤是甚麽?( 1)辞职的程序?( 1)辞职须遵循甚麽程序?( 1)任何公司都有甚麽常见的辞职方案?( 2)辞职后须与谁联络?( 3)我今天确实辞职了。4)如果你再不听话,我就辞职!4)你的粗鲁行为迫使我辞职。5)不同的公司有不同的辞职政策!

为了解决上面的问题,我发现“Quoras模型来处理重复的问题”很有趣。所以我想让我们试一试,但是要做一些小的改变。改变是做二进制分类,让我们做多类分类。因此,我试图对"Quora数据集“进行多类分类。我的意图是用LSTM,CNN模型将每个问题和它们的重复问题分类为一个向量空间的类。如果序列保持不变,LSTM就能工作。但是,正如您所知道的,问题结构可以改变,保持原意不变(或者我们可以将它们称为重复问题。)因此,为了处理这些变化的问题,我尝试了CNN。CNN为一些小数据集工作,但对于大数据集,它变得非常敏感或重叠。

所以我在想,“我能利用NLP和深度学习找到意图和语义关系吗?”

我有POS标签,NER,SRL,LST,实体类型,关系类型等特性。在深度学习中,我如何利用NLP的这些特性来达到最先进的效果?

有一篇论文"什么时候树结构是深入学习表象所必需的?",它使用解析树作为递归神经网络模型的输入。有类似的工作吗?有谁能给我提供本文所用的数据集吗?

EN

回答 2

Data Science用户

发布于 2017-07-19 05:25:40

TL;DR:

将单词表示为单词向量。然后在单词向量中添加额外的维数。在这些额外的维度中,以数字形式包括POS、NER等特征。

更长版本:

假设您有一个word2vec/Glove模型,每个单词都由一个100维向量表示。此外,您有诸如POS,NER等功能的每个单词。不要用仅仅100个维度来表示每个单词,而是用100 + n维度来表示它,并用nlp特性填充这些n插槽。

这将给向量一个额外的意义,你已经手动定义了。

建议

您可以从使用Doc2Vec/Sent2Vec等其他模型中获益,它可以将整个句子表示为向量。使用这些向量,您可以查询句子的相似性。

因此,假设您已经对您的数据进行了培训,只需查询:

model.most_similar_cosmul(SENT_42)

在哪里,SENT_42代表“我辞职后需要联系谁?",你会得到一个类似的句子列表。

我建议您在python中使用根西姆氏doc2vec模型。

票数 1
EN

Data Science用户

发布于 2017-07-18 18:23:11

“字搬运工距离”算法是一种很有前途的算法。它将文档相似度看作是词嵌入向量之间的一个优化问题。我们的目标是尽量减少单词向量之间的“旅行”成本。考虑到词向量中固有的语义编码,它可以对意图和意义的各个方面进行建模。

字移器距离(WMD)的实现相对简单。然而,由于它所做的比较次数,它在计算上是昂贵的。

大规模毁灭性武器完全忽略POS、NER、解析树和所有其他相关的NLP技术。然而,这些限制使其更容易应用,限制了它可以建模的语言的属性。

票数 0
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/20511

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档