1

我想使用木槌作爲培訓主題。我的數據在一個文件中,所以我研究瞭如何構建這個One Single文件的木槌文檔。木槌構圖文件中的null-sources

Mallet website,每行部分一個文件,一個實例下,有人說:

[URL] [語言] [頁的文字...]

在這種情況下,每行的第一個標記 (空格分隔,帶有可選逗號)將成爲實例名稱,第二個標記將成爲標籤,並且該行上的所有其他 文本將被解釋爲一系列的單詞標記。

所以根據上述報價,我創造了這樣我的單個文件:

127 en some text here... 
982 en some text here... 
1003 en some text here... 
... 

,然後導入這個單個文件:

bin\mallet import-file --input data.txt --output data.mallet --keep-sequence 

在那之後,我訓練3個主題:

bin\mallet train-topics --input data.mallet --num-topics 3 --output-doc-topics data_composition.txt --word-topic-counts-file data_wcounts.txt 

但是,當我打開data_composition.txt,它具有以下結構:

#doc source topic proportion ...  
0 null-source 0 0.4057970941066742 1 0.3188405930995941 2 0.2753623127937317 

所以,現在的問題是:爲什麼在這個組成文件不槌打印null-source?我希望它在源標題下打印URL(即我的例子中的ID)。

編輯:

我想是這樣的:

#doc source topic proportion ...  
0  127 0 0.4057970941066742 1 0.3188405930995941 2 0.2753623127937317 
1  982 ... (topic probabilities) ... 
2  1003 ... (topic probabilities) ... 

在此先感謝!

回答

0

輸入文件的第一列不包含URL。嘗試

file://0 

而不是隻是0

+0

感謝您的回覆,關於您的回覆,數字(1,2,3等)是槌子預期的URL。換句話說,我怎麼能告訴木槌數字是網址?你知道嗎? @jknappen –

+0

「合成」文件第一列中的數字只是行號,從0開始計數。它們與文檔URL沒有任何關係,將出現在第二列中。 – jknappen

+0

我隨機給出了這些數字(他們不是行號)我自己給出了這些數字。欲瞭解更多信息,請關注編輯過的帖子。 @jknappen –

0

嘗試升級到最新版本槌在這裏:http://mallet.cs.umass.edu/download.php

槌情況下有一個「名」和「源」字段。在以前的版本中,--output-doc-topics已打印出來。當前的穩定版本2.0.8會打印名稱,這是您要顯示的字段。

請注意,此版本也默認爲主題比例的「密集」表示形式,每個主題只有一列。