質問

潜在ディリクレの割り当て(LDA)階層ディリクレプロセス(HDP) どちらもトピックモデリングプロセスです。主な違いは、LDAがトピックの数の仕様を必要とすることであり、HDPはそうではありません。どうしてこんなことに?そして、両方のトピックモデリング方法の違い、長所、および短所は何ですか?

役に立ちましたか?

解決

HDPはLDAの拡張であり、混合成分の数(ドキュメントモデリング用語での「トピック」の数)が先験的に不明なケースに対処するように設計されています。それが違いがある理由です。

文書モデリングにLDAを使用すると、各「トピック」をいくつかの既知の語彙の単語の分布として扱います。各ドキュメントについて、トピックの混合物はディリクレの分布から描かれ、ドキュメント内の各単語はその混合物から独立した描画です(つまり、トピックを選択して、それを使用して単語を生成するために)。

HDP(ドキュメントモデリングに適用)の場合、Dirichletプロセスを使用して、トピックの数の不確実性をキャプチャします。したがって、コーパスの可能性のあるトピックの可能性が高いセットを表す共通の基本分布が選択され、各ドキュメントのトピックの有限分布がこのベース分布からサンプリングされます。

長所と短所に関しては、HDPには、事前に指定されているのではなく、データから最大数のトピック数がバウンドされ、学習できるという利点があります。実装する方が複雑であり、限界数のトピックが受け入れられる場合は不要だと思います。

他のヒント

逸話的に、私は階層LDAからの出力に感銘を受けたことはありません。トピックの数を選択するための最適なレベルの粒度を見つけていないようです。通常のLDAのいくつかの反復を実行し、作成したトピックを手動で検査し、トピックの数を増やすか減少させるかを決定し、探している粒度が得られるまで繰り返し続けることで、はるかに優れた結果を得ました。

覚えておいてください:階層的なLDAはあなたの心を読むことができません...それはあなたが実際にトピックモデリングを使用するつもりであることを知りません。 K-Meansクラスタリングと同様に、ユースケースに最も理にかなっているKを選択する必要があります。

これは、このトピックのトップグーグルヒットの1つであるため、その潜在的なディリクレの割り当て(LDA)、階層ディリクレプロセス(HDP)、 階層潜在的なディリクレの割り当て(HLDA)はすべて異なるモデルです。

LDAモデルは、単語のDirichlet混合物であるユーザーによってモデルのパラメーターとして選択された固定数のトピックのDirichlet混合物として文書化されています。これにより、トピックへの用語とトピックへのドキュメントへのフラットでソフトな確率的クラスタリングが生成されます。

HDPは、LDAと同じように、単語の混合物としてトピックをモデル化しますが、ドキュメントが固定されたトピックの混合であるのではなく、トピックの数がディリクレプロセスによって生成され、トピックの数もランダム変数です。名前の「階層」部分は、トピック自体ではなく、生成モデル(トピックの数を生成するDirichletプロセス)に追加される別のレベルを指します。トピックはまだフラットなクラスタリングです。

一方、HLDAは、Dirichletから描かれた新しい独特のレベルのトピックの混合物としてトピックをモデル化するLDAの適応です。 分布 プロセスではありません。これは、データとは無関係に、トピックの数をハイパーパラメーターとして扱います。違いは、クラスタリングが階層的であることです。最初の一連のトピック自体のクラスタリングを学習し、トピック(したがって、単語と文書)間のより一般的な抽象的な関係を提供します。スタック交換を数学、科学、プログラミング、歴史などにクラスタリングするように考えてください。データサイエンスとクロス検証のクラスタリングとは対照的に、たとえばソフトウェアエンジニアリングとソフトウェアエンジニアリングといくつかの概念を共有する抽象的な統計とプログラミングトピックに相互検証します。交換は、コンピューターサイエンス交換により、より具体的なレベルでクラスター化されており、上記のすべての交換間の類似性は、クラスターの上層までそれほど表示されません。

LDAと比較してHDPがうまく機能する状況があります。さまざまなクラスに属する約16000のドキュメントがあります。この場合、HDPがどの程度のクラスで収集できるかを知りません。この場合、HDPは本当に役立ちます。

ライセンス: CC-BY-SA帰属
所属していません datascience.stackexchange
scroll top