CS224n课程笔记(一)——深度自然语言处理

一、自然语言处理

一般来说语言的处理过程分为以下几步:

而中间的两步,句法分析和语义分析是我们自然语言处理课程的主要内容。

以下列出的是NLP的一些应用:

近些年,NLP在工业应用上取得了巨大的成功:

在讲到深度学习之前,我们先来构建一些概念。一般来说信号处理、数据挖掘等等都只是处理数据,从一堆随机数据里面找出规律等等。但人类语言并不是大量的数据,让你把它变成有用的信息。

语言是一种符号。而人类之间沟通的具体方式是通过一些连续的载体来交换这些符号。当然,这些载体可以是声音、手势、文字或图像等。但是在这些不同的编码方式背后都有着不同的符号。

下面的图片显示传播的媒介都是连续性的。

值得注意的一点是,对于语言来讲,词汇量非常庞大,这导致NLP领域中一个非常重要的问题——稀疏问题。

二、深度学习

深度学习是机器学习的一个分支。机器学习就是让机器自动学习,而不是手工写代码,告诉机器应该怎么做。而深度学习与传统的机器学习不同。传统的机器学习其实就是让人类来审视一个特定的问题,找出解决问题的关键,然后设计出与该问题相关的特征,然后写代码来识别这些特征。这样实质上机器并没有学习什么,倒是人类学习了很多。他们仔细研究问题,做了大量的数据分析和理论研究,判断那些属性是重要的。看起来机器只做了一件事,就是数值优化。

这样,我们发现在机器学习中,大约有 90% 90 % 的工作都是人类在做,只有约 10% 10 % 的工作是电脑运行。

那么,深度学习与其有什么不同呢?深度学习是表征学习(Representation Learning)的分支。而表征学习的理念就是我们可以只向电脑提供原始信号(视觉信号、语言信号等),然后机器可以自己定义特征,来很好地完成任务。深度学习的含义就是如果能得到多层的特征表示,你可以打败其他的学习方法。

下面是深度学习的优点。

而深度学习之所以在较短的时间里快速发展起来,离不开以下几个方面的变化:

NLP的难点

  • Complexity in representing, learning and using linguistic/situational/contextual/world/visual knowledge
  • Human languages are ambiguous (unlike programming and other formal languages)
  • Human language interpretation depends on real world, common sense and contextual knowledge.

深度自然语言处理

Deep NLP其实就是结合了两个领域,将深度学习的思想用于解决NLP的问题。

深度学习和语言都是以词义作为起点,我们首先要做的事就是将词语表示出来,通常表示为一个向量。

当我们将词语表示到高维的向量空间,这些空间就成为了非常棒的语义空间。具有相似含义的词语会在矢量空间中聚集在一起,当然空间中的方向也包含了成分和含义的信息。

在传统情况下,如果我们看到复杂的单词,例如:uninterested,我们会把它看作由更小单元的词素构成。但在深度学习中,我们可以把每一个词素看作是一个向量,然后建立一个神经网络,将这些小单元构建成更大的单元。

深度学习还可以用来找出句子的结构,发现句法停顿点。

当我们得到了句子的结构,我们可能还想知道句子的含义。

还可以将深度学习用于解决语义问题。

当然,还有一些其他应用:问答系统、聊天助手、机器翻译等等。

所有的语言形式都是用向量来表示,声音、单词、句子、对话等等。下节课会详细讲解。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值