人工神经网络评价法案例_神经网络简介及在评价业务的简单应用

20世纪80 年代以来,人工智能兴起,而神经网络就是这一领域研究热点。它从信息处理角度对人脑神经元网络进行抽象,建立某种简单模型,按不同的连接方式组成不同的网络。工程与学术界也常直接简称为神经网络或类神经网络。本文首先结合京东互联网医院评价系统引出经典的情感分析案例;然后介绍情感分析系统集中经典解决方案;最后重点介绍神经网络在自然语言领域简单应用这三个角度,从概念、代码实现、落地应用三个层次,由浅入深进行介绍,最后利用tensorflow自然语言(情感分析)框架构建京东互联网医院医生评价模型进行评价的正向、逆向预测。希望能够对读者理解神经网络及概念上理解人工智能有所帮助。
1. 京东互医评价系统遇到的挑战
1.1背景
自然语言处理中,情感分析一般是指判断一段文本所表达的情绪状态。其中,一段文本可以是一个句子,一个段落或一个文档。情绪状态可以是两类,如(正面,负面),(高兴,悲伤)等等。情感分析的应用场景十分广泛,如把用户在购物网站(京东、天猫)或者电影评论网站上发表的评论分成正面评论和负面评论;或为了分析用户对于某一产品的整体使用感受,抓取产品的用户评论并进行情感分析等等。表格1展示了对京东互联网医院医生评论进行情感分析的例子。
| 医生评论 | 类别 |
|---|---|
| 张医生技术太棒了,一副药就治好了 | 正面 |
| 这个医生是打酱油的吧! | 负面 |
| 李医生真的糟透了,怎么能这么草率呢! | 负面 |
| 京东的医生真是棒棒哒 | 正面 |
随着京东互联网医院快速发展,患者对医生的评价数据量急剧增长,观察医生评价内容发现,有些评价内容出现了辱骂,诋毁的评价,打分时候却是好评,这种评价需要实时的发现及识别,一方面帮助患者解决实际问题,避免造成患者的流失,另一方面需要进行核实,维护医生的权益。相反,评价内容表达了对医生的赞扬,但是打分时却误操作给了极低的分数,对医生的形象造成了一定的影响。如何对线上大量数据进行快速风控识别成为了一项挑战。
1.2解决方案对比
在自然语言处理中,情感分析属于典型的文本分类问题,在深度学习出现之前,主流的文本表示方法为词袋模型BOW(bag of words)等。不幸的是,BOW会忽略其词序、句法和语法,因此并不能充分表示文本的语义信息。例如,句子“李医生真的糟透了,怎么能这么草率呢!”和“这个医生是打酱油的吧!”在情感分析中具有很高的语义相似度,但是它们的BOW表示的相似度为0。又如,句子“张医生技术太棒了,几副药就治好了”和“张医生技术太棒?,都吃了几副药了!”的BOW相似度很高,但实际上它们的意思很不一样。
本章我们所要介绍的深度学习模型克服了上述缺陷,它在考虑词顺序的基础上把文本映射到低维度的语义空间,其性能及准确度相对于传统方法有显著的提升。
2. 神经网络介绍
2.1神经网络的雏形
深度学习算法实际上都是人类对现实世界中的事物的一种抽象的表达,例如,粒子群算法是对“飞鸟觅食寻求最佳路径”的表达,遗传算法是对“基因的遗传及变异”的表达,同样,神经网络是对“大脑神经元接收四面八方的刺激的表达”。如下图所示,神经元之间传递信息靠的是神经元末端突触(单元),一个突出传递多少信息给下一个突出是可控的(权重),而且近期研究表明,突出是有计算性的(偏置项)。聪明的人类就有了神经网络的初始表达。

神经网络本质上可以看做是一个符合函数,你输入一些数据,他会输出一些数据。神经网络的基本架构由3部分内容组成“单元/神经元”、“连接/权重/参数”、“偏置项”

其中,i1、i2代表输入项;h1、h2代表神经元(突出);o1、02代表输出项。这就构成了神经网络的初始模样。总结起来,神经网络从结构上来看,主要由神经网络各层节点、神经网络各个节点误差、各层节点权重、各层节点权重动量、动量系数、学习系数等组成。
2.2神经网络运行流程
神经网络从运行流程上看,分为算法的抽象、训练、预测过程进行简要说明,具体过程:
1.神经网络初始化;
2.正向计算也就是从左向右进行计算;
3.反向传播计算并修正权重。
反向传播解释:其中反向传播反向传播算法本质上是梯度下降法。人工神经网络的参数多,梯度计算比较复杂。在人工神经网络模型提出几十年后才有研究者提出了反向传播算法来解决深层参数的训练问题。总结一下,反向传播算法可以看成是梯度下降法在神经网络中的变形版本,它的原理主要利用了链式法则,通过递归的方式求解微分。
2.3神经网络分类
循环神经网络RNN:循环神经网络是一种能对序列数据进行精确建模的有力工具。实际上,循环神经网络的理论计算能力是图灵完备的。自然语言是一种典型的序列数据(词序列),近年来,循环神经网络及其变体(如长短期记忆网络LSTM、栈式双向LSTM等)在自然语言处理的多个领域,如语言模型、句法解析、语义角色标注(或一般的序列标注)、语义表示、图文生成、对话、机器翻译等任务上均表现优异甚至成为目前效果最好的方法。
卷积神经网络CNN:对卷积神经网络来说,首先使用卷积处理输入的词向量序列,产生一个特征图(feature map),对特征图采用时间维度上的最大池化(max pooling over time)操作得到此卷积核对应的整句话的特征,最后,将所有卷积核得到的特征拼接起来即为文本的定长向量表示,对于文本分类问题,将其连接至softmax即构建出完整的模型。在实际应用中,我们会使用多个卷积核来处理句子,窗口大小相同的卷积核堆叠起来形成一个矩阵,这样可以更高效的完成运算。
3. 情感分析模型最佳实践
京东互联医院评价系统利用RNN模型中LSTM模型,针对本文背景部分情况,互医提出了情感分析快速识别解决方案。
第一步:基础语料处理
这部分内容中,互医研发人员抽取线上部分评价数据,对语料进行数据清洗,排除停用词,全部数字,全部英文等无用的语料,根据评分将语料进行正、逆分类,最后输出50W训练语料;
第二步:构建训练模型
这部分内容中,利用tensorflow 框架搭建32层LSTM循环神经网络;利用基础语料及神经网络训练模型,设置迭代次数,以及每次迭代数量,设置噪音参数等手段提高模型精度;这部分内容中还包括,语料乱序,正则化,等一些模型优化手段。
第三步:验证模型
这部分内容中,取50W数据中,45W做训练(5W交叉验证),5W做验证,训练结果准确率达90%,
第四步:模型服务发布
这部分内容中,制作含有python服务及tensorflow等模块的镜像,利用flask框架发布http服务,供各个系统调用。
下图展示的线上运营的真实效果,【评分】一栏代表患者对医生的服务进行打分,【AI评分】代表的是患者评价的内容在情感分析模型中的得分。例如:患者评价给了5分,却并非一个好评,AI分析给出了0.02分,通过对比分数的差异,后台识别了这个评价内容,后续会有专门运营人员进行核查,及时帮助患者解决问题。
借助AI能力,京东互联网医院实现了风险的快速识别,大大减轻了运营人员人工排查的工作量,帮助运营更好的发现问题,解决问题,提高整体服务质量。
互联网医院研发部

数据反爬之web字体应用
一起学习nginx(二)
堆排序及其应用
一起学习nginx(一)
Vue项目开发入过的坑
京东互医架构解耦设计的思考
