コンピューター科学

2016年08月29日

ソフトウェア業界では「バグのないプログラムはない」ということがまことしやかに語られる。
実際、ソフトウェア開発の最終段階では、「バグ出し」と言って、バグの数の目標値を設定して、決められた期間内にその目標の数のバグを見つける、ということをする。
ここでの目標値とは、プログラムの行数から、「何行あたりバグ1件」というような計算で求め、その目標の数だけバグを見つけるまでテストを行う。

たとえば、そのバグ出し期間が2週間で、バグの目標値が100件とする。バグ出しが1週間経ったところで、20件しかバグが見つかっていなければ、スケジュールが遅れている、と見なされるのだ。

これは何かおかしくないか?
 続きを読む

myinnerasia at 08:04|PermalinkComments(0)

2016年08月25日

「コンピューターがあなたにピッタリのお相手を紹介します。」
「コンピューターで合否判定をします。」
「コンピューターに囲まれたバビルの塔に棲んでいる」
「コンピューター占い」

かつて、まだ誰もがコンピューターを万能の機械であると夢見ていた頃、コンピューターによって何かをはじき出すことがありがたがれていたことがある。
大きな筐体がガチャガチャと音を立てながら計算をし、その結果が穴の空いたテープに刻まれている。

続きを読む

myinnerasia at 08:04|PermalinkComments(0)

2016年08月22日

ニューラルネットが10人が書いた手書き文字について正しく学習し、さらには汎化能力により、それまで教師信号として与えられなかった手書き文字についても正しく認識できるようになったとする。
そこに新たに11人目の人が書いた文字がどうしても正しく認識できない、ということが起こった場合、それまでにニューラルネットが学習によって得た「概念」が間違っていたということになる。

このときニューラルネットはそれまでに学習したことを一旦破壊し、11人目の手書き文字をも認識できるように再学習をしようとする

ここでおもしろいことは、この学習→破壊→再学習のプロセスがプログラマーによってプログラムされたものではなく、ただ「誤差=0に近づくように学習せよ」とだけプログラムされている、ということである。
 続きを読む

myinnerasia at 08:09|PermalinkComments(0)

2016年08月21日

ニューラルネットによる学習は、平たく言ってしまえば「与えられた教師信号に見られる一定のパターンを見つける」ということである。
そこで与えられた入力値と出力値の対に対して正しく答えが出せるように内部構造を変化させていく。これを「学習」と呼んでいる。
ニューラルネットは一度で与えられた入力値ー出力値の対を学習するのではなく、その誤差を少しずつ減らすようにして、誤差曲線を描く。 

ここでなぜニューラルネットは一度で学習をしないのか?という疑問がわくかもしれない。
普通のコンピューターの処理では、値を記憶するということは一度で済むはずである。

この答えはニューラルネットワークの大きな特徴である「汎化能力」にある。

続きを読む

myinnerasia at 10:09|PermalinkComments(0)

2016年08月20日

今から僕は20年以上前に気づいたことをできるだけわかりやすく説明してみようと思う。
もしかしたらこれはこの世界で僕だけが気づいていることなのかも知れない。
「もしかしたらこれはこの世界で僕だけが気づいていることなのかも知れない」ということは実はこの世界の誰にでもあって、ただほとんどの人はそれを誰にも伝えないまま、その「自分だけが知っていること」を誰にも伝えることなく、それを墓まで抱いてこの世を去るのかも知れない。

おそらくほとんどの人はそうなのだろう。 
この世界は無数の無名の哲学者たちにあふれている。
そしてその無名の哲学者たちは、(非常に残念なことに)この世で得ることができたある"知"を後世に残すことなく、自分の脳内に残したままこの世を去っていく。

親切にも「自分だけが知っていること」を何らかの方法でこの世に残してくれた人については、その智慧をこの人類の財産として、後世に生きる人々がこの世界を捉えるための手がかりとすることができるように、という愛を、後世に生きる人々に残したことになる。

すなわち、哲学は常に愛にもとづいている。

さて、前置きが長くなってしまったが、ここからは僕が後世に残す愛のためのステージだ。
もしかしたらこの世界で僕だけが気づいているのかも知れないあることについて、できるだけわかりやすく書いてみようと思う。
 続きを読む

myinnerasia at 20:00|PermalinkComments(0)