1

我需要训练一个模型,该模型将对文本数据执行多标签多类分类。

目前,我在 R 中使用 mlr 包。但不幸的是,由于在训练模型之前出现错误,我没有继续进行。

更具体地说,我被困在这个地方:

classify.task = makeMultilabelTask(id = "classif", data = termsDf, target =target)

并且,得到了这个错误

makeMultilabelTask​​(id = "classif", data = termsDf, target = target) 中的错误:'data' 断言失败:列必须根据 R 的变量命名约定命名,并且不得包含特殊字符。

我使用了这个例子: - 在 R 中使用 mlr 包进行多标签文本分类

这是我目前使用的完整代码片段,

tm <- read.csv("translate_text_V02.csv", header = TRUE, 
               stringsAsFactors = FALSE, na.strings = c("", "NA")) 
process <- tm[, c("label", "text")]

    process <- na.omit(process)
    docs <- Corpus(VectorSource(process$text))
    clean_corpus <- function(corpus){
      corpus <- tm_map(corpus, removePunctuation)
      corpus <- tm_map(corpus, removeNumbers)
      corpus <- tm_map(corpus, content_transformer(tolower))
      corpus <- tm_map(corpus, removeWords, mystopwords)
      corpus <- tm_map(corpus, removeWords, stopwords("SMART"))
      corpus <- tm_map(corpus, removeWords, stopwords("german"))
      corpus <- tm_map(corpus, stripWhitespace)
      corpus <- tm_map(corpus, stemDocument, language = "english")
      return(corpus)
    }
    clean_corp <- clean_corpus(docs)
    terms <-DocumentTermMatrix(clean_corp)
    m <- as.matrix(terms)
    m <- cbind(m,process$label)
    termsDf <- as.data.frame(m)
    target <- unique(termsDf[,2628]) %>% as.character() %>% sort()
    classify.task = makeMultilabelTask(id = "classif", data = termsDf, target =target)

我在带有标签类的文档术语矩阵之后创建了数据框。但我被困在后记我该如何进一步进行机器学习部分?

善意回答的问题:-

  1. 如何进一步创建 DocumentTermMatrix?
  2. 如何在这个特定的数据集上应用随机森林算法?
4

0 回答 0