2016-08-26 72 views
0

上有產生用於text2vec封裝的DTM(文件項矩陣),例如其中構建矩陣之後施加TFIDF加權下列文件:R中的text2vec轉換新數據?

data("movie_review") 
N <- 1000 
it <- itoken(movie_review$review[1:N], preprocess_function = tolower, 
tokenizer = word_tokenizer) 
v <- create_vocabulary(it) 
vectorizer <- vocab_vectorizer(v) 
it <- itoken(movie_review$review[1:N], preprocess_function = tolower, 
tokenizer = word_tokenizer) 
dtm <- create_dtm(it, vectorizer) 
# get tf-idf matrix from bag-of-words matrix 
dtm_tfidf <- transformer_tfidf(dtm) 

常見的做法是建立一個DTM基於在訓練數據集上並將該數據集用作模型的輸入。然後,當遇到新數據(測試集)時,需要在新數據上創建相同的DTM(意思是訓練集中使用的所有相同術語)。無論如何,在包中以這種方式轉換新的數據集(在scikit中,我們只有這種類型的實例有一個轉換方法)。

+0

任何膽量來解釋爲什麼downvoted? –

+1

不需要「膽量」來解釋。只需將您的指針懸停在向下箭頭上即可。在這個問題上冒犯的可能性很大。沒有代碼。沒有示例數據。沒有解釋可以預期什麼樣的模型構建或評分。沒有解釋什麼是「DTM」......是的,我知道它(可能)是什麼,但許多程序員可能不會。所以我必須同意它至少「不清楚」,也沒有太多的「研究努力」被證明,這些都是倒退的完全正確理由。除非擴展以解決其許多缺陷,否則似乎也是無用的。 –

+1

懸停不顯示任何東西?它令人沮喪的時候有人不投票解釋。這類問題集中在一個特定的軟件包上,我的假設是如果你已經使用它並可以遠程回答這個問題,你就會知道文檔術語矩陣是什麼。代碼也是一個難題......因爲我想知道的不是這裏是一些代碼,它有什麼問題 - 但相反,包可以做'x'。我會盡量擴大它,但我感謝你的意見。 –

回答

4

其實當我開始text2vec我把那條管道放在第一位。現在我們正在準備新版本documentation

對於V0.3以下應該工作:

data("movie_review") 
train_rows = 1:1000 
prepr = tolower 
tok = word_tokenizer 

it <- itoken(movie_review$review[train_rows], prepr, tok, ids = movie_review$id[train_rows]) 
v <- create_vocabulary(it) %>% 
    prune_vocabulary(term_count_min = 5) 

vectorizer <- vocab_vectorizer(v) 
it <- itoken(movie_review$review[train_rows], prepr, tok) 
dtm_train <- create_dtm(it, vectorizer) 
# get idf scaling from train data 
idf = get_idf(dtm_train) 
# create tf-idf 
dtm_train_tfidf <- transform_tfidf(dtm_train, idf) 

test_rows = 1001:2000 
# create iterator 
it <- itoken(movie_review$review[test_rows], prepr, tok, ids = movie_review$id[test_rows]) 
# create dtm using same vectorizer, but new iterator 
dtm_test_tfidf <- create_dtm(it, vectorizer) %>% 
    # transform tf-idf using idf from train data 
    transform_tfidf(idf) 
+0

太棒了!任何想法可能會打到CRAN? –

+0

幾周。但是你可以從github,branch 0.4安裝它。 –

+0

@B_Miner檢查新教程:http://dsnotes.com/text2vec/vectorization.html –