我使用mahout 0.9(安装在hdp2.2上)进行主题发现(潜在drichlet分配算法)。我的文本文件存储在目录中 inputraw
并按顺序执行以下命令
命令#1:
mahout seqdirectory -i inputraw -o output-directory -c UTF-8
命令2:
mahout seq2sparse -i output-directory -o output-vector-str -wt tf -ng 3 --maxDFPercent 40 -ow -nv
命令#3:
mahout rowid -i output-vector-str/tf-vectors/ -o output-vector-int
命令4:
mahout cvb -i output-vector-int/matrix -o output-topics -k 1 -mt output-tmp -x 10 -dict output-vector-str/dictionary.file-0
在执行第二个命令之后,它会在 output-vector-str
(已命名) df-count
, dictionary.file-0
, frequency.file-0
, tf-vectors
, tokenized-documents
以及 wordcount
). 考虑到我的输入文件的大小,这些文件的大小看起来都不错,但是``tf vectors`下的文件的大小非常小,实际上只有118字节)。
显然是因为
`tf-vectors` is the input to the 3rd command, the third command also generates a file of small size. Does anyone know:
文件被删除的原因是什么
`tf-vectors` folder to be that small? There must be something wrong.
从第一个命令开始,所有生成的文件都有一个奇怪的编码,也不是人类可读的。这是意料之中的事吗?
1条答案
按热度按时间nsc4cvqm1#
你的答案如下:
为什么tf vectors文件夹下的文件这么小?
考虑到maxdf百分比仅为40%,向量很小,这意味着只考虑doc freq(在docs中出现的术语的百分比频率)小于40%的术语。换句话说,在生成向量时,只考虑出现在40%或更少文档中的术语。
为什么tf vectors文件夹下的文件这么小?
在mahout中有一个命令叫做
mahout seqdumper
如果你将文件以“顺序”格式转储为“人类”可读的格式,你会得到帮助。祝你好运!!