r - 使用 e1071 (SVM) 进行文本分类

标签 r svm text-classification multilabel-classification

我有一个包含两列的数据框。一列包含文本。该列的每一行包含三个不同类别(技能、资格、经验)的某种类型的数据,另一列是它们各自的类别标签。

数据帧快照:

snapshot of the dataframe

如何从包 e1071 应用 svm。如何将文本数据列转换为分数。我想将文本列转换为文档术语矩阵。他们还有别的办法吗?如何制作d-t-矩阵?

最佳答案

您可以使用 RTextTools包以创建文档术语矩阵。
使用 create_matrix 函数:

# Create the document term matrix. If column name is v1
dtMatrix <- create_matrix(data["v1"])
然后你可以使用这个训练你的 SVM 模型:
# Configure the training data
container <- create_container(dtMatrix, data$label, trainSize=1:102, virgin=FALSE)
 
# train a SVM Model
model <- train_model(container, "SVM", kernel="linear", cost=1)
如需信息, RTextTools 用户 e1071 在内部打包以训练模型。
有关更多详细信息,请参阅 RTextTools 和 e1071 文档。

关于r - 使用 e1071 (SVM) 进行文本分类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40051542/

相关文章:

尽管没有任何错误,但 Renderplotly 不起作用

r - 如何通过再次单击该要素来删除使用 Shiny 和 mapedit 所做的选择?

r - knit 不接受 dev 的 opts_chunk 设置选项

c++ - 以 SVM 作为弱学习器的 Opencv 级联分类器

python - 如何在 scikit learn 中使用向量作为特征

python - 如何让我的Python代码更有效?

python - 预期密集有形状但有形状的数组

r - QQ情节: More than two data

java - 如何使用apache Spark通过列表来消除文本中的特定单词?

numpy - y_test、sklearn 多标签分类上的 MultiLabelBinarizer 形状不一致错误