Actions / Navigation / close / 20
マイIBM ログイン ニュースレター

潜在ディリクレ配分とは

2024年4月22日

共同執筆者

Jacob Murel Ph.D.

Senior Technical Content Creator

Eda Kavlakoglu

Program Manager

潜在ディリクレ配分は、一連のドキュメント全体にわたる中心的なトピックとその分布を明らかにするためのトピック・モデリング手法です。

潜在ディリクレ配分(LDA)は、トピック・モデリングに対するベイズ推定のアプローチです。機械学習における線形判別分析と混同しないでください。簡単に言うと、LDAはトピック・モデリングの条件付きで確率的な形式です。

トピック・モデリングは、自然言語処理(NLP)の手法であり、大規模なテキスト・データ・セットに教師なし学習を適用して、ドキュメントから派生した用語の要約セットを生成します。その用語は、コレクション全体の主なトピックのセットを表すことを目的としています。トピック・モデルはこのようにして、ドキュメントのコレクションを特徴付ける潜在的なトピックまたはテーマを明らかにすることを目的としています。1

Users can readily generate LDA topic models using scikit-learn’s (or, sklearn’s) Natural Language Toolkit (NLTK) and gensim  in Python. The topicmodels  and lda  packages in R also contain functions for generating LDA topic models.

ニュースレターを表示しているスマホの画面

The DX Leaders

「The DX Leaders」は日本語でお届けするニュースレターです。AI活用のグローバル・トレンドや日本の市場動向を踏まえたDX、生成AIの最新情報を毎月お届けします。

テキスト生成の前提条件

LDAは確率的モデルです。これは、LDAアルゴリズムがトピックを生成し、確率分布に従って単語やドキュメントをさまざまなトピック間で分類することを意味します。しかし、なぜこれがテキスト・データ内の隠れたテーマ構造を明らかにするのに適切な方法なのでしょうか。基本的に、LDAはドキュメントがドキュメント作成前のトピックのランダム・サンプリングを通じて生成されたものであると想定し、このサンプリングをリバース・エンジニアリングしようとします。

LDAの想像上の生成テキスト・プロセスは、ドキュメント化前のトピックから始まります。各トピックは単語の固定語彙であり、各単語はそのトピックに属する確率があります。複数の意味や用途があり得ることを考慮して、単語には個別のカテゴリーではなく確率が割り当てられることに注意してください。次に、テキスト・ドキュメントを作成するために、マシンはトピックに関する分布をランダムに生成します(例えば、85パーセントが政治、10パーセントが金融、5パーセントが歴史など)。このドキュメント内の単語ごとに、マシンは選択されたトピックの1つをランダムに選択し、そのトピックから単語をランダムに出力します。LDA自体はこの方法でドキュメントを生成しないことに注意してください。そうではなく、これはLDAがドキュメントが生成されたと想定するプロセスです。LDA自体は、このプロセスを逆転させて、ドキュメントのコーパスに行き渡っている包括的で隠されたトピックを明らかにしようとします。

この図は、LDAの基礎となる想定テキスト生成プロセスを示しています。

この画像の下部には、単語の分布で構成されるトピックのランダムな組み合わせが示されています。これらのトピックは、コレクション内のすべてのドキュメントに存在します。与えられたドキュメント(この例ではシェイクスピアの『オセロ』)を生成するために、機械はトピックの分布(右端のグラフ)を生成します。この分布は、ドキュメントを構成するトピック(およびそれぞれの割合)です。ドキュメント内の単語ごとに、マシンは選択したトピックの1つ(色付きのドットの列)をランダムに選択し、そこから単語(強調表示された用語)をランダムに選択します2。この視覚化は単なる説明例であり、実際のトピック・モデリングやテキスト生成の結果ではないことに注意してください。ただし、前述したように、LDAはすべてのドキュメントがこの一般的な生成プロセスによって生成されると想定しており、LDAはそれをリバース・エンジニアリングしようとします。

潜在ディリクレ配分の仕組み

潜在的意味解析(LSA)などの他のトピック・モデリング手法と同様に、LDAはコーパス全体のドキュメントをBag-of-Words(BoW)として扱います。これは、LDAが語順と文脈を無視することを意味します。代わりに、個々のドキュメント内で単語が出現および共起する頻度に焦点を当てています。3単語の頻度と共起は、ドキュメント-用語行列でモデル化されます。そこでは、ドキュメントが行で個々の単語が列(またはその逆)になります。各セルの値は、特定の単語が各ドキュメントに出現する頻度を示します。4

トピック生成

LDAアルゴリズムは、ドキュメント-用語行列を使用して、単語の頻度と共起に従ってトピック分布(つまり、それぞれの確率を持つキーワードのリスト)を生成します。共起の頻度を追跡することにより、LDAは、一緒に出現する単語について類似のトピックの一部である可能性が高いと想定します。次に、アルゴリズムは、特定のドキュメントに表示される単語のクラスターに基づいて、ドキュメントとトピックの分布を割り当てます。5

例えば、次のような部分的な出力を持つニュース記事のコレクションのLDAモデルを生成するとします。

ここでは、移民(トピック1)および天文学(トピック2)と表現できる2つのトピックがあります。各単語に付けられたスコアは、そのキーワードが特定のトピックに出現する確率です。各ドキュメントに付加された確率は、そのドキュメント内の各トピックの単語の分布と共起を考慮して、そのドキュメントがトピックの混合に属するそれぞれの確率です。例えば、テーブルの最初の行には、トピック1の境界線が確率40%でリストされ、トピック2のスペースが確率60%でリストされています。これらのパーセントは、コーパス全体にわたってそのトピックでそれぞれの用語が発生する確率を示しています。最初のドキュメントの行には「Document 1: Topic 1: .95, Topic 2: .05」とあります。つまり、モデルは、ドキュメント1の単語の出現に基づいて、ドキュメント1はトピック1からの派生が95%、トピック2からの派生が5%であると予測しています。言い換えると、仮説LDAモデルでは、これらのトピックがモデルの生成に使用されたトピックとその割合であると想定しています。

もちろん、特に多義語では、このような個別の分類において問題を引き起こします。例えば、alienという単語は、移民を指すこともあれば、地球外生物を指すこともあります。このような場合、LDAアルゴリズムはその単語(ひいてはドキュメント)がどのトピックに属するかをどのように判断するのでしょうか。

ギブスの公式

トピックを単語に割り当てるとき、LDAアルゴリズムはギブス・サンプリングとして知られているものを使用します。ギブス・サンプリングの公式は次のとおりです。

この方程式の正確な演算とハイパーパラメーターを理解するには、統計とマルコフ連鎖モンテカルロ法(後者は強化学習でよく採用される)に関する基礎知識が必要です。それでも、方程式の主成分を要約すると次のようになります。

  • 最初の比率は、ドキュメントdのトピックtの確率を表します。このアルゴリズムは、トピックtに属するドキュメントd内の単語数に従って、この確率を計算します。これは基本的に、「トピックtはドキュメントd内でどの程度行き渡っているか」という問い合わせです。
  • 2番目の比率は、単語wがトピックtに属する確率を表します。このアルゴリズムは、t内のすべての単語-トークンにわたるtでのwの出現を列挙することで、この確率を計算します。これは「コーパスの残りの部分全体で、単語wがトピックtにどのくらいの頻度で現れるか」という問い合わせです。

ギブス・サンプリングは反復プロセスであることに注意してください。つまり、単語は一度サンプリングされ、トピックが割り当てられ、それでおしまいではありません。そうではなく、ギブス・サンプリングは各単語を複数回反復し、トピック-単語の確率を相互を考慮して更新します。6

テキスト分類

LDAの際立った機能は、共有された一連のトピックに対する各ドキュメントの確率的分布です。他のトピック・モデリング・アプローチと同様、これらのトピックと各ドキュメント内でのその分布は不明です。トピック・モデリングは教師なしです。分析をガイドする手動でラベル付けされたデータはありません。LDAは、隠れたトピック構造を明らかにすることで、最終的にコレクション全体のドキュメントに注釈を付けます。これらの注釈(つまり、明らかになったトピック)は、テキストを分類するために使用できます。このように、LDAは、大量のドキュメント・コレクションの注釈と編成を自動化することにより、情報検索システムを支援します。7

オフィスでミーティングをするビジネスチーム

IBMお客様事例

お客様のビジネス課題(顧客満足度の向上、営業力強化、コスト削減、業務改善、セキュリティー強化、システム運用管理の改善、グローバル展開、社会貢献など)を解決した多岐にわたる事例のご紹介です。

最適化

データサイエンスの多くのテキスト・マイニング手法と同様に、テキストの前処理によりLDAモデルの結果が大幅に改善されます。ストップワードを削除すると、一般的であり、意味的に無関係な単語が削除されます。ステミングレマティゼーションは、形態学的なバリアントを基本形にまとめて減らすのに役立ち、それによって、機械では別扱いにされる可能性のある単語の変化形、例えばdancedancingdancerなどをまとめます。

LDAモデルは確率論的であり、決定論的ではないため、モデルの最適化は困難なプロセスになる可能性があります。最良の結果を生み出す定められたトピック数というものは存在せず、また、特定の数のドキュメントに適した定められたトピック数といった指針も存在しないようです。実際、解釈可能で一貫性のあるトピックを生成するためにモデル・パラメーターをファイン・チューニングするには、多くの試行錯誤が必要です。

評価メトリクス

ユーザーがLDAモデルをファイン・チューニングするのに役立つツールやメトリクスにはどのようなものがあるでしょうか。トピック・モデリングに慣れていない人は、文献で採用されているパフォーマンス・メトリクスが1つもない、あるいはコレクションさえないことを知ってがっかりすることがあります。

定性。信じられないかもしれませんが、特に現実世界の応用では、定性的評価は珍しいことではありません。たいていは各トピックの上位5個または10個のキーワードを調べることが関係しています。次にそれらを使用して、人間のユーザーがトピックをどの程度解釈できるかに応じてトピックを評価します。8この種のいわば「目視確認」は、検討中のドキュメントについて相当な専門領域の知識と精通度が求められます。9

一貫性。トピックの一貫性は、生成されたトピックを評価するための一般的な定量的手法のひとつです。トピックの一貫性スコアは、与えられたトピックで最も可能性の高い単語が、コーパス全体の同じドキュメントでどれだけ頻繁に共起しているかを測定します。具体的には、トピックの上位n個の単語からなる各単語ペアの共起頻度を、コーパス全体の各単語の頻度に照らして計算します。これは、与えられたトピックがどの程度一貫しているかを定量化することを目的としています。モデルの全体的な一貫性スコアは、個々のトピックに属する一貫性スコアを平均したものです。事実上、この全体的なスコアは、与えられたモデル内の平均的なトピックの一貫性を意味します。「一貫性」という名前のとおり、トピックにどれだけ一貫性があるかによってのみモデルを評価します。しかし、トピックもまた、ある程度の独占性を維持しなければなりませんが、これについては現在、定量的な尺度がありません。10

最近の研究では、一貫性スコアなどの定量的メトリクスは、トピック・モデルの評価においては信頼できないことが示されています。これは、部分的には、解釈可能性という公然の評価目標が曖昧であることに原因があります。つまり、モデルとその結果を解釈可能にするのは何なのかという部分が曖昧であるということです。11さらに、古いシステム用に設計された自動メトリクスは、新しいシステムにはうまく当てはめられない可能性があります。この問題は、多くの公開された実験の透明性の欠如により、評価方法が他のデータ・セットや領域まで一般化されないため、複雑になります。12 最近の研究では、特定の研究目的のためのLDAモデルを設計および評価する手段として、人工知能アプリケーション、特に大規模言語モデル(LLM)に目が向けられています。13 これは有望な結果を示していますが、さらに研究が必要です。

関連ソリューション

関連ソリューション

IBM® watsonx Orchestrate

IBM® watsonx Orchestrateを使用すると、スケーラブルなAIアシスタントとエージェントを簡単に設計し、反復的なタスクを自動化し、複雑なプロセスを簡素化できます。

watsonx Orchestrateの詳細はこちら
自然言語処理ツールとAPI

ライブラリー、サービス、アプリケーションの強力かつ柔軟なポートフォリオにより、人工知能のビジネス価値を促進します。

NLPソリューションはこちら
AIコンサルティングとサービス

AIの導入で重要なワークフローと業務を再構築し、エクスペリエンス、リアルタイムの意思決定とビジネス価値を最大化します。

AIサービスはこちら
次のステップ

IBM® watsonx Orchestrateを使用すると、スケーラブルなAIアシスタントとエージェントを簡単に設計し、反復的なタスクを自動化し、複雑なプロセスを簡素化できます。

watsonx Orchestrateの詳細はこちら NLPソリューションはこちら
脚注

1 Daniel Jurafsky and James Martin, Speech and Language Processing: An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition, 3rd edition, 2023, https://web.stanford.edu/~jurafsky/slp3/. Jay Alammar and Maarten Grootendorst, Hands-On Large Language Models, O’Reilly, 2024.

2 David Blei, “Probabilistic Topic Models,” Communications of the ACM, Vol. 55, No. 4, 2012, pp. 77-84. Zhiyuan Chen and Bing Liu, “Topic Models for NLP Applications,” Encyclopedia of Machine Learning and Data Mining, Springer, 2017.

3 Matthew Jockers, Text Analysis with R for Students of Literature, Springer, 2014.

4 Cole Howard, Hobson Lane, and Hannes Hapke, Natural Language Processing in Action, Manning Publications, 2019. Sowmya Vajjala, Bodhisattwa Majumder, Anuj Gupta, Harshit Surana, Practical Natural Language Processing, O’Reilly, 2020.

5 Sowmya Vajjala, Bodhisattwa Majumder, Anuj Gupta, Harshit Surana, Practical Natural Language Processing, O’Reilly, 2020. David Blei, Andrew Ng, and Michael Jordan, “Lantent Dirichlet Allocation,” Journal of Machine Learning Research, Vol. 3, 2003, pp. 993-1022.

6 Zhiyuan Chen and Bing Liu, “Topic Models for NLP Applications,” Encyclopedia of Machine Learning and Data Mining, Springer, 2017.

7 David Blei, “Probabilistic Topic Models,” Communications of the ACM, Vol. 55, No. 4, 2012, pp. 77-84.

8 Chandler Camille May, “Topic Modeling in Theory and Practice,” Dissertation, John Hopkins University, 2022.

9 Matthew Gillings and Andrew Hardie, “The interpretation of topic models for scholarly analysis: An evaluation and critique of current practice,” Digital Scholarship in the Humanities, Vol. 38, No. 2, 2023, pp. 530-543, https://academic.oup.com/dsh/article-abstract/38/2/530/6957052

10 Chandler Camille May, “Topic Modeling in Theory and Practice,” Dissertation, John Hopkins University, 2022. https://aclanthology.org/D11-1024/ 

11 Zachary Lipton, “The Mythos of Model Interpretability: In machine learning, the concept of interpretability is both important and slippery,” Queue, Vol. 16, No. 3, pp. 31-57, https://dl.acm.org/doi/10.1145/3236386.3241340 . Caitlin Doogan and Wray Buntine, “Topic Model or Topic Twaddle? Re-evaluating Semantic Interpretability Measures,” Proceedings of the 2021 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, 2021, pp. 3824-3848, https://aclanthology.org/2021.naacl-main.300 .

12 Alexander Hoyle, Pranav Goel, Andrew Hian-Cheong, Denis Peskov, Jordan Boyd-Graber, Philip Resnik, “Is Automated Topic Model Evaluation Broken? The Incoherence of Coherence,” Advances in Neural Information Processing Systems, 2021, pp. 2018-2033, https://proceedings.neurips.cc/paper_files/paper/2021/hash/0f83556a305d789b1d71815e8ea4f4b0-Abstract.html . Caitlin Doogan and Wray Buntine, “Topic Model or Topic Twaddle? Re-evaluating Semantic Interpretability Measures,” Proceedings of the 2021 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, 2021, pp. 3824-3848, https://aclanthology.org/2021.naacl-main.300 .

13 Dominik Stammbach, Vilém Zouhar, Alexander Hoyle, Mrinmaya Sachan, and Elliott Ash, “Revisiting Automated Topic Model Evaluation with Large Language Models,” Proceedings of the 2023 Conference on Empirical Methods in Natural Language Processing, 2023, pp. 9348-9357, https://aclanthology.org/2023.emnlp-main.581/ .