NLP课件(自然语言处理课件)
- 格式:ppt
- 大小:3.44 MB
- 文档页数:34


NLP 自然语言处理
NLP (Natural Language Processing) 是人工智能(AI)的一个子领域。
自然语言是人类智慧的结晶,自然语言处理是人工智能中最为困难的问题之一,而对自然语言处理的研究也是充满魅力和挑战的。随着计算机和互联网的广泛应用,计算机可处理的自然语言文本数量空前增长,面向海量信息的文本挖掘、信息提取、跨语言信息处理、人机交互等应用需求急速增长,自然语言处理研究必将对我们的生活产生深远的影响。
[编辑本段]
NLP 神经语言程序学
官方解释:
NLP是神经语言程序学 (Neuro-Linguistic Programming) 的英文缩写。在香港,也有意译为身心语法程式学的。
N (Neuro) 指的是神经系统,包括大脑和思维过程。
L (LinpJistic) 是指语言,更准确点说,是指从感觉信号的输入到构成意思的过程。
P (Programming) 是指为产生某种后果而要执行的一套具体指令。即指我们思维上及行为上的习惯,就如同电脑中的程式,可以透过更新软件而改变。
故此,NLP也可以解释为研究我们的大脑如何工作的学问。知道大脑如何工作后,我们可以配合和提升它,从而使人生更成功快乐。也因此,把NLP译为“身心语法程式学”或“神经语言程式学”。
NLP是对人类主观经验的研究。更直白地说,NLP是一种思想的技巧。NLP就是我们用语言来改变身心状态的具体方法。它的创造人找到一些卓越的人,研究他们有一些怎样的程序,总结起来,然后教给其它人。并相信,其它人如果能掌握这些程序,也可以获致成功。
我们如何创造出我们每一个人独特的内心世界?我们怎样选择传人脑里的资讯,我们怎样认知这些资讯,我们怎样储存这些资讯,怎样把这些资讯与其他在储存中的资讯融合,以及怎样运用它们?
[编辑本段]
1.NLP的中心学问是“模仿”
⾃然语⾔处理NLP学习笔记⼆:NLP实战-开源⼯具tensorflow与
jiagu使⽤
前⾔:NLP⼯具有⼈推荐使⽤spacy,有⼈推荐使⽤tensorflow。
jiagu的中⽂分词是基于 深度学习的⽅法的。看来甲⾻的分词还是⽐较先进的。分词⼀般有3种,字典的,统计学的,深度学习的。
另:需要⼀点python知识,⾃⾏复习。
1. 环境准备
经过各种折腾,总结如下:TensorFlow运⾏环境需要使⽤Python3.5或以上,建议Python3.7.3,tensorflow ⾄少1.6,建议1.14版本。OS上的C运⾏库Glibc版本⾄少2.23以上。
如果你已经准备好这些环境了,跳过此步。1) Windows:
Python开发⼯具:pycharm 社区版
anaconda 集成了python编译⼯具的管理⼯具
2)Linux:
2.1下载3.7安装包:
2.2 解压:
tar -xvJf Python-3.7.3.tar.xz
2.3 安装依赖包:
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make
yum install libffi-devel -y (如不安装,会报ModuleNotFoundError: No module named '_ctypes错误)
2.4 编译安装:
./configure prefix=/usr/local/python3
make && make install
2.5 检查效果以及设置Python2,3共存::
[]# python2 -V
Python 2.7.5[]# python -VPython 2.7.5[]# ln -s /usr/local/python3/bin/python3 /usr/bin/pythonln: ⽆法创建符号链接"/usr/bin/python": ⽂件已存在[]# mv /usr/bin/python /usr/bin/python22[]# ln -s /usr/local/python3/bin/python3 /usr/bin/python[]# python -VPython 3.7.3[]# ll python*lrwxrwxrwx. 1 root root 30 7⽉ 29 09:46 python -> /usr/local/python3/bin/python3lrwxrwxrwx. 1 root root 9 12⽉ 13 2017 python2 -> python2.7
【NLP】⼗分钟快览⾃然语⾔处理学习总结
作者:
2016年9⽉23⽇00:24:12
摘要:近来⾃然语⾔处理⾏业发展朝⽓蓬勃,市场应⽤⼴泛。笔者学习以来写了不少⽂章,⽂章深度层次不⼀,今天因为某种需
要,将⽂章全部看了⼀遍做个整理,也可以称之为概述。关于这些问题,博客⾥⾯都有详细的⽂章去介绍,本⽂只是对其各个部
分⾼度概括梳理。(本⽂原创,转载注明出处: )
1 什么是⽂本挖掘?
⽂本挖掘是信息挖掘的⼀个研究分⽀,⽤于基于⽂本信息的知识发现。⽂本挖掘的准备⼯作由⽂本收集、⽂本分析和特征修剪三个步骤组
成。⽬前研究和应⽤最多的⼏种⽂本挖掘技术有:⽂档聚类、⽂档分类和摘要抽取。
2 什么是⾃然语⾔处理?
⾃然语⾔处理是计算机科学领域与⼈⼯智能领域中的⼀个重要⽅向。它研究⼈与计算机之间⽤⾃然语⾔进⾏有效通信的理论和⽅法。融语⾔
学、计算机科学、数学等于⼀体的科学。
⾃然语⾔处理原理:形式化描述-数学模型算法化-程序化-实⽤化
语⾳的⾃动合成与识别、机器翻译、⾃然语⾔理解、⼈机对话、信息检索、⽂本分类、⾃动⽂摘等。
3 常⽤中⽂分词?
中⽂⽂本词与词之间没有像英⽂那样有空格分隔,因此很多时候中⽂⽂本操作都涉及切词,这⾥整理了⼀些中⽂分词⼯具。StanfordNLP(直接使⽤CRF 的⽅法,特征窗⼝为5。)汉语分词⼯具(个⼈推荐)
哈⼯⼤语⾔云
庖丁解⽜分词
盘古分词 ICTCLAS(中科院)汉语词法分析系统
IKAnalyzer(Luence项⽬下,基于java的)
FudanNLP(复旦⼤学)
4 词性标注⽅法?句法分析⽅法?
原理描述:标注⼀篇⽂章中的句⼦,即语句标注,使⽤标注⽅法BIO标注。则观察序列X就是⼀个语料库(此处假设⼀篇⽂章,x代表⽂章中
的每⼀句,X是x的集合),标识序列Y是BIO,即对应X序列的识别,从⽽可以根据条件概率P(标注|句⼦),推测出正确的句⼦标注。
显然,这⾥针对的是序列状态,即CRF是⽤来标注或划分序列结构数据的概率化结构模型,CRF可以看作⽆向图模型或者马尔科夫随机场。 ⽤过CRF的都知道,CRF是⼀个序列标注模型,指的是把⼀个词序列的每个词打上⼀个标记。⼀般通过,在词的左右开⼀个⼩窗⼝,根据
Java⾃然语⾔处理NLP⼯具包
⾃然语⾔处理
1. Java⾃然语⾔处理 LingPipe
LingPipe是⼀个⾃然语⾔处理的Java开源⼯具包。LingPipe⽬前已有很丰富的功能,包括主题分类(Top Classification)、命名实体识别
(Named Entity Recognition)、词性标注(Part-of Speech Tagging)、句题检测(Sentence Detection)、查询拼写检查(Query SpellChecking)、兴趣短语检测(Interseting Phrase Detection)、聚类(Clustering)、字符语⾔建模(Character Language Modeling)、医
学⽂献下载/解析/索引(MEDLINE Download, Parsing and Indexing)、数据库⽂本挖掘(Database Text Mining)、中⽂分词(ChineseWord Segmentation)、情感分析(Sentiment Analysis)、语⾔辨别(Language Identification)等API。
下载链接:
2.中⽂⾃然语⾔处理⼯具包 FudanNLP
FudanNLP主要是为中⽂⾃然语⾔处理⽽开发的⼯具包,也包含为实现这些任务的机器学习算法和数据集。
演⽰地址:
FudanNLP⽬前实现的内容如下:
1. 中⽂处理⼯具
1. 中⽂分词
2. 词性标注
3. 实体名识别
4. 句法分析
5. 时间表达式识别
2. 信息检索
1. ⽂ 本分类
2. 新闻聚类
3.
3. 机 器学习
1. Average Perceptron
2. Passive-aggressive Algorithm
3. K-means
4. Exact Inference
下载链接:
3.⾃然语⾔处理⼯具Apache OpenNLP
OpenNLP 是⼀个机器学习⼯具包,⽤于处理⾃然语⾔⽂本。⽀持⼤多数常⽤的 NLP 任务,例如:标识化、句⼦切分、部分词性标注、名称