机器学习在高德用户反馈信息处理中的实践

1.背景
作为国内领先的出行大数据公司,高德地图拥有众多的用户和合作厂商,这为高德带来了海量的出行数据,同时通过各个渠道,这些用户也在主动地为我们提供大量的反馈信息,这些信息是需要我们深入挖掘并作用于产品的,是高德地图不断进步和持续提升服务质量的重要手段。

本文将主要介绍针对用户反馈的文本情报,如何利用机器学习的方法来提高大量用户数据的处理效率、尽可能实现自动化的解题思路。

先来解释一下重点名词。

情报:是一种文本、图片或视频等信息,用来解决高德地图生产或者导航中的具体问题,本质上是指与道路或交通相关的知识或事实,通过一定空间和时间通知给特定用户。

用户反馈:是指用户借助一定的媒介,对所使用的软件等提供一些反馈信息,包括情报、建议和投诉等。

典型的用户反馈类型和选项如下图所示:

2.问题及解法

用户反馈的方式可以通过手机的Amap端、PC端等进行上报,上报时选择一些选择项以及文本描述来报告问题,以下是一个用户反馈的示例,其中问题来源、大类型、子类型和道路名称是选择项,用户描述是填写项,一般为比较短的文本。这些也是我们可以使用的主要特征。

每个用户在上报了问题之后,均希望在第一时间内问题能够得到解决并及时收到反馈。但是高德每天的用户反馈量级在几十万,要想达到及时反馈这个目标非常的不容易。

针对这些用户反馈信息,当前的整体流程是先采用规则进行分类,其中与道路相关的每条反馈都要经过人工核实,找到用户上报的问题类型和问题发生的地点,及时更新道路数据,作用于导航。

针对一条反馈的操作需要经过情报识别、情报定位、情报验证等环节:

1) 情报识别主要是判断问题类型即给情报打标签:①分析用户上报的信息包括问题来源、大类型、子类型和用户描述等,②查看上传的图片资料,包括手机自动截图和用户拍照;

2) 情报定位主要是找到问题发生的位置信息即定位坐标:①分析用户反馈问题时戳的位置点即戳点的有效性,②查看用户上报问题时车辆行驶的位置即自车位置,③分析用户使用高德软件过程中的规划和实走轨迹等日志信息;

3) 情报验证:通过以上两步确定了情报标签和位置坐标,此环节需要验证情报标签(含道路名称):①分析影像和大数据热力图或路网基础数据,②查看用户上传的资料和采集的多媒体图片资料。

整个业务处理流程如下图所示:

在处理用户反馈问题整个过程秉持的原则是完全相信用户的问题存在。若用户上报的信息不足以判断问题类型和问题发生地点,则会尽量通过用户规划和实走轨迹等日志信息进行推理得出偏向用户的结论。

目前整个用户反馈问题处理流程存在的主要问题有:规则分发准确率低,人工核实流程复杂、技能要求高且效率低,去无效误杀严重等。

为了解决以上问题,我们希望引入机器学习的方法,以数据驱动的方式提高作业能力。在进行机器学习化的探索过程中,我们首先对业务进行了拆解及层级化分类,其次使用算法来替代规则进行情报分类,再次工程化拆解人工核实作业流程为情报识别、情报定位和情报验证等步骤,实现单人单技能快速作业,最后将工程化拆解后的情报识别步骤使用算法实现其自动化。

3.机器学习解题

3.1 业务梳理与流程层级化拆解

原始的用户反馈问题经由规则分类后,再进行人工情报识别、定位和验证,最终确认问题及其所在是属于近百种小分类项中的哪一个,进而确定上一级分类以及整个层级的对应关系。

由此可以看出,整个问题处理流程只有一个步骤,处理过程相当复杂,对人工的技能要求很高,且效率低下。而且一千个人眼中就有一千个哈姆雷特,个人的主观性也会影响对问题的判断。

针对这种情况,我们对原有业务流程进行梳理和拆解,希望能够利用机器学习和流程自动化等方式解决其中某些环节,提升整体问题处理的效率。

首先进行有效情报和无效情报的分类即去无效,接着将整个流程拆解为六个层级,包括业务一级、业务二级、业务三级、情报识别、情报定位和情报验证。

如上图所示,拆解后的前三个级别为情报分类环节,只有后三个级别需要部分人工干预,其他级别均直接自动化处理。这样通过层级化、自动化和专人专职等方法极大地简化了问题同时提高了效率。

3.2 业务与模型适配

我们可以看到用户反馈中既有选择项又有输入项,其中选择项如问题来源等都是有默认值的,需要点击后选择相应细分项,用户不一定有耐心仔细选择,有耐心的用户可能会由于不知道具体分类标准而无法选择正确的分类。而用户描述,是需要用户手动输入的内容,是用户表达真实意图的主要途径,是一条用户反馈当中最有价值的内容。

用户描述一般分为三种情况:无描述、有描述但无意义的、有描述且有意义的。前两种称之为无效描述,后一种称之为有效描述。

根据业务拆解结果,业务流程第一步即为去无效,在这之后,我们将有效、无效描述的用户反馈进行区分,分别建立相应的流程进行处理。

1) 有效描述的用户反馈,逐级分类,第一级分为数据、产品、转发三类,其中产品和转发两类直接进行自动化处理,数据类别会在第二级中分为道路和专题,专题是指非道路类的限行、步导、骑行等。

2) 无效描述的用户反馈,进行同样的分类,并走一样的流程,但是样本集和模型是不同的,并且最后没有算法处理的步骤,直接走人工或者规则处理。

3) 最终根据实际业务需要进行层层拆解后形成了下图所示的业务与模型适配的结构。

由以上分析可见,情报分类和情报识别均为多分类的文本分类问题,我们针对各自不同的数据特点,进行相应的操作:

情报分类,每一级类别虽不同,但是模型架构却是可以复用的,只需要有针对性的做微小改动即可。且有以前人工核实过(包含情报识别、情报定位、情报验证等过程)具有最终结果作为分类标签的历史数据集作为真值,样本集获得相对容易。

情报识别,其分类标签是在情报验证之前的中间结果,只能进行人工标注,并且需要在保证线上正常生产的前提下,尽量分配人力进行标注,资源非常有限。所以我们先在情报分类数据集上做Finetuning来训练模型。然后等人工标注样本量积累到一定量级后再进行情报识别上的应用。

3.3 模型选择

首先,将非结构化的文本用户描述表示成向量形式即向量空间模型,传统的做法是直接使用离散特征one-hot表示,即用tf-idf值表示词,维度为词典大小。但是这种表示方式当统计样本数量比较大时就会出现数据稀疏和维度爆炸的问题。

为了避免类似问题,以及更好的体现词语之间的关系如语义相近、语序相邻等,我们使用word embedding的方式表示,即Mikolov提出的word2vec模型,此模型可以通过词的上下文结构信息,将词的语义映射到一个固定的向量空间中,其在向量空间上的相似度可以表示出文本语义上的相似度,本质上可以看作是语境特征的一种抽象表示。

其次,也是最重要的就是模型选择,相对于传统的统计学习方法复杂的特征工程步骤,深度学习方法更受青睐,NLP中最常用的是循环神经网络RNN,RNN将状态在自身网络中循环传递,相对于前馈神经网络可以接受更广泛的时间序列结构输入,更好的表达上下文信息,但是其在训练过程中会出现梯度消失或梯度爆炸等问题,而长短时记忆网络LSTM可以很好的解决这个问题。

3.4 模型架构

将每个用户反馈情报的词向量结果作为LSTM的输入,接着将LSTM的最后一个单元的结果作为文本特征,与其他用户选择项问题一起merge后作为模型输入,然后经过全连接层后使用softmax作为输出层进行分类,得到的0~1之间的实数即为分类的依据。多分类的网络架构如下图所示:

4.实战经验总结
理清业务逻辑、确定解题步骤、确认样本标注排期并跑通了初版的模型后,我们觉得终于可以松一口气,问题应该已经解决过半了,剩下的就是做做模型调参和优化、坐等样本积累,训练完模型就可以轻松上线了。

但实际情况却是面临着比预想更多的问题和困难,训练数据量不够、单个模型效果不好、超参设置不理想等问题接踵而至,漫长而艰难的优化和迭代过程才刚刚开始。

4.1 Fine-tuning

选定了模型之后,情报识别首先面临的问题是样本量严重不足,我们采用Fine-tuning的办法将网络上已经训练过的模型略加修改后再进行训练,用以提升模型的效果,随着人工标注样本逐渐增加,在不同大小的数据集上都可以取得大约3个百分点的提升。

4.2 调参
模型的调参是个修炼内功炼制金丹的过程,实际上取得的效果却不一定好。我们一共进行了近30组的调参实验,得出了以下饱含血泪的宝贵经验:

1)初始化,一定要做的,我们选择 SVD初始化。

2) dropout也是一定要用的,有效防止过拟合,还有Ensemble的作用。 对于LSTM,dropout的位置要放到LSTM之前,尤其是bidirectional LSTM是一定要这么做的,否则直接过拟合。

3) 关于优化算法的选择,我们尝试了Adam、RMSprop、SGD、AdaDelta等,实际上RMSprop和Adam效果相差不多,但基于Adam可以认为是RMSprop 和 Momentum 的结合,最终选择了Adam。

4) batch size一般从128左右开始调整,但并不是越大越好。对于不同的数据集一定也要试试batch size为64的情况,没准儿会有惊喜。

5) 最后一条,一定要记住的一条,尽量对数据做shuffle。

4.3 Ensemble
针对单个模型精度不够的问题,我们采用Ensemble方式解决,进行了多组试验后,最终选定了不同参数设定时训练得到的最好模型中的5个通过投票的方式做Ensemble,整体准确率比单个最优模型提高1.5个百分点。

另外为了优化模型效果,后续还尝试了模型方面的调整比如双向LSTM和不同的Padding方式,经过对比发现在情报识别中差异不大,经分析是每个用户描述问题的方式不同且分布差异不明显所致。

4.4 置信度区分
当情报识别多分类模型本身的结构优化和调参都达到一定瓶颈后,发现模型最终的效果离自动化有一定的差距,原因是特征不全且某些特征工程化提取的准确率有限、类别不均衡、单个类别的样本数量不多等。

为了更好的实现算法落地,我们尝试进行类别内的置信度区分,主要使用了置信度模型和按类别设定阈值两种办法,最终选择了简单高效的按类别设定阈值的方法。

置信度模型是利用分类模型的标签输出结果作为输入,每个标签的样本集重新分为训练集和验证集做二分类,训练后得到置信度模型,应用高置信的结果。

在置信度模型实验中,尝试了Binary和Weighted Crossentropy、Ensemble的方式进行置信度模型实验,Weighted Crossentropy的公式为:

为了避免溢出,将公式改为:

其中,_表示:_

实验的结果是Binary方式没有明显效果提升,Ensemble在95%置信度上取得了较高的召回率,但是没有达到98%置信度的模型。

借鉴了情报分类算法模型落地时按照各个类别设定不同softmax阈值的方式做高置信判断即按类别设定阈值的方式,在情报识别中也使用类似的方法,取得的效果超过了之前做的高置信模型效果,所以最终选择了此种方式,这部分可以很大地提高作业员的作业效率。同时为了减少作业员的操作复杂性,我们还提供了低置信部分的top N推荐,最大程度节省作业时间。

5.算法效果及应用成果

5.1 情报分类

算法效果:根据实际的应用需求,情报分类算法的最终效果产品类准确率96%以上、数据类召回率可达99%。

应用成果:与其他策略共同作用,整体自动化率大幅提升。在通过规则优化后实际应用中取得的效果,作业人员大幅度减少,单位作业成本降低4/5,解决了用户反馈后端处理的瓶颈。

5.2 情报识别

算法效果:根据使用时高置信部分走自动化,低置信走人工进行标注的策略,情报识别算法的最终效果是有效描述准确率96%以上。

应用成果:完成情报标签分类模型接入平台后通过对高低置信标签的不同处理,最终提升作业人员效率30%以上。

6.总结与展望
通过此项目我们形成了一套有效解决复杂业务问题的方法论,同时积累了关于NLP算法与业务紧密结合解题的实战经验。目前这些方法与经验已在其他项目中很好的付诸实施,并且在持续的积累和完善中。在不断提升用户满意度的前提下尽可能的高效自动化的处理问题,是我们坚持不懈的愿景和目标。
关注图.jpg

Image placeholder
Dane
未设置
  71人点赞

没有讨论,发表一下自己的看法吧

推荐文章
强化学习在小桔车服用户运营中的实践

桔妹导读:小桔车服为滴滴旗下品牌,围绕车主及汽车生命周期,整合运营多项汽车服务,更加智能更加用心地为车主提供适合的一站式用车服务,致力于让每一个人拥有轻松车生活。本次分享的主题为强化学习在小桔车服用户

会员服务在高可用架构的实战探索

概述很多互联网公司在发展过程中大多出现过多次机房网络故障的情形,如果发生故障,一般需要动用整个IT部门的人力进行流量切换和客诉处理。为了避免此类情形的发生,公司计划进行服务的高可用建设。会员部门持续跟

Python 教程-机器学习

Python有着海量的可用于数据分析、统计以及机器学习的库,这使得Python成为很多数据科学家所选择的语言。 下面我们列出了一些被广泛使用的机器学习及其他数据科学应用的Python包。

制定机器学习训练数据策略的6个技巧

人工智能(AI)和机器学习(ML)如今已经十分常见。AI指的是机器模仿人类进行认知的概念,ML是一种用于构建AI的方法。如果AI是指计算机可以根据指令执行一组任务,那么ML就是机器从数据中摄取、解析和

2019机器学习框架之争:与Tensorflow竞争白热化,进击的PyTorch赢在哪里?

大数据文摘出品来源:thegradient编译:张大笔茹、曹培信、刘俊寰、牛婉扬、Andy2019年,机器学习框架之争进入了新阶段:PyTorch与TensorFlow成为最后两大玩家,PyTorch

从关系型数据库到分布式机器学习,揭秘腾讯大数据十年发展历程

大数据技术在过去10多年中极大改变了企业对数据的存储、处理和分析方式。如今,大数据技术逐渐成熟,涵盖了计算、存储、数仓、数据集成、可视化、NOSQL、OLAP分析、机器学习等丰富领域。在未来,大数据技

TensorFlow技术主管Peter Wardan:机器学习的未来是小而美

大数据文摘授权转载自OReillyAIPeteWardan任谷歌TensorFlow移动和嵌入式团队的leader,在O’ReillyAIConference2019的Keynote演讲环节,他对机器

做机器学习项目数据不够?这里有5个不错的解决办法

许多开展人工智能项目的公司都具有出色的业务理念,但是当企业AI团队发现自己没有足够多的数据时,就会慢慢变得十分沮丧……不过,这个问题的解决方案还是有的。本文将简要介绍其中一些经笔者实践证明确实有效的办

甜过初恋!浙大博士用200个西瓜130页论文,教你用机器学习科学挑瓜

大数据文摘出品作者:易琬玉刚刚送走了最热七月,转眼就迎来了最热八月。2019年是人类有气象纪录以来最热的几个年份之一,虽然这个夏天还没结束,但气象学家们已经有十足把握做出这个判断。为了应付热,人们想出

Adobe又逆天!不用机器学习,用13.5M软件把《长安十二时辰》变成水墨动画

大数据文摘出品作者:曹培信用过修图软件的同学们应该都知道,利用强大的GAN,已经可以实现一键转换照片风格的功能,比如将你拍的风景照转换成一副印象派的画作。现在,轻松转换视频风格的软件也诞生了!Secr

为什么IoT需要机器学习才能蓬勃发展?

人们一直在热烈讨论大数据和人工智能等技术的机遇和威胁,并对它们的未来表示担忧。与此同时,公司希望通过安装越来越多的传感器,来提高效率降低成本。然而,InData实验室的机器学习顾问表示,如果没有适当的

如何使用TensorFlow机器学习对图像进行分类?

本文将介绍如何使用迁移学习使用TensorFlow机器学习平台对图像进行分类。在机器学习环境中,迁移学习是一种技术,使我们能够重用已经训练的模型并将其用于另一个任务。图像分类是将图像作为输入并为其分配

一份关于机器学习“模型再训练”的终极指南

机器学习模型的训练,通常是通过学习某一组输入特征与输出目标之间的映射来进行的。一般来说,对于映射的学习是通过优化某些成本函数,来使预测的误差最小化。在训练出最佳模型之后,将其正式发布上线,再根据未来生

机器学习——单变量线性回归

机器学习之单变量线性回归modelrepresentation模型表示引言 给定房屋面积和房屋价格的数据,然后以房屋面积为横坐标,房屋价格为纵坐标,绘制数据点。通过绘制曲线,获得房屋房价的模型,根据房

一篇文章看懂,存储虚拟化在不同用例中的实践与优势

存储虚拟化是一种对物理存储资源进行抽象的技术,使其看起来像是一个集中的资源。虚拟化掩盖了管理内存、网络、服务器和存储中资源的复杂性。存储虚拟化运行在多个存储设备上,使它们看起来就像一个单一的存储池。这

亿级海量数据的实时读写和复杂查询实践

摘要:本文分享了每日亿级增量数据的实时读写、复杂查询场景实践介绍,涉及MySQL分表分库策略、数据异构、TiDB使用和优化、微服务架构等内容。  作者:黄哲铿  黄哲铿,中通商业CTO,前1号店技术总

万亿级消息背后: 小米消息队列的实践

目录业务背景架构与关键问题性能与资源优化平台化效率小米消息中间件的规划与愿景前文《消息队列价值思考》讲述了消息中间件在企业IT架构中的重要价值,本文将呈现这些价值在落地小米业务过程中的遇到的问题和实践

运营商大规模数据集群治理的实践指南

写在开头的话Q: 军哥,你们运营商行业的大规模集群,都有啥特点啊?A: 我们集群主要是承载B域、信令和互联网日志等去标识化数据,简单的说,有三个特点:1)集群规模较大:数千节点规模,近百PB数据量,日

HDFS3.2升级在滴滴的实践

桔妹导读:Hadoop 3的第一个稳定版本在2017年底就已经发布了,有了很多重大的改进。在HDFS方面,支持了ErasureCoding、Morethan2NameNodes、Router-Base

揭秘|每秒千万级的实时数据处理是怎么实现的?

01背景闲鱼目前实际生产部署环境越来越复杂,横向依赖各种服务盘宗错节,纵向依赖的运行环境也越来越复杂。当服务出现问题的时候,能否及时在海量的数据中定位到问题根因,成为考验闲鱼服务能力的一个严峻挑战。线

学习IT的实用工具和网站推荐

对于一些学习IT的初学者来说,掌握一些实用的软件工具和学习网站是十分有必要的。本文要为大家推荐一些学习IT的相关的资源,像是鸠摩搜书和脚本之家等电子书搜索网站,还有冰点文库和文件搜索工具等实用工具以及

运通集团:护航企业安全,不为信息化而信息化

曾经有人做出过总结,现代人忙碌奔波在物质上无非为了几“子”:车子、房子和票子。房和车可以说是很多现代人生活中的刚需。也正因如此,房地产商和汽车厂商近年来如鱼得水,得以开展各种业务,而运通集团就是典型代

阿里云小蜜对话机器人背后的核心算法

0.对话系统简介 对话系统的一般架构如图: 图1:对话系统一般架构 这是我们所熟知的对话系统框架,这里面主要有:NLU自然语言理解,DM对话管理,NLG自然语言生成3个主要模块,DM里面有dialo

互联网是如何把“原始人”逼成“机器人”

【导读】互联网快速发展的这十多年,我们见证了企业软件架构的多次迭代和演变。初期阶段都使用JSP+Servlet,工程师感觉代码直接写在jsp页面上不优雅,也不方便调试。后续发展为JSP+Javabea

5分钟带你了解浪潮商用机器FP5466G2服务器

海量数据时代,传统的存储架构已经难以满足大规模高并发下系统稳定性,存储设备的弹性扩展和异构存储资源整合等诸多挑战。浪潮商用机器正是针对复杂而多样化的应用需求和大数据、人工智能等新兴应用场景,全新推出企