自然语言处理系列-1.什么是NLP?
常常会听到有人说,自然语言处理(NLP)是人工智能技术(AI)皇冠上的明珠。那么,从这句话上就能够看到,目前我们常常说的NLP其实是AI技术的一个分支,而且是较难的那一个分支。
那么,到底什么是NLP呢?大概这个问题会在我们从事NLP研究和学习的过程中会一直存在,当你处于不同的阶段,应该会有不同的理解。小Dream也只能说一说在目前这个阶段,对NLP的一些理解。
所谓“自然语言”,是相对于计算机语言(计算机能够理解的语言,如汇编、C语言等)而言的,也就是人类日常使用的语言。因为计算机设计之初主要是用于计算,或者完成某一项有明确规则任务。所以计算机语言与人类日常使用的语言存在很大的差异,计算机不能直接理解人类语言的含义,不能直接同人类进行沟通。要想实现计算机的智能化,不能够理解人类语言,是必须要跨越的一道障碍。因为,人类语言承载了人的思考、文化等,是每个人对外沟通的最主要手段。NLP就是为了解决这样一个问题而出现的技术。他希望能够使得计算机能够理解人类的语言,甚至是语言背后的文化与意图。例如说,当你说“我饿了”,计算机能够明白你肚子饿了,并且提出帮你定外卖;当你说“保护好你的菊花”,计算机能够结合当时的情境,明白你说的菊花到底是哪个菊花。
1. NLP技术的主要范畴
1)语音识别
顾名思义,就是将语音转化为文字。这一部分,小Dream还没机会涉及到,短时间应该不会涉及,感兴趣的小伙伴可以出门左转,百度一下。
2)分词、实体识别等序列标注问题
分词和实体识别是自然语言处理比较基础的部分,但是非常的重要。小Dream之前涉及过实体识别相关的工作,所以会在下一篇NLP系列文章中介绍相关的工作,敬请关注啦。
3)机器翻译
这是NLP领域比较早的一个工作,谷歌的机器翻译已经能够做到较好的水平。谷歌在2018年,利用attention技术构建的Transformer模型,是目前在这一领域比较大的进展。
4)对话系统
智能客服,聊天机器人等都需要用到这一项NLP技术。小Dream未来一段时间都会从事这项工作的研究及开发,所这一方面应该做一个较长的连载了。
5)文本摘要
6)自然语言生成
最近,OPENAI发布的GPT2.0具有很高的自然语言生成能力,预期会对自然语言处理技术产生不小的影响,感兴趣的同学可以参见如下链接:https://github.com/openai/gpt-2
7)文字蕴含
8)其他方面
2. NLP技术的难点
1)单词的边界界定
在口语中,词与词之间通常是连贯的,而界定字词边界通常使用的办法是取用能让给定的上下文最为通顺且在文法上无误的一种最佳组合。在书写上,汉语也没有词与词之间的边界。
2)词义的消歧
在各国的语言中,多义词的现象都比较多。NLP常常需要根据词语的上下文决定目前的语境环境下,该词的具体含义。
3)句法的模糊性
自然语言的文法通常是模棱两可的,针对一个句子通常可能会剖析出多棵剖析树,而我们必须要仰赖语意及前后文的资讯才能在其中选择一棵最为适合的剖析树。
4)语言的概括性
句子常常并不只是字面上的意思;例如,“你能把盐递过来吗”,一个好的回答应当是把盐递过去;在大多数上下文环境中,“能”将是糟糕的回答,虽说回答“不”或者“太远了我拿不到”也是可以接受的。再者,如果一门课程去年没开设,对于提问“这门课程去年有多少学生没通过?”回答“去年没开这门课”要比回答“没人没通过”好。
---------------------------------------------------------------------------------------------------------------------------------
常常在想,生活的意义是什么?挣钱,买房,开豪车或许都很重要。但是真正能让内心平静的往往是亲近之人的笑容、获取知识的满足感。
更多的AI知识,关注“Dream看AI”,用简单、朴实的语言介绍AI技术。
自然语言处理系列-1.什么是NLP?的更多相关文章
- NLP自然语言处理系列5-支持向量机(SVM)
1.什么是支持向量机 支持向量机(Support Vector Machine,SVM)是一种经典的分类模型,在早期的文档分类等领域有一定的应用.了解SVM的推导过程是一个充满乐趣和挑战的过程,耐心的 ...
- 自然语言处理系列-4条件随机场(CRF)及其tensorflow实现
前些天与一位NLP大牛交流,请教其如何提升技术水平,其跟我讲务必要重视“NLP的最基本知识”的掌握.掌握好最基本的模型理论,不管是对日常工作和后续论文的发表都有重要的意义.小Dream听了不禁心里一颤 ...
- Python自然语言处理-系列一
一:python基础,自然语言概念 from nltk.book import * 1,text1.concordance("monstrous") 用语索引 2,tex ...
- Python自然语言处理系列之模拟退火算法
1.基本概念 模拟退火算法(Simulated Annealing,SA)是一种模拟固体降温过程的最优化算法.其模拟的过程是首先将固体加温至某一温度,固体内部的粒子随温度上升慢慢变为无序的状态,内能增 ...
- Python自然语言处理 - 系列四
一 如何使用形式化语法来描述无限的句子集合的结构? --上下位无关文法 1.1 一个例子: grammar1 = nltk.parse_cfg(""&q ...
- Python自然语言处理 - 系列三
有监督分类过程 ![enter image description here][1]例子:涉及一个特征器,给定一个姓名分析出是男性名字还是女性名字 分析:男性和女性的名字有一些鲜明的特点.以a,e 和 ...
- 【NLP】蓦然回首:谈谈学习模型的评估系列文章(一)
统计角度窥视模型概念 作者:白宁超 2016年7月18日17:18:43 摘要:写本文的初衷源于基于HMM模型序列标注的一个实验,实验完成之后,迫切想知道采用的序列标注模型的好坏,有哪些指标可以度量. ...
- 【NLP】基于自然语言处理角度谈谈CRF(二)
基于自然语言处理角度谈谈CRF 作者:白宁超 2016年8月2日21:25:35 [摘要]:条件随机场用于序列标注,数据分割等自然语言处理中,表现出很好的效果.在中文分词.中文人名识别和歧义消解等任务 ...
- 【NLP】前戏:一起走进条件随机场(一)
前戏:一起走进条件随机场 作者:白宁超 2016年8月2日13:59:46 [摘要]:条件随机场用于序列标注,数据分割等自然语言处理中,表现出很好的效果.在中文分词.中文人名识别和歧义消解等任务中都有 ...
随机推荐
- Redis学习二:Redis入门介绍
一.入门概述 1.是什么 Redis:REmote DIctionary Server(远程字典服务器) 是完全开源免费的,用C语言编写的,遵守BSD协议,是一个高性能的(key/value)分布式内 ...
- JavaScript事件代理入门
事件代理(Event Delegation),又称之为事件委托.是 JavaScript 中常用绑定事件的常用技巧. 顾名思义,“事件代理”即是把原本需要绑定的事件委托给父元素,让父元素担当事件监听的 ...
- [转载]内存的一些magic number和debug crt
原文:http://www.360doc.com/content/13/0105/17/6295074_258392439.shtml 调试过debug版本的vc程序的人一定对0xCCCCCCCC和0 ...
- IIS 无法显示网页问题
今天服务器上的项目突然无法访问,之前也碰到过,都是重启服务器解决的,因为重启IIS无效,另外检查发现w3wp.exe进程正常,其他端口及相关的都没什么问题,最后无奈只能想到用重启来解决了,今天又出现这 ...
- [hadoop]hadoop2.6完全分布式环境搭建
在经过几天的环境搭建,终于搭建成功,其中对于hadoop的具体设置倒是没有碰到很多问题,反而在hadoop各节点之间的通信遇到了问题,而且还反复了很多遍,光虚拟机就重新安装了4.5次,但是当明白了问题 ...
- linux学习记录.5.git & github
参考 https://www.linuxidc.com/Linux/2016-11/136769.htm 安装 安装 Git: apt-get install git 查看当前版本: git --ve ...
- Python Dict用法
Operation Result len(a) the number of items in a 得到字典中元素的个数 a[k] the item of a with key k 取得键K所对应的值 ...
- 某大型网络社区传播性XSS分析
某大型网络社区传播性XSS分析 这个XSS存在于天涯某个不起眼的子论坛,通过发布新帖子可以触发. 漏洞分析 论坛针对XSS有一定过滤措施,例如转义单双引号,过滤左右尖括号等等.所 ...
- C# 各种类型的转换
/// <summary> /// 一些常用的方法 /// 1.一些高效的转换方法 /// </summary> public class Util { #region Obj ...
- linq和ef关于group by取最大值的两种写法
LINQ: var temp = from p in db.jj_Credentials group p by p.ProfessionID into g select new { g.Key, Ma ...