人工智能中工程化的NLP如何确保落地?

栏目: 编程工具 · 发布时间: 5年前

内容简介:NLP的工程化,不是一个个算法的累积,也不是一个个任务的独立优化,而应该是系统工程,综合考虑语言、计算、场景等多种因素,不断演进融合,寻求效果满意解的过程。根据赫伯特.西蒙(图灵奖和诺贝尔奖双料得主)的有限理性模型,受到所处环境的高度复杂性和有限的信息加工能力限制,因此NLP应用落地时,我们不可能遵循”最优化“的策略,而应该以获取当前可接受的“满意解"为目标。"最优解"可以作为实验室环境下的研究目标,而”满意解“是工程化的条件下我们唯一的选择。我们提出了“语言、计算、场景”三角形满意解的NLP工程化技术路线

人工智能中工程化的NLP如何确保落地?

NLP的工程化,不是一个个算法的累积,也不是一个个任务的独立优化,而应该是系统工程,综合考虑语言、计算、场景等多种因素,不断演进融合,寻求效果满意解的过程。根据赫伯特.西蒙(图灵奖和诺贝尔奖双料得主)的有限理性模型,受到所处环境的高度复杂性和有限的信息加工能力限制,因此NLP应用落地时,我们不可能遵循”最优化“的策略,而应该以获取当前可接受的“满意解"为目标。"最优解"可以作为实验室环境下的研究目标,而”满意解“是工程化的条件下我们唯一的选择。

我们提出了“语言、计算、场景”三角形满意解的NLP工程化技术路线,希望从工程化的角度,综合语义的符号化表示、传统语言学的知识表示、深度学习的算法模型等多种技术,在具体场景需求的约束下,寻找NLP工程应用的满意解。

最小化的语言特征是基础的语言资源

基础的语言特征是有限的,否则,语言将呈不稳定态,人们之间互相理解语言也将不可能。基础语言特征,包括词库、词汇的句法语义属性、词汇之间的关联性(同义、反义、上下位)等。比如,“打败”是一个动词,“高兴”是动物的一种情绪,“胜利”和“失败”的反义关系,“胜利”和“打败”的同义关系等。这些词语的意思和它们之间的关系,无论在那个行业场景中都是基本不变的。

我们已经构建了中文、英文的基础语言特征集,其中包括80000多个常用词汇,覆盖了大部分常用词汇。据统计中文常用的5万个词可以覆盖人民日报新闻用词的99%。基础的语言特征集是分类的,比如针对情感计算的基础语言特征中包含了140多种情绪。

基础的语言特征集,必须通过人工方式构建。我们有30多人的语言学团队,经过长达10年的积累,已初步构建完善。

语言特征的泛化是必需的计算技术

语言的使用是动态的,特定场景下的新词、新用法会层出不穷的出现。比如“深度学习”原来不是一个词,但近几年被广泛使用,特指一类神经网络算法。这一类的特征表示,可以采用机器学习算法(包括深度学习),从真实语料中自动学习,对基础语言特征进行扩充和泛化。利用机器学习算法,也可以进行同义词的泛化,比如“查看、查查、查一查、查询一下、查寻一下”等是“查询”的同义词。同时,也可以开展词语关联的泛化,比如“马云-阿里巴巴”的关系和“马化腾-腾讯”的关系类似等。

机器学习得到的新词、新用法,可以通过相似度计算等算法,将学习结果与基础语言特征对齐,以获得新词对应的语言属性。比如“深度学习”是一个名词,是“算法”的下位,与“神经网络”同义等。对齐操作保证了泛化特征的一致性。

语言和算法的有效结合是关键

根据每一类语言结构的特点,有指导的选择算法。比如,对于汉语的流水句的处理,哪些语言特征是流水句的激活特征,流水句是否适合LSTM算法,哪些特征参与LSTM的运算等。而不是针对所有句法结构,采用一种LSTM模型来进行句法分析。

语言结构因为其动态性,不适合把结构本身作为机器学习的输入,而应该在输入侧,通过语料标注或规则设计,把结构进一步抽象成为一个更抽象的特征,输入给机器学习、深度学习算法。如在形容词谓语句的分析中,“形容词短语”作为一个抽象特征,输入给句子分析算法,而不用关心“形容词短语”是用什么算法得到的。相反,机器学习算法的输出,必须以语言特征或语言结构的形式,这样才能保证结果的可解释性。

我们认为,深度学习只是NLP算法库中的一部分,也许只在某一个具体的环节中效果最好,对机器学习(深度学习)算法的“有的放矢”的使用,是NLP工程化的关键。

应用场景是无法回避的约束条件

应用场景是NLP应用的需求和使用环境,不同的应用场景,其约束条件是不同的。有的场景是处理营销数据的,有的是处理客服数据的;有的场景可以提供大量的标注数据,有的只能提供有限的业务规则;有的场景是同步的,有的是异步的。NLP应用必须在满足场景约束的前提下,选择处理流程、计算算法、语料资源等内容的配置。比如,对同样一批数据,同样一个文本,营销场景和客服场景的输出要求完全不同,所用算法也可完全不同,客服场景可以用分类算法,但营销场景也许需要用抽取算法。

很多NLP应用场景下,客户都希望在很短的时间内、在没有训练语料的情况下,快速看到NLP应用的效果,实现“冷启动”。比如某电信企业,客服的动单分类有 2000 多项。电信自己整理了3个多月,每一个分类下的数据都很少,但电信也不可能在每一个细分小类,都帮助我们训练出那么大量的数据,提供给机器学习算法训练。

“冷启动”的关键是规则方法与机器学习方法的有效融合。第一步,采用规则方法,构建一批应用规则,对应用场景下的典型语料,进行规则分析,针对性的获取特征,并对典型语料进行标注。第二步,把典型语料的标注数据,作为机器学习算法的样本,利用各种机器学习(深度学习)算法去做扩充、泛化。对泛化的结果,采用抽样方法,进行人工校验,加入到典型语料中去。这样循环处理,形成一个良性循环,不断的逼近客户要求。

NLP工程化的目标

NLP系统的开发与应用,既需要尊重语言学知识,以语言学知识为指导,又需要充分利用机器学习(深度学习)技术的计算优势,以机器学习为工具,持续迭代发展,才能在工程应用中发挥NLP的能力,实现满意解。

NLP工程化期望达到以下目标:

(1)可解释性,NLP系统输出的结果,应该符合基本的语言学规律,可以用语言学的术语进行解释,而不是给出一堆杂乱无章的数据,让用户从沙海淘金。

(2)一致性,NLP系统的处理过程,应该是随着处理对象的层次和深度,而逐步叠加模块,下级模块使用上级模块的结果,方便进行优化。而不是针对每个任务,采用“一竿子插到底”的复杂算法,中间过程完全是黑盒子。

(3)即用性,NLP系统的应用,需要做到即插即用的“冷启动”,或者是在很小的数据集上进行规则表述和预训练。一切需要用户标注海量数据,才能启动的NLP系统,都是耍流氓。

(4)可迁移性,NLP系统,应该在不用大的改动前提下,即可迁移到类似场景。而不应该是千人千面,过分个性化。

(5)自知之明,NLP系统的终极目标是做到自知之明,系统对输出的结果应该有明确的置信度,哪些结果一定保证是对的,哪些一定是不对的,哪些是不确定,需要人工干预的。有了可靠的自知之明的能力,NLP系统才具备了达到人类理解水平的基本条件。

近两年很多媒体报道,计算机在阅读理解、机器翻译等领域超过了人类水平,其实是媒体的一种夸大其辞的误导,计算机只是做了端到端的匹配,匹配结果与标准答案做了个百分比的统计。计算机对阅读理解的内容一无所知,对匹配结果的对错毫无概念,从自知之明的角度衡量的话,计算机的水平可能还达不到小学一年级学生的水平。

语言理解是人工智能皇冠上的明珠,要达到真正的理解能力,道阻且长;正确处理好语言、计算、场景的融合,NLP技术已经可以在非结构化转结构化等应用方向上大展宏图,取得巨大的商业价值。

自知之明的NLP终极目标,任重道远,我们将与您一路同行。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

从零开始学微信公众号运营推广

从零开始学微信公众号运营推广

叶龙 / 清华大学出版社 / 2017-6-1 / 39.80

本书是丛书的第2本,具体内容如下。 第1章 运营者入门——选择、注册和认证 第2章 变现和赚钱——如何从0到100万 第3章 决定打开率——标题的取名和优化 第4章 决定美观度——图片的选取和优化 第5章 决定停留率——正文的编辑和优化 第6章 决定欣赏率——版式的编辑和优化 第7章 数据的分析——用户内容的精准营销 书中从微信运营入门开始,以商业变......一起来看看 《从零开始学微信公众号运营推广》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具