Impossible is Nothing - 「音」で世界を「視る」

「不可能」とは自らの力で世界を切り拓く事を放棄した、臆病者の言葉だ。
「不可能」とは,現状に甘んじるための言い訳にすぎない。
「不可能」とは,事実ですらなく、単なる先入観だ。
「不可能」とは、誰かに決めつけられることではない。
「不可能」とは、通過点だ。
「不可能」とは、可能性だ。
「不可能」なんてありえない。(IMPOSSIBLE IS NOTHING)
モハメドアリ

冒頭の引用は、「不可能」という言葉を忌み嫌っていたモハメド・アリの語録を集めたものです。adidasの広告で使われていたので、ご存知の方も多いでしょう。私は最近まで知らなかったのですが、今では非常に大好きなフレーズです。特に最後の「Impossible is nothig」。ここに全てが集約されています。
「Nothing is impossible」じゃなくて「Impossible is Nothing」。前者だと「不可能なんてない」って意味になりますが、こっちは「不可能なんて何てことない」って感じです。世の中、物理的に不可能なこといくつでもありますが、だからといってそれが何かの限界を意味しているわけではなりません。

例えば、人は自分自身で空を飛ぶことはできないけれど、飛行機を発明しました。無限に生き続けることはできないけれど、言葉や文字で後世にメッセージを伝えることができるようになりました。一見不可能なことでも、方法はある。人類の歴史、あるいは、文明の発達は、まさに不可能との戦いです。


echolocation ここに一つの実例があります。皆さんは「反響定位」という言葉をご存知でしょうか。イルカやコウモリが持つ能力の一種で、音の反響を利用して周囲の状況を知覚する能力の事です。ソナーと同じ原理といった方が分かりやすいかもしれません。視力ではなく、一種の聴覚によって周囲の状況を「視る」能力です。

驚くべきことに、この反響定位を人間に応用するという研究がなされており、実際に身につけた人達がいます。有名な例が、アメリカのベン・アンダーウッド(Ben Underwood)君。彼は、3歳のときにガンで両眼を失って、それ以来視力を失ってしまいました。しかし、高校生になった彼は、友達と一緒にスポーツをしたり、ローラースケートに興じたりと、まるで視力がないことを感じさせません。その秘密が反響定位です。
なんと、彼は、自分で舌打ちをしてその反響を確かめることで、周囲の状況を知覚することができるのです。能動的に音を発しているので、バスケットボールのゴールや、路上の障害物等、自ら音を一切発しない静止物であってもその場所を特定できるのです。

 ・音で見る:「イルカ等の反響定位」を人で訓練(動画) - Wired Vision
 ・Human echolocation - Wikipedia (English)

人間の能力というのは想像以上の可能性を秘めています。物理的に失われた感覚を他の感覚で補完するというのは、以前、共感覚の記事(共感覚 - 色の音・香りの形)で紹介したNeil Harbissonの例とも共通するところがあります。まさに、Impossible is nothing。不可能なんてなんてことない、という実例です。


開発の仕事をしていると時には、無理難題とも言われることを頼まれることもあります。それは技術的制約であったり、時間的制約であったり様々です。しかし、そこですぐ不可能と答えを出してしまっては、技術者としては問題でしょう。もちろん、できないことをできると言うのは単なる無責任であり、プロの仕事ではありません。しかし、従来の方法で無理だから不可能というのはあまりに短絡的です。そもそも、できると分かっている事だけやっていては、技術者とはいえません。本来、不可能を可能にするのが、技術者や科学者の役目であり、やりがいでもあるのですがから。

Impossible is Nothing。「不可能」こそが次のステップへの最初の一歩です。


【関連記事】
4901391801共感覚 - 色の音・香りの形
過学習と局所解
できそうでできない - 後だしジャンケンの心理学
フェルミのパラドックス

【関連書籍】
計算不可能性を設計する―ITアーキテクトの未来への挑戦 (That’s Japan)
奇跡のリンゴ―「絶対不可能」を覆した農家・木村秋則の記録
モハメド・アリ―その生と時代 (上) (岩波現代文庫―社会) 小林 勇次
理性の限界――不可能性・不確定性・不完全性 (講談社現代新書)
「人を動かす」英語の名言 (講談社バイリンガル・ブックス)

できそうでできない - 後だしジャンケンの心理学

生活はすべて次の二つから成り立っている。
したいけど、できない。できるけど、したくない。
ゲーテ -『格言と反省
ちょっと前に、たまたま見たテレビ番組の中で「できそうでできないこと」というコーナーがありました。そこで取り上げられた「できそうでできないこと」の一つが
  • 「後出しジャンケンで負ける」
というものでした。

これくらい簡単にできそうな気はします。しかし、やってみるとこれが意外にできない。勿論、しばらく冷静に考えると分かるのですが、「ジャンケン、ポン、ポン」くらいのタイミングでやろうとすると、これが意外とうまくいきません。あいこになったり、勝ってしまったり。まさに「できそうでできない」のです。

勿論、ジャンケンのルールは誰でも知っているので、冷静に考えれば負けられるはずです。それに、後だしジャンケンで勝つのは割合簡単です。なのに、なぜか負けろと言われると難しい。分かってるはずなのに。何故でしょう?

ジャンケンの論理

ジャンケンでは、「グー」と「チョキ」と「パー」の三者間に循環型の関係があります。「グー」は「チョキ」より強いけれど、「パー」より弱い。これを記号で書くと次のようになるでしょうか。
G < P, P < C, C < G ... (1)
ここで、書いた不等号「<」は、一般的な意味ではなく「A < B」とした時にAよりBが強いということを示す記号として使っています。G, C, Pはそれぞれ「グー」「チョキ」「パー」です。

ジャンケンに勝つ方程式

さて、後だしジャンケンの時、人は先ほどのような関係を思い浮かべているでしょうか。おそらくそうではないでしょう。このような関係を一々考えていては、とっさに後だしできません(^^;)。では、後だしジャンケンでとっさに勝ち手が出てくる時はどうしているのでしょう。

ある入力に対して、正しい出力を導き出す場合、入力と目的の出力の間の関係が明確であれば、入力をそのルール或は関数に当てはめることによって、目的の出力が得られます。「y = f (x)」<という関係です。
しかし、この関係式fはいつも既知とは限りません。例えば、音声認識や手書き文字認識のようなパターン認識問題から、野球のバッティングからバスケットボールのパスのようなスポーツの問題等。このような明確な関係式が存在しないものに関しては、人は今までのパターンからルールを導き出します。ニューラルネットワークは、神経回路網の模してこのような系をモデル化したものです。

元のジャンケンの話に戻します。後だしジャンケンの時、人は(1)のような関係で出す手を考えるのではなく、おそらく入力に対して勝つ手を思い浮かべる関数のようなものを使っているのです。つまり、
f(G) = P, f(P) = C, f(C) = G ... (2)
となる関数fです。後だしジャンケンで勝とうとするときは、おそらくこの関数のような思考過程をたどっているのではないでしょうか。3者の関係から推論を積み重ねるわけではないので、答えはすぐに出せます。人はジャンケンの経験から、このような関係式を獲得しているのでしょう。

負けるための方程式

4873112710では、後出しジャンケンでなぜ負けれないのかという点に戻ります。おそらく「後だしジャンケンで負けて下さい」と言われた時、大抵の人は、負け手を算出するための関数を持っていません。しかし、勝ち手を算出する関数はある。そこで、勝ち手を算出する式から、逆変換をしようと試みます。しかし、逆変換は難しい。そのため、とっさに手を出そうとすると、計算途中の結果である勝ち手がでてしまうのではないでしょうか。そのため、ランダムに手を出したときの負け確率(1/3)以上にすら負けられないのではと。
よって、勝つための方程式を一旦忘れて、負けるための方程式(グーならチョキを出そうといったもの)を頭に置いて考えれば、簡単に負けられるはずです。

と、分析のような話を書いてみましたが、特に何の裏づけもない単なる私の推測です(^^;)。でも、まぁ「当たらずとも遠からず」くらいかな、と。

ちなみに、私が見た番組では他にも「できそうでできない」ことを取り上げていました。せっかくのなので紹介しておきます。
  • スキップの途中で一旦止まって(この時両足とも地面につける)、その姿勢からスキップを再開。
  • 左手の指を、右の耳の穴に命中させる
これもなかなか難しいです(^^;)。
他にもこの手のネタをご存知の方があれば、コメントやTBでぜひ教えてください。

【関連記事】
プログラミング言語と思考
過学習と局所解

【関連書籍】
Mind Hacks―実験で知る脳と心のシステム Tom Stafford
脳のなかの幽霊、ふたたび 見えてきた心のしくみ V・S・ラマチャンドラン
心のパターン―言語の認知科学入門 レイ・ジャッケンドフ
認知パターン―オブジェクト技術のための問題解決フレームワーク ロバート・コニツァー 他
学習とニューラルネットワーク 熊沢逸夫
もっと脳を鍛える大人のDSトレーニング (NINTENDO DS用ソフト)

共感覚 - 色の音・香りの形

目を閉じよ。そしたらお前は見えるだろう。
サムエル・バトラー
耳に聴こえるメロディーは美しい。だが聴こえないメロディーはさらに美しい。
ジョン・キーツ

共感覚という言葉をご存知ですか?ある刺激を受けたとき、本来の感覚に他の感覚が伴って生ずる現象を指す言葉です。印刷された言葉や数字が色となって感じられたり、香りが形を伴ったり、話し言葉が虹色に見えたり。。。単なる連想記憶とはまた違って、刺激を直接複数の感覚として感じる現象のことです。誰しも赤ちゃんの時には共感覚を持っているものの、成長と共に失われるという説もあるそうです。
私自身はたまたま立ち寄ったブログ(小さな哲学~雑草の世界)で知ったのですが、これを見て最近TV番組で見た、色を音で認識する機械をつけた美大生の話を思い出しましたので紹介したいと思います。

アイボーグその青年、Neil Harbissonは重度の色覚障害のため、全てが白黒の世界で生活していました。しかし、アイ・ボーグ(Eye-Borg)と呼ばれる機械によって彼の世界は豊かな色を取り戻します。彼に色を取り戻させたアイ・ボーグは、色を音に変換する装置です。具体的には、色に応じた音を発生させるのです。赤なら低い音、青なら高い音。彼は、この機械によって、色を認識することができるようになり、色彩豊かな絵を書けるようになったのです。(BBCの参考記事)

この「色を音で感じる」というのは魅力的な響きを持っており、何となくロマンチックなイメージを掻き立てもします。さわやかな色に静かな音楽、鮮やかな色彩に賑やかな音楽。。。しかし、実際のアイ・ボーグを通じて色を見た時に耳に届く音は、無機質な電子音でしかありません。そこには、私たちが美しいと感じる音色はありません。

感覚というのは主観的なものです。同じ刺激に対して、誰しもが同じように感じているという保障はありません。実際、人によって美しいと感じる基準は異なります。見方を変えれば、あるものを美しいという感じるための刺激が、人によって異なるというようにも考えられます。そう考えれば、先のアイ・ボーグの場合、私たちにとっては無機質な電子音にすぎないアイ・ボーグが生成する音も、Neilさんにとっては豊かな色彩となって知覚されているのでしょう。

考えても見れば目で色を感じるのも所詮は脳に届けられる段階では所詮ただの電気刺激。舌で物を見ようという研究もあるくらいです(参考:舌で物が見えるようにする感覚代行器具)。ただ、このような特殊な感覚に対しては、どうしても人とは違う感性をもっているんだろうなという眼で見てしまいがちです。

しかし、これらの話を知って思ったのは、最初の共感覚にせよ、アイ・ボーグの話にせよ、どのような形で知覚するかといのは実はあまり重要ではないのではということ。「どうやって感じるか」ではなく「何を感じるか」。HOWではなくWAHT。最後の最後、心で感じているイメージは誰しも変わらないのではないでしょうか。

【関連リンク】
4873112710Seeing things in a different light (BBC)
共感覚 (小さな哲学~雑草の世界)
ママの声って何色 (asahi.com)
言葉や音に色が見える――共感覚の世界
N2's Homepage! 共感覚
舌で物が見えるようにする感覚代行器具

【関連書籍】
ユーザーイリュージョン―意識という幻想 Tor Norretranders
ねこは青、子ねこは黄緑―共感覚者が自ら語る不思議な世界
共感覚者の驚くべき日常―形を味わう人、色を聴く人
奇跡の人 ヘレン・ケラー自伝

過学習と局所解

もし、私が電気の専門家であったなら、電話を発明することはできなかっただろう。
何故なら、そんなものは最初から不可能だと決め付けたであろうから。
グラハム・ベル
冒頭の引用にあるベルの言葉※1は、たまたま見たテレビ番組で取り上げられているの見て初めて知りました。非常に印象的な言葉でした。

技術者として仕事をしていると、無理難題とも言える仕様、無理なスケジュールを突きつけられることが良くあります。そんな時、ついつい「無理を言うのは技術を分かっていないからだ。無理を言われても困る」と考えがちです。しかし、実際は中途半端に技術を理解しているがために視野が限定され、結果として発想力に乏しくなっているのは技術者の側、ということもあるのではないでしょうか。ここで、学生の頃かじったニューラルネットワーク(Neural Network)や遺伝的アルゴリズム(GA)のことを思い出しました。

ニューラルネットワークとGA。どちらも生命現象にヒントを得た最適化/学習モデルです。このような最適化/学習モデルでよく課題として登場するのが「局所解問題(ローカルミニマム問題:local minumum problem)」や「過学習(Overfitting)」です。
局所解問題を簡単に説明するとすれば、「部分的な最適解に系が収束し、本当の最適解にたどり着かない」という現象です(※1)。
過学習の方は、「特定の入力と出力の組み合わせ(学習データ)に対して系が収束しすぎたために、その他の入力(非学習データ)に対する汎用性がなくなってしまう状態」といったところでしょうか。同じ教師パターンで何度も学習を繰り返すことによって発生します。これは、特定のパターンにのみ最適化された局所解に陥ってる状態と見ることができます。

ニューラルネットワークはもともと脳の神経回路を模したモデルですから、実際の人間の脳に関しても同様の現象が見られます。例えば、年を取るほど頑固になるという現象。これは、長期間同じ思考パターンを繰り返している(過学習状態になる)と脳内のシナプ結合が特定のパターンに収束してしまっている(局所解に陥っている)ために起こっていると考えることができます。

冒頭のベルの言葉は、技術者が過学習によって局所解に陥ってしまいがちだということを表しているように理解できます。専門知識に精通すればするほど、その分野の常識にしばられて突飛な発想ができない。まさに、過学習によって局所解に陥っている状態です。

過学習というのは「勉強しすぎ」が問題なのではありません。学習データのパターンが限定されるのが問題なのです。つまり、まずはもっと視野を広げて、幅広い情報に触れることが重要なのです。直接関係のないもの程、役に立つ確立は低いですが、その分発想の飛躍を与えてくれることもあります。
漸近的努力だけでは局所解からは脱出できません。時には確固たる「信念」のようなものも重要ですが、ブレークスルーには発想を飛躍させるための「雑音(ノイズ)」も必要なのです。

最後に、SFの巨匠アーサー・C・クラークの残した有名は言葉を紹介しておきます。
"When a distinguished but elderly scientist states that something is possible he is almost certainly right. When he states that something is impossible, he is very probably wrong."
「著名な、だが年老いた専門家が、何かが出来るというとき、それはおそらく正しい。しかし、何かは不可能だというとき、それは絶対に間違っている」
"The only way of discovering the limits of the possible is to venture a little way past them into the impossible."
「可能性の限界を見極める唯一の方法は、不可能の領域に足を踏み入れてみる事だ」
"Any sufficiently advanced technology is indistinguishable from magic."
「十分に進歩した科学技術は魔法と区別が付かない」
不可能も可能になり得ます。技術者として、不可能への挑戦の気持ちは忘れないでいたいものです。

【関連リンク】
電話の歴史
ニューラルネット入門
Metal Brain(ニューラルネットワークに関する解説があります)
【関連書籍】
学習とニューラルネットワーク (熊沢 逸夫)
遺伝的アルゴリズム (北野 宏明)


(※1)ベルの言葉といえば、初めての電話を通した言葉、"Mr. Watson, come here, I want you." 「ワトソン君、すぐ来てくれ。頼みがある」も有名ですね。
ベルが難聴者教育に熱心であり、ヘレン・ケラーとの交友が深かったことも同じテレビ番組で初めて知りました。

(※2)解空間が多峰性をもつような場合に、バックプロパゲーション等の最急降下法的なアルゴリズムでよく問題になります。

プログラミング言語と思考

『現実の世界』というものは、多くの限度にまで、その集団の言語習慣の上に無意識的に形づくられているのである。
エドワード・サピア 『言語 - ことばの研究序説
サピア=ウォーフの仮説(The Sapir-Whorf Hypothesis)というものをご存知でしょうか。人が話す言語と、人の物事に対する考え方・理解の仕方には密接な関係があるという言語学分野における有名な仮説です。
有名な例として、虹の色数の話があります。日本では、7色が通例ですが、これは万国共通の認識ではなく、場所によっては8色であったり、6色であったりします。日本でも、緑色のことを「青」と呼ぶことがありますが、このように青と緑を区別しない言語圏では「青」と「緑」が区別されないので色数が減ることがあるそうです。
他の興味深い例としては、
  • オーストラリアのある民族は、紙に書かれた矢印を「上下左右」ではなく「東西南北」で認識する
  • 数字をあらわす言葉として1と2しか持たない(それ以上はたくさんになる)アマゾンに住むピラハー族は、数の違う電池、魚などが写っている画像を使う「マッチング課題」において、数が3以上になると物体が何であっても判定するのに苦労する
等という話があります。

サピア=ウォーフの仮説はあくまで「仮説」ですが、このような自然言語と思考との関係は、プログラミング言語と設計・分析プロセスとの関係についても言えるのではないでしょうか。プログラミング言語は実装の道具というだけではなく、設計・モデリングを行う時の思考の道具でもあります。要求仕様を聞いて頭に設計イメージが浮かべる時、C言語を主に使っていると考え方も手続き指向になり、Javaを主に使っていればオブジェクト指向になるのではないでしょうか。言語の使用経験の長い人ほど、すぐに実装イメージを思い浮かべるため、このような傾向がありそうです。

よくC言語の経験の長い人の場合、オブジェクト指向設計に慣れるのが難しいという話を耳にします。勿論、C言語でもオブジェクト指向的なプログラミングは可能ですが、言語仕様がオブジェクト指向ではないため、実装に多少のぎこちなさが出ます。C言語では手続き型で書いた方が自然なのです。

とはいえ、大規模開発においてオブジェクト指向設計は優れた方法論ですC言語のみのプロジェクトであっても、その考え方を導入する価値はあります。しかし、その理屈だけ頭に入れてもなかなか思考はかわってくれません。こんな時に思考を変えるには、まず言語を勉強するのが一番です。勿論、言語仕様を頭に入れるだけでは意味がありません。実際に使ってみる必要があります。

私のいる組み込み業界では、使用するプログラミング言語は多くの場合C言語です。できることなら、いろんな言語を使ってみたいのですが実際なかなかそうはいきません。慣れない言語をいきなり業務で使用するのも危険です。そこで、私の場合は、開発やテスト用のツール作成等、割合自由の利く部分で、普段使わないような言語を使うようにしています。

世の中にプログラミング言語はごまんとあります。コンパイラ言語にスクリプト(インタープリタ)言語。関数型に宣言型。オブジェクト指向にアスペクト思考。多くの言語に触れることで、思考の幅も広がり、柔軟な設計も可能になります。普段同じプログラミング言語ばかり使っている方は、是非ともいろんな言語を使ってみて下さい。
異文化交流は言語習得から、です(^^)

【関連リンク】
言語は思考を決定するのか?(スラッシュドット・ジャパン)
サピア=ウォーフの仮説 (ざつがく・どっと・こむ)
言語相対性理論 ~サピア=ウォーフの仮説~
サピア=ウォーフ仮説再考
虹の色数の話
プログラミング言語一覧(Wikipedia)

【関連書籍】
言語―ことばの研究序説 Edward Sapir
言語の相対性について
認知パターン―オブジェクト技術のための問題解決フレームワーク ロバート コニツァー他

本のおすすめ

4274065979

4844337858

482228493X

4904807057

4873114799


プロフィール

  • Author:proger
  • 組み込み関係で仕事してます

ブログ内検索