本次使用softmax回归实现。
数据集:http://Classify the sentiment of sentences from the Rotten Tomatoes dataset
特征提取
1.词袋特征(Bag of word)
这种方法就是把一个句子拆解成一个一个单词,存在于句子的单词,对应的向量位置上的数字为1,否则为0。使用这种方法可以把句子变成一个由数字表示的0-1向量。
这种方法的缺点是词序的问题没考虑到,例如:
特征:I,like,hate,he,she
句子A:he like she
向量a:[0,1,0,1,1]
句子B:she like he
向量b:[0,1,0,1,1]
可见,这两个句子转化的向量一样,但是两个句子表达的意思却是完全相反。
2.N元特征(N-gram)
这种方法考虑的词序的问题,几元特征就是将几个单词凑成词组。例如二元特征,即N=2时:
he like she就可以看作he like,like she两个词组
本次采用上述两种特征提取的方法,并使用三种梯度下降的方法,分别为
1.shuffle(随机梯度下降)
2.mini-Batch(小批量梯度下降)
3.Batch(整批量梯度下降)
由于采用不同的梯度下降策略,每次的计算次数也会不同,我们需要控制相同的计算次数,这里比较了10000次,50000次和100000次三种不同的计算次数。
结果
计算次数=10000
计算次数=50000次
计算次数=100000次