作者 yuquanle

来自 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

ps:感觉文章不错的,可以点击文末bar进行关注哒!

推荐阅读:

一大批历史精彩文章啦

详解Transition-based Dependency parser基于转移的依存句法解析器

经验 | 初入NLP领域的一些小建议

学术 | 如何写一篇合格的NLP论文

干货 | 那些高产的学者都是怎样工作的?

是时候研读一波导师的论文--一个简单有效的联合模型

近年来NLP在法律领域的相关研究工作


好文!我在看

干货 | 一文轻松了解NLP所有相关任务简介!相关推荐

  1. python语言在命名上是什么敏感的_一文轻松掌握python语言命名规范规则

    和C/C++.Java等语言一样,python在命名上也有一套约定俗成的规则,符合规范的命名可以让程序的可读性大大增加,从而使得代码的逻辑性增强,易于自己和其他协作者在以后的拓展中理解代码的意义,从而 ...

  2. python语言命名规则-一文轻松掌握python语言命名规范规则

    和C/C++.Java等语言一样,python在命名上也有一套约定俗成的规则,符合规范的命名可以让程序的可读性大大增加,从而使得代码的逻辑性增强,易于自己和其他协作者在以后的拓展中理解代码的意义,从而 ...

  3. 一文读懂NLP之隐马尔科夫模型(HMM)详解加python实现

    一文读懂NLP之隐马尔科夫模型(HMM)详解加python实现 1 隐马尔科夫模型 1.1 HMM解决的问题 1.2 HMM模型的定义 1.2.1HMM的两个假设 1.2.2 HMM模型 1.3 HM ...

  4. 一文看懂NLP神经网络发展历史中最重要的8个里程碑!

    一文看懂NLP神经网络发展历史中最重要的8个里程碑! https://mp.weixin.qq.com/s/gNZiiEfsQjlF9tArNDIt5Q 作者|Sebastian Ruder 译者|小 ...

  5. etal斜体吗 参考文献_参考文献方面毕业论文格式模板,与文下载****北京化工大学学报相关论文下载...

    参考文献方面毕业论文格式模板,与文下载****北京化工大学学报相关论文下载 这是一篇参考文献方面毕业论文提纲范文,与文下载****北京化工大学学报相关毕业论文格式模板.是写论文专业与参考文献及内容及同 ...

  6. Unicode详解 真干货! 一文带你手撕Unicode

    Unicode详解 真干货! 一文带你手撕Unicode 如果有错误也希望大佬指正! Unicode 字符集: https://home.unicode.org/ 可以使用编码工具根据下面的内容自己尝 ...

  7. 一文读懂JS继承相关知识点

    一文读懂JS继承相关知识点 Javascript 面向对象编程(一):封装 一. 生成实例对象的原始模式 二. 原始模式的改进 三. 构造函数模式 四.构造函数模式的问题 五. Prototype模式 ...

  8. 1000篇干货好文!量子技术——进阶篇

    阅读原文 1000篇干货好文!量子技术--入门篇  https://bbs.aliyun.com/read/581500.html    1000篇干货好文!量子技术--进阶篇  https://bb ...

  9. 1000篇干货好文!量子技术——专家观点篇

    1000篇干货好文!量子技术--入门篇  https://bbs.aliyun.com/read/581500.html     1000篇干货好文!量子技术--进阶篇  https://bbs.al ...

  10. 专利撰写相关文档整理打包及相关基础知识打包

    因为要撰写专利所以打包了需要的相关的文档以及涉及的相关知识,资料很完善,自己也是用的这里的模板 获取方式见评论区

最新文章

  1. Rhel7 Ldap为本地用户认证方式,设置域、服务器位置和下载key
  2. Bootstrap初学(一)
  3. mysql where 拼接_分一个mysql拼接where语句的Directive,并请教一个问题
  4. ProE常用曲线方程:Python Matplotlib 版本代码(玫瑰曲线)
  5. 我们家的HTML5捣蛋王开始行动了
  6. 简单C#生成静态及相关读取模板文件
  7. 无人驾驶项目——交通标志识别
  8. 关于延拓定理的一点注解
  9. 还不知道 XR、AR、VR、MR 有什么不同?
  10. 时间节点管理的自我反省
  11. Java中的数组注意点
  12. 阮一峰:值得分享给开发者的 Authing 身份云
  13. 悬浮窗——判断及跳转(包含OPPO 5.1 系统等)
  14. matlab标题斜体_matlab 斜体 正体
  15. java开发中遇到的问题_Java开发过程中遇到的问题及解决方法
  16. [转]Cisco小失误,大麻烦
  17. Linux云计算架构师:SSHD服务搭建管理和防止暴力破解
  18. NDK学习笔记:JNI调用Java层方法创建Native的AudioTrack播放PCM(方法签名,CallXXXMethod)
  19. JVM--GC相关记录
  20. 抽纸(面巾纸),卫生纸,湿巾纸,厨房用纸,

热门文章

  1. RedHat Linux设置yum软件源为本地ISO
  2. Linux下的压缩和解压缩命令——compress/uncompress
  3. Windows最常用的几个网络CMD命令总结
  4. Emeditor 常用的正则表达式
  5. 关于nginx性能优化CPU参数worker_cpu_affinity使用说明
  6. 【leetcode】在MATLAB中,有一个非常有用的函数 reshape,它可以将一个矩阵重塑为另一个大小不同的新矩阵,但保留其原始数据。
  7. vim修改tab默认4个空格
  8. 20172330 2018-2019-1 《程序设计与数据结构》实验一报告
  9. EF安装和更新数据库
  10. linux软链接和硬链接的区别