学习 | 如何在NLP领域干成第一件事

图片描述

周明 | 微软亚洲研究院首席研究员
来源 | 微软研究院AI头条

天然语言处理(简称NLP),是研究计算机处理人类语言的一门技术,包括:算法

  1. 句法语义分析:对于给定的句子,进行分词、词性标记、命名实体识别和连接、句法分析、语义角色识别和多义词消歧。
  2. 信息抽取:从给定文本中抽取重要的信息,好比,时间、地点、人物、事件、缘由、结果、数字、日期、货币、专有名词等等。通俗说来,就是要了解谁在何时、什么缘由、对谁、作了什么事、有什么结果。涉及到实体识别、时间抽取、因果关系抽取等关键技术。
  3. 文本挖掘(或者文本数据挖掘):包括文本聚类、分类、信息抽取、摘要、情感分析以及对挖掘的信息和知识的可视化、交互式的表达界面。目前主流的技术都是基于统计机器学习的。
  4. 机器翻译:把输入的源语言文本经过自动翻译得到另一种语言的文本。根据输入媒介不一样,能够细分为文本翻译、语音翻译、手语翻译、图形翻译等。机器翻译从最先的基于规则的方法到二十年前的基于统计的方法,再到今天的基于神经网络(编码-解码)的方法,逐渐造成了一套比较严谨的方法体系。
  5. 信息检索:对大规模的文档进行索引。可简单对文档中的词汇,赋之以不一样的权重来创建索引,也可利用一、二、3的技术来创建更加深层的索引。在查询的时候,对输入的查询表达式好比一个检索词或者一个句子进行分析,而后在索引里面查找匹配的候选文档,再根据一个排序机制把候选文档排序,最后输出排序得分最高的文档。
  6. 问答系统:对一个天然语言表达的问题,由问答系统给出一个精准的答案。须要对天然语言查询语句进行某种程度的语义分析,包括实体连接、关系识别,造成逻辑表达式,而后到知识库中查找可能的候选答案并经过一个排序机制找出最佳的答案。
  7. 对话系统:系统经过一系列的对话,跟用户进行聊天、回答、完成某一项任务。涉及到用户意图理解、通用聊天引擎、问答引擎、对话管理等技术。此外,为了体现上下文相关,要具有多轮对话能力。同时,为了体现个性化,要开发用户画像以及基于用户画像的个性化回复。

随着深度学习在图像识别、语音识别领域大放异彩,人们对深度学习在NLP的价值也寄予厚望。再加上AlphaGo的成功,人工智能的研究和应用变得煊赫一时。天然语言处理做为人工智能领域的认知智能,成为目前你们关注的焦点。不少研究生都在进入天然语言领域,寄望将来在人工智能方向大展身手。但你们经常遇到一些问题——俗话说“万事开头难”,若是第一件事情成功了,学生就能创建信心,找到窍门,从此越作越好。不然,也可能就灰心丧气,甚至离开这个领域。这里针对给出我我的的建议,但愿个人这些粗浅观点可以引发你们更深层次的讨论。编程

图片描述

建议01如何在NLP领域快速学会第一个技能?

个人建议是:找到一个开源项目,好比机器翻译或者深度学习的项目。理解开源项目的任务,编译经过该项目发布的示范程序,获得与项目示范程序一致的结果。而后再深刻理解开源项目示范程序的算法。本身编程实现一下这个示范程序的算法。再按照项目提供的标准测试集测试本身实现的程序。若是输出的结果与项目中出现的结果不一致,就要仔细查验本身的程序,反复修改,直到结果与示范程序基本一致。若是仍是不行,就大胆给项目的做者写信请教。在此基础上,再看看本身可否进一步完善算法或者实现,取得比示范程序更好的结果。网络

建议02如何选择第一个好题目?

工程型研究生,选题不少都是老师给定的。须要采起比较实用的方法,扎扎实实地动手实现。可能不须要多少理论创新,可是须要较强的实现能力和综合创新能力。而学术型研究生须要取得一流的研究成果,所以选题须要有必定的创新。我这里给出以下的几点建议。机器学习

先找到本身喜欢的研究领域。你找到一本最近的ACL会议论文集(编者按:能够参考ACL2016大会综述), 从中找到一个你比较喜欢的领域。在选题的时候,多注意选择蓝海的领域。这是由于蓝海的领域,相对比较新,容易出成果。ide

充分调研这个领域目前的发展情况。包括以下几个方面的调研:方法方面,是否有一套比较清晰的数学体系和机器学习体系;数据方面,有没有一个你们公认的标准训练集和测试集;研究团队,是否有著名团队和人士参加。若是以上几个方面的调研结论不是太清晰,做为初学者可能不要轻易进入。工具

在确认进入一个领域以后,按照建议一所述,须要找到本领域的开源项目或者工具,仔细研究一遍现有的主要流派和方法,先入门。学习

反复阅读本领域最新发表的文章,多阅读本领域牛人发表的文章。在深刻了解已有工做的基础上,探讨还有没有一些地方能够推翻、改进、综合、迁移。注意作实验的时候,不要贪多,每次实验只须要验证一个想法。每次实验以后,必需要进行分析存在的错误,找出缘由。测试

对成功的实验,进一步探讨如何改进算法。注意实验数据必须是业界公认的数据。编码

与已有的算法进行比较,体会可以得出比较通常性的结论。若是有,则去写一篇文章,不然,应该换一个新的选题。人工智能

图片描述

建议03如何写出第一篇论文?

接上一个问题,若是想法不错,且被实验所证实,就可开始写第一篇论文了。

肯定论文的题目。在定题目的时候,通常不要“…系统”、“…研究与实践”,要避免太长的题目,由于很差体现要点。题目要具体,有深度,突出算法。

写论文摘要。要突出本文针对什么重要问题,提出了什么方法,跟已有工做相比,具备什么优点。实验结果代表,达到了什么水准,解决了什么问题。

写引言。首先讲出本项工做的背景,这个问题的定义,它具备什么重要性。而后介绍对这个问题,现有的方法是什么,有什么优势。可是(注意可是)现有的方法仍然有不少缺陷或者挑战。好比(注意好比),有什么问题。本文针对这个问题,受什么方法(谁的工做)之启发,提出了什么新的方法并作了以下几个方面的研究。而后对每一个方面分门别类加以叙述,最后说明实验的结论。再说本文有几条贡献,通常写三条足矣。而后说说文章的章节组织,以及本文的重点。有的时候东西太多,篇幅有限,只能介绍最重要的部分,不须要面面俱到。

相关工做。对相关工做作一个梳理,按照流派划分,对主要的最多三个流派作一个简单介绍。介绍其原理,而后说明其局限性。

而后可设立两个章节介绍本身的工做。第一个章节是算法描述。包括问题定义,数学符号,算法描述。文章的主要公式基本都在这里。有时候要给出简明的推导过程。若是借鉴了别人的理论和算法,要给出清晰的引文信息。在此基础上,因为通常是基于机器学习或者深度学习的方法,要介绍你的模型训练方法和解码方法。第二章就是实验环节。通常要给出实验的目的,要检验什么,实验的方法,数据从哪里来,多大规模。最好数据是用公开评测数据,便于别人重复你的工做。而后对每一个实验给出所需的技术参数,并报告实验结果。同时为了与已有工做比较,须要引用已有工做的结果,必要的时候须要重现重要的工做并报告结果。用实验数听说话,说明你比人家的方法要好。要对实验结果好好分析你的工做与别人的工做的不一样及各自利弊,并说明其缘由。对于目前尚不太好的地方,要分析问题之所在,并将其列为将来的工做。

结论。对本文的贡献再一次总结。既要从理论、方法上加以总结和提炼,也要说明在实验上的贡献和结论。所作的结论,要让读者感到信服,同时指出将来的研究方向。

参考文献。给出全部重要相关工做的论文。记住,漏掉了一篇重要的参考文献(或者牛人的工做),基本上就没有被录取的但愿了。

写完第一稿,而后就是再改三遍。

把文章交给同一个项目组的人士,请他们从算法新颖度、创新性和实验规模和结论方面,以挑剔的眼光,审核你的文章。本身针对薄弱环节,进一步改进,重点增强算法深度和工做创新性。

而后请不一样项目组的人士审阅。若是他们看不明白,说明文章的可读性不够。你须要修改篇章结构、进行文字润色,增长文章可读性。

如投ACL等国际会议,最好再请英文专业或者母语人士提炼文字。


做者简介

图片描述

周明

微软亚洲研究院首席研究员、ACL候任主席(president)、中国计算机学会中文信息技术专委会主任、中国中文信息学会常务理事、哈工大、天津大学、南开大学、山东大学等多所学校博士导师。1985年毕业于重庆大学,1991年获哈工大博士学位。1991-1993年清华大学博士后,随后留校任副教授。1996-1999访问日本高电社公司主持中日机器翻译研究。他是中国第一个中英翻译系统、日本最有名的中日机器翻译产品J-北京的发明人。1999年加入微软研究院并随后负责天然语言研究组,主持研制了微软输入法、对联、英库词典、中英翻译等著名系统。近年来与微软产品组合做开发了小冰(中国)、Rinna(日本)等聊天机器人系统。他发表了100余篇重要会议和期刊论文。拥有国际发明专利40余项。

End

相关文章
相关标签/搜索