2

Graberらの結果を再現しようとしています。LDA が多言語コーパスで使用される場合、トピックの最も可能性の高い用語 (トップ 10 など) は単一の言語に由来することを示しています。彼らの論文はこちらです。

これは、IMO を実行するための妥当な健全性チェックですが、問題が発生しています。

彼らが使用したのと同じコーパス、Europarl コーパスを使用しています。コーパスはブルガリア語と英語で構成されています。ブルガリア語と英語のコーパスを連結しました

cat corpusBg.txt corpusEn.txt >> corpusMixed.txt.  

これには各行に文が含まれており、ブルガリア語の行のコレクションと英語の 2 番目のコレクションがあります。LDA モデルを 4 つのトピックに当てはめると、上位 10 のうち 3 つには英語の用語のみが含まれ、4 つ目は英語とブルガリア語が混在しています。LDA のデフォルト設定を使用しています。

texts = [[word for word in doc.lower().split()] for doc in open('corpusMixed.txt', 'r')]
dictionary = corpora.Dictionary(texts)
corpus = [dictionary.doc2bow(doc) for doc in texts]
lda = models.ldamodel.LdaModel(corpus, id2word = dictionary, num_topics = 4)
topics = lda.print_topics(lda.num_topics)

for t in topics:
    print t

ストップワードやまばらな用語を削除していないことに注意してください。ただし、これは問題ではないと思います。直感的に、ブルガリア語のみの用語を含むトピックと、英語のみの用語を含むトピックがあるはずですよね?

4

1 に答える 1

0

この論文では、10 トピック モデルを使用して現象について説明しています。4のみ使用しています。

少数のトピックで LDA を実行すると、別個のセマンティック トピックが「キメラ」トピックにマージされます ( David Mimno の用語だと思います)。「言語ごとに約 6000 万語」のコーパスのトピックが 4 つしかない場合、これはほとんど避けられません。正直なところ、10 個のトピックで十分であることに驚いていますが、LDA が異なる言語のトピックをマージするのは難しいと思います。異なる言語の単語のペアが文の中で一緒に現れることはほとんどないからです。

于 2014-09-29T11:36:21.137 に答える