大纲

  • 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基础的更多相关文章

  1. 《利用python进行数据分析》读书笔记--第四章 numpy基础:数组和矢量计算

    http://www.cnblogs.com/batteryhp/p/5000104.html 第四章 Numpy基础:数组和矢量计算 第一部分:numpy的ndarray:一种多维数组对象 实话说, ...

  2. java面向对象编程——第二章 java基础语法

    第二章 java基础语法 1. java关键字 abstract boolean break byte case catch char class const continue default do ...

  3. 《零成本实现Web自动化测试--基于Selenium》第一章 自动化测试基础

    第一篇 Selenium 和WebDriver工具篇 第一章 自动化测试基础 1.1    初识自动化测试 自动化测试有两种常见方式 1.1.1 代码驱动测试,又叫测试驱动开发(TDD) 1.1.2 ...

  4. 【windows核心编程】 第六章 线程基础

    Windows核心编程 第六章 线程基础 欢迎转载 转载请注明出处:http://www.cnblogs.com/cuish/p/3145214.html 1. 线程的组成 ①    一个是线程的内核 ...

  5. [Python笔记][第一章Python基础]

    2016/1/27学习内容 第一章 Python基础 Python内置函数 见Python内置函数.md del命令 显式删除操作,列表中也可以使用. 基本输入输出 input() 读入进来永远是字符 ...

  6. 第一章 jQuery基础

    第一章jQuery基础 一.jQuert简介 1.什么是jQuery jQuery是javaScript的程序库之一,它是javaScript对象和实用函数的封装. jQuery是继Prototype ...

  7. 0003.5-20180422-自动化第四章-python基础学习笔记--脚本

    0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...

  8. web前端学习python之第一章_基础语法(二)

    web前端学习python之第一章_基础语法(二) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...

  9. web前端学习python之第一章_基础语法(一)

    web前端学习python之第一章_基础语法(一) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...

随机推荐

  1. 第2个C# Winform实例,寻找三角形的位置

    这里,在第一个例子的基础上,稍微做修改,达到最终定位三角形位置的目的. 先在网络上找一张包含有三角形的图片,我们这里使用一张有三个三角形和一些标记的图片来处理. 原图: 先贴结果图片:左侧,中间,右侧 ...

  2. SpringBoot入门(二):日志及自定义属性

    这一章主要说springboot中日志的配置.自定义属性的配置与读取.分环境的yml配置文件(如本地环境.测试环境.生产环境等).比较偏向实际开发,较为实用,前面一章的一些基本创建在这里就不多废话了. ...

  3. 洛谷 P3811 题解

    题面 利用暴力快速幂O(nlogn)会TLE掉: 所以对于求1~n的所有逆元要用递推公式: #include <bits/stdc++.h> using namespace std; ]; ...

  4. 在 alpine 中使用 NPOI

    在 alpine 中使用 NPOI Intro 在 .net 中常使用 NPOI 来做 Excel 的导入导出,NPOI 从 2.4.0 版本开始支持 .netstandard2.0,对于.net c ...

  5. Kafka服务不可用(宕机)问题踩坑记

    背景 某线上日志收集服务报警,打开域名报502错误码. 收集服务由2台netty HA服务器组成,netty服务器将客户端投递来的protobuf日志解析并发送到kafka,打开其中一个应用的日志,发 ...

  6. 请使用switch语句和if...else语句,计算2008年8月8日这一天,是该年中的第几天。

    请使用switch语句和if...else语句,计算2008年8月8日这一天,是该年中的第几天. #include <stdio.h> int main() { /* 定义需要计算的日期 ...

  7. 理解分布式一致性与Raft算法

    理解分布式一致性与Raft算法 永远绕不开的CAP定理 出于可用性及负载方面考虑,一个分布式系统中数据必然不会只存在于一台机器,一致性简单地说就是分布式系统中的各个部分保持数据一致 但让数据保持一致往 ...

  8. JAVA面向对象面试题带答案(墙裂推荐)

    1) 在Java中,如果父类中的某些方法不包含任何逻辑,并且需要有子类重写,应该使用(c)关键字来申明父类的这些方法. a) Finalc b) Static c) Abstract d) Void2 ...

  9. Hibernate 框架

    首先,我们先来了解一下什么是 Hibernate 框架. 什么是 Hibernate 框架? Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO ...

  10. 转载 | float 清除浮动的7种方法

    什么叫浮动:浮动会使当前标签脱离文档流,产生上浮的效果,同时还会影响周边元素(前后标签)及父级元素的位置和width,height属性.下面用一个小例子来看一看浮动的全过程:1.首先我们新建一个网页, ...