ELIZA
ELIZA(イライザ)は、初期の素朴な自然言語処理プログラムの1つである。対話型(インタラクティブ)であるが、音声による会話をするシステムではない。スクリプト (script) へのユーザーの応答を処理する形で動作し、スクリプトとしてはDOCTORという来談者中心療法のセラピストのシミュレーションが最もよく知られている。人間の思考や感情についてほとんど何の情報も持っていないが、DOCTORは驚くほど人間っぽい対話をすることがあった。MITのジョセフ・ワイゼンバウムが1964年から1966年にかけてELIZAを書き上げた。いわゆる人工無脳の起源となったソフトウェアである。
ユーザー(患者役)の入力する文がDOCTOR内の非常に小さな知識ベースの範囲外のものだった場合、DOCTORは一般的な応答を返す。例えば、「頭が痛い」と言えば「なぜ、頭が痛いとおっしゃるのですか?」などと返し、「母は私を嫌っている」と言えば「あなたの家族で他にあなたを嫌っている人は?」(この場合「母」が「家族」の下位概念である、という知識ベースは必要である)などと返す。単純なパターンマッチ技法を使っているが、一部のユーザーはワイゼンバウムがその仕組みを説明しても納得せず、ELIZAの応答を真剣に受け止めた。
ワイゼンバウムは、DOCTORについて「初期の精神医学的インタビューにおける無指向性精神療法医の反応」の「パロディ」であると述べている。彼が精神療法を選んだのは「実世界の知識に関するデータベースをプログラムに入力するという問題を避けるため」であり、精神療法という状況は人間同士の対話でありながら、その対話内容に関する知識をほとんど必要としないという特徴があったためである。例えば「好きな作曲家は?」という質問には「あなた自身の好きな作曲家は?」とか「その質問は重要ですか?」などと返すことができ、作曲家に関する知識を必要としない。
ELIZAという名前はジョージ・バーナード・ショーの戯曲『ピグマリオン』の登場人物イライザ・ドゥーリトルにちなんだものである。彼女は上流階級のアクセントでの話し方を教えられる労働者階級の役である。
ワイゼンバウムは当初、独自のリスト処理言語SLIPで実装した。簡単な構文解析を行い、抜き出したキーワードを決まり文句に埋め込む。ユーザーが最初に入力する文章によっては、対話の相手が人間であると言う幻想は即座に消し去られることもあるし、何度かのやり取りを続けることができる場合もある。時には対話が非常にうまくいき、マシンの真の理解力不足が明らかになるまで数分間DOCTORと感情的にやりとりした人々の逸話は数多い。これは全て、人間側がコンピュータの出力した文に独自に意味を読み取った結果である。
1966年当時、対話型コンピューティングは目新しかった。パーソナルコンピュータが一般化する約15年前であり、インターネット(Ask.com)やアプリケーションソフト(クリッパー)での自然言語処理が一般化する30年も前のことである。これらのプログラムは長年の研究の成果であるが、ELIZA は人間とマシンの対話を人間と人間の対話に見せかけようとした最初の試みとして記録に残るだろう。
1976年、ワイゼンバウムの書いた記事 "Computer Power and Human Reason" が The New Media Reader 誌に掲載された。その中でワイゼンバウムは人々がいかに素早くかつ深くそのコンピュータプログラムに感情的に没頭したかを記している。対話の記録を見ようとするとプライバシーの侵害だとして拒んだり、対話中は部屋に一人きりにしてくれと頼んだりといったことがあったという。
ワイゼンバウムのオリジナルはSLIPで実装されていたが、これを Bernie Cosell がLISPに移植した。LISPは当時主流の言語ではなく、どこでも使えるものではなかった。多くの人がELIZAに触れたのはBASICへの移植版が登場してからで、Jeff Shrager が1973年に移植したものを Creative Computing 誌が1977年に掲載したのが最初である。このバージョンが初期の各種パーソナルコンピュータ(特に Apple II と IBM PC)で動作し、そこから様々な言語に移植され派生していった。
ソフトウェア技術者の間で人気となったバージョンとして、GNU Emacs に当初から組み込まれていたものがある。通常、meta-x-doctor と入力することでアクセスできる。
ELIZA はコンピュータゲームのユーザインタフェース設計にもいくつかの影響を与えた。Don Daglow は1973年、最初期のコンピュータRPG Dungeon(1975年)を製作する前にPDP-10上で Ecala と呼ばれるELIZAを拡張したプログラムを書いている。Will Crowther が作った Adventure(1975年)という世界初のアドベンチャーゲームにも ELIZA の影響が見られる。これらのゲームは ELIZA の9年後に登場した。
日本での影響は人工無脳を参照されたい。
2008年に放映されたテレビアニメ『RD 潜脳調査室』にてエライザ・ワイゼンバーグという名前のチャットプログラムが登場した。
ドラマ『ケータイ捜査官7』にサーバーの名前として登場した。
SF小説でアニメ化もされた『BEATLESS』に、人類の知性を超えた超高度AIによって作られたアンドロイド政治家の名前に起用された。
ELIZAへの反響の大きさはワイゼンバウムを悩まし、『コンピュータ・パワー 人工知能と人間の理性』(Computer Power and Human Reason: From Judgment to Calculation)という本を書かせる動機となった。この著書で彼はコンピュータの限界を論じ、コンピュータを万能であるかのように見ている人々に人間や生命の重要性を説いた。Plug & Pray(2010年)というドキュメンタリー映画で、ワイゼンバウムはELIZAが画期的だと言ったのは誤解している人々だけだったと述べている。
イスラエルの詩人 David Avidan は、先端技術が好きで芸術に応用しており、コンピュータを使って文学を生み出そうとしてきた。例えば、ELIZAのAPL版との対話を何度か行い、その内容を My Electronic Psychiatrist – Eight Authentic Talks with a Computer と題して出版したことがある。その序文でこれを constrained writing の一種だとしている。
先にあげたEcala以外にも ELIZA の方式に基づいた様々なプログラムが様々な言語で作成されてきた。例えば、1980年には、Randy Simon の Don't Ask Software という会社が Apple II、アタリ、コモドールなど向けにELIZA風のプログラム Abuse を開発している。これは名前の通り、ユーザーの入力にののしりで応答するものだった。スペインでは Jordi Perez が 1993年に Clipper 言語で MS-DOS 向けに書かれた ZEBAL というプログラムを開発した。また、ELIZA に基づいて宗教的なバージョンのプログラムも開発された(キリストやブッダと対話するというもの)。1980年のゲーム Prisoner にも ELIZA風の対話が用いられている。
ジョージ・ルーカスの映画『THX 1138』(1971年)では、未来の地下社会の住民がストレスを感じたときに利用する告解室が登場し、キリスト風の顔を表示したコンピュータとELIZAのような対話をするシーンがある。
イギリス人アーティストでワイゼンバウムの友人でもある Brian Reffin Smith は1988年、フランスのブールジュにて 'Salamandre' というインタラクティブアートを展示した。これはBASICで書かれた 'Critic'(評論家)と 'Artist'(芸術家)というELIZA風プログラムを2台のAmigaに搭載して動作させるもので、観客は一方が表示した文をもう一方に打ち込むことで会話を成り立たせる。実はこの2つのプログラムは全く同じものだった。
2011年に発売されたスマートフォン、iPhone 4Sの日本語版Siri(人工知能エンジン)で「イライザ」について質問すると、友人の元精神科医である旨の回答がなされる。また「面白い話をして」「長い話をして」と質問した際に出力される小話の中にも「ELIZA」が登場し、ここでもELIZA風の対話を交わしている。
IPsoftは仮想サービスデスク・アシスタントElizaを開発した。このソフトウェアは顧客の電子メールや電話に応答するもので、約3分の2の問題を人間の助けなしで解決できるという。INGグループやモルガン・スタンレーが顧客対応にElizaを使っている。
Java版(ワイゼンバウムの本来の仕様に非常に近い): http://chayden.net/eliza/Eliza.html
プログラム電卓TI-83 シリーズ上でCを使った実装: http://www.ticalc.org/archives/files/fileinfo/354/35463.html
Perlモジュール  --
doctor.el 1985年ごろ、Emacs Lispで実装された。http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/areas/classics/eliza/emacs/0.html
はPoplogシステムで動作する。Poplog はサセックス大学でAIを学ばせるために使われたシステムであり、現在はフリーなオープンソースシステムの一部である。
Trans-Tex Software の Mac OS および OS X 向け実装: http://www.tex-edit.com/index.html#Eliza
Tcl版: http://wiki.tcl.tk/9235
BASIC版: http://www.atariarchives.org/bigcomputergames/showpage.php?page=20
GNU Guile版: https://github.com/apgwoz/chatter
LISP版(Apple II 版がベース): http://jeffshrager.org/llisp/26.html