当前位置:网站首页>深度学习——序列模型and数学符号
深度学习——序列模型and数学符号
2022-06-30 07:22:00 【头发没了还会再长】
序列模型
序列模型,它是深度学习中最令人激动的内容之一。循环神经网络(RNN)之类的模型在语音识别、自然语言处理和其他领域中引起变革。
使用序列模型的几个例子
语音识别/音乐生成问题/处理情感分类/ DNA 序列分析/机器翻译/视频行为识别/命名实体识别
在进行语音识别时,给定了一个输入音频片段 𝑥,并要求输出对应的文字记录 𝑦。这个例子里输入和输出数据都是序列模型,因为 𝑥是一个按时播放的音频片段,输出 𝑦是一系列单词。
在音乐生成问题,只有输出数据 𝑦是序列,而输入数据可以是空集,也可以是个单一的整数,这个数可能指代你想要生成的音乐风格,也可能是你想要生成的那首曲子的头几个音符。输入的 𝑥可以是空的,或者就是个数字,然后输出序列𝑦。
在处理情感分类,输入数据𝑥是序列,你会得到类似这样的输入:“There is nothing to like in this movie.”,你认为这句评论对应几星?
在 DNA 序列分析中,你的 DNA 可以用 A、C、G、T 四个字母来表示。所以给定一段 DNA 序列,你能够标记出哪部分是匹配某种蛋白质的吗?
在机器翻译过程中,你会得到这样的输入句:“Voulez-vou chante avecmoi?”(法语:要和我一起唱么?),然后要求你输出另一种语言的翻译结果。
在进行视频行为识别时,你可能会得到一系列视频帧,然后要求你识别其中的行为。
在进行命名实体识别时,可能会给定一个句子要你识别出句中的人名。
这些问题都可以被称作使用标签数据 (𝑥, 𝑦)作为训练集的监督学习。但从这一系列例子中你可以看出序列问题有很多不同类型。有些问题里,输入数据 𝑥和输出数据𝑦都是序列,但就算在那种情况下,𝑥和𝑦有时也会不一样长。在另一些问题里,只有 𝑥或者只有𝑦是序列。
数学符号
定义一些定义序列问题要用到的符号。
现在给定这样的输入数据𝑥,假如你想要一个序列模型输出𝑦,使得输入的每个单词都对应一个输出值,同时这个𝑦能够表明输入的单词是否是人名的一部分。技术上来说这也许不是最好的输出形式,还有更加复杂的输出形式,它不仅能够表明输入词是否是人名的一部分,它还能够告诉你这个人名在这个句子里从哪里开始到哪里结束。
这个输入数据是 9 个单词组成的序列,所以最终我们会有 9 个特征集和来表示这 9 个单词,并按序列中的位置进行索引,𝑥<1>、𝑥<2>、𝑥<3>等等一直到𝑥<9>来索引不同的位置,我将用𝑥<𝑡>来索引这个序列的中间位置。𝑡意味着它们是时序序列,但不论是否是时序序列,我们都将用𝑡来索引序列中的位置。输出数据也是一样,我们还是用𝑦<1>、𝑦<2>、𝑦<3>等等一直到𝑦<9>来表示输出数据。同时我们用𝑇𝑥来表示输入序列的长度,这个例子中输入是 9 个单词,所以𝑇𝑥 = 9。我们用𝑇𝑦来表示输出序列的长度。在这个例子里𝑇𝑥 = 𝑇𝑦.
训练样本𝑖的序列中第𝑡个元素用𝑥(𝑖)<𝑡>这个符号来表示,训练集里不同的训练样本就会有不同的长度,所以𝑇𝑥(𝑖)就代表第𝑖个训练样本的输入序列长度。同样𝑦(𝑖)<𝑡>代表第𝑖个训练样本中第𝑡个元素,𝑇𝑦(𝑖)就是第𝑖个训练样本的输出序列的长度。
既然我们这个例子是 NLP,也就是自然语言处理,这是我们初次涉足自然语言处理,一件我们需要事先决定的事是怎样表示一个序列里单独的单词,你会怎样表示像 Harry 这样的单词,𝑥<1>实际应该是什么?
接下来我们讨论一下怎样表示一个句子里单个的词。想要表示一个句子里的单词,第一件事是做一张词表,有时也称为词典,意思是列一列你的表示方法中用到的单词。这个词表(下图所示)中的第一个词是 a,也就是说词典中的第一个单词是 a,第二个单词是 Aaron,然后更下面一些是单词and,再后面你会找到 Harry,然后找到 Potter,这样一直到最后,词典里最后一个单词可能是 Zulu。
因此 a 是第一个单词,Aaron 是第二个单词,在这个词典里,and 出现在 367 这个位置上,Harry 是在 4075 这个位置,Potter 在 6830,词典里的最后一个单词 Zulu 可能是第 10,000个单词。所以在这个例子中我用了 10,000 个单词大小的词典.
接下来你可以用one-hot表示法来表示词典里的每个单词。
举个例子,在这里𝑥<1>表示 Harry 这个单词,它就是一个第 4075 行是 1,其余值都是 0的向量,因为那是 Harry 在这个词典里的位置。
所以这种表示方法中,𝑥<𝑡>指代句子里的任意词,它就是个 one-hot 向量,因为它只有一个值是 1,其余值都是 0,所以你会有 9 个 one-hot 向量来表示这个句中的 9 个单词,目的是用这样的表示方式表示𝑋,用序列模型在𝑋和目标输出𝑌之间学习建立一个映射。我会把它当作监督学习的问题,我确信会给定带有(𝑥, 𝑦)标签的数据。
如果你遇到了一个不在你词表中的单词,答案就是创建一个新的标记,也就是一个叫做 Unknow Word 的伪单词,用<UNK>作为标记,来表示不在词表中的单词
边栏推荐
- How to quickly delete routing in Ad
- Line fitting (least square method)
- 想转行,却又不知道干什么?此文写给正在迷茫的你
- Implementation of binary search in C language
- Calculate Euler angle according to rotation matrix R yaw, pitch, roll source code
- right four steps of SEIF SLAM
- Use of ecostruxure (2) IEC61499 to establish function blocks
- Multi whale capital: report on China's education intelligent hardware industry in 2022
- Basic knowledge of compiling learning records
- Xiashuo think tank: 50 planet updates reported today (including the global architects Summit Series)
猜你喜欢

期末复习-PHP学习笔记2-PHP语言基础

25岁,从天坑行业提桶跑路,在经历千辛万苦转行程序员,属于我的春天终于来了

Research Report on search business value in the era of big search in 2022

2022 retail industry strategy: three strategies for consumer goods gold digging (in depth)

Introduction notes to pytorch deep learning (10) neural network convolution layer
![December 4, 2021 [metagenome] - sorting out the progress of metagenome process construction](/img/03/eb6e6092922cf42c2c9866e7bb504d.jpg)
December 4, 2021 [metagenome] - sorting out the progress of metagenome process construction

深度学习——LSTM

6月底了,可以开始做准备了,不然这么赚钱的行业就没你的份了

想转行,却又不知道干什么?此文写给正在迷茫的你

Final review -php learning notes 6- string processing
随机推荐
Introduction notes to pytorch deep learning (11) neural network pooling layer
Disk space, logical volume
期末复习-PHP学习笔记2-PHP语言基础
Thread network
2021-10-27 [WGS] pacbio third generation methylation modification process
Final review -php learning notes 3-php process control statement
Final review -php learning notes 4-php custom functions
Raspberry pie 4B Getting Started Guide
C language implementation sequence stack
Is it safe to open a stock account by mobile phone? What do I need to prepare for opening an account?
Final review -php learning notes 8-mysql database
期末複習-PHP學習筆記6-字符串處理
December 4, 2021 - Introduction to macro genome analysis process tools
Local unloading traffic of 5g application
Periodic planning work
Adjacency matrix representation of weighted undirected graph (implemented in C language)
Use of ecostruxure (3) creating composite function blocks
Desk lamp control panel - brightness adjustment timer
Proteus catalog component names and Chinese English cross reference
Account command and account authority


