神经网络与深度学习-循环神经网络与NLP
1. 数据处理基础
1.1. 特征编码
数值特征与类别特征:
第1列表示年龄,是一个数值特征
第2列表示性别,是一个只有一位(0,1)的特征
0 -> Male, 1 -> Female
第3列表示国籍,目前有197个国家
1 -> US, 2 -> China, …
可以用一个整数来表示,或者用一个
独热向量来表示, 如US: [1,0, ….,0]
数值特征不适合表示类别,因此一般使用独热编码
国家编码从1开始,1~197,因为实际国籍有可能不填(对应0)
使用199维特征向量表达一个人的特征
1.2. 文本处理
第一步:文本切分 (tokenization) :
第二步:统计词频:
第三步:独热编码:
2. 文本预处理与词嵌入
2.1. 文本预处理
文本预处理:
一篇文章可以被简单地看作一串单词序列,甚至是一串字符序列。 我们将解析文本的常见预处理步骤。 这些步骤通常包括:
1.将文本作为字符串加载到内存中。
2.将字符串切分为词元(如单词和字符)。
3.建立一个字典,将拆分的词元映射到数字索引。
4.将文本转换为数字索引序列,方便模型操作
以H.G.Well的时光机器为例,从中加载文本
。这是一个相当小的语料库,只有30000多个单词,而现实中的文档集合可能会包含数十亿个单词。如Chatgpt包含65T数据。
第二步:词汇切分:
第三步:构建词索引表:
2.2. 文本预处理实例
文本预处理实例:IMDB:
2.3. 文本嵌入
3. RNN模型
3.1. RNN概要
如何建模序列数据?:
图像分类中使用:1对1模型
输入和输出维度:固定
文本处理中:
输入维度不定(可能一直有单词输入);
输出维度不定或者是1(直接最终理解结果)
用RNN建模序列数据:
3.2. RNN模型
3.3. RNN示例
3.4. RNN问题
随着输入的增加,会产生“遗忘”问题:
4. LSTM模型
4.1. LSTM模型
LSTM网络模型:
LSTM:“传送带”: