广东手机网站制作电话wordpress支持手机版吗
广东手机网站制作电话,wordpress支持手机版吗,做移动网站优化快速排名软件,wordpress招商加盟主题摘要#xff1a; 小蚂蚁说#xff1a; 随着深度学习的快速发展#xff0c;以及在图像、语音领域取得的不错成果#xff0c;基于深度学习的自然语言处理技术也日益受到人们的关注。计算机是怎么理解人类的语言的呢#xff1f; 传统机器学习的应用#xff0c;常常是利用上述…摘要 小蚂蚁说 随着深度学习的快速发展以及在图像、语音领域取得的不错成果基于深度学习的自然语言处理技术也日益受到人们的关注。计算机是怎么理解人类的语言的呢 传统机器学习的应用常常是利用上述人工总结的文本特征但往往会遇到一些问题。
小蚂蚁说
随着深度学习的快速发展以及在图像、语音领域取得的不错成果基于深度学习的自然语言处理技术也日益受到人们的关注。计算机是怎么理解人类的语言的呢
传统机器学习的应用常常是利用上述人工总结的文本特征但往往会遇到一些问题。比如“猫”和“咪”这两词语的语义很接近即近义词但计算机并不能真正的在词语语义层面理解只是把他们当作了两个不同的词语。再比如“小狗”和“小猫”是很相关的两个词语也不能被很好的理解和刻画。
本文主要介绍了深度学习中的文本分类任务以及一些应用于文本分类的深度学习模型。文本分类是自然语言处理领域最经典的场景之一试图推断出给定的文本句子、文档等的标签或标签集合。通过这些技术计算机能够更好地理解人类的语言。
针对支付宝投诉欺诈场景蚂蚁金服人工智能团队设计了多个文本深度学习模型。包括双向GRUCapsule Network和Attention-based Model等等均在支付宝投诉欺诈场景上取得了不错的效果。大家一起来看看吧 背景介绍
对于风控业务用户的投诉是理解黑产运作方式和监控风控变化的重要形式。风险决策中心每天会得到大量用户投诉文本信息每个投诉文本通常对应一定的风险形式。目前分类模型只解决了部分对于文本信息利用率的问题。目前支付宝投诉欺诈场景主要应用到的深度学习模型有TextCNN和双向GRU。
相关工作分析
本文的主要目的是想介绍一下深度学习中的文本分类任务以及一些应用于文本分类的深度学习模型。文本分类是自然语言处理领域最经典的场景之一试图推断出给定的文本句子、文档等的标签或标签集合。
文本分类中包含了大量的技术实现从是否使用了深度学习技术作为标准来衡量可以将这些技术实现分为两大类基于传统机器学习的文本分类和基于深度学习的文本分类。
文本分类的应用非常广泛其中比较有常见的应用有垃圾邮件分类情感分析新闻主题分类自动问答系统中的问句分类以及一些现有的数据竞赛等。现有的数据竞赛包括知乎的看山杯机器学习挑战赛BDCI2017的比赛“让AI当法官”和Kaggle的比赛“Toxic Comment Classification Challenge”等。
文本分类中主要有三种分类类型包括二分类问题多分类问题以及多标签问题。比如垃圾邮件分类中判断邮件是否为垃圾邮件属于一个二分类问题。在情感分析中判断文本情感是积极还是消极或者判断文本情感属于非常消极消极中立积极非常积极中的一类既可以是二分类问题也可以是多分类问题。在BDCI 2017的比赛“让AI当法官”中基于案件事实描述文本的罚金等级分类和法条分类分别属于多分类问题和多标签分类问题。
文本分类的评价指标会根据不同的分类类型有各自不同的评价指标。二分类问题中常常用到AccuracyPrecisionRecall和F1-score等指标多分类问题往往会使用到Micro-Averaged-F1Macro-Averaged-F1等指标多标签分类问题中则还会考虑到Jaccard相似系数等。
在基于传统机器学习的文本分类中一般采用TF-IDF和Word Counts提取不同word n-gram的文本特征然后将提取到的文本特征输入到Logistics回归、Naive Bayes等分类器中进行训练。但是当统计样本数量比较大的时候就会出现数据稀疏和维度爆炸等问题。这时候就需要做一些特征降维处理比如停用词过滤低频n-gram过滤LDA降维等。
随着深度学习的快速发展以及在图像、语音领域取得的不错成果基于深度学习的自然语言处理技术也日益受到人们的关注。传统机器学习的应用是利用上述人工总结的文本特征但往往会遇到一些问题。比如“猫”和“咪”这两词语的语义很接近即近义词但计算机并不能真正的在词语语义层面理解只是把他们当作了两个不同的词语。再比如“小狗”和“小猫”是很相关的两个词语也不能被很好的理解和刻画。
为了解决上述问题让计算机一定程度上能够理解词语的语义词向量技术应用而生。Mikolov et al. 2013 [1] 提出了word2vec模型可以通过词语上下文的结构信息将单词的语义映射到一个固定的向量空间中。如果需要判定两个词语的语义相似度或相关度只需要计算两个词向量的夹角余弦或欧式距离等即可。比如“小狗”与“小猫”的相似度值就会很高。凭借词向量算法计算机有了一定的词语语义上的理解能力。
在此基础上我们希望可以更好的刻画整个句子的语义信息。Yoon Kim, 2014 [2] 提出将CNN模型首次应用到文本分类问题上。这里词向量作为网络的第一层的输入而CNN的核心点在于可以捕捉局部相关性在文本分类任务中可以利用CNN来提取句子中类似word n-gram的关键信息。
TextCNN模型架构如下图所示句子中每个word使用K维向量来表示于是句子可表示为一个N*K的矩阵作为CNN的输入。使用不同的Filter Window进行卷积操作得到Feature Map之后对Feature Map使用Max-over-time Pooling的池化操作即将Feature Map向量中最大的值提取出来组成一个一维向量。经过全连接层输出使用Softmax层进行分类并且加上Dropout层防止过拟合。 自然语言处理中更常用的是递归神经网络RNN, Recurrent NeuralNetwork能够更好的表达上下文信息。Liu et al., 2016 [3] 介绍了RNN用于分类问题的设计。用于文本分类的RNN网络结构如下图所示网络中将最后一个单元的结果作为文本特征连接全连接Softmax层进行分类。 除此之外还有使用双向RNN网络 [4]Bidirectional RNNsBiRNNs的两个方向的输出向量的连接或均值作为文本特征。
一般的循环神经网络往往存在许多弊端。在训练网络过程中经过许多阶段传播后会出现梯度消散Gradient vanishing或梯度爆炸Gradient exploding等问题。循环神经网络在反向传播中得到误差的时候可以想象一下多次乘以自身的参数权重该乘积消散或爆炸取决于的幅值。针对于梯度爆炸的情况常常会使用截断梯度方法。但是梯度截断并不能有效地处理梯度消散问题有一个容易想到的方法是使用正则化或约束参数当然还有更好的解决方案那就是使用LSTMLong Short-Term Memory或GRUGated recurrent unit等门控RNNGated RNN。
梯度消散是原生RNN中一个很大的问题也就是后面时间的节点对于前面时间的节点感知力下降也就是忘事儿。Hochreiter et al., 1997[5] 提出了LSTM它的设计初衷就是来解决梯度消散问题。在标准的RNN中这个重复的模块只有一个非常简单的结构例如一个tanh层。LSTM同样是这样的结构但是重复的模块拥有一个不同的结构。不同于单一神经网络层这里是有四个以一种非常特殊的方式进行交互。如下图所示一个LSTM块有四个输入。
1输入Input模块的输入
2输入门Input Gate控制输入
3遗忘门Forget Gate控制是否更新记忆单元Memory Cell
4输出门Output Gate控制输出。 在多个LSTM连接的循环网络中单个的LSTM的各个门的控制方式如下 Cho et al., 2014 [6] 提出了GRU网络结构GRU作为LSTM的一种变体将遗忘门和输入门合成了一个单一的更新门。同样还混合了细胞状态和隐藏状态加诸其他一些改动。最终的模型比标准的LSTM模型要简单是目前非常流行的变体。
具体在文本分类任务中BiRNNs实际使用的是双向GRUs从某种意义上可以理解为可以捕获变长且双向的“word n-gram”信息。
问题与挑战
word2vec算法虽然可以学到有用的词向量但是该算法只刻画了词语的上下文结构信息并不能很好的利用中文词语内部的结构信息而中文又是一种强表义的语言文字。尤其是在大安全领域的数据里有很多词语的变种写法。比如“小姐”和“小女且”这两个词语经常会有不法分子为了绕开拦截系统故意采用“形变”写成后者再比如“微信”和“威芯”这两个词语则是“音变”的刻意回避。因此我们希望尝试一种新的算法可以很好的刻画出中文词语的“形”和“音”的特性生成更高质量的词向量进而为后面的深度神经网络提供更大的信息量。
TextCNN能够在很多任务里面能有不错的表现CNN卷积特征检测器提取来自局部的序列窗口的模式并使用max-pooling来选择最明显的特征。然后CNN分层地提取不同层次的特征模式。然而CNN在对空间信息进行建模时需要对特征检测器进行复制降低了模型的效率。但在实际中文的语料库中文本结构丰富单词的位置信息、语义信息、语法结构等对于CNN这种空间不敏感的方法不可避免会出现问题。
BiGRUs在文本分类上有明显的效果但是在可解释性以及关注文本整体重要性上有明显的不足特别是在分析badcase的时候感受尤其深刻。
如何解决TextCNN在文本中深入理解文字的位置信息、语义信息、语法结构等信息以及使BiGRUs文本模型能够关注文本整体重要性将是下面要探索的内容。
CW2VEC
Cao et al. 2018 [7] 在AAAI 2018的论文里提出了cw2vec算法。相关阅读请参考《AAAI 2018 论文 | 蚂蚁金服公开最新基于笔画的中文词向量算法》该算法通过构造“n元笔画”提取出汉字的表义单元比如“森林”与“木材”这两个词语具有很多共同的“4元笔画”“木”因此这两个词语具有较高的相关度。相对于汉字、偏旁粒度的词语拆解n元笔画是一种非人工总结、由算法自动统计出来的表义结构。在中文的公开测试集中cw2vec相对于word2vec, GloVe, CWE等算法均取得了一致性的提升。 cw2vec算法同时利用了中文词语内部和上下文的结构信息来设计损失函数因此产生更高质量的中文词向量。 除了“形”之外“音”的刻画可以通过“n元拼音”来实现。这里拼音字符从“a”到“z”按照同样的方法获得词语的拼音然后通过滑窗进一步得到“n元拼音”。
为了同时获得“形”和“音”的特征信息我们采用了一种简单有效的实验方案即分别基于“n元笔画”和“n元拼音”模式学习词向量然后再对词向量进行拼接。相对于词向量平均可以看作是线性加权这种拼接方法对后续的深度神经网络保有了更高的非线性信息融合能力。
目前cw2vec算法在内容安全宝、保险等场景中取得了不错的效果这里我们也将探索其在支付宝投诉欺诈场景的作用。
Capsule Network
Hinton et al., 2017 [8] 在去年发表的论文中Hinton介绍Capsule是一组神经元其输入输出向量表示特定实体类型的实例化参数即特定物体、概念实体等出现的概率与某些属性。我们使用输入输出向量的长度表征实体存在的概率向量的方向表示实例化参数即实体的某些图形属性。同一层级的Capsule通过变换矩阵对更高级别的Capsule的实例化参数进行预测。当多个预测一致时本论文使用动态路由使预测一致更高级别的Capsule将变得活跃。
到目前为止将胶囊网络应用到自然语言处理上的论文研究较少其中Zhao et al., 2018 [9] 提出了将胶囊网络应用到文本分类任务上。对于传统的分类问题上胶囊网络取得了较好的性能并且其性能超过了TextCNN其模型结构图如下所示。 我们当前使用的网络结构是隐藏大小为128的BiGRUs双向GRUs连接胶囊网络层胶囊数量设置为10路由数量设置为3。
Attention机制
在谈及基于Attention机制的模型时不能不先提及一下Encoder-Decoder框架Encoder-Decoder框架可以理解成由一个句子生成另一个句子的通用处理模型。其架构如下图所示 如图中的例子可以看到通过Encoder编码了“机器学习”四个繁体字得到一个中间语义即图中标了红框框的绿色方块。然后将这个红框框的绿色方块作为Decoder的输入。这里得做一下解释Encoder-Decoder是一个通用的计算框架其中的Encoder和Decoder可以是不同的模型组合比如CNN、RNN等上图展示的就是Encoder和Decoder都是RNN的组合。
仔细看上图的翻译框架可以看到在生成目标单词的时候无论哪个单词都是用到同一个红框框的绿色方块即同一个中间语义。这就是展现出一种注意力不集中的分心模型。那注意力模型是如何的呢
Bahdanau et al., 2014 [10] 提出了将Attention机制应用到在机器翻译。注意力模型会在输出目标单词的时候关注到输入单词的比如输出“machine”的时候注意力模型应该将目光注意到“机器”两个词上即“机器”的关注重要性应该大一些而“学习”两个词的重要性应该小一些。基于Attention机制的模型架构如下图所示。 Yang et al., 2016 [11] 提出了用词向量来表示句子向量再由句子向量表示文档向量并且在词层次和句子层次分别引入Attention的层次化Attention模型Hierarchical Attention NetworksHAN。HAN的模型结构如下图所示。 我们当前使用的网络结构是隐藏大小为128的BiGRUs双向GRUs连接word-level的Attention层。
实验结果
实验中读取了支付宝投诉欺诈场景的一段数据作为训练集另一段时间的数据作为测试集。数据的标签是三分类有违禁类非案件类和欺诈类。其中欺诈的分类结果是我们主要关注的结果。数据集经过一些去重数据去除文本中的标点填充空值等预处理操作后将处理后的数据输入我们的神经网络模型中得到如下结果。
实验中我们主要对比Capsule Network和TextCNN模型以及BiGRU模型和Attention模型在不同词向量作为初始网络Embedding层在不同评价指标下的效果对比。其中为了验证两种词向量拼接后的高维词向量对网络结构的效果添加了一组词向量拼接后对不同网络结构的实验对比。 上图是使用word2vec作为词向量多个网络模型在支付宝投诉文本上的一组实验示例。第一张图是该组模型的ROC曲线第二张图是该组模型的Precision/Recall曲线。 上图是使用cw2vec作为词向量多个网络模型在支付宝投诉文本上的一组实验示例。第一张图是该组模型的ROC曲线第二张图是该组模型的Precision/Recall曲线。 上图是使用拼接后的高维向量作为词向量多个网络模型在支付宝投诉文本上的一组实验示例。第一张图是该组模型的ROC曲线第二张图是该组模型的Precision/Recall曲线。 备注其中2vecs是指将300维cw2vec词向量和300维word2vec词向量拼接在一起形成一个600维词向量。AUC的计算方式是根据三分类共同的预测结果和真实标签计算得出的。三分类准确度Accuracy的计算方式是根据三分类结果的最大值来确定类别的而Precision/Recall是仅根据三分类中的欺诈类的结果计算出来的。
实验中词向量算法分别用到了word2vec和cw2vec其中word2vec中包含了cbow和skip-gram各150维的词向量cw2vec中包含了基于笔画和拼音各150维的词向量。其中拼接后的高维词向量2vecs是同时包含cw2vec和word2vec的600维词向量。
上述实验表明不管在使用word2veccw2vec以及拼接后的高维词向量作为词向量我们用Capsule Network网络结构训练的模型在Precision/Recall值和AUC值上都比原先TextCNN的效果好。比较两者的三分类准确度仅在使用拼接后的词向量的准确度上Capsule Network略低于TextCNN。因此实验证明Capsule Network的整体表现优于原先的TextCNN。
在比较BiGRU模型和Attention模型时我们可以发现在较低Precision下的Recall值时BiGRU模型的分值略高于Attention模型。但在较高Precision下的Recall时Attention模型的分值则明显高于BiGRU模型。如表中Attentionword2vec在80%Precision下Recall值略低于BiGRUword2vec。但在85% 和90%Precision下Attentionword2vec的Recall值则明显高于BiGRUword2vec。在比较两者的AUC值和Accuracy值在使用word2vec词向量和拼接的高维词向量时Attention模型的分数较高。
在词向量间的对比中可以看到仅使用cw2vec作为词向量网络模型整体上比word2vec和拼接的词向量效果更好。
讨论与展望
Capsule网络结构在文本分类中能够深入理解文字的位置信息、语义信息、语法结构等信息而Attention机制能够让RNN网络更加关注于整理文本的重要性。
希望Capsule网络结构和Attention机制可以在更多的场景发挥效果非常欢迎随时联系我们交流讨论
感谢各位技术同学的热心帮助以及蚂蚁金服机器学习平台-PAI平台的技术支持实验中的cw2vec和word2vec两种词向量的生成是在PAI平台上实现的为实验对比提供了很大的帮助在数据中PAI的统计组件来进行建模的前的EDA。使用Pai-Tensorflow的GPU资源及分布式Tensorflow的支持极快地加速了整个实验流程。也希望大家能够享受机器学习的乐趣
参考文献
[1] Mikolov et al. Distributedrepresentations of words and phrases and their compositionality[C]. NIPS. 2013.
[2] Kim Y. Convolutional neuralnetworks for sentence classification[J]. arXiv preprint arXiv:1408.5882, 2014.
[3] Liu P, Qiu X, Huang X.Recurrent neural network for text classification with multi-task learning[J].arXiv preprint arXiv:1605.05101, 2016.
[4] Schuster M, Paliwal K K.Bidirectional recurrent neural networks[J]. IEEE Transactions on SignalProcessing, 1997, 45(11): 2673-2681.
[5] Hochreiter S, Schmidhuber J.Long short-term memory[J]. Neural computation, 1997, 9(8): 1735-1780.
[6] Cho K, Van Merriënboer B,Gulcehre C, et al. Learning phrase representations using RNN encoder-decoderfor statistical machine translation[J]. arXiv preprint arXiv:1406.1078, 2014.
[7] Cao et al. cw2vec: LearningChinese Word Embeddings with Stroke n-gram Information. AAAI 2018.
[8] Sabour S, Frosst N, Hinton G E.Dynamic routing between capsules[C]//Advances in Neural Information ProcessingSystems. 2017: 3856-3866.
[9] Zhao W, Ye J, Yang M, et al.Investigating Capsule Networks with Dynamic Routing for Text Classification[J].arXiv preprint arXiv:1804.00538, 2018.
[10] Bahdanau D, Cho K, Bengio Y.Neural machine translation by jointly learning to align and translate[J]. arXivpreprint arXiv:1409.0473, 2014.
[11] Yang Z, Yang D, Dyer C, et al.Hierarchical attention networks for document classification[C]//Proceedings ofthe 2016 Conference of the North American Chapter of the Association forComputational Linguistics: Human Language Technologies. 2016: 1480-1489.
— END —
原文链接
本文为云栖社区原创内容未经允许不得转载。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/88079.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!