长按二维码关注~
AI小白入门
ID: StudyForAI
学习AI学习ai(爱)
期待与您的相遇~
本文根据自己的学习以及查阅相关资料的理解总结,简要的介绍一下自然语言处理(nlp)一些相关技术以及相关任务,nlp技术包括基础技术和应用技术。后续会抽空继续分专题完善这一个系列。限于作者水平有限,其中难免有错漏之处,欢迎读者斧正。
发展
一般认为1950 年图灵提出著名的“图灵测试”是自然语言处理思想的开端。20 世纪 50 年代到 70 年代自然语言处理主要采用基于规则的方法。基于规则的方法不可能覆盖所有语句,且对开发者的要求极高。这时的自然语言处理停留在理性主义思潮阶段。
70 年代以后随着互联网的高速发展,语料库越来越丰富以及硬件更新完善,自然语言处理思潮由理性主义向经验主义过渡,基于统计的方法逐渐代替了基于规则的方法。
从 2008 年到现在,由于深度学习在图像识别、语音识别等领域不断取得突破,人们也逐渐开始引入深度学习来做自然语言处理研究,由最初的词向量到 2013 年 word2vec,将深度学习与自然语言处理的结合推向了高潮,并且在机器翻译、问答系统、阅读理解等领域取得了一定成功。再到最近的emlo、bert等,也许正在揭开下一个篇章。
定义
自然语言是指汉语、英语等人们日常使用的语言,是随着人类社会发展自然而然的演变而来的语言,不是人造的语言,自然语言是人类学习生活的重要工具。或者说,自然语言是指人类社会约定俗成的,区别于人工语言,如程序设计的语言。
处理包含理解、转化、生成等过程。自然语言处理,是指用计算机对自然语言的形、音、义等信息进行处理,即对字(如果是英文即为字符)、词、句、段落、篇章的输入、输出、识别、分析、理解、生成等的操作和加工。实现人机间的信息交流,是人工智能界、计算机科学和语言学界所共同关注的重要问题。所以自然语言处理也被誉为人工智能的掌上明珠。
可以说,自然语言处理就是要计算机理解自然语言,自然语言处理机制涉及两个流程,包括自然语言理解和自然语言生成。自然语言理解是指计算机能够理解自然语言文本的意义,自然语言生成则是指能以自然语言文本来表达给定的意图。
自然语言的理解和分析是一个层次化的过程,许多语言学家把这一过程分为五个层次,可以更好地体现语言本身的构成,五个层次分别是语音分析、词法分析、句法分析、语义分析和语用分析。
语音分析是要根据音位规则,从语音流中区分出一个个独立的音素,再根据音位形态规则找出音节及其对应的词素或词。
词法分析是找出词汇的各个词素,从中获得语言学的信息。
句法分析是对句子和短语的结构进行分析,目的是要找出词、短语等的相互关系以及各自在句中的作用。
语义分析是指运用各种机器学习方法,学习与理解一段文本所表示的语义内容。 语义分析是一个非常广的概念。
语用分析是研究语言所存在的外界环境对语言使用者所产生的影响。
基础技术
基础技术包括词法分析、句法分析、语义分析等。
词法分析(lexical analysis)
词法分析包括汉语分词(word segmentation 或 tokenization)和词性标注(part-of-speech tag)等。
汉语分词:处理汉语(英文自带分词)首要工作就是要将输入的字串切分为单独的词语,这一步骤称为分词。
词性标注:词性标注的目的是为每一个词赋予一个类别,这个类别称为词性标记。比如,名词(noun)、动词(verb)等。
句法分析(syntactic parsing)
句法分析是对输入的文本句子进行分析得到句子的句法结构的处理过程。最常见的句法分析任务有下列几种:
短语结构句法分析(phrase-structure syntactic parsing):该任务也被称作成分句法分析(constituent syntactic parsing),作用是识别出句子中的短语结构以及短语之间的层次句法关系。
依存句法分析(dependency syntactic parsing):作用是识别句子中词汇与词汇之间的相互依存关系。
深层文法句法分析:即利用深层文法,例如词汇化树邻接文法(Lexicalized Tree Adjoining Grammar,LTAG、词汇功能文法(Lexical Functional Grammar,LFG)、组合范畴文法(Combinatory Categorial Grammar,CCG)等,对句子进行深层的句法以及语义分析。
语义分析(Semantic Analysis)
语义分析的最终目的是理解句子表达的真实语义。但是,语义应该采用什么表示形式一直困扰着研究者们,至今这个问题也没有一个统一的答案。语义角色标注(semantic role labeling)是目前比较成熟的浅层语义分析技术。
总而言之,自然语言处理系统通常采用级联的方式,即分词、词性标注、句法分析、语义分析分别训练模型。在使用过程中,给定输入句子,逐一使用各个模块进行分析,最终得到所有结果。
近年来,研究者们提出了很多有效的联合模型,将多个任务联合学习和解码,如分词词性联合、词性句法联合、分词词性句法联合、句法语义联合等,取得了不错的效果。
应用技术
另一方面是自然语言处理的应用技术,这些任务往往会依赖基础技术,包括文本聚类(Text Clustering)、文本分类(Text Classification)、文本摘要(Text abstract)、情感分析(sentiment analysis)、自动问答(Question Answering,QA)、机器翻译(machine translation, MT)、信息抽取(Information Extraction)、信息推荐(Information Recommendation)、信息检索(Information Retrieval,IR)等。
因为每一个任务都涉及的东西很多,因此在这里我简单总结介绍一下这些任务,等以后有时间(随着我的学习深入),再分专题详细总结各种技术。
文本分类:文本分类任务是根据给定文档的内容或主题,自动分配预先定义的类别标签。包括单标签分类和多标签文本分类,。
文本聚类:任务则是根据文档之间的内容或主题相似度,将文档集合划分成若干个子集,每个子集内部的文档相似度较高,而子集之间的相似度较低。
文本摘要:文本摘要任务是指通过对原文本进行压缩、提炼,为用户提供简明扼要的文字描述。
情感分析:情感分析任务是指利用计算机实现对文本数据的观点、情感、态度、情绪等的分析挖掘。
自动问答:自动问答是指利用计算机自动回答用户所提出的问题以满足用户知识需求的任务。
机器翻译:机器翻译是指利用计算机实现从一种自然语言到另外一种自然语言的自动翻译。被翻译的语言称为源语言(source language), 翻译到的语言称作目标语言(target language)。
信息抽取:信息抽取是指从非结构化/半结构化文本(如网页、新闻、论文文献、微博等)中提取指定类型的信息(如实体、属性、关系、事件、商品记录等),并通过信息归并、冗余消除和冲突消解等手段将非结构化文本转换为结构化信息的一项综合技术。
信息推荐:信息推荐据用户的习惯、 偏好或兴趣, 从不断到来的大规模信息中识别满足用户兴趣的信息的过程。
信息检索:信息检索是指将信息按一定的方式加以组织,并通过信息查找满足用户的信息需求的过程和技术。
参考:
1.统计自然语言处理
2.中文信息处理报告-2016
本文系作者乐雨泉 (yuquanle) 投稿,作者公众号:AI小白入门(id: StudyForAI),欢迎关注,点击文末"阅读原文"可直达原文链接,也欢迎大家投稿,AI、NLP相关即可。