当我在topic modeling developer's guide上尝试示例代码时,我真的想了解该代码输出的含义。
首先在运行过程中,它给出:
Coded LDA: 10 topics, 4 topic bits, 1111 topic mask
max tokens: 148
total tokens: 1333
<10> LL/token: -9,24097
<20> LL/token: -9,1026
<30> LL/token: -8,95386
<40> LL/token: -8,75353
0 0,5 battle union confederate tennessee american states
1 0,5 hawes sunderland echo war paper commonwealth
2 0,5 test including cricket australian hill career
3 0,5 average equipartition theorem law energy system
4 0,5 kentucky army grant gen confederates buell
5 0,5 years yard national thylacine wilderness parks
6 0,5 gunnhild norway life extinct gilbert thespis
7 0,5 zinta role hindi actress film indian
8 0,5 rings south ring dust 2 uranus
9 0,5 tasmanian back time sullivan london century
<50> LL/token: -8,59033
<60> LL/token: -8,63711
<70> LL/token: -8,56168
<80> LL/token: -8,57189
<90> LL/token: -8,46669
0 0,5 battle union confederate tennessee united numerous
1 0,5 hawes sunderland echo paper commonwealth early
2 0,5 test cricket south australian hill england
3 0,5 average equipartition theorem law energy system
4 0,5 kentucky army grant gen war time
5 0,5 yard national thylacine years wilderness tasmanian
6 0,5 including gunnhild norway life time thespis
7 0,5 zinta role hindi actress film indian
8 0,5 rings ring dust 2 uranus survived
9 0,5 back london modern sullivan gilbert needham
<100> LL/token: -8,49005
<110> LL/token: -8,57995
<120> LL/token: -8,55601
<130> LL/token: -8,50673
<140> LL/token: -8,46388
0 0,5 battle union confederate tennessee war united
1 0,5 sunderland echo paper edward england world
2 0,5 test cricket south australian hill record
3 0,5 average equipartition theorem energy system kinetic
4 0,5 hawes kentucky army gen grant confederates
5 0,5 years yard national thylacine wilderness tasmanian
6 0,5 gunnhild norway including king life devil
7 0,5 zinta role hindi actress film indian
8 0,5 rings ring dust 2 uranus number
9 0,5 london sullivan gilbert thespis back mother
<150> LL/token: -8,51129
<160> LL/token: -8,50269
<170> LL/token: -8,44308
<180> LL/token: -8,47441
<190> LL/token: -8,62186
0 0,5 battle union confederate grant tennessee numerous
1 0,5 sunderland echo survived paper edward england
2 0,5 test cricket south australian hill park
3 0,5 average equipartition theorem energy system law
4 0,5 hawes kentucky army gen time confederates
5 0,5 yard national thylacine years wilderness tasmanian
6 0,5 gunnhild including norway life king time
7 0,5 zinta role hindi actress film indian
8 0,5 rings ring dust 2 uranus number
9 0,5 back london sullivan gilbert thespis 3
<200> LL/token: -8,54771
Total time: 6 seconds
所以问题1 :“编码LDA:10个主题,4个主题位,1111主题掩码”在第一行是什么意思?我只知道“10个主题”是什么。
问题2 :“&lt; 10&gt; LL /令牌中的LL /令牌是什么:-9,24097&lt; 20&gt; LL /令牌:-9,1026&lt; 30&gt; LL /令牌:-8,95386&lt; 40&gt; LL /令牌:-8,75353“是什么意思?它似乎是吉布斯采样的度量标准。但是它不是单调增加的吗?
之后,打印出以下内容:
elizabeth-9 needham-9 died-7 3-9 1731-6 mother-6 needham-9 english-7 procuress-6 brothel-4 keeper-9 18th-8.......
0 0.008 battle (8) union (7) confederate (6) grant (4) tennessee (4)
1 0.008 sunderland (6) years (6) echo (5) survived (3) paper (3)
2 0.040 test (6) cricket (5) hill (4) park (3) career (3)
3 0.008 average (6) equipartition (6) system (5) theorem (5) law (4)
4 0.073 hawes (7) kentucky (6) army (5) gen (4) war (4)
5 0.008 yard (6) national (6) thylacine (5) wilderness (4) tasmanian (4)
6 0.202 gunnhild (5) norway (4) life (4) including (3) king (3)
7 0.202 zinta (4) role (3) hindi (3) actress (3) film (3)
8 0.040 rings (10) ring (3) dust (3) 2 (3) uranus (3)
9 0.411 london (4) sullivan (3) gilbert (3) thespis (3) back (3)
0 0.55
这部分的第一行可能是令牌主题分配,对吗?
问题3 : 对于第一个主题,
0 0.008 battle (8) union (7) confederate (6) grant (4) tennessee (4)
被称为“主题分发”的是0.008,这个主题在整个语料库中的分布是什么?然后似乎存在冲突:
如上所示的主题0将使其令牌出现在copus 8 + 7 + 6 + 4 + 4 + ...次;并且在比较中,主题7在语料库中识别出4 + 3 + 3 + 3 + 3 ......次。因此,主题7应该比主题0具有更低的分布。这是我无法理解的。
更进一步,最后的“0 0.55”是什么?
非常感谢您阅读这篇长篇文章。希望你能回答它并希望这对其他对Mallet感兴趣的人有所帮助。
最好的
答案 0 :(得分:6)
我认为我不足以给出一个非常完整的答案,但这里有一些内容......对于Q1,您可以检查一些code以查看这些值是如何计算的。对于Q2,LL是模型的对数可能性除以令牌总数,这是衡量数据给出模型的可能性的度量。增加值意味着模型正在改进。这些也可以在R
主题建模包中找到。 Q2,是的,我认为第一行是正确的。 Q3,好问题,我不能立刻清楚,也许(x)是某种索引,令牌频率似乎不太可能......大概这些都是某种诊断。
使用bin\mallet run cc.mallet.topics.tui.TopicTrainer ...your various options... --diagnostics-file diagnostics.xml
可以获得更有用的诊断集,这将产生大量的主题质量度量。他们绝对值得一试。
关于所有这些的完整故事,我建议给普林斯顿的David Mimno写一封电子邮件,他是MALLET的(主要?)维护者,或者通过http://blog.gmane.org/gmane.comp.ai.mallet.devel的列表给他写信然后发帖回答这里,我们这些人对MALLET的内部运作感到好奇......
答案 1 :(得分:3)
我的理解是:
0 0.008 battle (8) union (7) confederate (6) grant (4) tennessee (4)
然后,结果,您还获得.csv文件。我认为它包含了该过程中最重要的数据。您会在每行中找到以下值:
0 0 285 10 page make items thing work put dec browsers recipes expressions
那是:
有点晚了,但我希望它有助于某人
答案 2 :(得分:1)
对于问题3,我认为0.008(“主题分布”)与文档的先前\ alpha over主题分布有关。 Mallet优先考虑这一点,基本上允许一些主题带来更多的“重量”。 Mallet似乎估计主题0只占你语料库的一小部分。
令牌计数仅代表计数最高的单词。例如,主题0的剩余计数可以是0,主题9的剩余计数可以是3.因此,主题9可以在语料库中占用比主题0更多的单词,即使顶部单词的计数是低。
我必须在最后检查“0 0.55”的代码,但这可能是优化的\ beta值(我非常确定不是不对称的)。