検索
最新の記事
記事ランキング
タグ
雑感(302)
雑談(151) 妄想(126) ニュース(96) 散財(77) web(65) おバカ(59) 検索(54) 親バカ(45) 日本語(41) PC(40) 季節(39) 昔話(35) 信仰(31) 政治経済(29) イベント(27) 言語(25) 音楽(24) 言い訳(22) ビール(15) 以前の記事
最新のコメント
ライフログ
ブログパーツ
ブログジャンル
|
タイトルは「将棋とチェス」でもよかったのだが、新書風に少し遊んでみた。とはいえ、しばらく本題には入らない。 今は人を動かす仕事を半ば放棄していて、まだ自分の手でプログラムを書いているが、最近ようやく新しい言語環境で仕事ができる許可をもらった。新しい言語仕様ではシンプルな記述で耐障害性の高いコードを書くことができる。若干パフォーマンスは落ちるが、今書いているのは高いパフォーマンスを要求されるようなプログラムではないので、そのあたりは問題ない。記述が簡潔になり、個人的には満足している。 ただし、新しい文法による記述の中には古い静的解析ツールに読めない表現があり、古い定型表現を強制してくるようなバイオレーションが出ることがある。最近は仕事の自由度もいくらか上がっているので、ちゃんとJustificationコメントを書き、ここの警告は抑制しろというディレクティブや属性を追記して、テストグリーンになるようにしている。 しかし、これはちょっと別の問題を含んでいるのかもしれないとは思うようになった。同じ言語の新しい仕様には、記述を簡便にするような新しい文法要素が追加されるのだが、それはさほど高度ではないにしても、従来とはいくらか違った概念が持ち込まれている。もちろん、表現としてよりスッキリと書けるように過剰な制約を廃止しただけのものもあるのだが、中には当然、他の実験的な言語で成功した新概念を導入したものもある。そういう新概念は、静的解析ソフトだけではなく、人間にとっても読みにくくなっているという可能性もあるのではないか。 C#のような実用言語の世界では、あまり高度な抽象概念が持ち込まれることはない。それでも、オブジェクトとは即ちメモリアドレスの呼び名の問題である、というような手続き思考の組み込みC言語のパラダイムで職業人としての初期訓練を受けてきた人たちの中には、オブジェクト指向の古典的なパターンにさえ苦手意識を持つ人がいる。そういうファーム上がりの技術者の中には、強力なプロセッサに依存したソフト屋の抽象的なコーディングを嫌う人もいる。 自分も8bitプログラミングを知らないではないので、静的なメモリに対して固定的なルーチンを実行したときの処理速度の高さは知っているし、そういうのを好むのも感情的には理解できる。ただ、私は仕事としてプログラミングを始めたのが今世紀に入ってからなので、あまり古い技巧に精通しているわけでもない。学生時代に独学した、ポインタを使うような「アルゴリズムとデータ構造」なら知っているが、改修による単体テスト項目を最小化して短納期で仕上げる仕様書の書き方だとか、テストコードを書かず、従ってリファクタリングも許されない中でのデバッギングであるとか、そういう実務的な泥臭いノウハウはほとんど持っていない。 仕事でプログラミングを始める前には、独学でいくらか本を読んだのだが、個人的な好みもあって、英語で書かれたテキストの翻訳を読むことが多かった。そこでは間接的に、アメリカでのソフトウェア開発の常識が空気のように含まれていた。しかし日本で実務に就いてみると、アメリカの、殊に西海岸で行われていた先進的な開発とは違うスタイルの開発が行われていて、それはどうやら、大戦前にイギリスやドイツから導入し、その後国内で独自に発展させられた、工部省や国鉄などに起源を持つ工程管理手法の系統らしいことに気付いた。 そういう仕組みが使われているならそれを学ばなければならないのだが、特にシステマティックな理論教育や認証試験制度が確立しているわけではなく(かつてはあったのかもしれないが)、もっぱら先輩から後輩への「OJT」によって新人時代に叩き込まれるのが基本となっているらしい。私は業種も業界も企業系列も全て移動する転職をやったので、新人時代のノウハウをそのまま流用することはできない。ソフトウェア開発面では翻訳書に頼った独学をしたため、テストファーストのアジャイルに近いスタイルが基本になっている。どちらも今の職場には合わない。 新人時代には、標準作業無くして作業管理無しという具合で、実験的段階が終わって定型化してきたどのような作業にも作業標準書を書かされたものだが、今の職場には作業標準書を書く習慣はない。一方で、ウォーターフォール的な厳格な仕様書作成は要求される。ただし、これをやっているのは開発の受け手である立場の要求であって、発注側としてはより自由な、摺り合わせによる漸進的な仕様の洗練化を伝統としている風でもあり、職場には多少の葛藤が残っている。その上、先に述べたような個人的な葛藤もあって、いろいろとややこしい。 日本では学問から実務への展開は重視される一方で、実務から学問へと抽象化していく過程が軽視されていて、結果として学問の陳腐化が早いという問題があるように思うが、これはまた別の話として、ここでは、私の職場にいる日本人のプログラミングスタイルと将棋の関係性について妄想してみたい。 私の職場はそれなりに学歴を積んで社会的素質、いわゆる「人間性」にも大きな問題のない人が集まっているのだが、彼らの書くプログラムが(私から見ると)異様に汚い。古いコードがメンテナンスされて使い続けられているから、古い時代に固有の制約が色濃く残っているというのもあるのだが、それにしてもある種の複雑性が当たり前に認められていて、私が独学したコーディングの優先事項に真っ向から逆らうソースコードが使われている。 彼らのコードは、私の世代なら大学の教養課程で習ったような、今の若い人なら高校や中学で習ったような、ごく初歩的な制御構造だけを使い、その代わりにコード上には見えないグローバル変数の挙動を正確に頭に入れていないと動作を保証できないような複雑さにしっかりと対処したプログラムとなっている。網の目を丹念に編み上げたミクロなネットワーク(糸で編み上げた手芸作品)構造が作られている。 私は記憶力が悪いので、そういう多数の要素が遠くから影響している構造を見ていると頭が痛くなり、独学した原則にならって、リファクタリングにより要素と関係を局所化したい要求にかられるのだが、残念ながらそういうリファクタリングをするための予算は付かないと言われている。リファクタリングせずに品質だけ上げろと言われており、過去の担当者はそれをしていたらしいのだが、私にはこれが難しい。 学生時代の優等生を思い返してみたときに、ある一線を越えた天才的な生徒は、数学の難問などに対して正体不明のパターンを持ち出して一刀両断にエレガントな解を出すのだが、秀才的な優等生は、単調な手順を複雑に、しかし間違いなく繰り返すことで正解に到達していた。いま職場で目にするコードは、この後者の優等生の回答を連想させる。 この、個別には難しくない関係を多数持ち込んで複雑になって私を悩ます問題というと、もう一つ思い出すのが将棋だった。ここでようやく本題に入れた。将棋というのは、まあオセロほどではないにしてもルールは単純で、それぞれの駒の動きを覚えるのはそれほど困難でもない。ただ、一度死んだ駒が生き返ることで、盤面の複雑さはいつまでたっても収束しない印象がある。中盤では、頭を抑えられていた駒が、自分や相手の駒の動きで利きを回復することがあるし、もちろん、将棋では相手から取った手駒を自由な位置に打つことができる。 数学の問題を解くのに複雑な中間過程を扱う秀才だとか、初歩的な制御構造を複雑に絡めて完動するプログラムを書く社員だとかを見ていると、何か器質的な能力を駆使しているのを感じるし、そういう人の評価が高い背景には、将棋というゲームを好む日本人の国民性と何か通底するものがあるのではないかとも感じている。 私は将棋もチェスもあまり良く知っているわけではないし、将棋とチェスを日欧の文化論と絡めた論説はすでに多いので、あまり細かいことを語る気はないのだが、敢えて気付いたことを挙げると、将棋が複雑さを楽しむゲームなのに対して、チェスは複雑さを単純化することを楽しむゲームだという違いがあるのではないかと感じた。 将棋もチェスも、開戦時には静的なピース配置となっており、エントロピーは小さい。そこから、定跡などは使いながらも、徐々に個々の棋譜に固有のエントロピーを足していく。このあたりまでは、将棋もチェスもそう変わらないところだろう。ここから先の将棋とチェスの大きな違いと言えば、将棋ではピースの「成り」がある程度恣意的であることと、取った相手のピースを手駒として自由配置できることだろう。 ポーンのプロモーションは、動けなくなったから動きを変えるという程度のものでしかないし、クイーン以外へのプロモーションはあまり無いと聞く。恣意性がないわけではないものの限定的で、しかもルール改定の過程でその恣意性はより限定される方向へ進んできたとも聞く。そう考えると、チェスというのは、序盤の整然とした状況を中盤の混乱に持ち込みながらも、最終的には混乱を刈り込んで終盤の整然さへと持ち込むゲームに見える。 一方の将棋は、序盤の整然とした状況から急速に混乱に持ち込み、混乱を混乱のまま制したものが勝ちというゲームに見える。チェスも将棋もインドあたりのボードゲームに起源をもっていて、それが西廻りと東回りに発展したものだという。だとすれば、西回りに進んだチェスの愛好家は、複雑さを扱うストレスを好むものの、それを最終的には単純化していくことに喜びを感じる人々であると言える。一方東回りに進んだ将棋の愛好家は、複雑さを扱うストレスそのものに対する耐性を競い合うことに喜びを感じる人々であったと、荒く推定することができる。 ゲームというのは、遊ぶ人が楽しくなるように改定されていくはずだ。であれば、長く遊ばれたゲームのルールには、それを遊んできた人たちの好みが転写されているはずだ。人殺しゲームを咎められたアメリカ人の攻撃性が生み出したのがゾンビゲームだろうし、少女愛を咎められた日本人の偏愛が生み出したのがアニメ絵のゲームだろう。 まあ、そこまで犯罪的に言わなくても、主流にある人々が何を楽しいと感じるかがその地域のゲームに反映されていくのだと考えれば、西洋人は複雑さを解決する楽しみを追求することでチェスを生み出し、日本人は複雑さを競う楽しみを追求することで将棋を生み出したのだと言えるだろう。 そして、高度な抽象概念を使ってシンプルなコードを書くよりも、初等な抽象概念を高度に絡み合わせて複雑なコードを書くことを好む日本の秀才を生み出した背景に、将棋を愛する国民性、タイトルに従って過激に書けば、国民病があるのではないかと考えた。そして、国民病とは言いながら、それが後進性だとか蒙昧だとかは思えない。単に、複雑さを扱うことに長けた典型的な国民の性に合っているのだろう。そういう面では私は全く典型的でない。複雑さは生まれるそばから斬り殺し、抽象概念の墓標を建ててその下に埋めるのを好む。これは、必ずしも教育効果だけではなく、器質的な理由もあるのだと想像している。 ただ、そういうふうに処理のパターンごとに抽象概念の墓標が並んだ殺風景なソースコードに、シンプルだったりエレガントだったりという好意的な印象を抱かず、具体的な内容を隠蔽しようとする意地悪な仕業に見えるという感覚にも想像が到る。だって、あのWikipediaの数学系項目にある説明を見てみれば、そういう気持ちが痛いほどわかるじゃないか。 簡単であることはそれ自体がメリットである、という意見もわかる。一方で、その分野のプロなんだから、ある程度の抽象概念のセットくらいは持ち合わせておけよ、と言いたい欲求もある。どうなんだろうなぁ。また例によって最適点は中庸にあるのだろうが、中庸というのはその場にいると見えなくなるものだ。 自分はどの程度偏っているのだろう。手持ちの書籍やブログの情報を見ると全く偏っていると思えないのだが、身の回りの人々や/.Jのコメントの一部を見ると、私は多少西海岸的なやり方に偏っているようにも思える。大きな企業の社員というのはある種の役人であり、アジャイルな役人というのも確かに困りものではある。でも、アジャイルとは日本的な「摺り合わせ」のスタイルを西洋化したものじゃなかったのか? 科学(science)を技術(technique)に落とし込んでいくのが工学(engineering)であり、技術を陳腐化させて商売の道具にするのが産業(industry)である。そして、技術(technique)から科学知識を再抽出していくのが科学技術(technology)である。エンジニアリングとテクノロジーは表裏一体の関係にあると思うのだが、「日本には技術力がある」というのは一体何を指していたのだろう。 科学知識を定義する決然とした数式の整然さから、工学は混沌とした技術の塊を作り出していく。チェスのスタイルにならえば、ともかくも現実世界に産み落とされた技術たちは、technology(技術学)によって再び整然さを取り戻すべきで、そこからより抽象的で整然とした科学の世界へ返るか、標準技術として産業化の道具になる。一方、将棋の流儀に従えば、技術の混沌さをそのままに扱える技能を持った人が尊ばれ、その言語化し難い何かを人から人へ脈々と受け継いでいくべきなのだ。 Wikipediaの項目などを見ても、System engineeringに比べてシステム工学の貧弱さに暗澹とするが、日本には日本の徒弟制(OJT)に支えられてきた技術(technique)があり、盗まなくても学べば済む知識へと還元していくテクノロジーやエンジニアリングの発展はあまり必要としないのだろう。戦争などをしないのならば、それはそれでいいのではないのだろうか。唐から伝来した雅楽を今に伝える日本人の誇りが、そこにはきっとあるのだ。 #
by antonin
| 2017-08-27 01:29
|
Trackback
|
Comments(0)
月曜から飲んでいる。チクショーめ。 酔いが抜けんとする中で乱雑に書く。 -- ムスコ一号に夏休みの読書感想文が宿題に出ているのだが、私に似て遅読なのでそもそもの読書が一向に進まない。昨日、ヨメの指令により図書館にカンヅメにして、まずは本を読むことから始めた。わざわざ冷房の利いた図書館に着いたのに、席でじっとせず駐輪場に停めた自転車の上で本を読んでいたりする。生理的な同類として、気持はよく分かる。 ムスコの読書を待つ間、私も図書館の本を読んでいたのだが、退屈ではないのにやはり中座してしまう。同類なのだ。ふらふらと開架を歩いて、目に止まった伊藤桂一さんの短編「遠花火」を読んだ。読んでいるときは初見の物語として読んだが、読んで一日経つと、遠い昔に読んだ物語のような気がする。いや、本当に読んだことがあるかもしれない。記憶というのは雑なものだ。私の記憶は雑だが、世の中には雑ではない記憶の持ち方をする人もいるのだろう。雑な一般化は良くない。 中座するまでは「ブラック・スワン」などを読んでいたが、本書が批判しているまさにその考え方で著者自身が誤りを犯している箇所などを指摘できる。著者は思考のタイプが私に似ているような気がするが、彼は数学が得意だと言うので、きっと私とは違うタイプなのだろう。 般若心経の解説書を読んだこともあった。それによると、五蘊についての私の理解は間違っていたらしいことに気付いた。私は色受想行識という一直線の抽象化の深まりがあると思っていたのだが、どうやら色→受→想→行→色という一連の動物的な情報の流れがあって、その背後に客観的な識があるというものらしい。色受想行なら犬畜生にも備わるものだが、そこに識が加わると人間らしい葛藤が生まれる。識が想を完全に圧倒して飼い馴らせば涅槃に到るというものらしい。 一切衆生悉有仏性。犬に仏性有りや無しや。犬にも想はあり、またいくばくかの識があるから「待て」ができる。だが、残念ながら師の言葉を聞いて万物の法理を悟るほどには識がない。悟ったような顔の猫又も似たようなものだろう。来世の先まで見ればどうかは知らんが、犬の今生には仏性がない。精々愛でよ。私自身も似たようなものだ。 ミリンダ王の問いをまた読み返してみたい。あれは閉架にあって、貸出を頼むと司書の方がうやうやしく持ってきてくれる。3巻あると言われたが、1巻しか借りない。私に1冊でも2週間で読み通せるようなものではない。ああいう経典を読んだら、ミリンダ王の問いに答えたナーガセーナの喩えに、独自の一節を書き足したい衝動に駆られるのはわかる。すでにある経文の韻を自分の発音に則って整えたくなるのもわかる。こうして経典は史実から遠ざかる。 そういう、名もない僧の想いの積み重ねが仏典の価値であって、史実としてのブッダ・ガウタマは、ある程度どうでもいいのだろうと思う。 仏教は宗教か哲学か。そりゃ、原始仏教と密教とでは全く異なるし、初期密教と後期密教も異なるし、初転法輪のころと入滅ころのでも異なるだろう。でも、どこか通底しているものはあって、それを仏教の本質と言ってもいいかもしれない。本質で言えば、科学も仏教も通底しているものは信仰からの目覚めの部分にあって、それは哲学的なものかもしれない。けれども民衆の信じるところはまた別のところにあって、それはかなり宗教的なものにならざるをえない。 塩酸と水酸化ナトリウムを中和した食塩水を飲めるか、有機物を吸着濾過した尿を飲めるか、有害水準未満の放射性同位体を含む飯を食えるか。あるいは、水に優しい言葉をかけると美しい結晶ができるという理屈を信じられるか。科学がどう、仏教がどうというものではなくて、受け手の心のほうに本質がある。 理性的論理を宗教的理論に移して信じる人はいつの世にも居るし、宗教的理論から理性的論理へ抜けていく人もいつの世にも居る。人種が違っても、似た職業の人達の外見はどこか似ている。それが、単に文化的な交流経路だけに依存したものとも思えない。同じように肌が黒いからといって、アボリジニとケニア人が近親種というわけでもなく、似たような学問を好む地中海人種の学者と漢人の学者が、全くの偶然による独立進化だとも思えない。 社会的な事情があって生来の性質とは異なる職業に埋没しているような人も、見る人が見れば外見で見分けられたりすることもあるのではないかと想像する。 酔いが醒めてしまったのでこれにて結。 #
by antonin
| 2017-08-22 01:23
|
Trackback
|
Comments(0)
dマガジンという、スマホで雑誌の立ち読みのようなことができるサービスがある。飽きたら解約しようと思っていて、実際に飽き始めてはいるのだが、先日から各誌の創刊号抜粋が読めるイベントが始まっていて面白い。大体は1980年前後の時代に集中しているのだが、エコノミスト創刊が大正12年だったり、ダイヤモンド創刊が大正2年だったりして驚いている。この頃も第一次世界大戦の前後で国内の景気が良かった頃だと言われる。経済誌の論調はあまり今と変わりがなく、景気と損得の話でほとんどを占める。教育と経済は理論の最終的な帰結を見るのに数十年を要するので、どうも人間には扱いにくい学問なのだろう。 面白いのが婦人画報で、明治38年7月1日発行とある。日露戦争終結後の時期で、この時代もまた景気が良かったのだろう。わずかな抜粋のみの雑誌もある中で、婦人画報の創刊号はカラーの表紙から裏表紙に至るまでガッツリ採録されている。表紙はミュシャっぽい画風のイラストで、まず広告がいくつか並び、目次があり、続いて絵画や写真がずらっと並んでいる。写真は身分の高い子女が通う女学校の様子などが多い。他に海外事情やその時代の絵画などが載っている。「英国婦人の水浴新工夫」というページでは、「白き半裸体の婦人」たち(といっても今の感覚からすれば水着を着ているだけ)がプールで遊んでいるが、説明によると「人工を以て波を立たしむ」とあって、波の出るプールが当時からあったらしいことに驚いた。 続いて「読物」のページに入ると、創刊の辞に続いて大隈重信伯爵と成瀬仁蔵日本女子大学校長の言葉が寄せられていて、なかなか興味深いことが書かれている。大隈公は、西洋の婦人が宗教やファッションのために苦労しているのに比べて「日本婦人はむしろ大いに自由であったと言わなければならぬ」と言っているし、成瀬校長は「男女の体質脳力等を比較して女子に高等教育を施すことの可否を論ずる人もあるが実験上もはや陳腐の議論となって居るのである」と言っている。こちらもあんまり今と変わらんなぁ、というよりも、むしろ後退しているんじゃないかという気さえする。 「静寛院宮 御手記抜書」は、徳川家茂夫人が幕末に実家の京都朝廷宛に送った書状の写しなど、日誌に残った記述から抜粋されている。明治も後半に入った婦人画報の記事自体は旧仮名遣いではあるものの一応口語体であり、仮名も字体統一後のもので、現代では滅びつつある振り仮名も全ての漢字に一字残らず振られているので、読むのに困ることはない。ただ、静寛院宮の手記は江戸末期のものなので、基本的に候文になっていて、なかなか読むのに骨が折れる。明治に入ってまだ40年と経たない当時は、読者の方もそれほど苦労なく読めたのだろう。 原文は幕末のものだし、活字になって仮名も振られているので、毛筆の古文書などに比べれば断然読めるのだが、面白いことに「上申候(もうしあげそうろう)」じゃないかと思われる、3文字分の長さの筆書きに近い活字が使われている。それから、一切句読点がない。これも候文の特徴だろう。活字になった候文では「上申候」が巨大な句点にも見えて面白い。大隈公などの文章にはしっかりと句読点が打たれているが、それでも今なら句点を打って文を切るようなところでも読点で延々と続くような文章になっていて、逆に口語らしさがある。たとえば今書いているこの文章なども、口語からの距離という意味では、明治期よりも文語的になっているのかもしれない。 アルファベットでは2000年以上の昔にローマ人が端正なローマン体を石に刻んでいるから、筆記体からブロック体に主流が移ってもそれほど劇的な変化はなかったのだろうが、仮名というのは元の漢字と直接の関係は失われてしまったようなものなので、「活字体の仮名」というのは日本語に対してかなり大きな影響を与えたのだろう。まぁ、アルファベット圏でも「分かち書きによる単語の区切り」が、ある時代の発明ではあったと言うから、あんまり違いはないのかもしれない。 昭和の末期には正方形の活字を几帳面に並べた印刷物も多かったが、明治の頃はルビの関係などもあって、かなり字間は自由になっている。とはいっても日本語活字は基本的に正方形の断面を持っていたのだから、そこには植字工の職人芸があったのだろう。「御手記」のメインは全部統一字体の仮名なのだが、ルビの一部にはたまに旧字体が混ざり込んでいて、「ず」が今の「寸」に濁点ではなく「春」に濁点のものなどがあった。原文が昔のものなので、植字も校正もついついそれにつられてしまったのだろう。 それから、各ページには写真や図画が豊富に印刷されているのだが、その図がいちいち本文と関係ない。今のweb記事でも「写真は本文と関係ありません」というのがあるが、いわゆる「写真はイメージです」という、直接は関係ないが、全く関係なくもないというものが多い。けれども婦人画報の写真は、全くと言っていいほど関係がない。女子の体操というタイトルで「表情体操デルサート」というものが紹介されているのだが、そのような論説に混じって「露西亜の最年長者本年百十二歳」だとか「葡萄牙国の最年長者本年百十五歳」といった肖像が中央に大きく印刷されている。それ自体がかなりニュースバリューのある写真ではあるものの、本文には全く関係ない。読者に届けたい文章と写真が豊富にあって、でもページ数は限られていて、結果、そういうことになったのかもしれない。 古雑誌そのものは古書店や図書館などを漁ればまあ見られないこともなかったのだが、数万人が場所を限らず片手間に見られるというあたりはなかなか面白いことだと思う。素人が素手でベタベタとページを触って貴重な創刊号が劣化する恐れもない。ある種の展覧会になったようなものだろう。電子化された創刊号は、いずれ削除されるのか、あるいはまとめて有料で売られることになるのか、どうなるのだろう。 #
by antonin
| 2017-07-07 01:36
|
Trackback
|
Comments(0)
ADHD気質の双極Ⅱ型障害の私は、数年ぶりに軽躁期に入ったようだ。処方にSNRIを加えてSSRIを減らした作用かと思う。今は必要な処方だが、もう少ししたらセロトニン優位に変えてもらおう。 -- アキレス(アキレウス)と亀という有名なパラドックスがある。アキレスは、ホメロスの叙事詩に登場する、俊足で名高い英雄である。亀は、イソップの寓話に登場する、鈍足で名高い動物である。さて、アキレスの前方、いくらか距離の離れたところに亀がいて、アキレスから逃げる方向に亀が進んでいる。この亀を目指して、アキレスが俊足をうならし猛追する。ここで論理学者は考える。 アキレスは走り出して一定時間後、スタート時に亀がいた地点まで到達するだろう。しかしその時間で亀もアキレスほどではないが一定距離を進むことができるのだから、この時点ではまだ亀はアキレスの前方にいる。次いでアキレスはその亀の位置へ移動するが、そのときにはまた亀がいくらか前進している。以下同様に、この過程が無限に繰り返されることになる。この過程をどこまで続けてもアキレスは亀の位置に到達することができず、つまり俊足の英雄アキレスは鈍足の亀を抜き去ることができない。証明終わり。 高校生時代、おそらく高1の頃だったと思うが、受験勉強のために池袋の河合塾に通っていた。そこにはチューターという役割の大学生がいて、授業前に幾つかのアナウンスと、ちょっとおもしろい小話を挟んでいた。ある日の小話のテーマは、アキレスと亀だった。この話にどう説明を付けるかという問いに対して、私はただ 9/9 という分数をひとつ書いて提出した。次回の授業で、そのチューターがこの謎めいた答えは面白いので説明が聞きたいと言ったのだが、私は恥ずかしがって名乗り出なかった。 言葉にするのは面倒だったが、その時思ったのはこういうことだった。1/9というのは有理数である。1/9を小数表記すると、0.1111...という循環小数で表せる。その9倍は各桁が9倍されて0.9999...という循環小数になる。ところが、1/9の9倍は9/9である。約分すると1である。通常は1=9/9=0.9999...とされるわけだが、この2つの等号を両方認めるとすると、アキレスと亀のパラドックスはパラドックスではなく、アキレスは亀に追いつくことができる。 ただしこの場合、1の小数表現である1.0000...という暗黙の循環小数表現と、0.9999...という明示的な循環小数表現では、小数点以下のどの桁の数字も一致しないにも関わらず、その表現する数値は一致するということを認めなければならない。1.0000...表記の桁数は自明に無限だとして、0.9999...という表記は有限個の9を並べてひとつずつ増やすという過程を無限回繰り返したものである。有限回の繰り返しだと両者は一致しないことが明らかなので、「いくら続けても同じだ」という考えのもとでは、小数点以下に9を無限に書いた循環小数は1と一致しないということになる。 なので、1=9/9か9/9=0.9999...のどちらかの等式が否定されることになる。これを否定できないとすると、「いくら続けても同じだ」というそもそもの論理が否定されることになる。たかだか有限回ならいくら9を並べても1には一致しないが、無限回繰り返せば1に等しくなるように、無限を特別扱いする必要がある。この特別扱いを認めるならアキレスと亀の話はパラドックスではないし、認めないようなら反証として正しい。要は定義と解釈の問題なのだろうと思ったが、うまく説明できず、9/9とだけ書いた。 ただ、古典的な数学では、有限回の過程と同じことを果てしなく繰り返せるという、数の性質が変わるような上限がないという状況が無限と呼ばれるだけだから、数としての無限というのは便宜的な状態であって、有限の数と論理的に区別されるものであってはならない。そういう意味では、1/9や1/3のように10進表現で循環小数が必要となる有理数は、そもそも小数表現不能であると見るのが正しいように思う。 アキレスと亀が物理学の問題であれば、「そうは言っても実測上、足の早い人が足の遅い亀を追い抜くことはしばしば観測される。したがって、無限小の距離を無限小の時間で通過できるようなアキレスと亀の問題の場合は、有限の時間で追い越すことが可能であるような数理体系を採用しよう」ということで簡単に結論が出せる。ただ、純粋数学でなら、もう少し議論の余地がある。別にアキレスが亀を追い抜くことができない数理体系になっても知ったこっちゃないのが現代数学なのだ。それ自体が無矛盾な系になるなら、それはそれで興味深い数理体系として数学的議論の対象となる。 物理学であれば観測現象を無理なく説明するという要請から1=9/9=0.9999...を認めることになるわけだが、数学的立場から、とりあえず9/9≠0.9999...を導入して、循環小数を有理数の表現として認めないことにしよう。9/10は1と異なる。99/100は1とは異なる。999/1000は1とは異なる。このように、分子を10倍して9を足し、分母を10倍して次の有理数を得る。細かい話は省略するが、数学的帰納法により、この過程を無限回繰り返しても1にはならない。1にいくらでも近づくことができるが、無限回の過程を繰り返したところで決して1にはならないのだ。証明を省いたのでナンだが、これが定理になる。 つまり、有理数には10進法で小数表現可能なものと小数表現不能なものがある。循環小数はあくまで近似表現である。1/10は10進法なら0.1だが、2進法では循環小数となり、上と同様の定理が成立し小数表現不能である。有理数は実数の部分集合であるから、実数にも小数表現不能であるものが存在する。そもそも、同じ考え方に立てば全ての無理数は小数表現不能になる。というのも、無限桁の自明でないn進小数は、分母がnを無限回掛け合わせた整数、分子も無限桁の整数であるような、ある有理数の別表現に過ぎない。だから、定義的にそれは無理数ではなく、無理数は小数表現できない。 カントールは「全ての実数を並べた列に自然数の番号を振る」という仮定が対角線論法により矛盾することで背理法により実数濃度が可算濃度より大きいことを示したが、上で述べた定理が成立する系ではそもそも全ての実数を小数表記可能とした仮定が偽であるから、対角線論法は無意味である。 実際、ZFC公理系では連続体濃度の考え方から導かれる連続体仮説が、真でも偽でもZFCの中にある定理に影響を与えない、「つまらない問題」であることが証明されている。カントール集合の考え方は面白かったが、連続体濃度の考え方はつまらないものだった。ただし、カントールによる連続体濃度の定義が不十分なだけであって、可算無限に達した状態を有限の状態と質的に区別するための何らかの定義が追加できれば、それは面白いものになるかもしれない。今はまだ連続体濃度はつまらない概念だが、それを面白い概念に転換するアイデアは、どこかに残されているのかもしれない。 さて、話をアキレスと亀に戻す。物理学の前提では、アキレスが亀を追い越せなくなるような数学では困るわけで、アキレスが難なく亀を追い越せるような細工を数学に対して施す必要がある。ひとつは、アキレスと亀の位置と時間を実数という連続量で表せるというニュートン力学で主流の前提を活かしながら、それでもアキレスが亀を追い越せるような細工を、自然界が持つべき物理法則を表す数学に対して施すことになる。 この場合、アキレスが亀に追いつくまでには最初に説明したように無限回のプロセスが発生するわけだが、その所要時間はどんどん短くなり、無限小に近づく。これにより、自然界は無限小時間のプロセスであれば無限回のプロセスを有限時間で終わらせることができるという性質が要請される。9/9=0.9999...みたいなものを数学に認めさせることになる。またこの性質により、亀に追いついたアキレスは、次に無限小時間のプロセスを無限回繰り返すことにより、「アキレスと亀の位置は等しい」という状態から「アキレスと亀の位置は等しくない」という状態へ脱出できるようになり、亀を抜き去ることができる。 解析学で頭を悩まされた、極限値というやつの正体がこれである。物理学においては、無限数列の和と、その先にある、本来は別のものであるはずの極限値が、無意識にすり替えられる。これは論理的に考えるとおかしなことなので、若い頭は悩まされることになるのであった。ここで哲学的な疑問を感じず当たり前と思えるような素直な思考の持ち主は古典物理学に親しむことができ、そういう人は逆に小学校で教える掛け算の順序に規則を設けたりされると理解できず激怒する。 現実世界を矛盾なく表せるようにするための細工としては、もう一つの方法がある。それは、量子力学的に、位置や時間に無限分割を認めず、それらが離散的な素量が有限個だけ積み上がった整数ないし有理数で表現されると考えるやり方だ。この場合、ある1単位時間の経過でアキレスが動くこともあれば亀が動くこともある。両者動くこともあれば、両者とも動かないこともある。 いかに神話に俊足名高い英雄アキレウスといえども、神ならぬ人間ゆえ光速に比べれば停止しているも同然の速度で走っているだろうから、単位時間にはせいぜい1単位距離を動くことがあるかどうかで、大半の瞬間は全く動かないということになるだろう。このモデルでのアキレスと亀の速さの違いは、1単位時間が経過する際に1単位距離を移動するという事象が発生する確率の大小で表現されることになる。 となれば、スタートから有限回の単位時間が経過したところで、アキレス(の体の中で一番前方にあるフェルミオン)は亀(の体の中で一番後方にあるフェルミオン)から1単位距離だけ後ろに位置することができる。次に、アキレス(の体の中で一番前方にあるフェルミオン)が1単位距離だけ進む事象が発生したとする。このとき、アキレスは亀に追いつき、またそれに要した時間は有限であり、またそこに含まれるプロセス(単位時間の経過回数)はたかだか有限回である。 同様に、アキレスが移動する確率は亀が移動する確率より高いので、十分大きい回数の単位時間が経過すると、アキレスの体全体が亀の体全体より前に移動する瞬間が訪れるだろう。そこまでに、十分に大きいとは言え、それでもたかだか有限回のプロセスしか必要としない。アキレスや亀の位置をその重心に置くとしたら、彼らの体を構成する粒子の位置の平均ということになるので距離素量より小さい刻みになるが、それにしても算術平均なら彼らの位置は有理数で表現できるだろう。 個人的には、ニュートン力学的に時間の無限分割での無矛盾を数学側に要請するやり方よりも、アキレスと亀のパラドックスを反証として認めて原子論的な立場から時間の無限分割を否定し、離散時間を物理の側に要請するほうが、考え方としては現代的で馴染みやすいように思う。運動量の正体がなんなのか、つまり粒子が単位時間あたりに位置移動する確率の内側にある「隠されたパラメータ」がなんなのかという謎は残るが、そこは4次元を超えるモデルなどの新しい数学の出番となるのだろう。 無理数というのは有理数と質的に違うものなのだが、たとえば円周率でもアークタンジェントのテイラー展開によって有理数列の和にできるので、無理数である円周率そのものは自然数と四則演算で求められないにしても、四則演算の繰り返しによっていくらでも円周率の真値に近づくことはできる。その無限に近づいた状態の値を、物理学者が考えるように円周率そのものとして認めてしまうような系では、有理数と無理数の区別は無意味なものになり、それはそれで面白い気がする。数学というのは窮屈な規則の集まりだが、反面、規則を定めるにあたっては至極自由なものなので、そこが面白い。 #
by antonin
| 2017-05-02 15:44
|
Trackback
|
Comments(0)
※ 読む人も少ないだろうから、人間の知能を五蘊に分解する考え方の説明は省く。 以前は、「いわゆる人工知能」の下層(「受」「想」のあたり)までをコネクショニズムで実現し、「行」については従来通りチューリングマシンが受け持ち、「識」は人間が専有するのが良いのではないかと思っていたが、最近はやはりコネクショニズムで五蘊の全域をカバーし、下層の一部に古典的なチューリングマシンを組み込むのが良いと思うようになってきた。 ヒントン先生は教師なし学習するネットワークを下位に組み込むことでバックプロパゲーションの限界(多層化が認識率向上に寄与しないという問題)を打破したけれども、そこで用いた、「より少ない内部情報で、より多くの入力情報を再現する」という基本戦略にはかなり汎用性があるのではないかという気がしている。 最近話題の「人工知能」が出来るようになったことというのは、「色」(センサー)から取得した生情報を単純にフィルタリングしてエッジ情報などの特徴要素を抽出する「受」(シグナルプロセッシング)と、そこから何が見えているかを判定する「想」(コグニション)までの部分で、特に「想」の部分が従来のディジタルプロセスが苦手としていた部分になる。 何があるかを認識できている状態(想)が外部から与えられた場合に、そこから次にどうすべきかを判断する「行」の部分を実行するのが、古典的なチューリングマシン上のプログラムだった。だが、FORTRANの昔から「自動プログラミング」の名のもとにいろいろの研究が行われてきたものの、チューリングマシンがプログラムを本当の意味で自動生成するには至っていない。 であれば、「いわゆる人工知能」に至るまでには、「行」のレベルもコネクショニズムによる自動学習をするしかないように思う。コネクショニズムによる行のレベルの実現に成功すれば、その延長上に「行」のコントロールを学習する「識」の実現も見えてくるし、場合によっては「識」のコントロールを学習する、超人的知能の実現も見えてくる。 自明な「色」のレベルや、さほど可能性の幅が広くない「受」のレベルでは、パーセプトロンやバックプロパゲーションの世代でも破綻しなかったくらいで特に大きな問題はないが、現在のディープラーニングが実現している「想」の水準の上に「行」の水準を乗せるには、ある程度新しい技術が必要になるだろう。そしてそれはおそらく、google翻訳が導入しているような「注意」の機能、つまり文脈を特定し保持する機能になるだろう。 上層(入出力から遠い層)は下層(入出力に近い層)から得られるパターンを認識し、統合的な「解釈」を得る。そして、その解釈パターンを文脈情報として下層にフィードバックすると、下層は一時的に解釈に沿う認識を優先させるようになる。入力が多義的にとらえられるような曖昧なものである場合、上層から与えられる文脈情報(解釈)によって認識率が上がるだろう。ただし、解釈が間違っていると「勘違い」の状態に陥る可能性が上がる。勘違いを避けるには、より広い周辺情報の認識が必要になる。 「この流れでは、この情報をこう解釈するのが当たり前」という感覚が人間の認識には付きものだが、上層が下層へ認識をフィードバックして情報の取捨選択を制御することで、カクテルパーティー効果のような認識率向上が望めるだろう。このことで人工知能はおそらく「より人間的」になるだろうが、また一方で、「より凡人的」になるだろう。 先日、ソフトウェアが 一方の「行」はというと、「最終的に勝つ」という自明な目標に加え、「終盤は詰めに持ち込む」だとか、ごく基本的な理屈を除けば、現在のソフトウェアではあまり複雑な目標は持っていないはずだ。ルールを守るのに最低限必要なもの以外の目的を排除したほうが、人間で言うところの「無心」になることができ、「想」の水準での直感的な学習が研ぎ澄まされていくはずだ。 人間はというと、「今日はこの戦術で行こう」だとか「この手筋なら相手はこの戦術に持ち込もうとしているはずだ」という「行」のレベルの思考をいろいろとやっている。このことによって、「想」の水準の認識に文脈情報を与え、ある特定の文脈での認識率を高め、効率向上を図っている。しかし、それは「プロ棋士の常識」であっても、将棋のルールが与える全空間での認識率を高めるとは限らない。常識外の認識率を落としている代わりとして、常識内での認識率を上げることが可能になっている。 しかも人間の場合、「この局面でこう戦術変更したら、師匠の助言に逆らうことにはなりはしないか」というような、「行」の上にある「識」までが雑念として邪魔をしてくることもある。ソフトウェアには今のところ「識」はない。「ソフトウェアが名人を倒してしまって良いものだろうか」とか「こんな手は失礼には当たらないだろうか」という葛藤をするための機能は、おそらく実装されていないだろう。 こういう人工知能は、非人間的な厳しさで特訓され尽くした5歳児のようなもので、特定分野について天才的な能力を持つ一方で、普通の大人が持つバランスの取れた人格は未成熟、あるいは全く無いような状態になる。天才型の究極といった形になっている。上位の認識結果が文脈情報として下位の認識をコントロールするということが人間的に曖昧な情報を処理するための鍵となるが、一方で「上位の認識」が過去の学習対象に対して硬直的過ぎると、文脈情報が固定化されすぎ、下位の認識が単調になる。これが、発達した人工知能の「凡人化」の原因になる。 人工知能の凡人化を避けるには2つの方向性があり、ひとつは、ネットワークに割り当てるモデルニューロンを豊富にし、より幅広い解釈について学習させるという正攻法になる。もうひとつは、創造的な、しかし誤りに陥る危険を伴う方法で、複数のランダムな解釈パターンを下位層に送り、揺らぐ認識の中から最も良い解釈を探るという方法になる。前者は秀才的で、後者は天才的である。 上位層の解釈が下位層の認識を統合する作用であるとすると、創造的な認識というのは一種の脱統合ということになる。「行」がランダムホッピングして「想」の統合を解くのであれば、最終的に「アハ体験」みたいな創造的なアイデアが得られるかもしれないが、「想」がランダムホッピングして「受」の統合が解かれれば、幻聴や幻覚につながる可能性がある。 常識的な固定観念を緩める程度であれば天才的創造力を導出可能になるが、一方で、強烈な精神的ショックで自然な自明性を喪失するレベルになり、統合の乱れが「受」の階層にまで及ぶと、統合失調の様相を呈するのだろう。「想」と「受」の区別が恣意的なもので、実際のネットワーク上では連続的であることを考えると、「天才と気違いは紙一重」というのはそういうことなのではないか。 囲碁や将棋のソフトのような直感の塊のような段階を過ぎ、行や識の機能が実用的になり始める、「いわゆる人工知能」の初期段階では、まずは凡人的な、安定して常識的な認識が優先して求められるだろう。そういう常識的な人工知能が普及してくると、次には「コントロールされた狂気」であるところの統合緩和が行われ、人工知能が少しずつ創造的な発見や発明をできるようになってくるはずだ。 技術的課題を乗り越えて、そういう人工知能が現れるには、どう少なく見積もってもあと30年はかかると思うが、その時代に「人間にしかできないこと」とはなんなのだろう。疲れることと飽きることと、その周辺、といった具合になるのかもしれない。疲れることと飽きることが高度な学習にとって根源的なのであれば人工知能もこれを実装せざるを得ないが、実際はどうなのだろう。 #
by antonin
| 2017-05-02 03:26
|
Trackback(1)
|
Comments(0)
|
ファン申請 |
||