趣文网,分享全网好句子、好文章!

深度学习在自然语言匹配处理中的应用探讨

时间:2023-11-11 04:58:01

相关推荐

深度学习在自然语言匹配处理中的应用探讨

近年来,深度学习在计算机视觉、语音识别叫等领域取得了突破性的进展,其成功主要得益于其强大的特征表示(知识表示)学习能力。自然语言处理正成为深度学习研究的下一个应用热点,其任务的复杂性和挑战性可能是前所未有的。“深度学习是否可以大幅度提升自然语言处理的精度?是否可以在自然语言处理方面取得同样的成功?”成为大家普遍关心的问题,有许多学者正在全力从事相关研究。

目前自然语言处理面临的挑战主要源于语言的如下特点:(1)语言的多义性和同义性。同一个单词或句子可以表达不同的语义,而同一个语义可以有不同的单词或句子来表达。比如,“欢乐”、“快乐”、“欢喜”和“高兴”等词有着相近的语义,在一定场合可以互相替换,但在用法上又有明显不同。(2)语言的组合性。单词和短语可以组合成句子,表达更复杂的语义。这种组合原则上是遵循语法规范,但也有例外。比如,“打酱油”,尽管“打”和“酱油”分别是语法中的谓语和宾语,即动宾结构,但在网络语言中则代表一个词。(3)语言的灵活性和可扩展性。原则上,自然语言必须遵循语法规范,但是语言又可以突破语法限制,产生新的表示和新的用法。

深度学习比传统的统计学习方法具有更强大的知识表示学习能力。这为自然语言处理的突破带来了新的可能。事实上,深度学习目前已被应用于自然语言处理中几乎所有的任务,如词性标注、语法分析、情感分析、信息检索、自动问答、机器翻译和关系分类等,并取得了一系列鼓舞人心的成果。深度学习用于自然语言处理的优势主要体现在:(1)深度学习将单词表示为语义空间中的向量,可以更准确地描述单词与单词之间的语义相似性;(2)神经网络模型可以比较自然地描述语言中的层次结构、序列结构和组合操作。相关的工具包括卷积深度模型和递归神经网络等;(3)利用神经网络的复杂结构、大规模训练数据以及高性能计算,深度学习可以学习到复杂的自然语言的知识表示,既可以描述规范的一般的语言规律,又可以刻画例外的、特殊的语言现象,从而大幅提高语言处理的精度。

自然语言处理领域的许多任务都可以归结为语言的匹配问题。比如,信息检索可以抽象为查询项与文档的匹配;自动问答可归结为问题与答案的匹配:改述问题则可以归结为两个同义词句的匹配。尽管不同任务对匹配算法的要求不同,但是为自然语言寻找合适的表示方式是所有匹配任务的关键。考虑到深度学习技术强大的特征表示学习能力,近年来不少科研人员纷纷把深度学习用于完成复杂的语言匹配任务。我们习惯称这些结合深度学习的语言匹配技术为“深度匹配学习”。本文主要聚焦于深度学习在自然语言匹配问题中的应用。

在自然语言匹配处理中有六种深度匹配学习模型,分别是动态池化和可伸展递归自动编码方法、深度语义结构模型、卷积深度语义结构模型、主题深度匹配模型、树深度匹配模型和卷积网络深度匹配模型。从匹配任务和待匹配对象的结构出发,这些模型分为任务需要主题(topic)意义上的匹配和任务需要精细结构上的匹配;从匹配对象的基本描述出发,可分为词包(bag-of-words)的模型和句子语序结构的模型。

1. 动态池化和可伸展递归自动编码方法

美国斯坦福大学索赫尔(Socher)等人叫提出了一种基于深度学习的同义词句判定(paraphrase detection)方法。该模型本质上是一种有递归特性的神经网络模型。其训练主要集中在组合操作的参数学习上。这种方法称为可伸展递归自动编码(Unfolding Recursive Auto-Encoder,URAE)。该算法首先对参与匹配的句子进行句法分析,根据所构建的句法树把句子中各个片断(词、短语以及句子)变换为向量表示。由于这些向量表示处在同一个语义空间中,算法可以直接计算两个句子的所有片断之间的匹配关系(相似度),从而得到两个句子之间的匹配相似度矩阵。该矩阵反映了两个句子的匹配关系,其中的每个元素表示两个句子的一个片断对在语义空间里的欧氏距离。考虑到不同句子片断长度不一致,任意两个句子所产生的匹配相似度矩阵的大小不一,因此算法需要进行归一化处理。

为了解决此问题,索赫尔等人提出动态池化(dynamic pooling)技术。动态池化将可变维度的相似度矩阵转换成一个固定维度的相似度矩阵,以归一化后的相似度矩阵作为输入,使基于深度学习的同义词句判定算法通过一个简单的神经网络模型计算出两个句子的最终匹配值。该算法模型的新颖之处在于从词、短语和句子三个层次来表示句子,使得句子表示更加丰富,可以描述更加抽象的内容。该模型在同义词句判定上取得了很好的效果。但是由于此模型依赖于一个给定的句法树,因此其鲁棒性略有不足;而且,其层次性表示方法带来了模型匹配方面的困难。

2. 深度语义结构模型

微软的研究团队对信息检索中的语义匹配进行了研究,其模型主要是将查询项和文档进行匹配,用于相关度判断。该模型包括基于词包的深度语义结构模型(Deep Semantic Strutured Models,DSSM)和基于单词序列的卷积深度语义结构模(Convolutional Deep Semantic Structured Models,C-DSSM)。这两个模型的训练都是基于搜索点击数据。点击数据实际上表示了用户对查询项和文档之间相关度的一种判断。在下面即将介绍的几个模型中,深度语义结构模型是一个相对比较简单的模型,这一方面出于文档搜索中对速度的考虑,另一方面由于基于相关度(relevance)匹配的搜索是相对比较简单的。

DSSM用一个深层神经网络将查询和文档映射为同一个语义空间里的向量,并用二者的内积来表示它们的相关度。考虑到查询和文档的词汇表都比较大,有人采取词哈希(word hashing)技术,把单词分解成关于字母的N-元组,然后利用所有N元组的哈希值来表示单词。例如“good”这个单词可以分解为(#go,goo,ood,od#)四个3-元组,然后利用其哈希值来表示“good"。因为英文中N-元组的数量比单词少得多,利用词哈希技术可以把词汇表的规模从50万降到3万。深层神经网络的作用就是将这个3万维稀疏向量映射为语义空间中的一个128维稠密向量,然后在这个语义空间里进行匹配计算。由于这个模型拥有大量的参数,有人利用大量的搜索日志数据来进行参数训练。其基本想法是调整参数,使得相关的查询与文档在映射后成为相似的向量。与一些传统模型(如BM25)相比,DSSM的搜索效果有显著提升。但是,DSSM并没有利用查询与文档中单词的顺序关系,这会在一定程度上降低模型的性能。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。
显示评论内容(2)
  1. 、  one2024-01-24 01:59、 one[浙江省网友]103.228.31.25
    自然语言匹配处理一直都是一个挑战,期待看到深度学习如何帮助解决这个问题。
    顶30踩0
  2. 我是天空里的一片云2023-12-18 03:28我是天空里的一片云[上海市网友]203.23.192.198
    深度学习在自然语言匹配处理中的应用真的很厉害,希望能看到更多相关的研究成果!
    顶0踩0
相关阅读
深度对话语音行业专家李秀林:十年坚守初心 加入创业公司

深度对话语音行业专家李秀林:十年坚守初心 加入创业公司

我们都知道,这些声音的来源一定不是真人,而是机器

2009-11-17

用深度学习(CNN RNN Attention)解决大规模文本分类问题 - 综述和实践

用深度学习(CNN RNN Attention)解决大规模文本分类问题 - 综述和实践

近来在同时做一个应用深度学习解决淘宝商品的类目预测问题的项目,恰好硕士毕业时论文题目便是文本分类问题,趁此机会总结下文本分类领域特别是应用深度

2010-12-14

从语言学到深度学习NLP 一文概述自然语言处理

从语言学到深度学习NLP 一文概述自然语言处理

这两篇论文都是很好的综述性入门论文,希望详细了解自然语言处理的读者可以进一步阅读这两篇论文

2010-02-15

机器不学习:基于深度学习CNN的短文本相似度计算方案

机器不学习:基于深度学习CNN的短文本相似度计算方案

机器学习深度学习干货栈 www jqbxx com基于CNN模型的短文本相似度的计算方法可以大致分为两类:一类是基于Siamese结构的神经网络模型,先分别学习输入的

2023-01-01