次世代Webプラットフォーム論 授業ページ
11. Webと集合知
「Web2.0」
2005に提唱された概念
「人力」「共有」
人力作業や叡智を共有する
人間活動はWeb上で最も重要な資源かも
最近はあたりまえになった
Web3.0
反独占
分散化
人力作業の例
Google
SPYSEE
CAPTCHA
推薦システム
Wikipedia
クラウドソーシング
Google
実は人力検索
人力で貼られたリンクを利用
ページランク
ページランク
Google創設者Larry Pageの発明
ページの内容でなくリンクで重要度を判定
高い評価のページからリンクされるとランクが上がる
人力の勝利
ページランク
X=Z XはZの発する唯一のリンクを受けている
Y=X/2 YはXの発する2つのリンクのうち、ひとつを受けている
Z=X/2+Y ZはXの発する2つのリンクのうちひとつを受け、かつYの発する唯一のリンクを受けている
⇒ X : Y : Z = 0.4 : 0.2 : 0.4
SPYSEE
人間関係を検索
CAPTCHA
人間であることを認証する
reCAPTCHA
人力を利用して、認証ついでに文字認識をさせる
reCaptcha
人力タグづけ
Facebook
ニコニコ動画のコメントを検索に使う
はてブコメントを利用
推薦システム
Amazonなどで広く使われている
ACMのコンファレンス
14年目で活気あり
Wikipedia
すべて人力の百科事典
項目作成
項目編集
リンク作成
例: 10万語の辞書を作る?
ユーザが1000人ならひとり100語
ユーザが10000人ならひとり10語
かな漢字辞書などすぐできてもよいはずだが?
Wikiで編集可能
あまりうまくいっていない
ユーザが少ない
オタクが多い
自慢にならない?
人力で計算
ユーザが知らないうちに計算させることができるかも
顔をクリックするとか
パズルを解くとか
クラウドソーシング
ネット上の誰かにアウトソーシング
Amazonのクラウドソーシングサービス
米国に住所が無いと仕事を依頼できなかった
日本でも依頼できるようになった (2017/6)
Mechanical Turkの実情
平均は$5/hourぐらい
クラウドベースのワープロ
「パラグラフを短くして」のようなメニュー
クラウドソーシングの問題点
Mechanical Turkの値段安すぎ
英語と日本語関連の問題を1時間やったら$1.80もらえた
搾取になるかも?
その他の人力利用
人力によるシステムテスト
英文校正
Lang-8: 相互添削SNS
共有情報の活用
人々の叡智を集める
三人よれば文殊の知恵
共有の種類
情報の共有
検索の共有
検索の共有
Collaborative Web Search
質の良い情報を集める方法
沢山のユーザ参加が必要
ジマンパワーが重要
ジマンパワー
人力システム成功のコツ
自己満足 or 自慢
趣味における自慢
生け花して出来映えを自慢
山登りして写真を自慢
ピアノ発表会 = 自慢大会
ひとりで弾くだけではジマン不足
ネット上のジマンパワー
オープンソース
ブログ
SNS
情報共有
オープンソース
プログラミング力の自慢
広く使われると自己満足
ブログ
頭のよさを自慢
普段の行動のカッコ良さを自慢
SNS
友達の数を自慢
行動を自慢
賢い本を読んでることを自慢
書籍の管理に便利
情報が集まりにくい
ジマンパワーを発揮できない
場所を知ってることは自慢にならない
ソーシャル推薦システムの問題点
資源が限られているものは誰にでも推薦できない
良いレストラン
とっておきの場所
趣味が一致する人をみつけるのは難しい
「XXXの本棚」
プログラミング本は良い
気持ち悪い本も並んでいたり
小集団内の推薦
小グループ内だけで推薦
推薦者の顔が見える
デモ: 推薦Wiki
情報が集まると面白い
しかし自慢力は不足しているかも
推薦人ではなく推薦人の推薦カテゴリを選択できる
人間全体を気に入る必要はない
趣味が悪い奴だが書籍選択眼は確か、など
共有情報からのデータマイニング
アクセスパタンからの解析
Gyazzページのアクセス間隔
Gyazzページのアクセス回数
TODOページのアクセス間隔
Gitページのアクセス間隔
アクセス解析結果
大抵のパタンは冪分布になる
形状により定番ページか一時ページか判定可能と思われる
集合知プログラミング
推薦システム
クラスタリング
決定木
SVM
推薦システム
協調フィルタリング (Collaborative Filtering)
Firefly = 元祖協調フィルタリング
ユーザが自分の好みの音楽を登録する
他のユーザの傾向を比較して推薦する
沢山登録が必要なので結構大変
Last.fm
音楽を聞いていると好みが蓄積されていく
登録の手間が感じられない
Spotify
好みが蓄積?
Gunosy
Twitter, Facebookなどでの行動をもとに推薦していた
本棚.orgの登録情報から情報を抽出
日本語でメソッドを指定
推薦以外の計算も可能
デモ: 本棚演算
デモ: 電子書籍推薦システム
数量化三類による二次元視覚化
主成分分析 / 因子分析
Amazonの推薦
ユーザが多すぎるので書籍ベースのみ
推薦アルゴリズムの歴史
クラスタリング
Repeated Bisection法
K-means法
階層的クラスタリング
SOM
クラスタリングできる検索エンジン
カテゴリクラスタリング、ブログ除去可能
クラスタリングツール
Repeated Bisection法を利用
bayon実行例
$ cat input.tsv
阿佐田 J-POP 10 J-R&B 6 ロック 4
小島 ジャズ 8 レゲエ 9
古川 クラシック 4 ワールド 4
田村 ジャズ 9 メタル 2 レゲエ 6
青柳 J-POP 4 ロック 3 HIPHOP 3
三輪 クラシック 8 ロック 1
$ bayon -n 3 input.tsv > output.tsv
$ cat output.tsv
1 小島 田村
2 阿佐田 青柳
3 古川 三輪
階層的クラスタリング
最も近いデータをグループ化する操作を繰り返す
デンドログラムを生成
デンドログラム
決定木
データをif-then判断を行なう木構造に変換
もとデータ
学習された決定木
サポートベクトルマシン (SVM)
最近流行の学習アルゴリズム
各データ点との距離が最大となる超平面を求める
「マージン最大化」
推薦システムの問題点
フィルターバブル
Eli Pariserの造語
フィルターバブル
ユーザの嗜好で検索エンジン等の結果が変化
ユーザごとにフィルタされる
一面的な情報しか入手できなくなる
個人が孤立
皆が同じものを見ているわけではない
フィルタされてることにに気付かない
フィルタをユーザは制御できない
対策
パーソナライズされない検索エンジンの利用
e.g. DuckDuckGo
まんべんなく情報を見る
嗜好を気にせずひたすら沢山の情報を見る
Googleの検索トップを見ない
50番目のものから見るとか
セレンディピティ強化型書籍検索
"Pivot Explorer"
田中優氏のニュース推薦システム
プログラミング関連のニュースを通知
カテゴリごとに選んだキュレータのブクマを表示
カテゴリはクラスタリングアルゴリズムで生成
結局人力が一番?
結論
集合知の有効利用
セレンディピティの強化
さらなる工夫が必要