ローカル環境に簡単に動くものを作ってみましたが、PHPとMysqlが動く外向きのサーバが調達できなかったこと、自分が作ってもあまり面白そうに思えなかったこと等ありましたので、一先ず話だけは出しておこうかなぁっという所存です。王様の耳はロバの耳。
僕以外の人が作ってくれて、面白そうなら使いたいです。
クラスタ?
Twitter界隈ではクラスタなる言葉が良く使われます。大雑把に言うと「複数のTwitter間に共通する話題」といったような意味になるのかなと思います。「あの人は福岡クラスタだ」と言えば「福岡に関する話題が通じる人だ」、「TLがRubyクラスタに占領されている」といえば「TLがRubyの話題ばっかりだ」くらいの意味でしょうか。
基本的にTwitterは興味のある話題や興味のある人同士がフォローしあうことでコミュニケーションを図るわけですから、簡単に人をラベリングできるクラスタという概念は非常に便利な概念となるわけです。
誰が何クラスタなのか、何クラスタがあるのかは分からないよ
さてそこで問題になるのは、「このクラスタという概念は目には見えない」ということでしょうか。あくまでその人の発言の偏りをもって「~クラスタ」と言い表すわけですからなかなか見ることができません。プロフィールにでも書いていてくれれば良いのですが、そう全員が書いてくれているわけでもないですし、特定のクラスタを探すのは面倒くさい。
クラスタと自然言語解析は難しい
おそらく将来的にはあるユーザの発言を抽出&話題抽出なりなんなりで自動的にクラスタリングするなんてサービスも出てくるのではないかなぁっと思っていますが、まだ少し遠そうな未来です。
そんなわけで、簡単に、それっぽく、手動でユーザをクラスタリングするようなものを考えていました。コンセプトは手動です。
こうすればいいのかな
Twitterを使ったサービスではoAuthやなんかを使ったログインや特定のアカウントをフォローすることで色々と面白いことができるようになりますが、一々面倒くさいのでその方法は取りません。ついでに、この方法が一般化することがあれば広く再利用が可能だろうなぁっと思います。
ということで、ここは140文字のテキストを投稿できるTwitter先生とハッシュタグを使えばいいのではないかなぁ。
例えばこんな感じで呟くと、呟いた本人が「福岡」クラスタと「Web」クラスタと「図書館情報学」クラスタですよと表明したこととみなすという乱暴な方法です。
福岡 Web 図書館情報学 #clusteradd
<<
消したいときはこんな感じかなぁ
福岡 #clusterdel
<<
ちなみに試作版では、発言の抽出をhttp://pcod.no-ip.org/yats/のRSSを使ってやっていました。色々な形式で結果を返してくれるのでかなり便利な感じです。あと妄想の中では、収集したデータを溜めるのにGoogle Baseを使おうかなどとも思っていました。あくまで妄想の中ですが。
最後に
表示方法なんかはいろいろあると思いますし、Twitterがベータテストを進めているリスト機能(http://jp.techcrunch.com/archives/20091015breaking-twitter-begins-lists-rollout/)なんかと連携すれば大分使いでのあるものになるのではなかろうかと思います。
実際、このくらいなら既にあるような気もしますけどね。無いのは多分、自分が思ったように面白くないからでしょう。まぁ、そんなことは知った話ではありません。
追加:2009-10-19
コメントで、「Twitter自動クラスタリング(実験)」というプロジェクトを教えてもらいました。実際のシステムはこんな感じのようです。http://723.to/tw/cluster.php
基本的なコンセプトは、ここで書いたものとそっくりだなぁっと思います。違うのは、クラスタを操作する際の動作が、@cluster_jp宛に呟くか、ハッシュタグを使うかという点になるのですかね。自分としては、前述の理由からハッシュタグのほうがいいかなぁっとは思いますが、作った人にはかないません。
ちなみに自分は早速フォローしました。