我正在尝试将wordfish应用于Quanteda.corpora的data_corpus_ukmanifestos,但它似乎从未停止运行。另一方面,当我使用Quanteda的wordfish教程中的示例代码时,wordfish会在几秒钟内完成。这对我来说只是一个问题吗?别人也会这样吗?我该如何解决这个问题?
这是我现在拥有的代码。就像我说的那样,当在爱尔兰的预算演讲中运行时,wordfish可以在几秒钟内运行,但是当应用于聚会宣言时,wordfish永远不会停止运行。
## install/load packages
## install.packages(c("quanteda", "devtools"))
## devtools::install_github("quanteda/quanteda.corpora")
library(quanteda)
library(quanteda.corpora)
require(quanteda)
require(quanteda.corpora)
dfmat_irish <- dfm(data_corpus_irishbudget2010, remove_punct = TRUE)
tmod_wf <- textmodel_wordfish(dfmat_irish, dir = c(6,5))
summary(tmod_wf)
dfmat_uk <- dfm(data_corpus_ukmanifestos, remove_punct = TRUE)
wf_uk <- textmodel_wordfish(dfmat_uk, dir = c(83, 74))
我如何让词鱼与此语料库一起工作?
答案 0 :(得分:0)
尝试修剪低频单词。时间序列语料库的时间跨度越长,矩阵就越稀疏。自1945年以来,英国语料库中共有101条宣言。很多用语很少见。
library("quanteda")
## Package version: 1.4.4
## Parallel computing: 2 of 12 threads used.
## See https://quanteda.io for tutorials and examples.
##
## Attaching package: 'quanteda'
## The following object is masked from 'package:utils':
##
## View
data(data_corpus_ukmanifestos, package = "quanteda.corpora")
system.time(
wf_uk2 <- dfm(data_corpus_ukmanifestos, remove_numbers = TRUE, remove_punct = TRUE) %>%
dfm_trim(min_termfreq = 10, min_docfreq = 20) %>%
textmodel_wordfish(dir = c(83, 74))
)
## user system elapsed
## 2.274 0.124 2.356
您还可以使用dfm_wordstem()
进一步缩小功能集,但最好在修剪操作之前执行此操作。