2021年10月8日金曜日

テキストマイニングにおける統計処理のメモ(その3)

前回までの続きで「Rによるやさしいテキストマイニング」の「9章発展的な統計処理」を見ていく。

本章のトピックス
  • 多変量解析(multivariate analysis):多くの行や列をもつクロス集計表を効率的に分析するときに使う。ここでは多変量解析の1つとして、テキストを自動分類する方法を示す。

定義
  • 分類:にはクラスタリングとカテゴライゼーションがある。
  • クラスタリング(Clustering):目的変数を持たないデータを似たもの同士で分類する手法
    • aka, 教師なし学習(unsupervised learning)
  • カテゴライゼーション(Categorization):目的変数を持つデータを分類する手法。
    • aka, 教師あり学習(supervised learning)
  • 対応分析(Correspondence Analysis):
    • クラスタリングの1手法。クロス集計表に含まれる複雑な情報を二次元の散布図などでわかりやすく可視化する手法。
    • テキストの関係や変数間の関係を直感的に把握するために用いる
対応分析
  • caパッケージを用いる
    • data(author); plot(ca(author)) の結果。
    • 頻度が近いものが近くに表示される。
    • 軸には意味はなく、自身で配置を見て考える必要がある。
    • sound and fury 6と7は近くに出ている(同じ作家のためと解釈できる)
    • 変数は文章との関連を示している。たとえば、「x」とsound and fury 7は近くにあるのでsound and fury 7を特徴づけるものとなっている。
    • 各軸のパーセント(上記ではy軸しか出てないが)は寄与率(contribution rate)という。寄与率は行と列のデータの関連性をどれだけ説明できるものかを現す。
      • (19.7%というのは高いのだろうか?。。)
  • 対応分析のポイント
    • 各次元で大きい(or小さい)変数やテキストに注目すること。
    • 軸をどのように解釈するかがポイント。明確に傾向が出ない場合は近くに分布しているテキスト同士が何らかのグループを形成しているかを確認する。
階層型クラスター分析(hierachical cluster analysis)
  • 個々のデータの比類似度を距離として表現し、距離の近いデータ同志をまとめてクラスターを作る手法。
  • Rでクラスターを作るかはデータ間の距離の計算アルゴリズムを指定する必要がある。
    • ユークリッド距離(Euclidean distance): dist関数で用いられるコとが多い。
    • ウォード方(Ward's metho):hclust関数で用いられることが多い
  • Ward'sを用いた階層クラスター分析の例:plot(hclust(dist(author / apply(author, 1, sum), method="euclidean"), method="ward.D2")))
  • 樹形図(dendrogram)のみかた
    • 線の長さは非類似度(テキストの距離)に対応している。
    • pendorric 2とpendorric 3は類似している。
    • holtとbuckは類似している。
階層的クラスターつきのヒートマップ(heat map with hierarchical clusterig)
  • テキスト(文書)か変数(アルファベット)の両方を分析する手法
  • heatmapを使う。
  • authorデータセットに含まれるテキストと変数が同時に表示されている。
    • テキスト:作品のこと
    • 変数:アルファベットのこと
  • pendorric 3と2が同じクラスターとなっているのは色の濃さが同じところ:図ではoとかsとかの出現頻度による。(という解釈で合ってるのかな)

0 件のコメント:

コメントを投稿