对NLP的一些新认识

  其实这是老板让上交的一份总结,贴出来,欢迎朋友们批评指正。

  

最近看了一部分关于NLP的几篇论文,其中大部分为神经网络实现,

从基本的HMM算法实现,到LSTM实现,有很多方法可以用来处理NLP任务中的阅读、QA或者记忆功能。另外,Facebook给出了20个NLP任务,也有一些公认的测试数据集。目前很多网络的改进和优化,以及各个LSTM变种的目标都是去完成这20个任务。

目前看完的论文的各种做法中:

1)         基于门函数控制的LSTM处理,属于网络变种,

2)         对序列化后读入的每一个词进行答案分析,最终得出分值比较高的答案,根据词序列,每读入一个词,结合问题序列分析一次答案,

3)         使用外部记忆模块,根据测试结果,将记忆模块分块分级,记忆效果更好,能有效加速查询,

4)         有些使用RNN+DNN组合网络的方法,能够实现较好的效果,

5)         相对于其他变种,觉得GRU的效果更好,或者说他结合了门控制函数,用于控制信息记忆与遗忘,这种机制比较好,

6)         也有些方法中,引入了知识图谱,作为预处理信息,但是这里,在实际应用中如何解决知识图谱的自动构建和更新,以及知识冲突时的规避原则等,都没有解决方案,

7)         也有方案中,自定义规则,抽取简单句问题中的几种问题类型,进行分门别类,但是面对多级问题时规则一点儿作用没有,或者说需要完整的规则,几乎不可能实现,

8)         在网络中引入聚焦模式的话,能够根据输入序列使得与问题相关的部分序列更加突出,也就相当于划重点的含义,

9)         有的引入大规模记忆模型,但是觉得模型应该是有网络可以直接参考的短期记忆,也应该有大规模的长期记忆,

10)     Facebook团队设计的端对端记忆网络模型中,构建了答案字典,可以用阈值限定精确匹配的标准,

11)     新的有效模型是循环聚焦模型,RNN+attention机制,

12)     有的使用了POS(part of speech)对输入语句进行语义解析,这个很难,但是具体效果上,或者从长期发展上看,不好说。目前已经有了较为准确进行语义解构的平台或者API,

  一家之言,认识还不成熟,目前禁止转载,

原文地址:https://www.cnblogs.com/1394htw/p/5543691.html