60.パーテションの使い方 (C:\, D:\, E:\)
目 次
大容量HDDになり、以前以上にパーテションを切る必然性が出てきた時、初心者はこの切り方に迷うものである。それ以前にパーテションに分ける事の意味がわからない。1年も使っていると何度か酷いめにあって自然に分かるようになってはくるが。
BBSなどでいろいろなアドバイスがあるが、なぜそのような切り方をするのかの説明をきちんとしているものは意外にすくなく、自分の環境で、あるいは自分の趣味、性格に依存した切り方を薦めている物が多い。中には、1パーテションで良いなどという豪傑もいるが、これはいかにも乱暴であるというかオプティミステックである。飛行機は絶対に落ちないと信じている人、落ちた時は死ぬだけだという達観がある人はそれでも良いが、あまり一般的ではない。ここでは少し、パーテションの意義をまとめてみたい。
まず、なぜ、パーテションに分けるのだろうか? 整理ということもあるが、最大の理由は。PCは何時壊れても不思議ではない機械である、ということである。
OSが壊れた場合、
HDDをフォーマットしなければならず、同じパーテションにある大切なデータが消え去ってしまうのである。パーテションを分けておけばかなりの程度、そのような事態を回避できる。マンモスタンカーや巨大な戦艦がその内部をパーテションに区切っているのも同じ理由である;つまり、部分の被害を全体にまで及ぼさない対策なのである。PCの場合、壊れ方は色々あるがパーテション問題に関連しては以下の2種である。
軽い方から、
1.OS(Windowsなど)が壊れる
2.HDDが壊れる
このような事がおきると、たとえば、愛児の成長の記録の写真、Mpeg映像、年賀状の住所録、メールなどがなくなる事態だっておきる。また、OSやアプリを入れ直さなければならない。それには2、3日かかる事も珍しくない。このような事態に遭遇した時に如何に損害を少なくし、復旧時間を短くするか、それに対処する方法がパーテション分割なのである。
Unixのように極めて堅牢なOSと思われているOSでさえ、ファイルの用途別にかなり細かくパーテションを切る。最近の個人用Linuxのインストーラはシステムを1パーテションでインストールするが、ばりばりのプロのUnix管理者/ユーザが見たら、そのあまりの危うさに悶絶するだろう。その位、OSとは儚いものなのである。まして、Windowsである。。。Windowsは死ぬことが前提になっているOSと言って良い。死んだら、再インストールすれば良い、それだけの事である、という立場のように見えるが、これは、皮肉な事に、プロの計算機管理者の立場でもある。アナクシマンドロスやゲーテやヘーゲルや平家物語に言われるまでもなく、生ずるものは滅亡に値することを管理者は身をもって知っているからである。もっとも、一日に一回は死ぬ物をOSとは認めまいが。
ともかくOSに限らず、プログラムは死ぬものである。死んだ場合に備えて、万全の準備をするのがプロである。OSが壊れた場合、もし一つのパーテションしかなく、そこに大切な写真、映像、メール、住所録などが一緒に、たとえばC:\My Documentsなどに入っていたら、もう救いようがない。一切合切、フォーマットして消してしまい、OSの再インストールをしなければならない。(もっとも、多少のパワーユーザなら、フロッピからDOSで起動してデータだけは助けることもできようが)
さて、対策である。
PCのHDDに載っているソフトにはおおよそ、3種のタイプがある。
1.OSとそれに密接に関わっているシステムソフト;Windows、IE、Officeなど
2.アプリケーションプログラム; デジカメ編集ソフト、MP3プレイヤ、家計簿、メーラ、など
3.データ; デジカメ写真、音楽ファイル、家計簿データ、日記、など
私は、これを以下のように3つのパーテションに分けて入れている。
パーテションの分け方と、各パーテションの内容
C: 上記1.OSなど
C:はそれほど大きなパーテションはいらない。具体的にはWindows95なら、2GBで良い。OSそのものは100MBしかない。注意することは、2.のアプリケーションをインストールすると、中には、Windows\systemにDLLと呼ばれる共用プログラムをいれるものがある事である。このため、知らないうちにC:¥の空き容量が減っていくことがある。また、C:¥にしかインストールできないソフト、あるいは、部分をC:¥に勝手にいれるソフトがある。Office系のソフトはこれにあたる。しかし、それほど多いわけではないので、そういう物は素直C:¥にいれておけば良い。また、Windows¥tempを作業用に使うソフトもあるし、Win386.swpというOSが使う特殊ファイルも、普通ここに入るので、C:¥は多少、できれば数百MB空けておく必要がある。したがって、D:¥に入れられるアプリは必ず、D:¥に入れておく。C:¥は、アプリに何をインストールしているかにもよるが、家庭用なら、最終的に100MBも空いていれば、まず問題ない。私は、FAT16で999MBしかとっていない。
Windows98ではOSだけで300MBもあるが、それでも上記と同じで良いだろう。心配なら、3GBもとっておけばお釣がくる。Windows2000はOSが1GB近くもあるし、Office2000なども比例して大きくなっているので、最低でも4GBはとっておかないと、気持ちが落着かない。
D: 上記2.アプリケーション
ここには、D:¥program というフォルダを作って、すべてのアプリはここにいれる。「D:¥Program Files」というような無意味にスペースが入ったフォルダ名は作らない方が良い。D:¥にはこのほかに。「家庭」、「文書」、「メール」、「音楽」、「画像」などのファイルを作り、このショーットカットを、デスクトップにおいておく。ショートカットはアイコンを自由に変えられるから、C:¥Windows¥system¥shell32.dll,同Pifmgr.dll,あるいは、C:¥Windows¥moricons.dllなどにあるアイコン、あるいは、アプリが自分でもっているアイコンを使えば、一目で用途が分かる。更に、このフォルダの中には、アプリ(データではない)のショートカットを入れておく。たとえば、「家庭」フォルダの中には家計簿ソフトのショートカットを入れておくのである。こうしてグループ化しておけば、C:¥をフォーマットしてもアプリのショーットカットを一つずつデスクトップに再度作る手間が省ける。
D:¥にアプリを入れておけば、OSの調子が悪くなったり、起動しなくなった時、C:¥だけをフォーマットして、OSだけを入れ替えることで、非常に楽に復旧する。上で作った、「家庭」など、アプリのショートカットの入ったフォルダのショートカットをデスクトップに再度作れば、差し当たり復旧完了である。
アプリの中にはレジストリを使って、重要な情報をそこに入れているものがある。また、インストール時に、c:\windows\systemへ自分のDLLを入れているものもある。それらは、D:¥のプログラム本体は無事であっても起動しないか、してもまともに動かないものがある。これらは残念ながら、インストールのし直しである。D:¥programからそのアプリのフォルダを削除する。通常のようにコントロールパネルから「アプリケーションの追加と削除」で削除する必要はないというか、ここには現れない。OSが死んで、C:¥をフォーマットし、再インストールしたのだから、インストールの記録も消えてしまっているからである。フォルダを削除したら、普通に再インストールすれば良い。オンラインソフトなどは、レジストリなど使わない嬉しい物が多いので、OSを再インストールしても何事もなかったように動く。この為、いっそう復旧が楽で、早く終わる。
D:の容量は、どんなアプリをどれほど使うかに依存している。プログラムなんて容量は高がしれているので、私は60GBのHDDでは10GBにしている。20GBのHDDなら、2〜5GB程度でいいのではないだろうか。1.6GBのHDD全盛時代でも、プリインストールソフトは山ほど入っていたのだから。
E: 上記3.データ
残りはデータである。最近のマルティメディアデータはすごく大きい、デジカメで1、2日旅行してくると、128MBである。MP3のJ−POPで1曲4MB、Mpeg2は1時間で4GB、という具合だから、20や30GBでは数年で一杯になってしまう。このパーテションは大きい方が良い。私は、実は、もう一つ、F:¥を作って、データを必ず、コピーして二重化している。プログラムは、C:かD:にしかないから、あまり、E:が壊れる恐れはないが、たまたま、ヘッドがE:の磁気層をすって剥がしてしまった時や、なんの拍子か、うっかりE:にある大事な写真を2、3枚消してしまった時の為の安心用である。ただ、HDDそのものが壊れた場合、この2重化対策は無力である。
OSのクラッシュには、以上でかなり安心できるが、HDDそのものが壊れる事も珍しいことではない。HDDは消耗品であるので、E:¥は常時CD−Rや、DVD−R/RAMなどにバックアップしなければならない。CD−Rは一度の書き込みで11MBほど無駄に(以前のデータとの継ぎ目の隙間に)消耗するので、2、3MB毎に書き込んでいては無駄の方が大きい。といって、100MB溜まってからCD−Rに書き込もうと思っていると、マーフィの法則で、80MB位たまった所で、HDDがクラッシュする。そこで、CD−RはCD−RWをかねているから、CD−RWメディアを一枚買ってきて、ここに大切なデータ書き込んでHDDと二重化しておけば、かなり安心である。CD−RWが一杯になったら、それに相当するHDDのフォルダの中身をCD−Rに書き込めば、無駄が全然なくてすむ。CD−Rに焼き込むまでは、HDDに「CDRW」というフォルダを作っておき、これを本物のCD−RWと二重化しておくのである。CD−Rに焼いたデータが読める事を確認したら、CDRWの中身はHDDの本来の分類フォルダに移し、CD−RWを初期化すれば良い。
蛇足であるが、Win9x系を使っている場合、上のパーテションとは別に、最後に、FAT16で2GBのパーテションを作り、Win9xが健在なうちに、ここにC:¥全体をxcopyでバックアップしておくと、Win9xがクラッシュした場合でも、vfxcopyでコピーをC:¥に戻せば極めて短時間に復旧できる。13項目及び25項目を参考。Windowsを再インストールすると、インターネットなどのネットワーク設定、モデムの設定、、ダイアルアップの設定など再度やり直しになり、面倒なことこの上ない。この方法なら、完全に動いていた状態をコピーするだけなのであっという間に復旧できる。この方法は、Win9x系に限らず、xcopyしたバックアップを元に戻す手段さえあれば、WinNT/2000系でも可能であるが、VfxcopyにはNTFSを処理する機能がないので、残念ながら使えない。
61.ZIPドライブを起動フロッピから使う方法
目 次
パラレルポートZIP(100MB)を起動FDから使えれば、OSクラッシュ時に起動FDからかなりのデータを救うことができるし、CDの付いていないPCにだって、Windowsをインストールできる(今時そんなことをするかどうかはさておき)。
そこで、Fujifilmの100MBのZIPのインストールFDからDOSのドライバーを抜き出し、Windows95の起動FDに入れて動かした。どのファイルがDOSで使うのかわからなかったので、試行錯誤を重ねて作ったものである。
方法は、
1.Windows9xの起動FDを作り、不要なファイルを消す。
以下のファイルは必要なので残す。
システム関係;
IO.SYS
MSDOS.SYS
COMMAND.COM
SYS.COM
日本語表示関係(英語表示でよければ不要);
BILING.SYS
JFONT.SYS
JDISP.SYS
JKEYB.SYS
JKEYBRD.SYS
ANK16.FNT
ANK19.FNT
KANJI16.FNT
その他、したいことに応じて残す;
FORMAT.COM
FDISK.EXE
ATTRIB.EXE
EDIT.EXE
言わずもがな;
CONFIG.SYS
AUTOEXEC.BAT
2.ZIP付属のインストールFDから以下のファイルを、上記1.で作ったFDにコピーする。
ASPIPPM1.SYS ASPIIDE.SYS ASPIPC8.SYS
BYTE.ILM ECR.ILM GUEST.EXE
GUEST.INI MODULE.INI NIBBLE.ILM
PC873EPP.ILM PC8EPP2.ILM SCSIUTIL.EXE
SL360EP2.ILM SL360.ILM SMCEPP2.ILM
WD812EPP.ILM ZIP
3.Autoexec.batとconfig.sysの内容を以下のように書く;
autoexec.bat;
guest.exe
config.sys;(これは、起動FDのままであり、ZIPとして書き加えることはない)
DEVICE=BILING.SYS
DEVICE=JFONT.SYS /MSG=OFF
DEVICE=JDISP.SYS /HS=LC
DEVICE=JKEYB.SYS
以上でおわりである。ZIPをパラレルポートに取り付け、このFDから起動すれば、しかるべきドライブレターにZIPが現れる。普通のHDDと同じように使える。
どのドライブレタに現れるかはPC依存であるので、HDDの後のドライブレターをDOSから、D:、E:、F:。。。のようにして順に見ていく。
62.IMES-CD ICD-P300ドライブを起動フロッピから使う方法
目 次
パラレルポート付けCD−ROMドライバであるIMESのICD−P300を起動FDから用いる。
1.Win9xの起動フロッピーを作る。
CD−ROMのドライバーが入らない場合;61項目を参照して、不要なファイルを消す。
2.IMES ICD−P300のドライバFDのDOSフォルダから以下のファイルを
上記の起動フロッピーにコピー
CORELCDX.COM CRLSCSI.INI ICDP300.SYS
3. Autoexec.batとConfig.sysは以下のように書く;
Autoexec.bat
@ECHO OFF
CORELCDX
Config.sys
DEVICE=BILING.SYS
DEVICE=JFONT.SYS /MSG=OFF
DEVICE=JDISP.SYS /HS=LC
DEVICE=JKEYB.SYS /106 (/106は 106キーボードを示す)
DEVICE=ICDP300.SYS /D:IMESCD01 /H
LASTDRIVE=Z
63.SCMPX(v.1.10)でMP3音楽を起動できない場合
目 次
「こんな 風に空白が空いていたり−ハイフンなどがある.mp3」ファイル名は扱えないみたいです。まじめにDOSの時のようなファイル名にしましょう。長さはLFNに対応しているので、長いファイル名でも大丈夫ですが、特殊文字の扱いに弱いようです。現象としては、.mp3ファイルをダブルクリックすると、SCMPXは起動するのですが、それで終わり、何も演奏しません。
mplayerでは、こんな事はおきませんが、SCMPXに比べて超重いので、音楽だけをジーット聞いていなければならず、こんな風にエディタなど使おうものなら、音飛び、また音飛びです。P54C 200MHzって、十二分に速いと思うのですが、1.5GHzにチューンしてあっては敵いません。
64.インターネットとは何か、あるいはインターネットとWWWはどう違うか
目 次
インターネットとはIPネットワークである。
インターネットとWWWは一般人レベルでは完全に混同されている。ところで、何人かの米国人にWWWをどう読むのかと聞いてみた事がある。まさか、ダブリュダブリュダブリュとは読まないだろう。トリプル・ダブリュとよむのか、そのままスリーダブリュスと読むのか気になったのである。彼ら曰く、ウエブと。World Wide部分は無視してWebしか読まないようである。ただし、URLを棒読みにする時は、ダブリュダブリュダブリュとやっている。米国TV番組を見ていて気が付いたことである。
さて、本題である。インターネットとは、IPを使う論理ネットワークである。IP:Internet protocol。詳しくは、
ネットワークは難しくない参照。
IPは何をするものか、世界中のネットワークとコンピュータを結び付けるしかけである。133.xxx.xxx.xxxというIPアドレスは電話番号に相当する。電話番号は、001で、KDDIに接続される。次に1を打てば、米国(のどこか入り口の交換機)につながる。次に、市外番号、市内番号と叩いて、一意的に相手の家の電話に回線が接続される。相手が出た時には、横浜の我が家から、最寄りのNTT交換機、更に上位交換機、KDDの交換機とつながり、今度は米国側でこの逆に下って、相手のクリキントン君の家までつながっていることになる。しかし、IPアドレスは、電話番号のように階層的になっていない。どこが国番号、どこが市外番号で、どこが市内番号で、どこが我が家の番号であるのか?全然そういう作りになっていない。世界中のコンピュータに一連番号を付けたみたいなものである。とはいえ、日本は、ほぼ、133とか、200で始まる。そんな程度である。
IPアドレスは、インターネット上の電話番号だから、インターネットは、上記電話網と類似の仕組みになる。但し、交換機ではなくルータを使う。交換機の代わりにルータ、電話番号の代わりにIPアドレス(電話番号に対比してIP番号と言っても何ら差し支えないのだが、慣習でアドレスと呼ぶ)を使って、世界のどのIPアドレスをもつコンピュータにもつながる機構がインターネットなのだ。
| 電話網 |
インターネット |
| 電話番号 |
IPアドレス |
| 電話機 |
コンピュータ |
| 交換機 |
ルータ |
IPはよく、TCP/IPとして、TCPと組みにして呼ばれるが、TCPはインターネットにとって本質ではない、それは、データが間違いなく相手に届くことを保証する機構にすぎない。郵便の書き留めと似たようなものだ。TCPのように保証する必要の無い時には、UDP/IPとしてUDPが用いられる。IPがインターネットの本質なのである。IPは第3層のプロトコルなのだが、1層、2層さえ、インターネットの本質ではない。1層は、LANでは、大抵、イーサネットであり、それ専用のUTPという電線とプロトコルが用いられるが、ダイアルアップの場合、1層は電話線であるし、2層はPPPである。3層のIP以外は、全て取り替えが可能である。インターネットとは、IPを使ってルーティング(電話の交換に相当)を行い、地球上の任意のコンピュータに接続する網(もう)の事である。
さて、では、www.asahi−net.or.jpのようなドメイン・ネーム(ブラウザではURLとも呼ぶ。観点が違う呼称であるが、ここでは同じ物である)は、これはなにであろうか?このドメインネームというしくみはIPアドレスと異なり、階層的である。右から、日本(JP)の機関(or)であるasahi−netにあるWWWという名前のサーバ(コンピュータ)を示している。WWWというのはコンピュータ(UNIXではHostと呼ばれる)の名前であるが、ネットワーク上には同じ名前が沢山あるだろうから、asahi−net.or.jpという住所のような階層的なドメイン・ネームを付けて区別するのである。従って、ドメイン・ネーム全体で世界中で唯一のコンピュータの名前である事が保証される。ドメインは管理されているので、勝手に付けることはできないから、唯一性が保証されるのである。
ドメインというのは少々分かり難いが、領域というような意味であるので、jpもドメインであれば、orもドメインである、asahi−netもドメインである。すぐ分かるように領域の大きさが違っている。但し、最後のWWWはホスト名であり、ドメイン名ではないが、全体はなぜかドメイン名という。まあ、ドメインを絞っていって、最後にたどり着く唯一の要素そのものもドメインと言っていいのだろう。直線も(半径無限大の)円なのだし。
ドメインは、電話でいえば、電話番号ではなく、行政単位の住所と言った方がピッタリである。日本 神奈川県 横浜市 鶴見区 。。。というものである。しかし、相手の住所・氏名(インターネットでは、ドメイン名・ホスト名)が分かっていても、それだけでは電話はかけられない。それで、104の「番号案内」に電話して、「電話番号」045−xxxーxxxxに変換してもらう。これは、電話番号を使って相手に電話することと同じプロセスを別途もう一回余分にしていることになる;すなわち、104に電話して、そこの交換嬢と話をしている。こうして手に入れた電話番号で、もう一度、電話し直して本当の目的の相手につながるわけである。
ドメイン・ネームで相手にアクセスすると、つまり、http://www.asahi-net.or.jp/のようにブラウザに入力すると、必ず、この104に電話するようなことがおきる。www.asahi−net.or.jpはインターネットの本質ではない。インターネットそのもの(あるいは、ルータはと言い換えても良い)はあくまでIPアドレスしか扱えない。ドメインネームは、人間が記憶し易いように作った付加的な仕組みにすぎない。従って、それはIPアドレスに変換してもらわなければ、そのドメインネームが示す相手にアクセスできない。
IEやネットスケープナビゲータのようなブラウザは、IPアドレスで宛先を入力しない限り、つまり、http://133.144.xxx.xxx と入力しない限り、必ず、インターネット上の104にあたるサーバ(DNSサーバという)へIPアドレスを教えてもらう為にアクセスしている。このドメインネーム→IPアドレス変換のことを名前解決という。ドメインの名前を解決してIPアドレスを入手するからである。この名前解決のしくみは104の様に大規模であるとともに、これ自身Webと同じようなインターネット上のアプリケーションである。インターネットの本質ではない。無くても構わないし、現に昔は無かった。104は電話の本質ではない。それと同じである。ただ無いと、いささか不便ではある。
ブラウザやメーラは名前解決への問い合せを自動的に行っているので、我々は普通意識しないが、ネットワークの設定をやったことのある人なら、「名前解決をする」とか、「DNSサーバのアドレス」などの文句を一度は見たことがあるのではないだろうか。今では、DHCPにより、ISP側で自動でDNSサーバアドレスを設定してくれるので、ユーザのやることは何もない。
名前解決の時、電話システムでは人間は104へ電話するが、ではインターネットではコンピュータはどこに聞くのだろう。当然、まず、104に当たるIPアドレスが必要になる。これが上記したDNSサーバのIPアドレスである。104の案内システム全体に相当するのがDNS:DomainNameSystemである。案内の女性に相当するのがDNSサーバだ。あるいはネームサーバ(これも変な名前だがUNIX系の人達のセンスは元々屈折しているのでこんな名前にも慣れないといけない)とも呼ばれる。DNSはそれだけでも全地球規模の巨大なシステムであり、当然ながらインターネット上に構築されている。DNSサーバは世界中に存在している。我々は、さしあたりISPが準備している近くのDNSサーバを利用している。そのIPアドレスは上記のように、我々は現在では知る必要がない(ISPからの案内書に一応、記して有ると思うが)。
このように、ドメイン・ネーム−>DNSによる名前解決−>IPアドレスによるアクセスというのが嫌なら、直接、IPアドレスをブラウザのURL欄に、http://133.xxx.xxx.xxx のように打ち込めば良い。そんなもの覚えられないというのなら、自分で電話帳のようにURLとIPアドレスの対応表をもてば良い。実は昔はDNSなど無かったので、皆そうしていた。そのなごりが、c:\windows\hostsである(ホスツと呼ばれる)。これが電話帳になっている。最初は、Windowsでは、hosts.samというサンプルファイルになっている。これをメモ帳で開いて見ると下記のようになっている。
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
Windows¥hosts.samより
Hostsを有効にする場合、hosts.samという名前を変更して、hostsと、拡張子無しにしておかなければならない。また、上記は例なので、#でコメントにしてある。自分で必要なIPアドレスを登録する場合、#をつけてはならない。
ここに書き込んでおけばインターネットの上をDNSで探し回って、相手のIPアドレスを調べる必要がないので気持ち速くなる。日本のISPのDNSサーバには例えば、フランスの片田舎の個人のURLまで登録されていないので、そのような自分の知らないドメインネームを問い合わされたら、上位のDNSサーバにたらい回しにする。人間の組織のたらい回しと違って、こちらは必ず責任をもっても答えを返してくれる。多分、フランスのこちらと同じ位ローカルなDNSサーバまで聞きに行く。そんなこんなで名前解決には時間がかかる、といっても秒オーダであるが。
ところで、じゃあ、WWWはインターネットではないのか?という疑問が起きる。WWWはインターネットという論理ネットワークを用いたアプリケーションである。交換機を用いた電話ネットワークでは、音声の普通の電話アプリもできるし、FAXのように画像を送るアプリもできる。ダイアルアップのようにコンピュータ間通信アプリもできる。昔、パソコンネットとか、BBSとかいうものもあった。これらはインターネットではなく、剥き出しの電話回線そのものを使っていた。ルータもIPアドレスもない。これらは電話ネットワーク上のアプリである。同様にインターネット上のアプリがWWWであり、eメールであり、FTPである。Gnutellaもそういうアプリの一つである。
では、WWWとeメールは、どこが違うのか、アプリ層のプロトコルが違うのである。
プロトコルとは以下のようなものである。
電話では、相手がでたら、いきなり用件を話す事はない。
「もし、もし、こちらxxですが、yyさんのお宅ですか」
「はい、そうです」
「夜分恐れ入りますが太郎さんはご在宅ですか」
「はい居ります、少々御待ち下さい」
こういうやり取り(外交儀礼)がプロトコルである。自分と相手宅の確認、話をしたい相手名の通知、その相手の存在の確認。相手の呼びだしなどを調停している。FAXでは、ピーヒャララという音がする。あれが機械同士で「もしもし」とやっているプロトコルの音である。FAXの方式、通信速度など通信の方法に関する相当数のパラメータを調停している。
アプリのプロトコルは違っても、最低限、第3層のIPだけは同じである。ここが世界中のコンピュータを結び付けるかなめの仕組みであるからである。それがほとんどルータの仕組みそのものであるのは、電話網がほとんど交換機の仕組みそのもので有る事に類似している。というより、先にあるのはプロトコルで、ルータはそれを実現したものである。
家のPCからISPまでは電話システム--交換機網--がインターネットの一部と化している。そこでは電話線と交換機という物理層の上でIPが飛んでいるのでインターネットに間違いない。インターネットからみたら--ということは、インターネット上の他のPCから見たら--交換機は透明であって見えていない。ISPのルータに家のPCが直接LANのようにしてぶら下がっている様に見える。
ついでながら、インターネットという物理的な電線が電話線と別にある訳ではない。電話網とはことなるインターネットの電線が世界の隅々まであっというまに張られたわけではない。そんなことをしたら、太平洋海底ケーブルもインターネットが自前で敷設しなければならない。大体、インターネットにはNTT,KDDI,ATTのような巨大管理組織は存在しない。せいぜい、DNSなどを管理する小さな組織があるだけである。インターネットは電話網の上に構築されている論理網なのである。物理的な線はたいてい電話会社からの借り物である。このレンタル料金のお金は本当の所どこから出ているのだろう?我々が払っている月なにがしかのISP料金ではとてもまかないきれない。世界中の企業が相当分を賄っているのではないか?
更についでながら、企業内のLANは昔は、あるいは今でも所によりIPを用いていなかった。Netwareとか、LNAmanとか聞いたことがあるかもしれない。それらは独自プロトコルである。そんなのではインターネットとシームレスに繋がらないということで、企業内もおおむねIPを用いるネットワークになった。これをIntra(内部という接頭辞)netという。そうすると、企業内WWWが出来るようになる。また、Extranetとか言う物も現れた。米国人もいろいろなどうでも良い、あまり本質的でもない言葉を考え出すものだ。
65.HDDの内容を完全に消す方法
目 次
HDDの中身はファイル削除でも、fdiskでも、formatでも完全には消えない。HDDにいろいろなファイルを書いたり、読んだりする仕組みをファイルシステムと呼ぶが、ファイルシステムは本のような構造になっている。即ち、目次と内容である。目次というより、索引に近いかもしれない。「mozart.mp3はHDDの何番地から、何番地に入っている」、「夏目漱石.txtは何番地から、何番地に入っている」というような目次/索引のようなものと、本文にあたる実際のmp3ファイルや、テキストファイルからなっている。ファイルシステムは人間が本を読む仕方と違って、必ず目次でファイルのありかを探してから、その番地(本の場合、のページ)へ読みに行く。従って、目次からファイル名を消してしまえば、ファイルシステムにとっては、そのファイルは無いことになる。実際には、ファイルは消えていない。あくまでファイルシステムにとって無いことになっているだけである。
したがって、ファイルシステムを使わずに、いきなりHDDのファイル部分を読みに行くソフトだって作ることは可能、というか、至極簡単である。実際のファイル削除は、目次さえ消していない。目次の先頭の1byteに削除マークを書いているだけである。従って、ファイル名さえ、先頭1文字以外は復元できてしまう。PCを廃棄する場合、HDDを捨てる時、ファイルを削除しても、この理由の為、できる人には簡単に読めてしまうのである。formatしても同じである。ローレベルフォーマットなら別だが。
それで、HDD全面に、何か読まれても良い物を書けば、この場合、前に書いたものは本当に消えてしまう。が、これはかなり面倒なことである。これを簡単にやる方法がある。俗にゼロフィルといわれているソフトである。HDD全面に「0」を書くソフトである。0-fill;「0で満たす」だろう。フロッピから起動して、実行するだけである。
http://www.storage.ibm.com/storage/techsup/hddtech/welcome.htm
にwipe.exeというソフトがある。これが、0−fillである。起動FDを作って、そこにこれをコピーして実行するだけである。市販ソフトもあるが、こんな2KB程度のソフトが何千円もする。
wipe.exeは自己解凍形式になっているので、適当なフォルダー、たとえば、c:¥tempなどに入れ、ダブルクリックすると、wipe.comとreadme.txtができる。使い方は、起動FDにwipe.comをコピーして、
wipe n (n=0,1,2,)
0は、プライマリ/マスタのようだ。何台もHDDがついている時には、0、1、2、。。。とやれば良い。上記のように入力すると、一度だけ、英語で、「データは、二度と復活できないが良いか?」と聞いてくるので、yでも押しておけば良い。古い、ノートPCではFDDから起動しないものがあるが、そういう時には、HDD上ののwipe.comをDOSから実行しても良い。2kBだからメモリーに常駐するので、そのままHDDを消してくれる。
wipeは、8GBまでのHDDが対象と書いてあるが、8GBはBIOSの制限だから、大容量HDD対応BIOSをつんでいたり、DiskManager(HDDから起動し、DMが起動したところでスペースを打って停止させ、FDを挿入し、再度スペースを打って再開すれば、BIOSが8GB超対応になる)の入っているHDDなら8GB超え出来るのではないかと思うが、8G超HDDを捨てるような事態にはいたっていないので、試していない。
66.AI:人工知能とは何か?
目 次
AIとはArtificial Intelligence、日本語では人工知能という。電子計算機(以後、計算機)の事を人工頭脳ともいうことがあるが、人工頭脳と言った時に期待される機能を実現するアルゴリズムを研究する情報工学/科学の領域がAIである。具体的には、問題解決、定理証明、自然言語理解、パターン認識、ゲームプレイング、プラニング、などが挙げられる。これらをもっと大雑把に分類すると、問題解決と、認識になる。
定理証明
分かり易い方から説明する。定理証明などは、読んで字の如しである。証明法でほぼ完璧であるのは、演繹である。この証明法は簡単で、公理系と、推論規則を与えておけば正しい定理は必ず証明できる。ほぼと言ったのには理由があり、演繹法の推論規則はModusPonens;三段論法を使うが、この推論規則が正しい保証はどこにもないからである。三段論法とは、
1.Aが成り立つ
2.Aが成り立てば、Bが成り立つ。
この時、
3.Bが成り立つ
とする推論である。この何処に疑義があるのか、完璧な推論に見えるが、しかし、これを保証するのは神様しかいない。まあ、今の所、日常的には成り立っているから、正しいとしておこう。
さて、話しがそれたが、定理証明は必ずしも、このような単純なものではない。上記の証明法の書き方は分かり易いように単純化してしまったが、述語論理、それも最も簡単な第一階述語論理のつもりであった。このような、極めて単純な論理は、AIの中に本当は入らない。なぜなら、算術と同じで完全に機械的に実行できるからである。算術−−二乗根の解法など−−を考え出すのはAIだが、考え出された方法を実行するだけではAIではないのである。80年代頃、エキスパートシステムという、簡単な述語論理システムで、色々な問題−−例えば、自動車の構造を事細かに論理言語で記述しておき、これを公理系とする。そして、故障の症状から原因を推論し発見しようとする物など。Mycin(マイシン;ストレプトマイシン、オーレオマイシン、ロイコマイシンというようなあれである)というシステムが有名で、名から分かるように、患者の症状に応じて適正な抗生物質の種類、量、投与法などを推論するものである−−を解決しようという試みがあって、その単純性の為、誰でも参加できたため、一世を風靡したが、単純すぎてうまく機能せず失敗に終わった。まあ、こんなものはAIとは言えない、と筆者は思っている。
述語論理のような単純な方法では、ゲーデルの不完全性定理は導きだせない。当たり前の事で、ゲーデルのこの定理は、極く簡単に言えば、論理体系の中の命題でありながら、その体系の中では証明も否定もできないものが存在するというメタ定理なのである。こういう稔多い定理を証明することがAIの本当の目標であろうが、どうしていいのか全然分からないのが現状である。もっと身近な例では、幾何学の定理証明をする時に、あの補助線をどのようにして思い付けるのかということである。
ゲームプレイング
ゲームプレイングは、文字通りゲームをする計算機(アルゴリズム)である。PS2やNintendoの指先筋肉ゲームのことではない。囲碁やチェスのような知的ゲームである。最近の囲碁のプログラムはそこそこ強いし、チェスにいたっては、IBMのDeepBlueは人間の世界チャンピオンに勝ってしまった。とはいえ、DeepBlueの場合、計算機の勝利ではあるが、必ずしもAIの勝利ではない。MPP:Massively Parallel Processor=超並列機の勝利なのである。AIの勝利という為には、486とは言わないが、Athlon1GHzに256MB程度のSDRAMのPCでも勝てるプログラムを作らなくてはいけない。それが出来た時、人間はゲームをAIで制したと言える。
ゲームの規則は簡単なものである。囲碁の規則など超簡単でプログラムするのに何の苦労もない。人間だって、5分か10分で理解でき、打てるようになる。しかし、ゲームが出来ると言う事と、勝てると言う事とは違う。問題は如何にしたら勝てるか、ということなのである。勝つ法則は何か、ということなのである。これを見つけ出してプログラムするのでなければAIとは言えない。ところで、実は、これは至って簡単である。ほんの数ステップで書けてしまう。一手先を読むプログラムを書いて、それを最後までループさせるだけである。その中に、自分の勝てる道筋があるから、後は、その通りに打って行けばいいのである。普通の人間は、数手先しか読めない。プロの棋士はもっと読むだろうが、それでも高がしれている。実は、囲碁や、チェス、将棋などは、ポーカや麻雀などの運が入ってくるゲームと違い、必勝ゲームといって、必ず勝てる法則が存在する(引き分けもあろうが)。相手が、最初の1手を打ったところで、参りましたと言える、否、実は、じゃんけんかなにかで、先手か後手かが決まった時点で参りましたといえるゲームなのである。
なぜかと言うと、最後まで読んでしまえば良いからである。因みに、DeepBlueは最後までとは行かないが、相当に深く読めるのである。それでも、最後というには程遠い、入り口にはいったというのもおこがましい程度しか読んでいない。なぜか?問題は、読むべき手の数が、今の所、人間の脳の速度と記憶量、あるいは、計算機のそれらにさえ手に余る程膨大な数になると言う事にある。そろりしんざえもんが秀吉に褒美に何でも与えるといわれ、ならば、この大広間の畳に最初は1粒、次は2粒、次は4粒というように倍々に米粒をおいて、それを戴きたいと言った逸話は有名である。秀吉は、なんだそんなことか、欲の無い奴じゃと許したという。
さて、これを計算してみよう、201畳あったとしよう(半端だが計算を簡単にする為)。等比級数の簡単な式でたちまち計算できるが、実感の為に少し、追ってみる。PCを使う人ならすぐ分かるように、210=1024である。1畳目は、1粒=20だから、11畳目には1024粒乗っている。n+1畳目の畳には、2nの米粒が乗っている。21畳目で1M粒、31で1G粒、41畳目で1T粒つまり、1兆粒である。201畳目の畳に乗せるには、2200、つまり、約10の60乗粒の米粒がいる。
1,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000粒である。
因みに、1,000,000,000,000が1兆である。
尚、総和は、この2倍−1であり、オーダは変わらない。
これは、人類が米を作り出してからの全生産量より遥かに多い。米では実感が湧かなければ、友達と賭けでもして、負けたら、1畳に1円ずつ置く事としたら良い。ただ、精々8畳間程度ですべきで、それなら250円程度ですむ。間違っても20畳の部屋で賭けてはならない。200万円もふんだくられることになる。教室よりも小さな30畳間でさえ20億円も取られて破産するか自殺するはめになる。200畳など問題外であろう。冪(べき;簡単に言えば、xx乗)とはこれほどに恐いものである。
囲碁の場合、その手の総数のオーダを数えるのは簡単である。あくまでオーダである。石を上げたり、こうになって繰り返したりするから正確な手数は、誰か囲碁の専門家にお任せしよう。囲碁は、19x19の盤であるから、361の格子点がある。最初の一手は361通りある。次は、360通り、その次は、359通り、要するに、361!(階乗)通りある。これをまじめに計算するのは嫌なので、たまたま、今、読んでいる本で出てきた階乗の例を上げると、47!で、2.6x1059だそうである。
とはいえ、やっぱり気になるので、スターリングの公式; n!≒e-nnn(2πn)1/2を使って暗算すると、10800。何しろ暗算なので、100桁位誤差があるだろう(その位、大勢に影響無いが)。1年は、3x107秒なので、年=秒としても7桁の誤差でしかなく、上の暗算ではこの誤差は無視できる(なんともいい加減だが。。。)ので、1手1秒で読んでも、10800年かかる。1手に1秒もかかるのは遅い、P4は1.5GHzだから、1秒で1千万〜1億手位(108)読めるだろうし、1THzか1FHzになれば、何とかなると思いたいが、そのような桁の話ではないのが直ぐ分かるだろう。GHzがFHzになっても、6桁しか速くならない,、結局、1FHzで読んでも、1秒1手に比べて、1秒で高々100兆手で、桁では8+6、たったの14桁しか速くならないのである。800桁の前では、何の意味もない。雀の涙どころのはなしではない。Big Bangによる宇宙開闢以来、21世紀までほんの200億年=2x1010年しかたっていなし、太陽系の寿命は、あと、たったの50億=5x109年しかないので、10800年という数の凄まじさが分かろうという物である。
順列組合わせや冪は、このように爆発的性質を持つ為、囲碁や将棋の手の数は宇宙的(宇宙もびっくりするよう)な数に上り、計算するには何兆年などというどころでなく、何不可思議か無量大数の何乗年もかかり、メモリーもその程度のバイト数が必要になるだろう。このような現象をAIでは組合わせ的爆発(combinatorial explosion)と呼ぶ。これが、必勝法のあるゲームをゲームたらしめている所以である。DeepBlueは、MPUをバケツ一杯とは言わないまでもまあかなりの数並べて、恐らくは、各MPUが君はボーン、君はビショップというように役割を決め、それぞれが自分の駒を並列に(同時に)先読みし、それを合成して手を決めているのだろう(もっと洗練されているとは思うが)。
上記のように1手先を読む数ステップのプログラムは簡単にかけるが、事実上実行ができない。実行しても止まらないし(メモリーが無限にあれば、太陽系が滅亡した後の未来で停止するだろう)、その内にメモリー(たったの10TB程度の仮想メモリーも含めて)が枯渇し、OSが勝手に終了させてしまうだろう。このような枚挙的、あるいは総当り的(exhaustive)解法は、そもそもAIとは呼ばない。AIとは、適切な資源(時間、メモリー)で勝つ為の戦略を作ることである。
この戦略は、必勝ゲームに限らない。ポーカ、麻雀のような運が入るゲームでも同じ事である。
その戦略の極く簡単な例をお目にかけよう。ポーカを例に取る。家族や友人とやる程度の場合、考えられる戦略は、配られたカードを見て、
1.そこからどのような手が作れるか、
2.その手が出来る確率はどの程度か
3.その手は相手に勝てそうか
であろう。この場合、次のような式を作る。
勝てそうな程度=ax手の点数+bxその手の作れる確率
手の点数とは、ワンペア=0.001点、ツーペア=0.002点、。。。ストレート=0.01点、。。。ロイアルストレートフラッシュ=1
確率に合わせて、手の点数も0〜1と正規化しておく。
などのような物である。この点数の付け方は、プログラムを作る人の経験とかセンスに依存する。更に、同じワンペアでも、エースと2では点数を変えなければならないだろう。
その手の作れる確率とは、手元に配られたカードから目的の手ができる確率である。これはセンスも何もない、数学的に計算できる。
さらに、aとbは、手と、確率とどちらに重点を置くかを示す。用心深い人なら、bをaより十分大きくするだろう。つまり、スリーカーズよりもすぐできそうなワンペアを作ろうとする。賭博人なら、aをbより相当大きくするだろう。一発勝負に賭けるわけである。このような式を評価関数と呼ぶ。
評価関数=f(手の点数、その手の出現確率)
一般には、fは上のように重み付き変数の和などという超簡単なものである必要はないし、変数ももっと複雑なものを考えても良い。
こんな関数を作り、配られたカードについて、全手の評価点を算出し、その中で一番点数の高い手を作るようにカードを交換するのである。この場合、全手を計算するのはそれなりに時間がかかるから、同じ手で、同じ確率になる手なら、上位のカードだけしか計算しないような経験的知識を入れるだろう。たとえば、ハートの6、クラブの9、ダイアのキング、スペードの1、スペードの2というとんでもないカードが配られてきて、ワンペアを計算する場合、スペードの1だけ計算すれば良いだろう。わざわざ、スペードの2の計算をする必要はあるまい。
このように評価関数は、理論的、絶対的なものではない。プログラムを作る人のセンスと経験に依存する。市販のソフトに強い、弱いがあるのはこの評価関数の作りが、それぞれに違うからである。上に書いたような単純なものではとても勝てそうな気がしない。強い囲碁のソフトを作るには、囲碁に強く、かつAIというものを理解していて、プログラムも書ける人でなくてはならないが、そんな人はそうはいそうも無いので、本因坊に勝てるソフトができないのである。
問題解決
さて、問題解決とは、どんな問題か?という疑問が湧く。ここでは一般的な問題である。何かをしようとした場合、その為の手順=プロジージャというものがある。貴方が、何かするプログラムを作ろうと考えたら、まさにその何かをすること、それが問題である。そのプログラムを作るために、アルゴリズム=手順(上で述べたプロシージャと言っても良いが、正確にはアルゴリズム。アルゴリズムと言った場合、必ず停止することが条件である。暴走するようなものはプロシージャではあってもアルゴリズムではない)を考えうる。そのアルゴリズムが解決である。従って、定理証明も、ゲームプレイングも問題解決の一種であるが、明確なサブカテゴリとして定義できるので、別にしてあるだけのことである。
知的ロボット、人間のようなロボット、を作ろうとしたらこの問題解決プログラムを作り、内蔵しなくてはならない。こんな例を考えよう。
チンパンジを部屋に入れる。部屋の中央には床上2mのところにバナナがつりさげられている。チンパンジの身長は手を真上に伸ばして1m。部屋の片隅には高さ50cmの椅子がおいてある。彼の跳躍力は60cnである。さて、チンパンジがバナナを手に入れるには何をしなくてはいけないか?チンパンジがバナナを取る方法、これが問題である。彼はどのようにこの問題を解決するだろう?
1.バナナの下に行く
2.手を延ばす
3.飛び上がる
4.部屋を見回す
5.椅子を見つける
6.椅子のところに行く
7.椅子を持ち上げる
8.椅子をバナナの下に運ぶ
9.椅子の上に乗る
10.手を延ばす
11.飛び上がる
ざっとこんなところが、問題解決の手順である。
人間は、一瞬でこれだけの事を頭に浮かべ、解決するが、チンパンジは4のところで、多少手間とるかもしれない。チンパンジのようなapeではなく、もっと低級なmonkeyだったら、4は思い付かないかもしれない。こうして考えると、我々人間が生活しているということは、日々、問題解決を行っているという事である。
こんな事のどこが難しいのだと思うかも知れないが、バナナを取るというたったこれだけの問題の為に、上に書いた11のステップが必要であることに貴方は気が付いていたであろうか。実際にプログラムする時には、これを更に細かいステップにする必要がある。でないと、貴方のC3POは、畳の部屋に靴のまま上がって来てしまうだろう。このフロッピをコピーしておいてと頼んだら、A5の紙にゼロックスして持ってくるだろう。キッチンボードの中にあるお皿を出してと命じたら、扉を開けずに、ガラスをものともせず手を皿に直線的に延ばし、皿も、ガラスも割り、皿が引っかかった格子もバリバリと壊して取り出すかもしれないのである。何かを、正しく行うということは大変難しい事なのである。そして、それを教える=プログラムするということはまた、大変な事なのである。まして人間世界の全てをあらかじめ、微に入り細に入りプログラミングしておくことなど、不可能である。
ならば、ということで、自動学習させようという試みが考えられた。しかし、人間の子供は、大人でも良いが、どのようにして学習しているのだろうか?これが又分からない。分からないだけでなく、考え出すこともできず、今の所、極めて簡単な事しか実現できていない。しかも悪い事に、簡単な事を実現している方法は、その簡単な事を辛抱強く延長していけばその内難しい事も可能になるという性質のものではないのである。それだけしかできないのである。こういう一般論に拡張できない方法の事をアドホック(な方法)という。Ad Hoc、ラテン語であり、英語で言えばTo Itである。その為(だけ)に(使える方法)という意味である。こういう方法は、その問題だけでいいから何とか解きたいという時には役にたつが、法則、例えば、人間が物を学習する一般法則、を探り出すという役には立たない。
画像理解
画像理解は難しい。一般的な画像理解プログラムは何時できるか?皆、あきらめている気がする。一般的な画像理解とはこういうことである;貴方のアイボやらザクやらにそのプログラムを入れて、隣の部屋にあるワインを取って来なさいと命じたら、彼は自分でドアを抜けて、他の部屋へ行き、ワインの瓶見つけてそれを取ってくることができる、ということである。
ここには、問題解決やら、言語理解やら、音声認識やらが入ってしまっているが、それらは忘れて、この局面で画像理解だけに注目しよう。アイボの電源を入れた時、何をするようにプログラムを組むか?まず、アイボの眼は、今は付いていないだろうが、デジカメになっていて、主記憶であるDRAMに秒10フレーム位で、XGA=1024x768画素程度の画像を常に送るようにする。その1画像を取り出す。秒10フレームという動画的扱いは当面問題ではなく、この1画面だけが問題である。多分アイボの眼には、従ってその画像には部屋の中が映っているだろう。そこには、ドアや、壁や、TVや、テーブルがあるかも知れない。問題は、それがアイボの眼に、ということは画像認識プログラムにそのように見えているかということである。プログラムを書いてなければ、そもそも、どのようにも見えていない。では見えるということはどういうことなのであろうか?
人間でも見れども、見えずというが、簡単な例では色弱のテストをするあの絵である。色の付いた丸の集団にしか見えないが、良く見ると、数字や平かなが見えてくる。3Dの画集が一時はやったが、あれも、立体に浮き上がってみえるようになるには意識の統一が必要である。
つまり何かが見えるということはあるがままに見ているのではなく、そのように自分が見ているのである。このE.BoringとW.Hillの手になる絵を魔女のような老婆と見ている人は、そのように見ている訳であるし、若い女性の後ろ姿と見ている人も、また、そのように見ているのである。実の所、唯の点の集まりでしかない。
世界が立体に見えるのは目が2個あり、そのパララックス(視差)のために立体感が出てくると言われるのだが、別に、片目をつぶったら平面に見えるということはない。ちゃんと立体に見えている。しかし、網膜に映っているのは平面画像でしかない。両目ならパララックスがあるから、脳がその差を使って、立体画像を合成するが、片目の時はそれはできない。それにもかかわらず、立体にみえている。
この事から分かるのは、我々が見ているものは網膜に映っている画像そのものでなく、経験から得た知識によって、それを脳が解釈したものであるということである。もっとも、それ以外の見方などありようもない。説明の便宜上、「あるがまま見る」とか、「画像そのもの」という表現をつかったが、そのような見方はそもそもしようがない。哲学では、あるから見えるのか、見えるからあるのか、が昔からの論争になっているが、単純に考えればあるから見えるのであるが、それは点の集まりが見えているに過ぎない。この絵を老婆としか見なかった人には、若い女性は在っても見えなかったわけである。そして、それが見えるようになって、初めて女性は存在を始めたのである。唯の点の集まりを、これはドア、これはテーブル、これはコップというように統合しているのは脳の働きなのである。
従って、そのようなプログラムを作らなければならない。そうでなくてはアイボはドアを見つけることもワインを見つけることもできないのである。しかし、どのようにして点の集まりに過ぎないものを形あるものに纏めることができるのだろうか。画像の中の対象が完全に色別けされているならできるかもしれないが、まあ、そのように単純には自然はできていない。デジカメ写真を合成する時、自分の姿だけを背景から抜き出すのは容易なことではない。特撮では、クロマキーといって、背景を青い単色にしている。青いカーテンを張ってその前で人間だけが演技する。背景が単色であるから−−陰影があるから純粋単色にはならないが、その位の誤差は補正できる−−人間だけを取り出すのは簡単である。
しかし、この写真からバスを自動的に取り出すプログラムはどのように書けばよいのだろうか。一般にということを忘れてはいけない。どんな色、どんな型、どんなアングルのバスでも、これがバスだと取り出すプログラムである。バスは左下の方に映っていて、下半分は白い色をしているなどというようなプログラムは書いてはいけない。それはAdHocなプログラムであり、この写真のバスは取り出すことが出来ても、他の写真ではできない。
そもそもそれ以前の問題として、バスを取り出す前には、そのプログラムにはバスは見えていないのである。そのプログラムにとって、見えるということは、その対象を背景から取り出すことであるから。バスを取り出す為にはバスが見えていなければならない!!こんなプログラムをどうやって書けばいいのだろう。実際には、色や明るさの変化点をたどって線分、即ち輪郭を取り出すことから始まる。それにしても上の状況、見える為には何があるか分かっていないといけないという矛盾は解消しない。こんなことを瞬時にこなす人間、あるいは動物、とは不思議な存在である。
画像認識の難しさは、クロマキーのように単に画像を切り分けるということではなく、それらの点のまとまりが人間にとって意味があるように人間はみており、そのためにはこの世界に関する知識が、樹とは何で、水とは何で、犬とは何で、コップとは何でというような森羅万象に関する膨大な知識が必要になるところにある。それが見えるから在るということなのである。
画像認識はたとえば、細胞診で実用化されている。癌検診で、大量の細胞を医師だけで診ていくのは大変である。見るだけなら私でもできるが。このような分野はある意味ではAdHocである。癌細胞しかみつけられないからである。ここで用いたアルゴリズムをザクに入れても、アイボに入れても、彼らが日常生活をする役には立たない。しかし、このレベルのAdHocは悪くない。非常に役にたつからである。ある町全体の何万という検診細胞のサンプルをあっという間に診て、癌らしい細胞を見つけたら、その少量のサンプルを医師が精査するのは非常に楽である。結局、AdHocプログラムの良し悪しのクライテリアは、それが役にたつかどうかにあるのである。
音声認識
1998年前後でしたか、PCの文章入力用に音声認識ソフトが発売されました。その頃、米国でも幾つかのベンチャーが認識ソフトを売りはじめており、そんな時代になったのかと感慨一入でした。
なぜかというと、上の画像認識のところで見たのと同じ認識原理における困難がここでも働いており、音声認識には皆、苦労してきたからです。発売された製品の質が、その意味では他を上回ったのかというと、そうではなく単なるビジネス上の決断に過ぎないのです−−この程度で製品にするかどうか、と言う。音声認識が、画像認識より多少とも簡単にできる条件は、実はあります。例えば、新宿駅のホームの、あの雑踏のなかで貴方の声を録音し、それを認識しようという試みが上記、画像理解での写真の中から「バス」を認識することに該当します。認識ソフトには、貴方の声と、背景にある他人の声、案内のアナウンスの声、電車の音などが合成されて一つの音波になって聞こえています。その中から貴方の声だけをどのようにして抜き出す事が可能であるのか?気が遠くなるような難問です。貴方の声が分かっているから、その声質だけを取り出せるのですが、それを取り出す前に、貴方の声だとなぜ認識できるのか?認識するとは、取り出す事そのものですから。またもこのチキンーエッグ問題、鶏が先か、卵が先かという呪われた問題に突き当たるのです。
現在の音声認識はそのような事は、実は、放棄しているのです。超指向性のマイクで貴方の声だけを拾っているわけです。言ってみれば「音のクロマキー」を行っているわけです。勿論、これで与えられたデータは貴方の声だけであるという保証は得られましたが、だからといって認識が一挙に簡単になったというわけではありません。もう一度、同じ構造が、入れ子になって入っているのです。
簡単の為、画像で考えますと、クロマキーで取り出した貴方の画像から、こんどはどこが顔で、どこが手か、どこが耳でどこが口かという認識をしなくてはなりません。背景から貴方の全体を取り出すあの困難がもう一度現れる訳です。ただ、多少とも簡単になったのは、人間の体の構造はある程度簡単な法則によって成り立っていることによります。顔はお尻の下にはありませんし、目は臍の位置にはありません。少なくとも、地球あるいは宇宙の構造よりは−−その中から貴方を取り出す、その構造よりは−−場合の数は少なく、考慮しなければならない条件もぐんと少なくなります。とは言え、これはゲームプレイングの所で出てきたレベルの少なさ、10の何十乗、何百乗というレベルでの話しであることは忘れてはならないことです。
音声でも同じで、貴方の声と分かったら、今度は、それが「あ」なのか、「む」なのかを聞き分けなければなりません。これが難しいのです。なぜか?声は絶対のデータとして誰にでもそのように聞こえる存在としてそこにある訳ではなく、私達がそのように聞いているに過ぎないからです。これも画像と同じ原理です。老婆と若い女性の例ですね。
私の知人に「あさつま」さんという人がいます。彼から電話がかかってきても、一度も正確に「あさつま」さんからですと取り次がれた事がありません。口頭での取り次ぎの場合、取り次ぎ者は頭を捻りながら、「あのー、xx社の、あさ、なんとかさん、あさくら、か、あさxxか良く分からないのですが、。。。」となりますし、メモ用紙に書いてある場合、誰でも知っている名前の「あさくら」さんなどに化けています。我々は、純粋に音声信号だけを聞いているのではなく、我々の持つ膨大な世界知識、言語知識を背景に、この音は、これのはずであると、又も「解釈」して聞いているわけです。画像の点の集合が、人間やバスに見えてくるように、空気の振動が意味ある音に聞こえているのは、脳がそのように解釈しているからです。たいていの人は「あさつま」という珍しい姓を知らず、自分の知識に無い音の集合なので解釈不能に陥りるのです。これは「あさつま」という漢字が思い付かないということではありません。そもそも「あ、さ、つ、ま」という個々の音としても認識できていないということなのです。音声は個々の音が単独で認識されるのではないということです。
これがたいていの日本人にとって英語のヒアリングが難しい理由です。昔の人には、「white shirt」は「ワイシャツ」に聞こえた訳ですし、[American」は「メリケン」に聞こえたのでしょう。「ウォシュムシュ」は[washing machine」であったり、「わら(藁)」かと思ったら、「water」の事であったりするわけです。認識に長けた人間の脳でさえ、成人してから聞きなれない音を聞きますとこのようなパニックを起こして認識不能に陥ります。音韻体系の違い、言語構造の違い、言語表現の違い、文化・環境の違いの為に、そうですこのような壮大なレベルの知識を一瞬の間に総動員して人間は音声をきいているのですが、それらが異なるためにうまく音声レベルでの認識ができないのです。そう言えば、宇多田ヒカルのCan You Keep A Secret.の出だしの1フレーズがどうしても聞き取れません。君の理想に??辺りからはそのように聞こえ、CanYouKeep...の所でやっと確信的に聞こえるのですが、最初の1節が100回位マシンを変え、スピーカを変えて聞いているのですが、分からない。文化の違いか、発想の違いか?何がきっかけで聞こえる時がくるか見極めるまで、歌詞カードを見るわけにはいきません。
さて、音声認識の場合、辞書というものを使います。日本語の場合、最も簡単な方法は「あ」、「い」。。。「ん」の50音−−実際にはもっとありますが、慣例に従って50音と呼んでおきます−−の音声波形を対応させた一覧表を作り、これを辞書と呼ぶわけです。「あ」と発音した音を録音し、音楽CDのようにデジタル化すればいいわけです。認識は、入力された音を一音ずつ、辞書と比較すればできます。「さ」という音がマイクから入ってきたとします(まだプログラムには「さ」とは分かっていませんよ、何かの音としか分かっていません)。これをデジタイズして、辞書の最初にある「あ」に相当する音声の波形データと比べるのです。一致しません。次々に比べて行って「さ」の所で一致するので、これは「さ」とわかるのです。これが認識の大原理です。
ところで、貴方の「さ」音と、彼女の「さ」音は同じでしょうか?全然違います。周波数も音質−−テイラー展開したときの高調波の係数群の相対量−−も。従って、デジタイズした0、1の集合は丸で違う集合になるでしょう。例えば、
貴方; 0100101000011111100010101011101001011........
彼女; 1101010100011110001010110010100100111......
これは今、適当に指先が赴くままにキーボードを叩いただけですから、インチキですが、まあ、それにしてもプログラムの耳にしてみればこんなものでしょう。これを同じと聞くようにプログラムを作らなくてはなりません。我々が男の中年のAさんの「さ」も、女の子供のBさんの「さ」も、90才のCさんの「さ」も同じ「さ」と思って聞いているのは、我々がそのように聞いているだけのことであって、天然自然に、客観的に同じ「さ」である−−00010101001110100010011100...−−わけではないのです。幸いにして人間であることで、人間に共通の遺伝子の為か、同じに聞こえるようにプログラムされた耳−−大脳も含めた聴覚系全体−−を皆がもっているので、同じに聞こえているだけの事です。
日本人にはRとLの区別が出来ません。これを我々日本人は、そんな物同じに聞こえるから当たり前で区別する方がおかしいのだと思っていますが(少なくとも私は)、広東人にはLとNの区別ができない、あるいは韓国人にはPとBが区別できないと聞くと、「エッ、そりゃLとRの場合とは違って全然違う音じゃないか」と、実に身勝手な事に、思ったりします。江戸っ子には「ひ」と「し」が区別できません。これだって全然違う音だと、江戸っ子以外には思えます。音声というものは客観的に同じとか違うとか言う基準は存在せず、脳がどのように統合あるいは分割しているかに依存しているのです。少し考えれば当たり前で、音声の帯域はアナログ連続スペクトルであって、5音とか、8母音とか、16母音とかのように別れている訳ではないのです。その分けかたは言語に依存して、極めて恣意的なわけです。因みに虹は7色です。これは本当でしょうか?嘘ですね。虹は連続スペクトル−−量子力学は当面忘れましょう−−ですから無限色あります。日本人は7色に分けていますが、フランス、ドイツでは5色ですし、米国では6色ということです。連続したもののどこに切れ目をいれ、幾つに割るかは、恣意的以外の何者でもありません。しかもこの割り方は、連続的でさえありません。民族によっては、赤外に近い側の赤と、紫外に近い側の青という両極端の色を同じ色として統合します。そういえば、紫って、場合により、青より赤に似ていますね。
しかし、我々はこの人間の聴覚のようなプログラムをPCの為に、自分ではどう書いていいかわからないので、市販のあの程度の認識率しかだせないでいるのです。それでもたいていの日本人の英語ヒアリング力よりは上でしょう。ところで、同じ人間でも、刻々と声は変わっています。パソコンのマイクで音声キャプチャし、それを.wavファイルにして、BZ Editなどのバイナリエディタで見たら、どんなに違うかわかるでしょう。また、風邪をひいても、加齢によっても変わります。更に、音は「さ」のように独立して発音されるわけではありません。単語あるいは文の中で発音されるため、周囲の音に影響され、同じ「さ」でも、「さばく」の「さ」と、「そうさい」の「さ」では同じ波形、同じ0、1列にはならないでしょう。従って上記のような簡単な辞書方式では、実は全く認識できません。とはいえ、ここが認識の始まりです。皆、ここから入っていったのです。
次に考えられる事は、単語単位で辞書を作ることです。これなら、「さばく」の「さ」、「そうさい」の「さ」と頭を悩ます必要はありません。但し、辞書は一挙に膨大になります。作るのも大変ですし、参照するのも時間がかかります。何しろ、入って来た音は、何かがわかっていないのですから、単純に考えれば、順番にみていくことになります。そんな方法で10万語も比較していたら時間がかかって単語毎に待たなくてはならないので、実際にはハッシュしていますが。
人による違いは、多数の人間の声を統計的に処理した辞書を作ったり、単なる.wav信号のまま認識するのではなく、より本質な音の部分を取り出す−−特徴抽出−−方式を考えたりするのです。朝夕の自分の声の違いは、ぼけの関数などでぼかし、無意味な差異を消したりと、技術の限りを尽くしているのです。とは言え、アイボやザクが人間の音声による命令を完全に瞬時に認識してくれるのはまだまだ先の話し、半世紀か1世紀先の話しでしょう。そうでなく商業主義のため、「できる」と言う場合もあり、その場合、まず、アド・ホックな手法を使っていると疑う必要があります。簡単な二語か三語の命令を明確に発音するのなら、勿論、今でも認識できますが。。。
文字認識
文字認識が一般に知られるようになったのは、郵便番号の認識からだろう。文字認識の難しさ、特に手書き認識の難しさは音声認識に似ている。基本的には同じ方法が可能である。人間はどのようにして文字を認識しているのだろう。それは分からないが文字認識の入り口は文字パターンの辞書を作っておき、それを書かれた文字と比較する事によりピッタリ一致するものと同定するのである。例えば、100x100の細かな方眼紙に字を1字書く。方眼紙の1万の桝目には1から10000まで番号を付けておく。この桝目の鉛筆がかかって黒くなった所を1、白いままの所を0とすれば、10000個の2値の数字の列ができる。
0000000101110001010100111。。。
のようにである。これを用いて辞書が作れる。
亜 01111111111011101010111111011000001。。。
居 011111111P010100100100011111001010。。。
のような辞書を作る事ができる。上記の音声の辞書に方式は同じである。認識の基本はまあ、同じ方法が使えるのである。
さて、しかし印刷文字ならこれでもそこそこ認識できるが、手書きとなると全然だめである。1桝ずれただけでその桝は、一致しない。全体が少しづつずれると、殆ど一致しなくなる。そこで色々複雑な事を行うのである。
所で、人間が文字を認識する方法は不思議である。上記の方法で、「あ」という文字を認識できたとしよう。
しかし、上記の認識法では、この文字は「あ」とは似ても似つかない、殆ど一致する桝がない。しかし人間は、「あ」が90度回転したものといとも簡単に認識する。
この事を良く考えると実に不思議である。
「あ」が90度回転されたものであると認識できる為には、以下の条件が成り立たなければならない。
1.「あ」と認識する為には、先に90度回転を戻さなければならない。
2.90度回転されていると認識するためには、先に「あ」であると認識されなければならない。
これは矛盾であるのだが、これを解決するのに、人間には何の苦労もないらしい。しかし、プログラムをどのように書いたらそんなことができるのだろう。画像認識でも、音声認識でも出てきたchicken-egg problemである。またも、闇雲にすべての常用漢字を1度ずつ回転しては辞書とのpattern matchingを359回行うようなbrute forceを使うのだろうか?まあ、一字の認識にかかる手間は、精々2000字x359回= 718000だから大したことではないが。。。でも、そんな方法がAI?
余談であるが、この字らしきものと「あ」よりは、「あ」と「お」の方が良く似ている。しかし、明らかに人間は、「あ」と「お」より、「あ」とこの線画との方がよく似ていると感じ、「あ」が90度回転したとみなす。
文字認識は、今や草書などは別として、丁寧に書かれた字なら郵便番号のようなたった10文字ではなく、2000字以上ある常用漢字でも99%程度の認識率で読み取ることができる。非常に成功したAIの分野である。
言語理解
言語の場合、言語認識とはいわない。そもそも理解と行った時には、低レベル−−この場合の「低」とは、馬鹿という意味ではなく、より基本的な、あるいは物理層に近いという意味である−−の処理は捨象して、まあ、何を言いたいかは分かったという、あれである。そういうこともあって、文法的に言語を解析しても、それだけでは理解したとは言わないのが、この業界の約束事となっている。が、ここではそんなことを無視して、言語処理一般をこのように呼ぶ。
ここまで読んでこられた方は理解できたと思うが、言語も認識の一種である。人間は自国語を話す分にはなんの努力もいらないのに(書くとなると教養がいるが)、外国語となった途端、極端に努力を要求される。それでも、できるとは限らない。計算機に言語を教えるとは、外国語を教えるのににている。6才までに英語をネイティブ言語の一つとして話さなかった人にはもう「a」と「the」の使い分けは完全にはできない。どのような言語理論もaとtheの違いに完全な論理的説明を与ていないからである。人間知性では使い分けを説明できないのである。同じことが、日本語の「は」と「が」にも言える。個々の場合には、その使い方はおかしい、それは正しいと言えるのに、法則として用法を定義できないのである。まるで、論理システムのω−不完全性のようにみえる。なお、中学校で習った文法は便宜的なもので、極めて不完全で全然役にたたない。
さて、そうはいえ、認識であるから例によって、辞書と文法を使うところから始まる。辞書は、単語とその品詞=文法的役割を一項目の内容とする。文法は、文として正しい品詞の並び方を定義する。これで文法的な解析ができる。何が主語であり、何が何を修飾しており、何が述語であるかの解析である。例によって、この方法は入り口である。すぐ分かるようにこれでは意味は分からない。「ワインを取って来い」は。命令形で、目的語は「ワイン」という名詞、述語は「取ってくる」という動詞であると解析されたが、「ワイン」は文字列にすぎない。アイボには、甘露なアルコール飲料で、750ml程度の細長い瓶に入っていて、赤(本当は赤紫)か、白(本当は黄)だということは何も分からない。ワインを、国語辞書のように、このような言葉で定義しても無駄である。またも、「甘露」や、「アルコール」や「飲料」などを定義しなくてはならず、言葉による定義の無限ループに陥るだけである。
実際には、このような意味が理解できる前に文法解析がゲームプレイングのところで出てきた組み合せ的爆発に捕まってなかなかうまく行かない。人間は、「自分にとって意味があるように把握する」しかし、計算機にはさしあたり意味がない。意味あるように統合させようとしても、それは人間にとっての意味であり、それを計算機プログラムする術を我々はしらないのである。傑作な例がある。「太郎は花子とワシントンへ行った」を英訳することは中学生でも出来る。Taro went to Washington with Hanako.と人間は訳す。本当にそれだけか?と聞いても異なる翻訳=意味的解釈は出て来ない。しかし、計算機は更にTaro went to Hanako and Washington.とも解釈する。この解釈は文法的に正しい。しかし、人間はこのようには言わない。それは意味論的に間違っているからか、あるいは文法が不備だから正しいとされてしまうのか?なかなか面倒な問題である。実は文法だけでは、文は一意的に解釈できないことは分かっている。30語位の文の場合、意味的には1通りの解釈しかできなくても、文法的には1千万通り位の解釈ができてしまうことはそんなにまれなことではない。
「統語論の曖昧性に関して述べよ」と言われても、大半の人には何の事かわからない。人間は文法よりも意味を重視して理解しているようなのである。ところで、意味とは何か?こんなことがいまだに分かっていない。言語学者、言語哲学者、情報科学者が叡智を結集してもさっぱり分からないのである。我々は普段、それは意味が分からないとか、この言葉の意味とか、普通に意味という言葉を使っているのにである。
余談であるが、次の文の意味が、首都圏と大阪圏以外の人に理解できるであろうか(実は、首都圏に住んでいても結構、分からない)。JR東日本のアナウンスである。
次の列車は久里浜行き、短い11両でまいります。
いろいろな、解釈ができようが、言葉の意味のままとれば、長い11両もあることになりそうである。しかし、11両と明確に数字で規定しているのに何故、長い、短いなどという曖昧な形容詞を付ける必要があるのか?この疑問から第二の相当無理な解釈が生まれる;
次の列車は、11両であるが、これは種々の編成の中で、短い編成である。
大抵の首都圏と関西圏以外の電車は、11両もつなげていない。こんな超長い編成がなぜ、短いと形容されるのか?横須賀線の長いほうの編成は15両なのである。わざわざ、「短い」と断る理由は、ホームの停止位置が異なるからであろう。うっかりいつもの長いほうの列車の一番前で待っていると、25mx4=100mを必死に走らなければ乗り損なう。
この表現は、首都圏と大阪圏でしか通用しないのであるまいか?
この文の意味の解釈は、言語内だけでは解決しない。現実がどうなっているかについての知識が必要である。それで、首都圏、大阪圏以外の人にわかるだろうかと断ったのである。何しろ、首都圏の交通事情の凄まじさは論外で、山手線、京浜東北線、東海道線、新幹線が、更にその下の地下では横須賀線が、平行して同じ方向に走っていくのは、初めて上京して見ると不思議におもえるものである。余談の中で更に余談になってしまった。
このような文と現実の関係を取扱う理論を、語や文の意味を取扱う意味論とは別にして、運用論(または語用論(用語論の間違いではない))とよぶ。ついでに先回りして、運用論の例を示すと、
電話を他家にかけて、「花子さんいますか?」と聞くと、普通は、「はい、少しお待ちください」といって代わってもらえる。意味論的には、「いますか?」と聞いたのだから、「います」か「いません」の返事だけでいい。電話でのこの質問は、「いたら代わってほしい」という現実での約束ことがあることが前提になっている。意味論での行間を読むのは運用論の仕事である(勿論、運用論のレベルでは行間ではない)。言語の難しさは、このように言語内だけで閉じないことにある。異なる言語では、社会の慣習、文化が分かっていないと誤解が生じる。自動翻訳が難しいのはこのようなことも一つの原因なのである。
さて、意味とは明らかに国語辞書に載っている説明ではない。あれは、我々が知らない言葉を、より簡単な言葉で言い換えただけである。次に、その簡単な言葉の意味は何かという問いがくる。男:女の反対。女:男の反対。これは意味ではない。言葉の説明を言葉でしても、無限ループに陥るだけである。無限ループを断ち切るには、再帰的定義のようにn=0の時の値を決めなければならない。n!=nx(n−1)! のような自分の定義を自分の形式で行う再帰的定義では、どこかでストップをかけなければ意味がない。階乗の場合0!=1として無意味になることから免れている。
この0!にあたる要素を仮に意味素と名付けよう。計算機言語では、実は、意味は明快である。この意味素にあたるものが機械語である。ビジュアルベイシックで書こうが、C++で書こうが、最後は機械語に変換され、その機械語は実行可能である。即ち、moveという単語は、主記憶のある番地の1byteを別の番地に移す。この操作がmoveという語の意味である。自然言語でこんなに単純に意味はきまるであろうか。まず、意味素となる記号を幾つか決めておく。それは見かけ上、日本語でも良い。そして「犬」の意味をそれらの意味素で表現するとする。「4本足で、体長1m位で、全身に毛が生えていて。。。。」と定義する。この「」の中は、意味素であり、日本語ではない。このように定義しきることができるだろうか。アリストテレスが、ある日、自分の学生に、「人間とは、二本足で歩く毛が生えていない生き物だ」と話した。次の日、教室に入ると、羽を毟られた鶏が、頭に「人間」と書いた札を張られて教室を駆け回っていたという逸話がある。交通事故で足が3本になった犬はどうしてくれるのかという異議も聞こえてきそうである。プラトンは、このような問題を回避するため、イデア界という空想の産物を作らざるをえなかった。このような属性による意味の定義を内包的定義と呼ぶ。この方法は、成功しそうにない。
では、犬の実物を全て指示しようとする立場がある。これも犬、あれも犬と、地球上のすべての犬にレーベルをはる。この方法は、うまくいきそうである。とにかくありとあらゆる物にレーベルを張ってしまえば良い。なかなか面倒だが、何とかなりそうな気がする。国民総背番号制のようなものである。ところが、幽霊とか、お化け、河童、竜はどうするのだろう。レーベルを張る対象がない。と言うことで、このような外延的定義も失敗してしまうのである。
さて、まあ、困難はあるがそんなことにめげていては先に進めないので、我々は、普通、語に対して内包的定義を行う。外延的定義は、言語内操作ではすまないからである。レーベルを張るという操作は言語からはみ出る。意味素として、普通、意味標識という物を使う。まあ、意味を表す概念と思えば良い。たとえば、「Human」という意味標識を作る。人間はHumanである。学生もHuman、男もHuman、女もHuman、パイロットもHuman。。。もうお分かりであろう。意味による単語の分類であり、その分類名のことである。意味標識は、物質と原子のような関係の意味での意味素ではない。その意味では意味素といったのは間違いではあるが、まあ、説明の都合でそうなってしまっただけである。
単語の意味は、これでまあ、定義できたとしよう。極めて不完全であるが。次に文の意味である。ここでは、フレーゲの原理または構成性原理というものを使う。全体の意味は、部分の意味の総体であるという原理である。構成性という語からもそれがわかる。全ての科学はこの原理に則っている。最近、複雑系とか、フラクタルではこの原理が成り立たないという人がいるらしいが、そういう物を私は信じていない。科学に行間があったら、何でもありである。そういうものは宗教に任せておけば良い。
プラニング
計画である。内容は何でも良い。これももちろん、問題解決の一種である。典型的な例にスペースプラニングがある。宇宙計画ではなく、空間計画である。なかなか仰々しい名前であるが、家具、例えば、たんすや、茶卓、テレビなどを部屋の中にどのように配置するかを自動的に行うものである。実際に自分の部屋にベッド、机、本棚、洋タンス、ロッカーなどを配置しようとしただけで問題山積でどこかで妥協せざるを得ない。部屋には窓があり、入り口がある。そのサイズと家具のサイズも問題の中に入る。ベッドをこの位置にこの方向で置きたいが、そうすると、本棚を窓の所に置かざるを得なくなり、陽が入らない。などなどである。満足できる配置はなかなかできない。ほぼ満足できる配置にできた。あとはこのロッカーを、あそこに収めたら終り、という所で、2cmほど幅が大きくてあきらめざるをえない。
このように計画というものは、様々な条件のすり合せであり、条件を完全に満足する事ができない場合、どこでどのように折り合うかは実に人間的な面がある。5人の異なる会社の部課長の会議をある期限内で設定する秘書の仕事は大変であろう。皆、勝手な事を言う。完全に全員の時間が空いているなら簡単だが、部課長というのは第一線の前線隊長なので、まず、そんな幸運には巡りあえない。誰にどう妥協してもらうか。やっと何とかなったら、今度は会議室がその時間には空いていない。そんなこんなで電子秘書は、一見簡単に見えて未だに実現できていない。
鉄道のダイアもプラニングである。相鉄程度なら、支線が少ないし、横浜駅でのJRとの乗り継ぎなど考える必要がないから比較的簡単だが、首都圏のJRを乗り継ぎも考えてダイアを作るとしたら、これは相当面倒であり、組み合せ的爆発を起こす。経験では、乗り継ぎは考えられていないようであるが。府中本町で、朝、南武線から武蔵野線に乗り継げるのは、階段の前のドアの横に立ち、ドアが開くやいなや、100m/10秒のスピードでダッシュできたほんの少数の人だけであろう。始発駅なのになんてダイアを組むのだろう。
エピローグ
この項を最後まで読まれた読者は相当な知性を持った人であると思う。かなり書きっぱなしで不正確な所もあったかも知れないが基本的に大学院レベルの内容なのである。
以上のように人間の能力を検討してみると、人間の認識能力、判断能力の偉大さがどのような物かわかるだろう。しかし最近の地裁レベルの判事を見ていると、人間のこの偉大な能力を使おうとしないで−−あるいは、生得的にそのような力をもっていない疑いが濃厚であるのだが−−計算機より劣る形式論理−−小学生程度の割り算−−で判決をだして、澄ました顔をしている(TVの前では殊更にしかつめらしい顔をしてはいるが、間抜けて見えるのは私だけだろうか)。
数年前、及び2、3ヶ月前も極めて重篤な殺人犯に対し、検察求刑/2のような軽い判決を平気で出している。その癖、言い分が笑わせる。「刑法の量刑が軽いのが問題であって、私が量刑を重くすれば済むような簡単な問題ではない。この判決を出すのに私はどれだけ悩んだか」と真摯で激しい口調でxx判事は言った。こう新聞報道にあったが、そんな馬鹿な人間に司法を委ねているとは恐ろしいことである。真摯であることは悪いことではない、悩む事自体も悪いことではない。しかし、それらは低能であることの免罪符にはならない。教育途中の子供ならそれで許されるだろうが、責任をもった大人の言う事ではない。まして、人が人を裁いているのである。
彼等の頭が子供のままで成長を停止したネオテニー:幼形成熟であったとは、驚きを通り越して空恐ろしい事である。自分の手に余る判断に悩んだまま、適当な判決を出されたのでは、原告も被告もたまったものではない。いいかげんな医者が、手に余る手術をすることになり、悩んだまま、適当に脳や心臓を切り取ったのでは、患者はたまらない。こんなことが通用する世界は司法しかないのではないか。司法の構成、在り方を我々の先人は間違えてしまったようである。モンテスキューもこんなはずではなかったと草葉の陰で泣いていることだろう。
刑法が不備であるのなら自分に許されている範囲で最善を尽くすべきである。2で割る事はないだろう(これは象徴的な記述で、実際にはn>1で割っている)。悩むのは勝手だが、馬鹿が、馬鹿故に悩んでも、下手の考え休むに似たりで、解決にはならないし、社会にとって何の益にもならない。害になるばかりである。司法に対する信頼性を失わせ、被害者を苦しめ、犯人の再犯を容易にする。フォイエルバッハの良い言葉がある;悪の兆候を知りながら、尚、それを保存しようとするのは何と嗤うべきことか。
このような無知無能な判事の弁解はいつも決まって、法は世論に影響されてはならない、従って、世論から独立に厳正に執行されなければならない、である。
この弁明が如何に無知蒙昧な頭から出てきたものかは、このAIの項を御読みになったかたには一目瞭然だろう。この世界の、人間にとって意味ある存在は他との関係なくしては存在の基盤が無い。まして、法は、その起源からして人間世界の最もどろどろとした部分に関与する仕組みなのである。人間は、あまり好きでないハイデッガーの言葉を借りれば、世界内存在であると同時に内世界的存在であり、法は、より以上に内世界的存在である。あらゆる人間関係の中で生起する現象に関与し、それを解明する道具なのである。その法が、世界から、世論から、独立であることは原理的に不可能である。従って、世論に関与せず、法を厳正に執行することは原理的に不可能であろう。あらゆる状況を、勿論、法も世論もその中の一要素である、鑑みて、その上で冷静に判断するのが判事というものの職務である。これらの無能地裁判事の方法論は、画像を画像としてみないで、ただの点としてみようとしているにすぎない。そして、それが無意味であることは、既に論じたように自明というも愚かである。
世論を聞くと判断を間違えるかもしれないからと、この手の無能判事は弁解するが−−そのような出来の悪い小学生程度の頭で、いやしくも人間を裁こうと思っているのにも呆れる−−世論という内世界的存在の見解を聞かずして何によって判断をおこなうのだろう。法によってである、というならば、判断の必要もない条文の機械的適用ですむではないか。いや、もっと単純で検事の求刑を2で割っておけば良い。結局はやっていることはそれなのだから。この弁解は、まるでカントの鳩の思考である; ある時、鳩は飛びながら、空気の抵抗を感じて真空の中であれば、もっと遥かによく飛べる出あろうと考えた。空気は、今の場合、言うまでもなく、世論である。
このような無能な判事は、悩む必要はないから、さっさと辞表を書いて呉れた方が世の為、人の為、更には自分の為である。今の司法制度では、馬鹿である事が判明しても、判事というだけで極めて篤く身分保障されるので、こんな無能な判事でも我々が額に汗して稼いだ税金で養わねばならない。PCに刑法と演繹論理を入れて判事席に置いておいた方が余程ましで、なおかつ安く済むではないか。少なくとも、第一審は、人間の地裁判事を廃してAIに行わせれば良い。
勿論、今度の薬害エイズの地裁判決も同じ範疇の、相当頭の軽い判事の愚考の果てである。
このようなことは最高裁へ行くと、全くと言って良いほど起こらない。個人としては意見が異なることはあっても、客観的には納得が行く判決になることが多い。さすがに人間のレベルが違うのである。
このページの先頭 目 次