文章目录
一、前提
The IMDB Movie Review Dataset
- 50K movie reviews (text).
- Each review is labeled with either "positive"or “negative”.
- It is a binary classification problem.(二分类问题)
- 25K for training and 25K for test.
http://ai.stanford.edu/~amaas/data/sentiment/
http://s3.amazonaws.com/text-datasets/acllmdb.zip
二、Text to Sequence(文本处理)
文本处理的好坏直接影响机器学习的准确率
2.1 Tokenization(分词)
- 把文本分隔为单词。
- 一个token(符号)就是一个单词或者字符。
2.2 Build Dictionary(建立一个字典)
可以首先统计词频,去掉低频词,然后让每一个单词对应每一个正整数,有了字典,就可以把每一个单词映射为每一个整数,这样一句话就可以用正整数的列表表示。而这个列表被称为sequences(序列)
2.3 One-Hot Encoding
如果有必要,可以进一步做one-hot encoding,把单词变为one-hot向量。
2.4 Align Sequences(对齐序列)
训练数据没有对齐,每个序列都有不同的长度,在做机器学习的时候,我们把数据存储在矩阵或者张量中,这就需要把序列对齐,每条序列都有相同的长度。
解决方法如下:
三、Word Embedding: Word to Vector(词嵌入:把单词表示成低维向量)
文本处理已经完成,每一个词都用一个正整数来表示。
3.1 One-Hot Encoding(one-hot 编码)
用one-hot向量来表示一个单词。
3.2 Word Embedding(词嵌入)
Embedding往往表示有降维的意思。
- d表示词向量的维度,由用户自己决定;
- v是字典里单词的数量;
- 矩阵的乘法结果计作向量Xi,其是一个词向量,维度为d;
- P转置矩阵的每一列都是一个词向量。
- 参数矩阵p是从训练数据中学习到的,所以学习到的词向量会带有感情色彩。
四、Logistic Regression for Binary Classification(用逻辑回归做二分类)
判断电影评论是正面还是负面的。