今回は非構造化データの構造化をテーマとして取り上げます。
まず、TwitterやFacebookなどでコメントされた非構造化データから架空の航空会社ABC航空の評判を発見することを想定します。これらのコメントはビッグデータと呼ばれるほど膨大な量がありますから、調査担当者が読む価値のあるコメントとそうでないコメントを分ける必要があります。
仕分け1:ABC航空に関係するコメントと関係ないコメントを分ける。
この場合ABC航空という文字列が入っているコメントを検索し対象を絞ります。また、必ずしもABC航空と入力されているとは限らず、ABC航空の略名、便名なども対象にしなければなりません。
仕分け2:調査したい内容のキーワードを設定してさらに対象を絞ります。
たとえば、顧客が不満を持ちそうな内容を調査する場合、「遅れ」「遅延」「不満」「接客態度」「キャリーバッグ」「紛失」などの言葉の組合せが含まれるコメントを抽出します。必要に応じて、件数をカウントすることもあります。(実際のところは、「遅れ」「不満」という言葉が入っていたとしても、「飛行機は遅れたけれどキャビンアテンダントさんの対応が良かったので不満だとは思わない」などの文章では不満をいっているわけではないのでやっかいですが・・・・)
Q1:構造化するとはどういうことか?
A1:上記の仕分け1、仕分け2のように興味のあるキーワードを中心として、対象データを分類あるいは絞込みすることです。段階的に仕分けすることにより、構造の階層は深くなっていきます。このような構造化は、調査したい事項ごとに実施されるテンポラリーなものです。
Q2:構造化しなければ意味は取出せないのか?
A2:上記のような仕分けをせずに意味を取出すためには、手当たり次第にツイートやブログを読む必要があります。こうすれば、構造化せずに意味を取出すことはできますが、多くの件数を処理することは難しいでしょう。構造化のキーワードがわからずに、先行調査する場合は、この方法が有効かもしれません。
知りたいことを確認するためには、何らかのキーワードが必要です。そのキーワードを使ってビッグデータを分類すると、それが一種の構造化とみなされます。現実的な方法で意味を取出すためには、構造化は避けられません。