Open zengbin93 opened 6 years ago
一般来说,对于非任务导向型对话系统,目前用的主要是两种主要方法:
在当前Seq2Seq对话系统中,一个具有挑战性的问题是,它们倾向于产生无关紧要的或不明确的、普通的、几乎没有意义的回复,而这些回复常常涉及到一些诸如“I don't know”,“I am OK”这样的无意义回复。
解决这类问题的一个很有效的方法是找到并设置一个更好的目标函数。除此之外,解决此类问题的一个方法是增加模型的复杂度。下图这篇论文《Building End-To-End Dialogue Systems Using Generative Hierarchical Neural Network Models》使用了 latent variable 来解决无意义回复这个问题。
记忆网络(Memory Network)是一种以知识库处理问题的经典方法。因此,它非常直接的别用于在对话生成中。实际研究表明,所提出的模型能够通过参考知识库中的事实来生成对问题的自然和正确答案。
将生成和检索方法结合起来能对系统性能起到显著的提升作用。基于检索的系统通常给出精确但是较为生硬的答案,而基于生成的系统则倾向于给出流畅但却是毫无意义的回答。
https://arxiv.org/abs/1805.11762 |
首先将对话过程中每一轮的用户的话,系统中检索到的结果,系统的回复输入到一个双向LSTM中,并取结果中的LSTM最终输出、max-pooling(将输出向量中每一维最大的拼接起来),Average-pooling(输出向量每一维的平均),attention(每一维按照计算得到的attention加权)等方式组成最后的输出向量,判别最后的结果。
基础的LSTMs和GRUs算法加上一些启发式方法就能得到和那些state of the art方法相近的准确性。
小明在哪出生的? - 查询 “小明” 的 “出生地” 属性。
作者把简单QA问题分解成四个子任务:1)实体检测、2)实体连接、3)关系预测、4)证据整合。
在神经网络技术出现之前,CRF是序列标注问题的最佳(state of the art)模型。
句子分类(sentence classification)的特征集构建的两种方法: 1、unigrams和bigrams的tf-idf值;2)词向量+关系词 在第2种方法中,首先将句子中的所有词向量进行平均,然后与one-hot编码的top 300个高频关系词进行结合。这种杂交表达方法的好处是能够将词向量捕捉语义相似性的能力和one-hot向量的强区分能力结合。
数据集:SIMPLEQUESTIONS;包含样本数量:75.9k/10.8k/21.7k - training/validation/testing
英文 | 中文 |
---|---|
domain adaptation algorithms | 领域适应算法 |
reinforcement learning | 强化学习 |
研究半监督QA方法,提出来一个新的框架:Generative Domain-Adaptive Nets
主要思路:训练一个generative model在无标签文本上生成questions,然后和人们提出的问题组合在一起进行训练。
作者开发了一个基于强化学习的领域适应算法来降低模型生成的数据与人类生成的数据分布之间的差异。
作者使用seq-to-seq框架训练机器学会对话,基本模式是,根据一个会话中的前一句或几句话来预测下一句话。
seq2seq模型可以用于机器翻译、问答、对话系统,并且不需要做太多的调整。
seq-to-seq框架基于RNN,每次读入输入句子的一个token,并预测输出句子的一个token。
中英对照
英文 | 中文 |
---|---|
statistical machine translation(SMT) | 统计机器翻译 |
semi-supervised graph learning approach | 半监督的图学习方法 |
自然语言处理(Natural Language Processing, NLP)非常有意思!互联网上最不缺乏的就是文本数据了,如何处理这些数据来获取有价值的信息,这是一个非常值得探索的领域。
在这个Issues下面,我主要记录一些阅读过还不错的文献,做点摘记。