第1章 NLP基础
大纲
NLP基础概念
NLP的发展与应用
NLP常用术语以及扩展介绍
1.1 什么是NLP
- 基本分类
自然语言生成(Natural Language Generation,NLG)
指从结构化数据中以读取的方式自动生成文本,主要包括三个阶段:
- 文本规划:完成结构化数据中的基础内容规划;
- 语句规划:从结构化数据中组合语句来表达信息流;
- 实现:产生语法通顺的语句来表达文本;
研究任务
- 机器翻译
- 情感分析
- 智能问答
- 文摘生成
- 文本分类
- 舆论分析
- 知识图谱
1.2 NLP的发展历程
萌芽期(1956年以前)
贝叶斯方法、隐马尔可夫、最大熵、支持向量机……,主流仍为基于规则的理性主义方法;
快速发展期(1980~1999年)
基于统计、基于实例和基于规则的语料库技术在这一时期蓬勃发展;
突飞猛进期(2000年至今)
神经网络与深度学习;
1.3 NLP相关知识的构成
基本术语
- 分词(segment)
- 词性标注(part-of-speech tagging)
命名实体识别(NER,Named Entity Recognition)
指从文本中识别具有特定类标的实体(常为名词),如人名、地名、机构名、专有名词等;
句法分析(syntax parsing)
目的是解析句子中各个成分的依赖关系;
- 指代消解(anaphora resolution)
- 情感识别(emotion recognition)
- 纠错(correction)
- 问答系统(QA system)
知识结构
NLP是一门跨学科科学,体系化与特殊化并存,其知识体系如下:
- 句法语义分析:针对目标句子,进行各种句法分析;
- 关键词抽取:抽取目标文本中的主要信息;
- 文本挖掘:主要包含对文本的聚类、分类、信息抽取、摘要、情感分析及对挖掘的信息和知识的可视化、交互式的呈现界面;
- 信息检索:对大规模的文档进行索引;
- 机器翻译:将输入的源语言文本通过自动化翻译转化为另一种语言的文本;
- 问答系统:针对某个自然语言表达的问题,由问答系统给出一个精确答案;
- 对话系统:系统通过多回合对话,与用户进行聊天、问答、完成某项任务;
1.4 语料库
1.5 探究NLP的几个层面
第一层面:词法分析
分词
词性标注
目的是为每个词赋予一个类别;
第二层面:句法分析
对输入的文本以句子为单位,进行分析从而得到句子的句法结构的处理过程;
第三层面:语义分析
语义角色标注(semantic role labeling)是当前较为成熟的浅层语义分析技术;
第1章 NLP基础的更多相关文章
- 《利用python进行数据分析》读书笔记--第四章 numpy基础:数组和矢量计算
http://www.cnblogs.com/batteryhp/p/5000104.html 第四章 Numpy基础:数组和矢量计算 第一部分:numpy的ndarray:一种多维数组对象 实话说, ...
- java面向对象编程——第二章 java基础语法
第二章 java基础语法 1. java关键字 abstract boolean break byte case catch char class const continue default do ...
- 《零成本实现Web自动化测试--基于Selenium》第一章 自动化测试基础
第一篇 Selenium 和WebDriver工具篇 第一章 自动化测试基础 1.1 初识自动化测试 自动化测试有两种常见方式 1.1.1 代码驱动测试,又叫测试驱动开发(TDD) 1.1.2 ...
- 【windows核心编程】 第六章 线程基础
Windows核心编程 第六章 线程基础 欢迎转载 转载请注明出处:http://www.cnblogs.com/cuish/p/3145214.html 1. 线程的组成 ① 一个是线程的内核 ...
- [Python笔记][第一章Python基础]
2016/1/27学习内容 第一章 Python基础 Python内置函数 见Python内置函数.md del命令 显式删除操作,列表中也可以使用. 基本输入输出 input() 读入进来永远是字符 ...
- 第一章 jQuery基础
第一章jQuery基础 一.jQuert简介 1.什么是jQuery jQuery是javaScript的程序库之一,它是javaScript对象和实用函数的封装. jQuery是继Prototype ...
- 0003.5-20180422-自动化第四章-python基础学习笔记--脚本
0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...
- web前端学习python之第一章_基础语法(二)
web前端学习python之第一章_基础语法(二) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...
- web前端学习python之第一章_基础语法(一)
web前端学习python之第一章_基础语法(一) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...
随机推荐
- google、谷歌浏览截图
对于前端好用的浏览器---谷歌浏览器(没有插件)截取全屏很难受! 特备是前端,想截图下来,好好的量一下容器之前的尺寸(手动恼火) 对于程序员来说不一定需要插件,有很多大佬应该都知道, 小白记忆不好,每 ...
- Java中Random随机数
java中一般有两种随机数,一个是Math中random()方法,一个是Random类. 一.Math.random() 随即生成0<=x<1的小数. 实例:如何写,生成随机生成出0~10 ...
- PHP验证身份证格式
互联网公司对身份证验证的需求越来越多,然而普通的小公司是无法对接公安部门的身份认证系统的.几乎都是在网上买一些大的互联网公司的一些认证服务.即使是便宜一些的认证价格也达到了10万次/万元.也就是一角钱 ...
- 使用 Netty 实现一个 MVC 框架
NettyMVC 上面介绍 Netty 能做是什么时我们说过,相比于 SpringMVC 等框架,Netty 没提供路由等功能,这也契合和 Netty 的设计思路,它更贴近底层.下面我们在 Netty ...
- 同时运行多个 tomcat 修改端口
修改 tomcat 配置文件,路径: tomcat_home/conf/server.xml 1.HTTP端口,默认8080,如下改为8081 <Connector connectionTim ...
- [NUnit]No results
Results (nunit3) saved as TestResult.xmlCommitting...No results, this could be for a number of reaso ...
- ThreadLocal为什么会内存泄漏
1.首先看下ThreadLocal的原理图: 在ThreadLocal的生命周期中,都存在这些引用. 其中,实线代表强引用,虚线代表弱引用: 2.ThreadLocal的实现:每个Thread维护一个 ...
- Linux curl 命令详解
命令概要 该命令设计用于在没有用户交互的情况下工作. curl 是一个工具,用于传输来自服务器或者到服务器的数据.「向服务器传输数据或者获取来自服务器的数据」 可支持的协议有(DICT.FILE.FT ...
- Netty学习(二)-Helloworld Netty
这一节我们来讲解Netty,使用Netty之前我们先了解一下Netty能做什么,无为而学,岂不是白费力气! 1.使用Netty能够做什么 开发异步.非阻塞的TCP网络应用程序: 开发异步.非阻塞的UD ...
- 使用 RxJava 进行嵌套串行网络请求的一种方法
需求 有这样一个列表数据,它包含了商店+订单的信息,获取订单列表时,订单实体中会包含商店的 ID,而列表显示时需要商店的名称和 logo,这时候就需要进行嵌套串行网络请求了. 关键词 flatMap ...