nlp 语言 NLP语言处理_自然语言

一、什么是自然语言处理

自然语言处理(Natural Language Processing,简称NLP)就是用计算机来处理、理解以及运用人类语言(如中文、英文等),它属于人工智能的一个分支,是计算机科学与语言学的交叉学科。由于自然语言是人类区别于其他动物的根本标志,没有语言,人类的思维也就无从谈起,所以NLP体现了人工智能的最高任务与境界。也就是说,只有当计算机具备了处理自然语言的能力时,机器才算实现了真正的智能。

从技术角度看,NLP包括序列标注、分类任务、句子关系判断和生成式任务等。从应用角度看,NLP具有广泛的应用场景,例如:机器翻译、信息检索、信息抽取与过滤、文本分类与聚类、舆情分析和观点挖掘等等。它涉及与语言处理相关的数据挖掘、机器学习、知识获取、知识工程、人工智能研究和与语言计算相关的语言学研究等。

NLP的兴起与机器翻译这一具体任务有着密切联系。“人工智能”被作为一个研究问题正式提出来的时候,创始人把计算机国际象棋和机器翻译作为两个标志性的任务,认为只要国际象棋系统能够打败人类世界冠军,机器翻译系统达到人类翻译水平,就可以宣告人工智能的胜利。四十年后的1997年,IBM公司的深蓝超级计算机已经能够打败国际象棋世界冠军卡斯帕罗夫。而机器翻译到现在仍无法与人类翻译水平相比,由此可见NLP有多么的复杂和困难!

二、自然语言处理的发展趋势

目前,人们主要通过两种思路来进行自然语言处理,一种是基于规则的理性主义,另外一种是基于统计的经验主义。理性主义方法认为,人类语言主要是由语言规则来产生和描述的,因此只要能够用适当的形式将人类语言规则表示出来,就能够理解人类语言,并实现语言之间的翻译等各种NLP任务。而经验主义方法则认为,从语言数据中获取语言统计知识,有效建立语言的统计模型。因此只要能够有足够多的用于统计的语言数据,就能够理解人类语言。然而,当面对现实世界充满模糊与不确定性时,这两种方法都面临着各自无法解决的问题。例如,人类语言虽然有一定的规则,但是在真实使用中往往伴随大量的噪音和不规范性。理性主义方法的一大弱点就是鲁棒性差,只要与规则稍有偏离便无法处理。而对于经验主义方法而言,又不能无限地获取语言数据进行统计学习,因此也不能够完美地理解人类语言。二十世纪八十年代以来的趋势就是,基于语言规则的理性主义方法不断受到质疑,大规模语言数据处理成为目前和未来一段时期内NLP的主要研究目标。统计学习方法越来越受到重视,自然语言处理中越来越多地使用机器自动学习的方法来获取语言知识。

随着2013年word2vec技术的发表,以神经网络为基础的深度学习技术开始在NLP中广泛使用,深度学习的分布式语义表示和多层网络架构具有强大的拟合和学习能力,显著提升了NLP各种任务的性能,成为现阶段NLP的主要技术方案。

深度学习是纯数据驱动技术方案,需要从大规模标注数据中学习特定任务相关的复杂模式。一方面,有些学者开始探索面向大规模无标注文本数据的深度学习模型,如ELMo,GPT、BERT等,可以看做从大规模数据中学习知识的极致探索;另一方面,现有深度学习技术尚未考虑人类积累的丰富知识(包括语言知识、世界知识、常识知识、认知知识、行业知识等),如果将深度学习看做经验主义方法,将符号知识看做理性主义方法,那么如何充分发挥基于规则的理性主义方法和基于统计的经验主义方法的优势,两者互相补充,更好、更快地进行自然语言处理,仍然是我们需要探索的重要课题。

三、自然语言处理在BI的应用

2018年,Gartner 在其发布的魔力象限报告中,明确指出增强型分析功能是 BI 产品发展的最重要、也是最显著的发展趋势之一,其原因并不难理解:“当前企业使用的数据的规模和复杂度已经逐渐超过人类可以处理的程度,静态报表、仪表板等传统工具已经不能满足需求,而通过机器学习、人工智能等技术增强分析,可以更好地处理这些数据。而如果利用自然语言处理、人工智能等技术的增强分析就可以自动、快速地对数据进行分析,辅助分析人员得到需要的数据洞察。”

作为连续多年入选“Gartner增强分析代表厂商”和“Gartner中国人工智能创业公司代表厂商(2020)”的Smartbi正是看到了这些趋势,在2018年便开始自主研发增强分析工具Smartbi NLA,期望通过引入自然语言处理、知识图谱、推荐算法和机器问答等人工智能技术,使得Smartbi NLA可以理解用户的数据分析需求,并帮助其快速完成分析任务获得数据洞见。

Smartbi NLA的交互式对话实际上是一种特定的语义分析任务。在学术界,类似的任务最早可以追溯到1970年代提出的自然语言编程(Natural-language programming),是指将自然语言(研究比较多的是英语)翻译为特定的编程语言。在1980年代,人们又针对关系性数据库提出了自然语言数据库查询(Natural Language Database Query),也称为Text2SQL、NL2SQL等。它将用户的自然语句转为可以执行的SQL语句,从而免除业务用户学习SQL语言的烦恼,成功将NLP应用于BI领域。

Smartbi正是利用了NL2SQL技术,将自然语言通过神经网络转化为计算机可以识别的数据库查询语言。用户通过语音或者键盘输入后,“AI智能小麦”会将输入的自然语言转为语言元模型的形式,通过小麦内置的知识抽取算法,经过深度学习模型将元模型转化为机器可以理解的数据库语言。最后通过Smartbi预置的查询引擎和图形引擎,快速准确的找到用户想要的查询结果,自动生成图形输出,也可以在Smartbi中对查询结果进行组合和进一步分析。

nlp 语言 NLP语言处理_nlp 语言_02

图:NL2SQL模型原理示意图

Smartbi NLA是时下前沿的数据分析工具,简化为搜索引擎,仅仅只有一个输入框,页面直接输入描述业务问题,工具自动把数据查询出来,免去学习操作的过程,特别适合在展厅大屏、领导办公室大屏等场合使用,一经推出便广受客户欢迎。

1、Smartbi自然语言查询:临危受命

2、Smartbi自然语言查询:游刃有余

3、Smartbi自然语言查询:堪当大任

4、Smartbi自然语言查询:如影相随