「知の構造化センター・pingpongシンポジウム」( #pp007 )参加メモ
このようなイノベーション系のシンポジウムが
どんなもんか見ていたかった&Matzの話を聞いてみたかったので,
pingpongシンポジウムになるものに参加しました.
今回はそのメモです.
http://blog.pingpong.ne.jp/?p=370
参加者数はおおよそ40-50人位でした.参加者は言語系やCS系などが多かったようです.
toshiroさんによって,各ポッド時のツイートがまとめられてます.
http://togetter.com/li/64193
http://togetter.com/li/64185
http://togetter.com/li/64187
- 内容概要:
- プロジェクトの目的:大規模データが扱えるようになってきた現状を踏まえ,それらデータから新たな情報が見えるのではないか,また,新たな研究方法があるのではないか.
- Matzの話で印象的なこと:プログラミング言語はいずれの言語でも同じことが記述でき,気分や生産性で選択される.
- 工藤拓(Google日本語入力開発者)の話で印象的なこと:ウェブでスケールことが重要で,この辺のノウハウが企業では重要となっている.ウェブでスケールさせるために,分散アルゴリズム・凝ったアルゴリズムを使わない・データの効率より圧縮しメモリへ入れる,ことを意識している.
- 感想:いろいろな考えをぶつけ合って,さらに発散させていく感じだった.
以下は詳細&未整理メモ
■あいさつ
- 小宮山前総長提唱:2007設置,2008活動開始
- 概念の構造化
- 今回は空間に関する情報の構造化
- 範囲を広げて知の構造化を目指す
■基調講演
□おかみずきさんより,ピンポンとは何か.
- iPhoneで大量の情報へアクセス可能になった.
- ただ,情報見つからないことがある.また,情報の全体像や関係性を知ることは難しい.
- デジタル化された情報から構造化し,新たな情報を得る.
- 構造化:各要素間の関係性を明らかにし利用可能にすること.
- 例:論文データを入力し,参考文献という軸を設定すると,参考文献ネットワークが作成できる.そして,それを時系列で作成すると,分野の発展がわかる.
- 対象:岩波の思想の構造化,医療知識の構造化,集合ちの構造化(Wikipediaなど),
- pingpongでは空間を考慮した構造化を目指している.
- ネットワークとしての構造化からシステムとしての構造化へ
□いけがみたかしさんより,本シンポジウムの目的
- コンピュータサイエンスなどは大量データへ敏感だが,従来の物理などではまだまだ.
- minimal と maximal
- 自己組織化とemergence
- 自己組織化が人工生命のキーではないのかもしれない.
- 勝手にそこらへんで生物生まれないし.
- デザインと実験
- 初期状態をきっちりつくってあげないといろいろできない.
- コッドのオートマトン
- 構造とは,システムが動くための構造でもある.
- 物理の基本式は長年変わっていない.ising model
- 初期データをきっちり作りでかいシステムを考えるか,ごく小さいモデルをメタファと考えるシステムしかない.
- 大量の空間,動き情報をみて,それを語るべき言葉を見つけることなのかもしれない.
- 言葉をつくってやる.それが理論だ.
- ポッド1.空間と動きと言語に関して,
- 言語は身体かしているはずだ.
- 言語:客観,感じる,心のうごき
- 世界の表象,世界とのかかわりかたの表象,人とのかかわり方の表象
- ポッド2.プログラミングとしての言語からネット上のデータフローへ
- ポッド3.空間を変換する,時間を変換する.
- 30年を語るすべを持ちたい.
- 技術を使って長い今を作っていく.
- maximalなデータがあるときの理論をどう使っていくか,
- 言語そのものを作っていくというのも一案.
- 言語を取り込んだシステムも一案
- 自律的なシステムを作って,そのシステムそのものも一案
- デザインして実験していくことが構造化なのではないか.
- 半設計して,動かしてその結果を通してどんどん設計をすすめる.
■ポッド1.空間と動きと言語に関して,
□ダビデ:進化ロボットについて
- ふるまいは神経システム,主体,環境で考えられる.
- センサーモーターコーディネーション
- 主体の中でのセンサ→モータ変換と,そこから環境への作用,また環境からのセンサで循環している.
- 自然化で見られるがどう作るかが問題となっている.
- センサからモータへの変換が問題となる.それの解決策として進化ロボットを提案している.
- 進化ロボット
- 主体を環境にだして,自由にインタラクションさせる.
- 人工ニューラルネットワークとプログラム生成によって自動的に動作をつくっていく.
- 今日はコミュニケーションについて進化ロボットで示してみたい.
- コミュニケーションの生まれがわかっていない.進化ロボでその過程をあきらかにしてみたい.
- コミュニケーションに関してはリワードをあたえず,ゴールに行くことだけを教える
- コミュニケーション手段は音.
- 最初に獲得される行動は自分で完結する動作.
- 次に,シグナルを個人的に発するもの.
- その次に,ソーシャルなもの.ただし,完全に階層が一方向なわけでなく,いったりきたりする.
- コミュニケーションは振る舞いからコミュニケーションとなって,それが個人の振る舞いを変えていき,コミュニケーションと振る舞いが分かれる.
- コミュニケーションは振舞い全体・社会的なものに対して影響を与えている.
- 意味は信号についているものではない.
- 環境にひもづいている.
- 意味は2つのエージェントの双発的なものであり,環境についている.
- 身体と言語はひもづいている.
□宇野@農工大:
- 認知言語学専門
- 認知と言語は分けて研究できる.
- 見方と言語の研究
- 見方には主体があるので,今回は「私の」になる.
- 雪国の一文は有名.
- 主体「私」がないのに,主体を感じられる.
- 主体と対象を同時に述べられている,
- →「私の見方」を見せている.
- 英語でもそのような文はある
- 新語を使うと意味だけでなく,その人がそう人なのだということがわかり,「その人の見方」を見せている.
- 人間が用いる自然言語の研究
- ロボットの人工言語
- 人間が用いる人工(プロト)言語の研究
- コミュニケーションのためのコミュニケーションツール(プロト)の分析
- このプロト言語で伝えられるのは「私の見方」のみ
- 言語学的2つの解釈
- ダイナミカル:見えているものについてのみ述べているもの.
- メタフォリカル(比喩的):図形に物語がついている.(部屋で一人でPC使ってます)
- メッセージに違いはあるのか,が次の研究となる.
- メッセージのハミング距離を測ってみると,
- ダイナミカルの場合:距離が遠い
- メタフォリカル:近い
- 遷移グラフでみると,
- ダイナミカル:繰り返し多め
- メタフォリカル:少ない
- →退屈を打開するための方法が2つ.それがダイナミカルとメタファリカルの変え方なのではないか.
- ダイナミカルとメタファリカルはリーダーのモードしだいだが,解釈のモードは異なっても,「私の見方」は伝わる.
- 「私の見方」しか伝わらないものでも複雑なコミュニケーションを作り出せる.
- 自然言語の発生においても,情報伝達だけでなく「私の見方」も大きな役割を果たしたのではないか.
□トークセッション
- 実験とデザイン:言語をどのように身体化していくか.
- 大規模データに人間はなれていて,それをなんとかまとめたものが文法なのではないか.
- ぐちゃぐちゃな状態が自然で,文法化されたものが変なもの
- 複雑な関係を簡単化するために,言語があるのではないか.
- 大規模データをシステムにほうりこむことで,もとのデータを解釈する.
- pingpongでは動き地図を作るシステムをつくること.
- 時空間に触ることで新しい考え方が生まれるのではないか.
■ポッド2.プログラミングとしての言語からネット上のデータフローへ
Matz, Google日本語入力の開発者:工藤さん
□Matz
- プログラム言語に興味があった.
- プログラミング言語
- プログラミングの媒体,意思疎通の手段,思考の表現方法
- サピアフォーフ仮説:(自然)言語は思考を規定する
- プログラミング言語はいずれの言語でも同じことが記述できる
- →P言語は気分や生産性で選択される.
- 構成要素としての人間
- プログラムするのは人間.
- 機械は媒介・ツール・手段
- 意識されない人間的側面
- 意識すべき人間的側面←こちらを意識しないとほんとに人間が歯車になってしまう.
- →人間をはっぴーにしたくてRuby作り始めた.
□Google日本語入力の開発者:工藤さん
- Google日本語入力まんが有
- 2004年くらいから統計的アプローチが増えてきた.
- ウェブでスケールことが重要←この辺のノウハウが企業では重要
- 言葉の変換
- 言語モデル:WEB上にたくさんある.
- 翻訳モデル:機械翻訳.音声認識.
- 二つを組み合わせることでかな漢字変換できる
- ゼロ頻度問題:対象コーパスにあらわれないのの頻度は0でいいか.
- 出現頻度の補正(スムージング):0.3回
- Kneser-Ney(KN)法:今一番いい.ただし時間かかる
- Stupid Backoff法:Googleでつかってるもの.簡単.データをいっぱい用意できると同じ精度になる.
- 出現頻度の補正(スムージング):0.3回
- モデルの圧縮
- 今では,圧縮してでもメモリに載せたほうが速い
- オンメモリで処理している
- エラーを許容した圧縮
- jpgと同じアナロジー
- 簡潔なデータ構造
□ディスカッション
- プログラム言語はまだデザイナーの時代
- よいプログラムというのをはかる方法がまだない.
- →これができれば言語が発達するかも.もしくはコンピュータが発達して自然言語でプログラムできるようになるかも.
- プログラム言語って,言語だけで自立しない部分があるよね
- プログラム言語開発は自分が楽しいし,他人が楽しくなるとHappy
- Rubyの全体のよさは語れるけど,個別の機能がよくなるかは評価できない.
- MapReduceの楽な利用に向けて
Q.論理型言語はどうおもっているか?(Prologとか)
A.有効かどうかがわからない.言語の背景にあるモデルが現実と離れていると汎用的には使いにくいのではないか.
Q.1つのマシンで動くことが少なくなっていくと,論理型言語のほうが自然になるのではないか?
A.工藤さん:並列を考えなくてもよくなるので,いいかもしれん.初めてプログラミングに触れる人が手続き型よりもSQL的に楽にかけたほうがいいかも
A.松本さん:マルチの時に最適なモデルがまだないので,もしかしたら関数型がいけるかも.ただ慣性力も強いので,わからない.
Q.可変性をもつ言語がいるのでは?
A.レガシーがあるから変化しないというのはないのでは.たくさん生まれているわけだし.
A.池上さん:物理学者らはフォートランで満足.研究スタイル変わっていないから.研究者の考え方を変えるようなプログラム言語を開発して欲しい.
A.工藤さん:グーグルへ入って実感したのはプログラミング言語がコミュニケーション手段になっている.
A.松本さん:環境が変わることで言語が進化する.協奏は進んできた.
Q.プログラミング言語と自然言語の違いは?
A.岡さん:身体性があるかないか.
A.橋本さん:プログラミング言語は問題をどう表現するかかな.自然言語はそのへんがない.
A.松本さん:抽象化の概念が自然言語はあまりむいていないのではないか.プログラム言語はその手段のひとつではないか.
A.工藤さん:本質的にはあまり違いがないのではないか.ただ,プログラミング言語は制約ドリブンですすみやすい.
Q.エラーを許容した圧縮って?
A.サジェスト機能.だしたくないものを管理している.また,ちょっとしたノイズをいれることで性能をあげる