CS224n笔记一:开端
何为自然语言处理
自然语言处理的目标是让计算机处理或者“理解”自然语言,以完成有意义的任务,如QA等。
自然语言处理涉及的层次
输入有两个来源:语音和文本,所以第一级是语音识别,OCR或者分词
形态学(Morphological analysis)或称词法或者词汇形态学。其研究词的内部结构,包括屈折变化和构词法两个部分。
句法分析(Syntactic analysis)和语义分析(Semantic Interpretation)
对话分析(Discourse Processing),根据上文语境理解下文
其中,CS223n关注画圈部分的三个部分(语音,句法分析和语义分析)
自然语言处理应用
从易到难大致有:
拼写检查,关键词检索...
文本挖掘(产品价格,日期,时间,地点,人名...)
文本分类
机器翻译
客服系统
复杂对话系统
人类语言的特殊之处
人类语言是离散的,明确的符号系统,但允许出现各种变种。符号传输到大脑的过程是通过连续的声光学信号,大脑编码似乎是连续的模式。另外,巨大的词表也导致了数据稀疏,不利于机器学习。因此,是否应该使用连续的信号而非离散的符号处理语言?
什么是深度学习
机器学习的子集,实际上是将特征工程+学习算法合二为一。深度学习是表示学习的一部分,用来学习原始输入的多层特征表示:
传统的机器学习手工特征耗时耗力,不易扩展,而深度学习自有编解码器,自动特征学习快,方便扩展。传统的机器学习示意如下:
为何NLP困难
人类语言充满歧义,解读依赖现实世界常识以及上下文。
Deep NLP=Deep Learning + NLP
将自然语言处理的思想和表示学习结合,用深度学习的手法解决NLP目标,这推进了不少方面的发展,如词性标注
,命名实体识别
,句法/语义分析
NLP表示层次:形态级别
传统方法在形态级别的表示是词素
,如将uninterested拆分成前缀,词根,后缀三个部分:
深度学习中把词素也作为向量:
多个词素向量构成相同维度语义更丰富的词向量。
NLP工具:句法分析
NLP语义层面的表示
传统方法是手写大量的规则函数,也就是λ演算(Lambda calculus):
在深度学习中,每个句子,短语和逻辑表达都是向量
。神经网络负责将它们合并。
情感分析
传统方法是请人手工搜集“情感极性词典”,在词袋模型上做分类器。
深度学习使用了RNN
来解决该问题,它可以识别“反话”的情感极性:
QA
传统方法是手工编写大量的规则逻辑,比如正则表达式之类:
深度学习依旧使用了类似的学习框架,将事实存储在向量中:
客服系统
Neural Language Models是基于RNN的:
机器翻译
传统方法在众多层面做了尝试,如词语,语法,语法。这类方法试图找到一种世界通用的“国际语”作为原文和译文的桥梁。
而Neural Machine Translation将原文映射为向量,由向量构建原文,所有层级的表示都是向量:
这也许是因为向量是最灵活的形式,它的维度是自由的,还可以组成矩阵或者更高维度的Tensor,事实上,在实践时,向量和矩阵没有本质区别。
CS224n笔记一:开端的更多相关文章
- 【NLP CS224N笔记】汇总
[NLP CS224N笔记]Lecture 1 - Introduction of NLP [NLP CS224N笔记]Lecture 2 - Word Vector Representations: ...
- CS224n笔记0
我准备跟随码农场hankcs大神的脚步,学习一下斯坦福的CS224n课程. 关于该课程的简介,hankcs大神已经写得很清楚了.
- 【NLP CS224N笔记】Lecture 3 GloVe: Global Vectors for Word Representation
I. 复习word2vec的核心思路 1. Skip-gram 模型示意图: 2.word vectors的随机梯度 假设语料库中有这样一行句子: I love deep learning and N ...
- 【NLP CS224N笔记】Lecture 2 - Word Vector Representations: word2vec
I. Word meaning Meaning的定义有很多种,其中有: the idea that is represented by a word,phrase,etc. the idea that ...
- 【NLP CS224N笔记】Lecture 1 - Introduction of NLP
I. 什么是NLP NLP全称是Natural Language Processing,即自然语言处理,这是一门计算机科学.人工智能以及语言学的交叉学科. NLP涉及的几个层次由下图所示.可以看到输入 ...
- CS224n笔记二:word2vec
如何表示词语的意思 语言学中meaning近似于"指代,代指,符号". 计算机中如何处理词语的意思 过去一直采用分类词典,计算语言学中常见的方式时WordNet那样的词库,比如NL ...
- 斯坦福NLP课程 | 第2讲 - 词向量进阶
作者:韩信子@ShowMeAI,路遥@ShowMeAI,奇异果@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/36 本文地址:http://www. ...
- CS224n学习笔记(一)
How do we have usable meaning in a computer? Represents the words as discrete symbols, (离散型变量) Use t ...
- CS224n学习笔记1——深度自然语言处理
一.什么是自然语言处理呢? 自然语言处理是计算机科学家提出的名字,本质上与计算机语言学是同义的,它跨越了计算机学.语言学以及人工智能学科. 自然语言处理是人工智能的一个分支,在计算机研究领域中,也有其 ...
随机推荐
- 结构体作为map的key或放入set中,需要重载<运算符
结构体作为map的key或放入set中,需要重载<运算符,如下: typedef struct tagRoadKey{ int m_i32Type; int m_i32Scale; ...
- 使用lapack图书馆逆矩阵
阿土,直接在代码: #include <string> #include "lapacke.h" #include "lapack_aux.h" i ...
- hadoop实现购物商城推荐系统
1,商城:是单商家,多买家的商城系统.数据库是mysql,语言java. 2,sqoop1.9.33:在mysql和hadoop中交换数据. 3,hadoop2.2.0:这里用于练习的是伪分布模式. ...
- hive 分区表与数据产生关联的三种方式
所谓关联,可以理解为能够使用select查询到 1.load 这是最常用的一种方式 load data [local] inpath "数据路径" into table table ...
- web IDE Eclipse Che安装
安装:使用安装器安装 使用安装器安装Che 环境 依赖 下载地址 通用 任何操作系统,java8,Git,Maven 3.0.5+,Docker 1.7+ 3.12.52 - 117MB window ...
- 【u253】售货厅
Time Limit: 1 second Memory Limit: 128 MB [问题描述] 售票厅出售关于音乐会的票,取代原来的卖一张票的形式,而是一组座号连续的票.售票室已经收到很多预订.每个 ...
- C#依赖注入控制反转IOC实现详解
原文:C#依赖注入控制反转IOC实现详解 IOC的基本概念是:不创建对象,但是描述创建它们的方式.在代码中不直接与对象和服务连接,但在配置文件中描述哪一个组件需要哪一项服务.容器负责将这些联系在一起. ...
- C#7
C#7 阅读目录 out变量 元组(Tuples) 模式匹配(Pattern matching) 本地引用和返回(Ref locals and returns) 本地函数(Local function ...
- repo/git Android/CyanogenMod srouce code
For getting the whole Android/CM rom source code, 1. get the repo first.2. make sure the git is inst ...
- js 将json字符串转换为json对象
要引入:jquery-json-2.4.js 在数据传输过程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键.例如: JS ...