我正在使用Libsvm对书写文本进行分类。 (性别分类)SVM机器学习:LibSVM中的特征表示
在理解如何创建具有多个功能的Libsvm培训数据时遇到问题。在LIBSVM
训练数据是建立这样的:
label index1:value1 index2:value2
可以说,我想这些功能:
- Top_k话:按标签
- Top_k双字母组k个最常用的词:k个最使用bigrams
所以例如,计数看起来像这样:
Word count Bigram count
|-----|-----------| |-----|-----------|
|word | counts | |bigra| counts |
|-----|-----|-----| |-----|-----|-----|
index |text | +1 | -1 | index |text | +1 | -1 |
|-----|-----|-----| |-----|-----|-----|
1 |this | 3 | 3 | 4 |bi | 6 | 2 |
2 |forum| 1 | 0 | 5 |gr | 10 | 3 |
3 |is | 10 | 12 | 6 |am | 8 | 10 |
|... | .. | .. | |.. | .. | .. |
|-----|-----|-----| |-----|-----|-----|
比方说,K = 2,这是一个训练实例会是什么样子?(计数不与前下属)
Label Top_kWords1:33 Top_kWords2:27 Top_kBigrams1:30 Top_kBigrams2:25
或者它看起来像这样(会有问题时,功能混淆)?
Label Top_kWords1:33 Top_kBigrams1:30 Top_kWords2:27 Top_kBigrams2:25
我只是想知道特征向量看起来像多个不同的功能,以及如何去做。
编辑:
利用上述更新后的表,是正确的这种训练数据?:
例
1 1:3 2:1 3:10 4:6 5:10 6:8
-1 1:3 2:0 3:12 4:2 5:3 6:10
是的,我知道他们必须是数字,我想知道如果我有这两个功能必须如何。我编辑我的帖子来澄清它 – user3811872
是的,更新的功能表示对应于您绘制的表格。通常SVM中的特性之间没有意义(它们是独立的),因此您可以随意列举它们。唯一重要的是,一个向量中的特征K必须代表与其他特征K完全相同的特征;其余的完全是任意的。但是 - 您应该考虑一些适当的功能缩放比例(如tf-idf) – lejlot