回答:
実装:topicmodelsパッケージは、Blei et al。によるトピックモデル用のGSL CおよびC ++コードへのインターフェイスを提供します。およびファン等。以前のバージョンでは変分EMを使用し、後者ではギブスサンプリングを使用します。http://www.jstatsoft.org/v40/i13/paperを参照してください。このパッケージは、tmパッケージのユーティリティとうまく機能します。
ldaパッケージは、GSLライブラリのモデルと同様の多くのモデルに対して、折りたたまれたGibbs Samplerを使用します。ただし、Blei et al。ではなく、パッケージ作成者自身によって実装されています。したがって、この実装は、通常、VEMアルゴリズムが通常適用されるこれらのモデルバリアントを紹介する元の論文で提案された推定手法とは異なります。一方、パッケージは他のパッケージよりも多くの機能を提供します。このパッケージは、テキストマイニング機能も提供します。
拡張性:拡張性に関して、topicmodelコードはその性質上、CおよびC ++で記述された他のトピックモデルコードとインターフェイスするように拡張できます。ldaパッケージは、作成者が提供する特定の実装に依存しているようですが、Gibbsサンプラーでは独自のトピックモデルを指定できる場合があります。拡張性の問題ではなく、前者はGPL-2および後者のLGPLの下でライセンスされるため、拡張する必要があるものに依存する可能性があります(GPL-2はオープンソースの側面に関してより厳密です。つまり、使用できません)独自のソフトウェアで)。
パフォーマンス:私はここであなたを助けることができません、私はこれまでトピックモデルのみを使用しました。
結論:
個人的にはtopicmodels
、よく文書化されているので(上記のJSS論文を参照)、著者を信頼しています(Grünもflexmixを実装し、HornikはRコアメンバーです)。
lda
パッケージが素晴らしいと確信している。私はそれlda
が何らかの形で劣ったコードを持っていることを意味するつもりはなかった。私は自分の印象を述べました(ドキュメントは少しずさんに見えました)。それは2年以上前だったので、私は少し答えを編集しました(CRANページのタイプミスはまだそこにあります、それらを修正するのは良いと思いますが、そのメールは失われたようです)。
lda
ので、経験的な評価をすることができませんでした。それを提供することは、OPと他のすべての人を確実に助け、可能な不正(意図しない)を修正するでしょう。ありがとう!
lda
パッケージにはより多くのオプションが含まれていることがわかりました。ただし、データをモデルに適合させるためにデータをフォーマットする方法を理解することは困難です。topicmodels
パッケージには、とうまく動作tm
しながら、パッケージlda
パッケージが作成する方法は明らかではないリストを要求します。
topicmodelsの場合は +1 。@Momoの答えは非常に包括的なものです。パッケージまたはpythonを使用topicmodels
して簡単に作成されるドキュメント用語マトリックスとして入力を受け取るだけで追加しますtm
。lda
パッケージは、(BLEIのLDA-Cに基づいて)入力の難解なフォームを使用して、私はに変換するDTMへの組み込み関数を使用して運がなかったしましたlda
(LDA文書はモモのメモとして、非常に悪い)パッケージ形式。
私はそれがでプリプロセス、生のテキストで始まるいくつかのコードを持っていtm
て、それとプットtopicmodels
(事前に話題の最適な数を見つけ、出力での作業を含む)、ここに。topicmodels
初めて訪れる人に役立つかもしれません。
read_dtm_Blei_et_al
するtm
パッケージ内の関数を見つけました。
Molly Roberts、Brandon Stewart、Dustin TingleyによるR構造トピックモデル(STM)パッケージも最適です。tmパッケージの上に構築され、ドキュメントレベルの共変量情報を使用したトピックモデリングの一般的なフレームワークです。
http://structuraltopicmodel.com/
STMパッケージには、トピックの数を決定するための一連の方法(グリッド検索)と測定(意味的一貫性、残差、排他性)が含まれています。トピックの数を0に設定すると、モデルがトピックの最適な数を決定することもできます。
stmBrowserパッケージは、トピックに対する外部変数の影響を視覚化する優れたデータ視覚化補完です。:2016年の大統領討論に関連するこの例を参照してくださいhttp://alexperrier.github.io/stm-visualization/index.htmlを。
topicmodels、lda、stmの3つすべてのうち、3つすべてのライブラリを使用しました。誰もがnグラムで動作するわけではありません。topicmodelsライブラリーはその見積もりに優れており、nグラムでも機能します。しかし、誰もがユニグラムで作業している場合、実践者は構造化された出力を提供するため、stmを好む場合があります。