2013-02-16

NTT R&D: このつぶやきを書いたのはどんな人?

NTT レゾナント主催のブロガー・イベントで、NTT R&D フォーラムを見学した。展示のレビューを書く。

Twitter のつぶやきからプロフィール特定

展示では、サービスに Twitter のアカウントを入力したら、性別・年代・居住地・既未婚・職業の五項目を表示するデモを行なっていた。他のブロガーさんが、的中率が高いと喜んでいたので顔を出してみる。

スタッフ曰く、現在 70% の正解率。最近 150 ツイートを使って判別するとのこと。さて、ぼくの Twitter アカウント @at_aka を入力してみた。

  • 性別: 男性 (正解)
  • 年代: 不明 (ヲイ)
  • 居住地: 関東 (正解)
  • 職業: 会社員 (不正解)
  • 結婚: 未婚 (正解)

え〜と、3/5 正解だから正解率 60%。いいんじゃないかな?

職業... 今はまだ無職なのよね。就活中。まだ会社員ではないのだよ。学生でもないけれど。ツイートを見て、「不明」(無職というカテゴリーはなかった) とするのは流石に無理があったかな。

年代不明。ちょっとショックだな〜。スタッフの人に何歳に見えますか? と聞いてみたら、20 代との答え。リップ・サービス?! う〜ん、34 なんだよね。

仕組み

ざっくり言えばベイジアン・スパム・フィルターと同じ。

このスパム・フィルターでは、最初にスパムでないメール数万通とスパムなメール数万通を用意する。そして、スパムでだけ使われる特徴的な単語を抽出させる。正常なメールも用意する所がミソで、スパムにもスパムでないメールにも両方で使われる言葉を除外できる。本当は統計的な処理が入っていろいろ複雑なんだけど、そこら辺の説明はパス。

同じ様なことを各プロフィールごとに行なう。

年代であれば、20 代・30 代・40 代・50 代のツイートを用意する。スパム・フィルターはYes/No の 2 つしか判定しないけれど、少し応用すれば 20 代しか使わなくて 20 代以外は使わない言葉。30 代に特徴的な言葉。40 代に〜、50 代に〜 とデータが抽出される。

スパム・フィルターが、時々スパムを通してしまったり、正しいメールをスパムと誤認する様に、最初の方は精度に難がある。そこで、もう少し学習をさせる。そして、出来上がったのが、正解率 70% のプロフィール特定機能。

あとがき

Twitter で知り合いを検索してみた。かなり当ってた。

サービスとして公開したら、色んな人の情報が赤裸々にされてしまいそう。隠れて Twitter やってる人が、都道府県や職業まで当てられたら怖い。今回のデモでは 150 ツイートしか取って来ていないけど、1000 ツイートとか 1 万ツイート取得したら、精度が更に上がりそう。

また、デモでは五項目しか調べていなかったけど、趣味・年収・子供はては性格分析までやろうと思えば出来ちゃいそう。CIA とか本気で開発しそう (映画の見すぎ?)。正解しすぎるのも問題ね。

No comments:

Post a Comment