2013年10月9日水曜日

【解析いろは26】Rでソーシャルリスニングをやってみた 2

Rでソーシャルリスニングをやってみた 1では解析前の設計とデータ取得、整形についての話でした。いよいよ分析に入ります。
と、その前に。ちょっとおさらいです。

<今回のトライの目的>
世の中には無料で使える、基本のレポート機能がついたツールやサービスがリリースされているのになんでわざわざRで、アナログ作業までして分析をやっているの? と思われるかもしれません。
①Rのトレーニング
②Rでテキストマイニング(ツィート内容に極力踏み込まず、できるだけ機械的に判断と処理をするトレーニング)
③アカウントとは無関係のソーシャルリスニングだから。
ツィート数とか日別動向とかインフルエンサーなんてお飾りですよ! アカウントに紐付かない純粋なクチコミを、テキスト内容に踏み込んで分析する!(ような感じだけどそこまで深くやってないよ!)これが今回のメインテーマであります。
実際に、Twitterアカウントを開設していないクライアントがリアルでキャンペーンを実施し、ツィッター上でどの程度話題になっているか知りたい、というオーダーを受けたことがあります。ソーシャルの公開記事は様々な情報、ウソもホントも詰め込まれた生の情報源なのです。

(1) 分析作業1 Rでデータを分類、ソート

整形したデータは下記の通りです。
・データ形式 CSV
・データは、主体を 1=個人 2=関係者 3=セミナー・講座情報、ニュースサイト 4=bot に分類した「主体分類」、「ツィート内容」で構成

エクセルでも出来る作業ですが、練習のためRでデータを主体ごとに切り分けました。
<作業の流れ>
①Rを起動し、プラグインRcmdrを開く
RcmdrはRをGUI的に操作するプラグインです。でもほぼコマンド入力であることに変わりはありません。
②csvデータを読み込み、表示
③データを主体区分の数値別に切り分けて、新たにCSVで保存。今回使用したのは1のグループのデータと、2+3のグループのデータです。botはウザいから除外しました。

(2) RMecabでテキストマイニング

RMecabはRのテキストマイニングのパッケージです。日本語の形態素解析エンジンの「MeCab」をRで操作するためのものです。ギャル語にはぁたいぉうしてるのかしらぁ? あとこのエンジンやパッケージはなんて読むのでしょうか。このエンジンの制作者さんのサイトには「めかぶ」の写真があるんですが…やっぱり「めかぶ」なんですかね。

<作業の流れ>
①RMecabを起動して、(1)で作成したすべての発言データ・ グループ1のデータ・グループ2+3のデータを順次分析する。
②すべての発言の分類データを眺めて気になった点をメモる。
③メモを元にさらに比較用データの絞り込みや気になる単語を調べる。今回はクラスター分析はやりませんでした。今度時間があるときにやってみようと思います。

下のイメージは すべての発言データのRMecabでの分析結果の一部です。
Mecabは「形態素解析」で、意味の最小の単位で切り分け、分類してくれます。すごい!これは基本の解析関数の“RMeCabFreq()”を使っていますが、他にも様々な関数があるので用途に応じて使い分けをします。
切れてしまってますが、「ウェブ解析士」キーワードの絞り込みだから「ウェブ」「解析」「士」が当然頻出回数が多いです。これらのワードはどのグループでも必ず共通で登場するので検討対象からは除外してます。



 吐き出されるデータは、行番号、形態素(最小の日本語)、品詞(大分類)、品詞(小分類)、出現回数(Freq)です。この関数のメリットは重複がなくカウントされ、テキスト内に登場している形態素が頻度という数値で把握、という点ですね。
まずは全部の分類をぼやーっと眺めて、なんとなく全体を把握。こんなことを考えてデータをいじってます。↓
・『個人グループとセミナー・関係者グループのツィートに差があるか>あると仮定>個人とセミ ナー・関係者の形態素の並び比較』
・『個人とセミナー・関係者の形態素の名詞・動詞・形容詞のみの並び比較』
・『個人グループの感情を拾ってみよう>個人グループデータの形容詞絞り込み』や『助動詞と形容詞の「ない」の否定のテキストのピックアップ』

(3) 分析とレポートはエクセルで

最も難関のテキストマイニングの処理はRで行い、詳細の分析はエクセル上でやりました。オートフィルタでちゃちゃと切り替えながら見ていきます。今回はデータをいろんなフィルタでソートしてぱらぱらと見て、気づきをメモって、後で再検討します。いつも大体そんな感じです。
いろんなことを多角的に見て、実施し、それからレポートにまとめていきます。これがクライアント向けの場合は、すべてを載せるのではなく、クライアントの知りたいことに即した形で、不要なデータを削っていきます。

 (4) 結果要旨


がっつりグラフなんかも作ってレポート形式にしたのですが、余所様に関わることを一方的に調べただけなので、公開はしません。オチがなくてすいません。

以下、簡単に今回の分析結果の要旨です。
●計測期間内に運営主体のツィートが少ない。
●インフルエンサーは関係者グループの数名とボット。

●個人のツィート数は全ツィート数の約49%、半分近くあるけれどツィート内容を見ると解析士資格取得者やニュースサイトが含まれているので、純粋ないち個人のツィートの実数はもっと少ない。(分類方法をもっと精密にする必要がある)
●個人のツィートにつき助動詞及び形容詞の「ない」で否定語を調べたところ、強いネガティブ発言は見受けられなかった。
●関係者・セミナーグループでの頻出度が高い名詞は「講座」「認定」、個人では「データ」「講座」「資格」。部分的に被っているものの、個人グループでは「資格」が多いことから、取得対象としての資格や講座に興味があると推測する。

◎まとめ

個人のツィートにフォーカスしたところ、強いネガティブ・否定発言はないようです。形容詞分類でも、形容詞の否定「ない」を除いてネガティブイメージのある形容詞は「難しい」「高い」でした。(いずれも頻度が少ないため、それがすべてのユーザーの状態を示す形容詞であるとはいえません)。
今回はネガティブな発言はなかったものの、継続的にツィートを見て、ユーザーの疑問や資格に対する見方を把握していくことも重要かな、と思いました。
 個人グループのツィートは、認定資格を取得していると思われるユーザー(資格既取得層)と資格に興味がある・これから受験する・勉強中といったユーザー(未取得層)の二つに分類できます。ツィッターで資格既取得層か、未取得層(潜在的ユーザーも含めて)のどこに・どのように情報を発信していくか運用設計を考えることも重要だと思います。

<反省> 
当たり障りのない要旨になってしまいました。通常、レポートはクライアントの要求に応じて定義し、それに役立つように作成するものですから、相手がいないとどうしてもボヤけたレポートになってしまう、という点も収穫でした。今回の分析で分かったその他の課題は、
・ユーザー分類をどのように・いかに効率よくやって精度をあげるか
・ データの取得方法
・今回のテキストマイニングは形態素の数の把握だが、ユーザーと、重要形容詞や名詞との発言の相関のグラフ化や、 ツィート内容についてもっと突っ込んだ分析をしたい。
です。
言語の用法や言語の相関関係や傾向については実に素人的な所感です。当方、テキストマイニングの専門家でもなく、この分析は社会学のような学問の探究を目的としていません。でも、「ユーザーの本音の仮説を立てる」ということであればこの程度でもそれなりに役立つ情報になると思います。

分析に王道はあっても正道はない!(最近気に入ってる言葉らしい)
いろんな方法があっていいと思います。仮説が正しいかどうかはその後のアクションと検証が証明してくれます。

0 件のコメント:

コメントを投稿