利用计算机技术实现对文本篇章,自然语言处理NLP学习笔记一:概念与模型初探...
前言
先来看一些demo,来一些直观的了解。
自然语言处理:
可以做中文分词,词性分析,文本摘要等,为后面的知识图谱做准备。
知识图谱:
还有2个实际应用的例子,加深对NLP的理解
九歌机器人:
微软对联机器人:
NLP概述:
自然语言处理,是研究如何利用计算机技术对语言文本(句子,篇章或话语等)进行处理和加工的一门技术。
NLP的关键思想之一是将单词转换为数字向量,然后把这些数字向量放到机器学习模型中进行预测。
深度学习是NLP的关键技术之一。
自然语言处理是构建知识图谱的基础技术。
学科面临的主要挑战:
大量出现的新词语:例:佛系
无处不在的歧义:例:喜欢城市的年轻人
隐喻表达:例:在朋友圈潜水
不同语言的概念不同:翻译之间的理解
对应的核心挑战:
->语义分析
->语用场景的分析
NLP应用举例:
一: 汉语分词
1. 最大匹配法(基于规则或模板的方法)
2. 基于n-gram的分词法(传统的统计方法,生成式)
3. 基于神经网络的分词方法(目前最主流的分词方法)
二: 机器翻译:
1. 基于模板/规则的方法
2. 基于语料库的方法
3. 基于神经机器翻译方法
三: 同声翻译:
技术应用现状:
1,各种 输入法;
2,语音
常见的NLP方法:
1.基于规则的方法
2.基于统计学习方法
---------------------------------------
基于统计方法的基本方法/框架:
框架:学习系统->模型->预测系统
原理:训练数据(样本),带标签,预测下一个输入后的输出
如买保险,买与不买是标签,已有买保险数据为样本。我们重点是做好训练模型
常用的统计模型:
模型主要是6,7种,侧重点不同,根据需要选择不同的模型使用即可。
1.统计模型
1) 语言模型(LM)--比较复杂
2) 隐马尔可夫模型(HMM)-----多分类问题(大于2的)
3)K-近邻(KNN)----数据量比较少可选用
4) 朴素贝叶斯法(NB)
5)决策树(DT)
6)最大熵(maximum entropy)
-------二类分类--------
7)支持向量机(SVN)
8)感知机
------序列标注-------
9)条件随机场(CRFConditional random fields)
基于统计学的一个算法,Viterbi算法:每次只保留最佳的算法
已有开源工具一大堆,这里不一一列出。
基于学习的基本方法:
人工神经网络最火的是深度学习
深度学习在2009年才取得重大突破,把识别率提高了百分之十几个点。
神经语言模型:
条件概率模型,统计之前出现次数的概率,预测概率最大化
计算机是没法理解人类语言的(意图),只能把出现概率最大的取出来,那么就需要大量的样本训练他。
神经网络分2种:
浅层学习:LR,SVM,Bayes,boosting
深度学习: CNN,RNN,DBM,AutoEncoder
CNN:卷积 RNN则不会过多约束
2个核心,1是卷积: 实际是一个加权运算;2是最大池化。
RNN:循环 CNN对于输入数据的维度约束是比较严重的,训练是啥,预测就是啥
LSTM(长短记忆神经网络,RNN的一种)核心过程:
3个门,每个门对应一个函数 。每个门的结果要么是0要么是1
遗忘门: 选择哪些遗忘
输入门: 决定输入什么
输出门:决定输出什么
---------------------------------------------------------
笔记:
1. N多的数学公式,要想深入学习,还得学好数学
2. 模型普通人就不要研究了
知识图谱
知识图谱与深度学习相当于两条路在走,未来会深度学习。
深度学习可以用来预测,知识图谱不能,知识图谱类似将所有知识穷举起来,搜索你要的知识就行。
知识图谱可以为深度学习提供知识,深度学习为知识图谱提供模型与工具构建。
知识图谱是基于语义网发展起来的。
语义网: 具有一定关系的网络
知识图谱实例:
文本挖掘
TF-IDF加权法
一堆概念与术语:
NLU 自然语言理解
NLP 自然语言处理
MT 机器翻译
HLT 人类语言技术,包括NLU,CL,MT
DL(deep learning) 深度学习
NN(Neural Networks)神经网络
RNN(Convolutional Neural Networks):卷积神经网络
CNN:循环神经网络
LSTM:长短期记忆网络
n-gram:输入一句话,输出这句话的概率
Word Embedding(词嵌入),将单词映射到向量空间里,并用向量来表示。
Word2vec 词向量表示,将相似的单词分组映射到向量空间的不同部分,即能学到单词与单词之间的关系。
Word2Vec有2种方法,skip-gram和CBOW。
skip-gram:输入一个词,然后试着估计其他词出现在该词附近的概率。
CBOW:连续词汇学习
自然语言处理NLP学习笔记三:使用Django做一个NLP的Web站点
前言: 前面我们已经能初步实现一个中文自然处理语言的模型了,但交互界面是命令行的,不太友好. 如果想做一个类似http://xiaosi.trs.cn/demo/rs/demo的界面,那就还需要继续往 ...
自然语言处理NLP学习笔记二:NLP实战-开源工具tensorflow与jiagu使用
前言: NLP工具有人推荐使用spacy,有人推荐使用tensorflow. tensorflow:中文译作:张量(超过3维的叫张量)详细资料参考:http://www.tensorfly.cn/ J ...
Oracle RAC学习笔记:基本概念及入门
Oracle RAC学习笔记:基本概念及入门 2010年04月19日 10:39 来源:书童的博客 作者:书童 编辑:晓熊 [技术开发 技术文章] oracle 10g real applica ...
Java IO学习笔记:概念与原理
Java IO学习笔记:概念与原理 一.概念 Java中对文件的操作是以流的方式进行的.流是Java内存中的一组有序数据序列.Java将数据从源(文件.内存.键盘.网络)读入到内存 中,形成了 ...
jQuery学习笔记之概念(1)
jQuery学习笔记之概念(1) ----------------------学习目录-------------------- 1.概念 2.特点 3.选择器 4.DOM操作 5.事件 6.jQuer ...
ArcGIS案例学习笔记-批量裁剪地理模型
ArcGIS案例学习笔记-批量裁剪地理模型 联系方式:谢老师,135-4855-4328,xiexiaokui#qq.com 功能:空间数据的批量裁剪 优点:1.批量裁剪:任意多个目标数据,去裁剪任意 ...
Java学习笔记之---单例模型
Java学习笔记之---单例模型 单例模型分为:饿汉式,懒汉式 (一)要点 1.某个类只能有一个实例 2.必须自行创建实例 3.必须自行向整个系统提供这个实例 (二)实现 1.只提供私有的构造方法 2 ...
WebGL three.js学习笔记 加载外部模型以及Tween.js动画
WebGL three.js学习笔记 加载外部模型以及Tween.js动画 本文的程序实现了加载外部stl格式的模型,以及学习了如何把加载的模型变为一个粒子系统,并使用Tween.js对该粒子系统进行 ...
tensorflow学习笔记——常见概念的整理
TensorFlow的名字中已经说明了它最重要的两个概念——Tensor和Flow.Tensor就是张量,张量这个概念在数学或者物理学中可以有不同的解释,但是这里我们不强调它本身的含义.在Tensor ...
随机推荐
L2-005. 集合相似度
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAzwAAAIRCAIAAAAA0S/lAAAgAElEQVR4nO3dzass133v//xPNTszDU
Grandpa's Estate---POJ1228(凸包)
http://poj.org/problem?id=1228 学长说这是稳定凸包,我感觉就是凸包嘛. 所谓稳定就是判断能不能在原有凸包上加点,得到一个更大的凸包,并且这个凸包包含原有凸包上的所有点.知 ...
js脚本放置位置
若是display:none:则元素height.width为0:但去了display:none后,恢复原来大小,所以操作元素应该在去除display:none后.
openwrt虚拟机的network unreachable
之前在hyper-v中装了openwrt的ATTITUDE ADJUSTMENT (12.09, r36088)这个最新版本 我之前的文章有提到怎么安装 link 但是发现用opkg update不能 ...
SGU 200 Cracking RSA (高斯消元)
转载请注明出处,谢谢http://blog.csdn.net/ACM_cxlove?viewmode=contents by---cxlove 题意:给出m个整理,因子全部为前t个素数.问有多少 ...
C++之static_cast, dynamic_cast, const_cast
转自:http://www.cnblogs.com/chio/archive/2007/07/18/822389.html 首先回顾一下C++类型转换: C++类型转换分为:隐式类型转换和显式类型转换 ...
Python 调用让系统自动调用默认程序打开文件?
windows上可以使用os.startfile os.startfile(file) linux上可以使用xdg-open subprocess.call(["xdg-open" ...
css渲染(一) 字体和文本
一.字体属性 1.默认字体系列 chrome/opera:"宋体" firefox:"微软雅黑" safari/IE:Times,"宋体" ...
再谈PHP设计模式
设计模式 单例模式解决的是如何在整个项目中创建唯一对象实例的问题,工厂模式解决的是如何不通过new建立实例对象的方法. 单例模式 $_instance必须声明为静态的私有变量 构造函数和析构函数必须声 ...
利用计算机技术实现对文本篇章,自然语言处理NLP学习笔记一:概念与模型初探...相关推荐
- 指利用计算机技术实现对文本篇章的理解,行业发展|人工智能的自然语言处理技术已经到了这一步...
[摘要]随着当今社会科学技术的持续发展,和人们对编程技术的发展,近年来AI产业正在飞速发展,并且当今社会也有越来越多的人工智能产业实践,所以越来越多的人都开始关注自然语言处理技术方面,由此可见人工智能 ...
- 自然语言处理NLP学习笔记三:使用Django做一个NLP的Web站点
前言: 前面我们已经能初步实现一个中文自然处理语言的模型了,但交互界面是命令行的,不太友好. 如果想做一个类似http://xiaosi.trs.cn/demo/rs/demo的界面,那就还需要继续往 ...
- Python自然语言处理中文版-学习笔记
第 1 章 语言处理与 Python 频率分布是项目连同它们的频率计数的集合(例如:一个文本中的词与它们出现的频率). 自然语言处理研究的一个重要目标一直是使用浅显但强大的技术代替无边无际的知识和推理 ...
- (含源码)「自然语言处理(NLP)」社区问答评估Bert模型优化
来源: AINLPer 微信公众号(每日更新-) 编辑: ShuYini 校稿: ShuYini 时间: 2020-03-21 引言: 本文分享的内容主要包括社区问答质量评估(基于Bert模型微调). ...
- NLP学习笔记-FastText文本分类(四)
分类的目的和分类的方法 1. 文本分类的目的 回顾之前的流程,我们可以发现文本分类的目的就是为了进行意图识别 在当前我们的项目的下,我们只有两种意图需要被识别出来,所以对应的是2分类的问题 可以想象, ...
- 自然语言处理(NLP)学习笔记——HMM与CRF模型
一.HMM模型 1.HMM模型的输入和输出 HMM(Hidden Markov Model),中文称作隐含马尔可夫模型,因俄国数学家马尔可夫而得名.它一般以文本序列数据为输入,以该序列对应得隐含序列为 ...
- 小白自然语言处理入门学习笔记(2020年)
提示:点赞在看~养成好习惯 这是2020年在疫情期间,研一自学的笔记,整理一下就相当于自己的笔记整理.也是刚入门机器学习,代码写的不好麻烦见谅 觉得可以的话 Star一下呗 谢谢啦. 仓库的内容主要为 ...
- 自然语言处理菜鸟学习笔记(一)
数学基础 1.概率论基础: • 统计自然语言处理的目标是对自然语言领域的 数据进行统计推理: • 统计推理通常由两个步骤来完成:首先,提取 依照某些未知概率分布所产生的数据,然后对 这些数据分布进行某 ...
- 自然语言处理入门学习笔记3:词向量
词向量 为什么需要词向量 1.词向量可以大量的预料中拿到一些对知识表达的方式 2.无法直接对文本进行计算,文本是标记性语言,计算机对数字比较敏感,词向量吧文字转成了数值向量 词编码方式 从onehot ...
最新文章
- 交换机的linux测试脚本,更新网络设备巡检脚本,各位大神可以看看,如有不足,请指正!...
- 递推DP HDOJ 5459 Jesus Is Here
- JAVA min()_Java min()方法
- hibernate搭建
- 十五个常用的 Laravel 集合(Collection)
- [题解]洛谷P1119 灾后重建
- c# 使用 itextsharp 实现生成Pdf报表
- sht20温湿度传感器原理图_温湿度传感器在孵化行业怎么应用
- JavaScript简介-1
- 防止事件导致的oncreate的多次调用
- Direct3D 9学习笔记(7)纹理实例
- fedora 20 中关闭防火墙
- TensorFlow 深度学习中文第二版·翻译完成
- 文科本二计算机类大学排名,全国二本大学排名文科分数线
- React:开发者友好性和易用性
- hibernate 调用存储过程
- ## STAMP使用中数据上传注意事项
- 解决因cocosStudio发布的csb文件过大导致的加载游戏界面卡的问题
- 在windows中桌面显示itunes音乐滚动歌词
- lucene【转载】
热门文章
- Java数据类型划分(数值型、布尔型、字符型)
- JAVA算术运算符是什么意思_Java的算术运算符
- 梯度下降法的不同形式及优缺点
- 【Intel RealSense SDK2.0下载】
- SQL Server——从入门到放弃(8)-- GRANT/ REVOKE / AUDIT 练习
- 什么是java中CAS
- java通过属性名获取属性值_java反射机制根据属性名获取属性值的操作
- 深挖洞,广积粮,缓称王
- word2010表格序号自动递增方法
- java.sql.SQLException: Access denied for user ‘admin‘@‘localhost‘ (using password: YES) 问题解决