2
トピックモデルのトピックの安定性
私は、一連の自由記述式エッセイの内容に関する情報を抽出したいプロジェクトに取り組んでいます。この特定のプロジェクトでは、148人が、大規模な実験の一環として、仮想の学生組織についてのエッセイを書きました。私の分野(社会心理学)では、これらのデータを分析する典型的な方法はエッセイを手作業でコーディングすることですが、ハンドコーディングは労働集約的であり、私にとっては少し主観的であるため、これを定量的に行いたいと思います味。 無料の応答データを定量的に分析する方法についての調査中に、トピックモデリング(またはLatent Dirichlet Allocation、またはLDA)と呼ばれるアプローチを見つけました。トピックモデリングでは、データの単語の表現(用語ドキュメントマトリックス)を使用し、単語の共起に関する情報を使用して、データの潜在的なトピックを抽出します。このアプローチは私のアプリケーションに最適のようです。 残念ながら、トピックモデリングをデータに適用すると、2つの問題が見つかりました。 トピックモデリングによって明らかにされたトピックは、解釈が難しい場合があります 別のランダムシードを使用してトピックモデルを再実行すると、トピックが劇的に変化するように見える 特に問題2は私に関係しています。したがって、2つの関連する質問があります。 解釈可能性と安定性のためにモデル適合手順を最適化するために、LDA手順でできることはありますか?個人的に、私は、最も低いパープレキシティおよび/または最高のモデル適合性を持つモデルを見つけることについてあまり気にしません-私は主にこの手順を使用して、この研究の参加者がエッセイで書いたものを理解し、特徴づけるのを助けたいです。ただし、結果がランダムシードのアーティファクトになりたくないのは確かです。 上記の質問に関連して、LDAを実行するために必要なデータ量の基準はありますか?この方法を使用した私が見たほとんどの論文は、大きなコーパスを分析します(たとえば、過去20年間のすべてのScience論文のアーカイブ)が、実験データを使用しているため、ドキュメントのコーパスははるかに小さくなります。 手を汚したい人のために、ここにエッセイデータを投稿しました。使用しているRコードを以下に貼り付けました。 require(tm) require(topicmodels) # Create a corpus from the essay c <- Corpus(DataframeSource(essays)) inspect(c) # Remove punctuation and put the words in lower case c <- tm_map(c, removePunctuation) c <- tm_map(c, tolower) # Create a DocumentTermMatrix. The stopwords are the …