【发布时间】:2016-08-17 17:41:20
【问题描述】:
我想将一个文本集合分为两类,假设我想做一个情感分类。我有两个预制的情感词典,一个只包含积极的词,另一个只包含消极的词。我想将这些字典合并到 SVM 分类器的特征向量中。我的问题是,是否可以将正负词词典分开来表示为 SVM 特征向量,尤其是当我为测试集生成特征向量时?
如果我的解释不够清楚,让我举个例子。假设我有这两个句子作为训练数据:
Pos: The book is good
Neg: The book is bad
正面词典中存在“好”一词,负面词典中存在“坏”一词,而其他词都不存在于这两个词典中。我希望与句子类匹配的字典中存在的单词具有较大的权重值,而其他单词的权重值较小。所以,特征向量会是这样的:
+1 1:0.1 2:0.1 3:0.1 4:0.9
-1 1:0.1 2:0.1 3:0.1 5:0.9
如果我想对一个测试句“The food is bad”进行分类,当我无法匹配测试句的类时,我应该如何为测试集生成一个权重取决于现有字典的特征向量与每个字典?我能想到的是,对于测试集,只要这个词在两个字典中都存在,我会给这个词一个很高的权重值。
0 1:0.1 3:0.1 5:0.9
我想知道这是否是为训练集和测试集创建向量表示的正确方法。
--编辑-- 我忘了提到这些预制字典是使用某种主题模型提取的。例如,主题 1 中的前 100 个词有点代表正类,主题 2 中的词代表负类。我想使用这种信息来改进分类器,而不是只使用词袋功能。
【问题讨论】:
标签: machine-learning svm sentiment-analysis text-classification