复旦邱锡鹏教授:云时代,NLP也将是一种基础服务

来源:互联网 发布:淘宝店铺装修设计师 编辑:程序博客网 时间:2024/06/01 10:22

  复旦自然语言处理(简称FNLP),是上海复旦大学计算机学院邱锡鹏教授(微博:@邱锡鹏)带领的团队研发出的一套基于机器学习的中文自然语言文本处理的开发工具包,该工具包包含了为实现这些任务的机器学习算法和数据集。

  目前,邱锡鹏教授是复旦大学计算机学院媒体计算研究所成员,主要研究方向是自然语言处理、自动问答系统以及统计机器学习。邱锡鹏教授所在团队也是国内最早从事自然语言处理的课题组之一,学术带头人为吴立德教授和黄萱菁教授,在理论研究和工程实际方面都有非常丰富的成果。不但在相关领域的权威国际会议发表了许多论文外,也和国内外很多单位进行合作,开发了自动问答、舆情分析、车载语音交互等实际应用系统。

  谈自然语言处理发展现状与应用场景

  在目前信息爆炸的环境下,如何去获取有价值的信息就成为一项重要的研究课题。而在互联网中,大量的信息都是以文本方式存在的。因此,自然语言处理技术是互联网信息时代不可或缺的技术,学术界和工业界都非常重视。

  目前,自然语言处理的主流技术主要是以统计机器学习为基础的,因此这些技术的性能就依赖两个因素:一是针对不同任务的统计模型和优化算法,二是相应的大规模语料库。得益于这两方面的快速进展,自然语言处理技术也比早期有了飞跃式的发展。

  在国内外水平对比方面,不管是在学术研究还是在应用产品上,国内和国外并没有明显的差距。在很多方面国内的研究水平还处于领先水平。在自然语言处理的权威国际期刊和会议上,来自国内的论文也很多。特别是在和中文处理相关的领域,因为语言背景的缘故,主要是国内的很多高校和公司在研究,并且技术水平也非常高。

  提到自然语言处理技术的应用场景,大家可能都会想到语音识别、机器翻译等。事实上,除了语音识别、机器翻译等自成体系的应用场景之外,自然语言处理的很多技术都已经大量应用在很多产品中。比如拼音输入法中的统计语言模型,新闻聚合中的文本分类和聚类,以及在很多产品中都使用的中文分词等等。

  在未来,自然语言处理技术会成为各种应用和产品的基础技术,特别是在大数据分析、人机交互等方面会有大量的应用。

  谈自然语言处理技术发展两大瓶颈

  从大的方面来说,主要的瓶颈有两个——一是大规模语料库,二是语义表示。

  第一,大规模语料库。

  之前提到,目前主流的自然语言处理技术是以统计机器学习为基础的,这就需要大规模的语料库。在很多任务中,这些语料库是需要人工构建的,这是非常费力的工作。如果每个研究团队都首先去构建自己的语料库,那么研究创新的速度就会非常慢。因此,数据共享是一个可以促进研究发展的必不可少的因素。可以说,自然语言处理的这些年的快速发展离不开一些公开的语料库,比如 WordNet、 Penn Treebank等。

  此外,因为人工标注的语料库毕竟是费时费力的工作,因此还需要从模型和算法方面去研究如何利用大量的无人工标注或部分标注的数据,也就是半监督学习,但这方面的研究还不是特别成熟。

  二是语义表示。

  要使得自然语言处理技术大规模地应用并普及,就需要建立基础技术和具体应用的链接。其中,最关键的就是表示出自然语言的语义,并且这些语义是可计算的。比如在人机交互中,首先需要理解用户的意图,这里的意图就是一种语义,并且和当时的情景(地理位置、用户信息、历史对话信息等)相关的。比如,用户提到“北京”,人机交互系统只得到“北京”这个词本身远远不够的,还需要知道“北京”的各种含义以及当时的情景,才能判断用户意图。

  反过来,如果有了语义,也可以提高自然语言处理底层技术的准确率。目前,在语义方面的研究也不是很成熟,并且也依赖其他相关研究的发展,比如知识图谱等。

  谈FNLP项目特性与未来发展方向

  FNLP是国内最早开源的自然语言处理项目之一。和其他项目相比,FNLP的特征主要有几个方面。

  一是和最前沿的研究成果保持同步,这也是我们开源FNLP的初衷:使用先进的研究成果,为中文自然语言处理的研发者提供一个基础平台,降低中文分析的门槛,促进中文自然语言处理技术的普及和发展。

  二是将各种基础工具(中文分词、词性标注以及句法分析等)整合到统一的机器学习框架中,使得整个系统程序架构非常简单。并且所有核心算法都是自己开发的,自成体系,不依赖其他的机器学习工具,其他开发者可以很方便地进行二次开发。

  三是FNLP针对中文在模型、算法以及语料库建设上都进行了很多优化,使得中文分析的准确率有很大的提升。

  FNLP开源后,逐渐被很多公司和研究团队使用。在此过程中,也收到很多的反馈,包括增加功能的需求、代码的改进等,这些反馈也促进我们进一步的研究。对于一个开源项目,除了性能上要不断优化外,提高易用性也是一个非常关键的因素。比如,一个完善的使用文档就非常重要,可惜在这方面因为精力不足,我们做得还很不够。这里,也希望FNLP的使用者也多提供些FNLP的使用教程以及案例。

  FNLP未来工作会主要围绕深度学习以及语料库建设来进行。深度学习不但提供了一个更好的学习框架,也给语义表示的研究开辟了一种新的途径,有可能会在今后几年取得一些突破。在语料库建设上,特别是在如何利用众包的方式进行有效的语料库构建,我们已经积累了一定的经验,但还在探索更有效的方式。目前,我们已经标注了一定规模的数据,并且也计划共享出来。

  云计算时代:NLP也将是一种基础服务

  虽然我们的初衷之一是降低中文分析的门槛,但是自然语言处理毕竟对一般开发者来说需要一个摸索、熟悉的过程。

  目前,云计算也逐渐成为一个基础设施,给很多个人以及中小企业提供了低成本的解决方案。自然语言处理技术也会逐渐成为一种基础服务。因此,我们和微软、云角合作,希望将开发一个基础的自然语言处理服务平台,使得用户可以低成本、快速地在此基础上开发自己的上层应用。

  借助微软Azure,用户可以在几分种内完成 NLP on Azure站点的部署,立即开始对FNLP各种特性的试用,或者以REST API的形式调用FNLP的语言分析功能,而无需关注基础结构,只需专注于应用程序的业务逻辑。PaaS(平台即服务)的特性隐藏了基础设施的细节,让用户无须关心操作系统、运行环境、安全补丁、错误恢复等问题,这使得用户了解FNLP各种特性的成本大大降低。kangmei.zx85.cn在国内也可以使用由世纪互联运营的 Windows Azure公有云平台,实现相同的功能。

  寄语NLP开发者:从具体问题入手

  要从事自然语言处理技术相关研究和开发,最好是从某个具体问题入手,了解最新的研究进展,然后借助一些开源的工具,逐渐了解其中的理论背景以及技术细节。

  当然,在此过程中也需要逐渐掌握一些基本的理论知识,比如概率论、统计机器学习以及自然语言处理本身的理论知识等。遗憾的是,目前还没有兼顾理论和实践的入门教材,这在一定程度上也增加了自然语言处理的入门难度。

0 0
原创粉丝点击