0

我已经实现了这个链接中解释的 TF-IDF 算法:https ://cran.r-project.org/web/packages/text2vec/vignettes/text-vectorization.html#tf-idf

所以,分类器是这样实现的:

glmnet_classifier = cv.glmnet(x = dtm_train_tfidf, y = train[['sentiment']], 
                              family = 'binomial', 
                              alpha = 1,
                              type.measure = "auc",
                              nfolds = NFOLDS,
                              thresh = 1e-3,
                              maxit = 1e3)

x 和 y 的类型是:

> typeof(dtm_train_tfidf)
[1] "S4"
> typeof(train$setiment)
[1] "integer"

如何使用不同的分类器,例如在“Caret”包中你会写:

model_svm<-train(x = dtm_train_tfidf, y = train[['sentiment']],method='svmRadial')

问题是这不起作用。有什么方法可以实现不同的分类器而不是 cv.glmnet 例如在 caret 包中?这个输入 x,y 和插入符号分类器之间是否有任何联系?如果没有,是否有像 cv.glmnet 这样的包可以处理这种类型的输入?

4

1 回答 1

0

dtm是 CSC 格式的稀疏矩阵dgCMatrix。所以寻找可以将稀疏矩阵作为输入的包。或者您可以尝试应用降维(例如 LSA),然后将此密集矩阵馈送到caret.

于 2017-11-28T04:43:48.663 回答