エクセルでテキストマイニング ttm2hadの使い方

53
エクセルでテキストマイニング HADTTMの連携機能TTM2HAD 清水裕士 関西学院大学社会学部

Upload: hiroshi-shimizu

Post on 28-May-2015

6.315 views

Category:

Data & Analytics


2 download

DESCRIPTION

Excelで動くフリーソフトである,ExcelTTMとHADを用いたテキストマイニングの方法を解説しています。 HADはhttp://norimune.net/hadからダウンロードできます。 ExcelTTMはhttp://mtmr.jp/excelttm/からダウンロードできます。

TRANSCRIPT

Page 1: エクセルでテキストマイニング TTM2HADの使い方

エクセルでテキストマイニングHADとTTMの連携機能TTM2HAD

清水裕士

関西学院大学社会学部

Page 2: エクセルでテキストマイニング TTM2HADの使い方

HADを作った人

• 清水裕士

– 専門:社会心理学 グループダイナミクス

– 所属:関西学院大学社会学部

– 連絡先:simizu706(あっと)norimune.net

• (あっと)を@に変えてください。

– ブログ:http://norimune.net

– Twitter: @simizu706

Page 3: エクセルでテキストマイニング TTM2HADの使い方

HADとは

• 清水が作ったExcelのVBAで動くプログラム– Excelのバージョンは2007以降に対応

– Macにも対応(Excel for Mac2011以降)• WinとMacを同じファイルで使いまわせる

• 主に心理統計分析ができる– 大抵の心理統計分析は可能

• データハンドリング,統計的検定,多変量解析など

– マルチレベル分析もできる• 階層線形モデルや,マルチレベルSEMなど

Page 4: エクセルでテキストマイニング TTM2HADの使い方

HADとは

• 無償のソフトウェアです– 利用は無償です– 清水のブログからからダウンロードできます

• http://norimune.net/had• 何度でもダウンロードできます

• 自由なソフトウェアです– ソースコードを自由に閲覧・変更することができます

• 第三者への配布も自由です

– ライセンス• GNU General Public License(GPL)に則ってます• ライセンスについては「HADとは」

(http://norimune.net/696)のページを参照してください。

Page 5: エクセルでテキストマイニング TTM2HADの使い方

TTM2HAD

• ExcelTTMとHADの連携機能– TTMで分かち書きされたテキストデータをHADで

多変量解析するための機能

– クラスタ分析,多次元尺度法,対応分析を実行• テキストデータを数量化して,HADに搭載されている他

の多変量解析に投入することもできる

• Excelがあればテキストマイニングができる– HADもTTMも,Excelがあれば動くフリーソフト

– 手軽にテキストマニングができる点がポイント

Page 6: エクセルでテキストマイニング TTM2HADの使い方

TTMとは

Page 7: エクセルでテキストマイニング TTM2HADの使い方

TTMとは

• Tiny Text Miner– 大阪大学の松村真宏先生(http://mtmr.jp/ja/)が開発

– テキストマイニングの前処理のためのフリーソフト

– MeCabを使って分かち書きをして,品詞ごとの集計や,クロス表などを作成します。

• ExcelTTM– TTMをExcelで動くようにしたものです。結果なども

Excelファイルで出力されます。

– HADと連携しているのはこちらのExcelTTMです

Page 8: エクセルでテキストマイニング TTM2HADの使い方

本も出ている

• 人文・社会科学のためのテキストマイニング

– 松村真宏・三浦麻子

– 誠信書房

– 改訂新版は2014年9月発売

Page 9: エクセルでテキストマイニング TTM2HADの使い方

ExcelTTMのダウンロード

• ExcelTTMのWebサイトにアクセス

– http://mtmr.jp/excelttm/

• WindowsとMacにそれぞれ対応

– ダウンロードするアイテムが違うので注意

– 詳細はExcelTTMのWebサイトを参照してください

Page 10: エクセルでテキストマイニング TTM2HADの使い方

TTM2HADの使い方

HADそのものの使い方については

http://norimune.net/had

をご参照ください

Page 11: エクセルでテキストマイニング TTM2HADの使い方

ExcelTTMの使い方

• 「分析データ」シートにデータを入力

– A列に回答者,B列にテキストデータを入れる

Page 12: エクセルでテキストマイニング TTM2HADの使い方

キーワード

• 分かち書きしたくないワードを設定

– 例:「テキストマイニング」は「テキスト」と「マイニング」に分かち書きされる。しかし,「テキストマイニング」という一つの言葉で使いたいときに利用

– 「キーワード」シートに登録しておく

Page 13: エクセルでテキストマイニング TTM2HADの使い方

ストップワード

• 分かち書きのときに省きたい単語

– よく出てくるが,データの分析には使いにくい単語や記号などを省く

• する,なる,いる,などの複合動詞の一部など

– 欠損記号を省くときなどにも使える

Page 14: エクセルでテキストマイニング TTM2HADの使い方

同義語

• 同じ意味の言葉をまとめるときに使う

– 「はなす」と「話す」がデータに混じっている場合

– 「話す」に統一したほうが分析しやすい

Page 15: エクセルでテキストマイニング TTM2HADの使い方

ExcelTTMで分かち書き

• 「分析データ」シートのttmボタンを押す– このボタン

• GUIが立ち上がる– とりあえず,全部の品詞をチェック

– 出現頻度の最小値も0にしておく• HADでも調整できるので,ここでは全部出力する

– 対応するシートに入力していれば,自動的にキーワードや同義語は範囲を指定してくれる

Page 16: エクセルでテキストマイニング TTM2HADの使い方

こんな感じ

Page 17: エクセルでテキストマイニング TTM2HADの使い方

出力

• 出力はこんな感じ(ttm6)

• HADに読み込むのは「ttm6」というシートのみ

– 他のシートは読み込まないのでなくてもいい

• 自動的に全部出力されるので,特に気にしなくていい

Page 18: エクセルでテキストマイニング TTM2HADの使い方

ファイルをxlsm形式で保存

• ExcelTTMのファイルを別名で保存

– ファイル形式はデフォルトでは”.xlsb”になっているが,これを”.xlsm”にして保存する

• マクロ有効ファイルという形式

– xlsm形式じゃないとHADに読み込めないため

Page 19: エクセルでテキストマイニング TTM2HADの使い方

HADにTTMのデータを読み込む

Page 20: エクセルでテキストマイニング TTM2HADの使い方

HADを起動する

• 起動時に、マクロを有効にするか聞かれる

– Excelのマクロセキュリティを「中」にする

• Excel上部に下のような警告が出たら、有効化を押す

• 以下のような通知が出てきたら「有効にする」を押す

Page 21: エクセルでテキストマイニング TTM2HADの使い方

HAD12以降の注意点

• HAD12からはExcelのソルバーを使っている

– ソルバーとは,Excelに入っているアドイン

• 最初に起動したときにエラーがでる場合

– コンパイルエラーというのが出ることがある。

– その場合は,HADを一度閉じて,もう一度起動す

ると,ソルバーが入っていれば普通に使うことができる。

Page 22: エクセルでテキストマイニング TTM2HADの使い方

それでもエラーが出る場合

• ソルバーが有効になってない,あるいは入っていない可能性がある– 参考URL:

• http://office.microsoft.com/ja-jp/excel-help/HP010021570.aspx

• ソルバーオフバージョンもあります– ソルバーを使わないバージョン

– 構造方程式モデルは実行できないが,それ以外の分析はすべて可能• もちろんTTM2HADもソルバー無しで動く

Page 23: エクセルでテキストマイニング TTM2HADの使い方

TTM2HADの起動

• まずはHADを起動

– データシートを開く

• TTM2HADボタン

– クリック

Page 24: エクセルでテキストマイニング TTM2HADの使い方

TTM2HADの画面

• 起動ボタンを押す

– TTM2HADのGUIが立ち上がる

Page 25: エクセルでテキストマイニング TTM2HADの使い方

TTM2HADの画面

Page 26: エクセルでテキストマイニング TTM2HADの使い方

ExcelTTMの出力を読み込む

• 「ExcelTTMの読み込み」の「参照」ボタン

– “.xlsm”形式のファイルを検索できるので,先ほど保存したExcelTTMファイルを選択する

• 以下のウィンドウが出たら読み込み成功

Page 27: エクセルでテキストマイニング TTM2HADの使い方

読み込むとこんな感じ

• 回答者と単語のクロス表形式で読み込む

Page 28: エクセルでテキストマイニング TTM2HADの使い方

基礎的な単語の集計

Page 29: エクセルでテキストマイニング TTM2HADの使い方

データ出力

• 単語の出現頻度– 単語ごとの度数

• クロス表– 単語ペアの共頻度数

– 回答者と単語の共頻

• 距離行列– 共頻関係から距離を計算

• Jaccord距離

Page 30: エクセルでテキストマイニング TTM2HADの使い方

単語の出現頻度

• 単語ごとの出現頻度と出現件数

– 品詞

• 単語の品詞や種類

– 出現頻度

• のべ登場回数

– 出現件数

• 単語を使った回答者数

Page 31: エクセルでテキストマイニング TTM2HADの使い方

単語×単語のクロス表

• 単語の共頻関係を表す

– 共頻:同じ回答者が,同時に使っていること

– 対応分析で用いる

Page 32: エクセルでテキストマイニング TTM2HADの使い方

距離行列

• Jaccard距離

– 共頻度を距離として表現したもの

• 0~1の範囲をとる

– クラスタ分析で用いる

Page 33: エクセルでテキストマイニング TTM2HADの使い方

その他のデータ出力

• 回答者と単語のクロス表

– HADにクロス表データとして読みこめば,対応分析などを実行することができる

• 回答者ごとの単語への反応データ

– 単語に対して1回でも使えば1,使ってなかったら0がコードされる

– 対応分析や,主成分分析のデータとして使う

Page 34: エクセルでテキストマイニング TTM2HADの使い方

単語のクラスタリング

Page 35: エクセルでテキストマイニング TTM2HADの使い方

クラスタ分析と多次元尺度法

• クラスタ分析

– 距離から単語を分類

• 単語クラスタを作る

• 多次元尺度法

– 単語の関係をマッピング

• 距離行列を2次元に圧縮

Page 36: エクセルでテキストマイニング TTM2HADの使い方

クラスタ分析

• クラスタ数を指定– まずは適当に入力

– デンドログラムを見てクラスタ数を決定

• デンドログラム– 樹形図

– 単語の分類を図示

– クラスタ数の決定に使う

Page 37: エクセルでテキストマイニング TTM2HADの使い方

多次元尺度法

Page 38: エクセルでテキストマイニング TTM2HADの使い方

クラスタデータの出力

• クラスタ分析の結果を反映

– クラスタと回答者のクロス表を出力

– このデータを対応分析に入力することができる

Page 39: エクセルでテキストマイニング TTM2HADの使い方

データの数量化対応分析編

Page 40: エクセルでテキストマイニング TTM2HADの使い方

回答者と単語のクロス表

• データ出力タブ

– 対応分析用のデータ

– 回答者がそれぞれの

単語をどれほど使用した

かをクロス表で出力

– シート名はSub_cross

Page 41: エクセルでテキストマイニング TTM2HADの使い方

対応分析

• データの数量化タブ

– 対応分析をチェック

– データのシート名は

デフォルトはSub_cross

– 重み

• 固有値で重み付け

Page 42: エクセルでテキストマイニング TTM2HADの使い方

対応分析

Page 43: エクセルでテキストマイニング TTM2HADの使い方

データの数量化主成分分析編

Page 44: エクセルでテキストマイニング TTM2HADの使い方

回答者ごとの単語への反応データ

• データの出力から選択– Sub_respというシートが

出力される

– 回答者が単語を使用

したら1,しなかったら0

– このデータを使って

単語データを数量化する

Page 45: エクセルでテキストマイニング TTM2HADの使い方

Sub_resp

Page 46: エクセルでテキストマイニング TTM2HADの使い方

主成分分析

• データ数量化タブ

– 主成分分析をチェック

– シートはSub_respが

デフォルト

– 数量化した結果は

「スコアデータ出力」で

出力できる

Page 47: エクセルでテキストマイニング TTM2HADの使い方

主成分分析

Page 48: エクセルでテキストマイニング TTM2HADの使い方

データの数量化クラスタデータ編

Page 49: エクセルでテキストマイニング TTM2HADの使い方

クラスタデータの出力

• クラスタデータをチェック

• 読み込むシートを選択– デフォルトは

• “Cluster_data”シート

• スコアデータの出力– 数量化したデータを出力

• HADの分析に使える

– スコアデータを出す場合は,重みありのほうがいい

Page 50: エクセルでテキストマイニング TTM2HADの使い方

対応分析クロス表のプロット

クラスタの詳細

クラスタ1 彼氏, 一緒, 彼女, 結婚, 子ども, 家, 会う, 遊び, 旅行, 見る, 付き合う, 喧嘩, 自分, お互い, 誕生|日, 過ごす, 子供, 生まれる, 会える, ドライブ, 来る, デート, 浮気クラスタ2 卒業, 死ぬ, 食事, 持つ, 遊ぶ, 友達, ゆとり, 暮らす, 今, 仕事クラスタ3 私, 食べる, 海, 生活, 送る, できる, メール, 家族, ご飯, 幸せ, 別れる, とる, 楽しい, 仲クラスタ4 買い物, 料理, テレビ, 作るクラスタ5 手, つなぐ

クラスタ1

クラスタ2

クラスタ3

クラスタ4

クラスタ5

次元

2

次元1

Page 51: エクセルでテキストマイニング TTM2HADの使い方

スコアデータ

• 対応分析の回答者スコアを出力

– テキストデータの数量化

– HADの他の多変量解析(回帰分析など)に利用することができる

Page 52: エクセルでテキストマイニング TTM2HADの使い方

まとめ

• ExcelTTMを使って,分かち書き

– 内部ではMeCabを用いている

– Excelでテキストデータを簡単に分かち書きできる

• キーワード,ストップワード,同義語などの設定も簡単

• HADにExcelTTMのデータを読み込む

– TTM2HADを使って,テキストデータを分析

• 単語のクラスタリング

• クラスタデータを数量化

Page 53: エクセルでテキストマイニング TTM2HADの使い方

手元のデータでチャレンジ!

• HAD

– http://norimune.net/had

• TTM

– http://mtmr.jp/ttm/

• ExcelTTM

– http://mtmr.jp/excelttm/