我们有多么渴望被理解,自然语言处理就有多么重要

林金曙
1049     
摘要:人们对一切都会厌倦,除了对理解。

很多时候,我们有问题都会求助于搜索引擎。比如当我们遇到一个不认识的字,我们根据这个字的结构去搜索“四个又”,搜索结果会首先告诉我们“叕”字念什么、是什么意思,而不是首先出现“四个又”这几个字表面的匹配结果。为什么搜索引擎能够理解我们想要知道的是“由四个又组成的汉字”,而不是“四个又”这几个孤零零的字?这其中涉及到的,其实是人工智能的自然语言理解能力

 

作为计算机科学领域与人工智能领域中的一个重要方向,自然语言处理(Natural Language Processing,简称NLP)是指机器理解并解释人类写作、说话方式的能力,目标是让计算机/机器在理解语言上像人类一样智能,从而弥补人类交流(自然语言)和计算机理解(机器语言)之间的差距。

 

NLP 由两个主要的技术领域构成:自然语言理解和自然语言生成。自然语言理解方向,主要目标是帮助机器更好理解人的语言,包括基础的词法、句法等语义理解,以及需求、篇章、情感层面的高层理解。自然语言生成方向,主要目标是帮助机器生成人能够理解的语言,比如文本生成、自动文摘等。

 

NLP是如何理解我们的?

 

词法分析

 

分词——这是NLP的基础层次,因为词是表达意义的最小单位。英语、法语等西方语言中有空格作为词与词之间的间隔,相对易认、易解析,而汉语、日语等东方语言的词与词之间则没有明确分界符,因此首先要对句子进行分词,将句子切分成具有语义合理性和完整性的词汇序列,才能做进一步自然语言处理。



词性标注——这是为自然语言文本中的每个词汇赋予一个词性的过程。比如“建议”这个词,既可以动词也可以是名词,做动词时指“提出自己的主张”,做名词时指“所提出的主张”,在一定的上下文中,通过对词语进行恰如其分的词性标记,能够在一定程度上消解歧义。



命名实体识别——又称专名识别,是指识别自然语言文本中具有特定意义的实体,包括人名、地名、机构名、时间日期等,是信息提取、问答系统、机器翻译等应用领域的重要基础工具。命名实体识别的准确性至关重要,直接决定了在基础词汇处理引入的错误是否传递至句法以及篇章处理阶段。

 

句法分析

 

句法分析是NLP的关键技术之一,在机器翻译、自动问答、知识抽取等领域都可以应用,其基本任务是确定句子的句法结构或者句子中词汇之间的依存关系,一方面能够确定语言的语法体系,另一方面则能够根据给定的语法体系,自动推导出句子的句法结构,进而提取句子主干、核心词等。

 例如,下图所示的依存句法分析是句法分析中较常使用的一种方法,它能够利用句子中词与词之间的依存关系来表示词语的句法结构信息 (如主谓、动宾、定中等结构关系),并用树状结构来表示整句的结构 (如主谓宾、定状补等),从而更好地理解句子。



词向量

 

词向量是NLP中的一组语言建模和特征学习技术的统称,能够将语言词表中的词映射成一个长度固定的向量,从而把人的语言转换成计算机的语言,便于进行数学处理。如下图所示,词表中所有的词向量构成了一个向量空间,每一个词都是这个词向量空间中的一个点,利用这种方法,能够实现文本的可计算。



NLP可以如何赋能金融业?

 

我们看一个NLP在金融行业应用的典型场景——智能客服。

 

常见问题解答(Frequently Asked Questions,简称FAQ)是智能客服的一项重要工作。在处理FAQ方面,企业一般会根据客户的常见问题建立一个知识库,在知识库中,每一个标准问题都会有一个详细的答案与之对应。由于语言的多样性和灵活性,客户提出的问题往往和企业知识库的标准问题有一定差异,给智能客服提出了挑战。怎样才能让智能客服根据客户的提问在知识库中找到意思最接近的一个标准问题,进而将该问题的答案返回给客户?这里可以运用NLP技术进行短文本相似度计算。比如当客户问“请问晚上可以进行手机开户么”,经过短文本相似度计算后,与该问题相似度最大的标准问题是“自助开户办理时间”,智能客服就会把相应的回答提供给客户。

 

NLP能做的远不仅于此。在金融领域,每天会产生大量的新闻资讯和公告,为我们提供丰富的信息。那么如何才能从信息的海洋中更快速、更准确地提取核心信息,进而为投资决策、风险控制等提供服务呢?这里最核心的技术就是NLP。目前,已经有诸多NLP金融应用浮出水面:

对于客服——除了上文提到的FAQ短文本相似度计算,NLP还可应用于意图分类、问题聚类、上下文对话、多轮会话等,将会大大提高智能客服的效率。

对于证券投资——NLP可以为量化投资贡献因子,如热点挖掘、舆情分析、事件驱动分析等。

对于大数据风控——NLP可以为构建用户画像、企业画像提供技术支持,如Tag抽取技术、法律文书(原被告、诉讼金额、诉讼原因)抽取等。

对于投研——NLP可以减少资讯处理工作量,快速获取业绩预告、分红送转等公告信息,实现资讯二级行业分类、资讯摘要,进行资讯情感正负面判断等。

 

有点难的NLP,还需探索更多解决方案

 

难点一:语言的多样性

 

在证券领域,仅仅银证转账的相关问题就有超过3000种描述方式。语言的多样性,为计算机理解人类语言带来了难度。在深度学习被广泛使用以前,传统机器学习需要大量人工提取特征,能够解决相当一部分问题。现在,在拥有大量语料数据的情况下,我们可以通过深度学习Bi-LSTM算法来更好地解决语言表达的多样性问题。

 

难点二:语言的歧义性

 

在一则笑话中,一个游客问一个南京人:“南京市长是不是叫江大桥?”为什么会这么问呢?因为他在过江的时候看到一个广告牌上写着“南京市长江大桥欢迎您!”在这个语境下,他错误地将“南京市/长江大桥”断句为“南京/市长/江大桥”。分词技术也是这样,可能会因为语言的歧义性而闹出类似笑话。目前依靠语法规则无法解决分词的歧义问题,还是要靠统计语言模型(如CRF、字嵌入+Bi-LSTM+CRF)等来解决。

 

难点三:语言的鲁棒性

 

当我们在一些非正式场合使用文字时,有时会使用一些不规范的用语,夹带一些错别字、拼音等,比如“开户腰带身份证”、“最近大盘zou势怎么样”。由于语言具有较强的鲁棒性,这些有误的表述通常也能为人所理解。而这对于计算机来说,是一个理解难点。解决这一难点,我们可以在分词前的预处理加入拼音纠错、拼音转化等环节。

 

难点四:语言对知识的依赖

 

我们看“其实”这个词,一般来说是副词,比如“其实这个问题也不是没办法解决”,不过也有其他的意思,一家公司董事长的名字也叫其实,有一首歌的名字也叫做《其实》。这种由于知识依赖而产生的实体歧义的问题,我们需要集合上下文语境来解决,这方面常用的NLP技术方案包括基于CRF的实体消歧、基于知识图谱的实体消歧等。

 

虽然NLP的发展中尚有诸多难点,但是无可否认的是,随着大数据、深度学习等技术与NLP相互融合、相互促进,NLP迎来了最好的发展时代。能够让计算机真正理解我们的NLP,正在把人工智能推向一个新的高度——能理解、会思考的认知智能,这让我们能够对未来有更大的想象空间。一场人机关系变革正在进行中,面对变革,我们都应该找准自己的定位,立即行动起来。

未经授权禁止转载,详情见转载须知

联系我们

恒 生 技 术 之 眼