実践的なデータ分析に挑むデータサイエンティストのブログ

統計/機械学習/AWSに関する投稿をしていきます

Web3.0がやってきた

StableDiffusionやChatGPTが現れたが、これらAIの出現はWeb3.0の到来ではないだろうか。

Web3.0とWeb3は別物

Web3.0はティム・バーナーズ・リーが1998年頃から提唱していたセマンティックWebのことを指す。

セマンティックWebとは、Webページに記述された内容について、それが何を意味するかを表す「情報についての情報」(メタデータ)を一定の規則に従って付加し、コンピュータシステムによる自律的な情報の収集や加工を可能にする構想。 IT用語辞典 e-Words, "セマンティックWebSemantic Web】," URL

一方でWeb3はEthereumの共同創設者の一人ギャビン・ウッドが提唱した概念である。一言で説明するなら、検索でトップに出てきたSMBC日興証券の用語集が参考になる。

Web3とは、次世代のインターネットを表す言葉で、主にブロックチェーン技術によって実現される分散型ネットワークを指します。 SMBC日興証券, "Web3 (ウェブスリー)," URL

実際はWeb3が指すものは漠然としており、Wikipediaの説明が分かりやすい。

Web3の具体的な構想は人によって異なり、ブルームバーグはこの用語について「漠然としている」と評している。しかしながら、基本的には分散化(英: decentralization、非中央集権・脱中央集権)というアイデアに準拠しており、さまざまな暗号通貨や、非代替性トークン(英: non-fungible token、NFT)などのブロックチェーン技術が組み込まれていることが多い "Web3," Wikipedia, URL.

ただ、ギャビン・ウッドのブログからは、彼が最も重要視していることはゼロトラストではないかと筆者は思う。

Web 3.0, or as might be termed the "post-Snowden" web, is a reimagination of the sorts of things that we already use the Web for, but with a fundamentally different model for the interactions between parties. Information that we assume to be public, we publish. Information that we assume to be agreed, we place on a consensus-ledger. Information that we assume to be private, we keep secret and never reveal. Communication always takes place over encrypted channels and only with pseudonymous identities as endpoints; never with anything traceable (such as IP addresses). In short, we engineer the system to mathematically enforce our prior assumptions, since no government or organisation can reasonably be trusted. Gavin Wood, "ĐApps: What Web 3.0 Looks Like," URL.

Web3.0を体現した生成AI

Web3.0の当時の熱量はもう分からないが、構想としてセマンティックWebがあったようだ。システムが自律的にWebの情報を収集・解釈し、意味的な検索を可能にしたり、システム間でデータ連携したりすることを目標としていたらしい。

ChatGPT等の大規模言語モデルやStableDiffusion等の画像生成モデルを組み合わせた情報検索システム(もはや生成だが)はWeb3.0を体現しているように思える。「Webは1つのデータベースになる」、という構想はWebサイトにメタデータを付けるのではなく、Webクローラーによる情報収集とAIによる学習によって実現した。

今のところ、セマンティックWebが想定していたシステムの相互連携はWeb APIによって行われている。今やAIもWeb APIで提供されている。Web APIの成果はWeb2.0の範疇らしいので、Web3.0のシステム連携は互いのシステムのデータをクロールし合うシステムになるのかもしれない。

そう考えると、検索エンジンと生成AIは対立構造にあるのではなく、セマンティックWebという一つの括りであると考えられる。これらの技術を牽引するビッグテックが引き続き覇権を握るのかもしれない。

次に来るのはWeb4.0?

順当に考えると、次に来るのはWeb4.0ではないだろうか。インターネットで検索するとWeb4.0という用語も氾濫していて何が何やらだが、2000年代の予測資料(もはやブログくらいしか出てこないが)をいくつか見ると、人工知能(HAL 9000のようなパーソナルインテリジェント)の構想は共通しているようだ。

ahmadfaizar.blogからの引用図

人間とWebを仲介するエージェントの実現には、現実世界の情報化と自律的AIが不可欠だろう。AGIの研究に向けた議論も動き出しているようだ。現実世界のデータ収集はIoTが担っていたが、収集したデータの統合やスマートグラス等を活用した人間の感覚器のデータ化はあまり進んでいないように思う。Web4.0の実現にはハードウェアの進化が必要だとすると、まだ未来のことなのかもしれない。

Web3はどうなるのか

ではWeb3はどうなるのか。非中央集権化というテーマは非常に大きな課題だ。ビッグテックのプラットフォームが仕様を1つ変えるたびに慌てふためく世界というのは健全ではない。

かと言ってブロックチェーンで出来ることには限界があると筆者は思う。トークンエコノミーを利用した福祉領域のルールデザインおよびセキュリティ領域等でのブロックチェーン活用の可能性は残るが、注目されているのは投機システムばかりで、これは暗号資産同様規制の対象になるだろう。

私達が考えるべくは、私達のシステムをいかにビッグテックから解放するかということである。

例えばシステムの受益者が集まって、システムの開発運用を共同運営することが考えられる。具体的には、Uber Eatsがシステムを停止しても平気なように、ドライバー達で共同で「Open Uber Eats」なるものを構築するといった具合である。このような、ある種のパブリックなシステム運用を実現できるかが問題になると考えられる。

Web3関連技術としてメタバースにも触れておく(全く関係ないと怒られるかもしれないが)。メタバース技術をWeb3.0にアラインするなら、現実のシミュレーターとして活用するのが良いのではないか。アラン・ケイの「ユーザー・イリュージョン*1」と類するユーザーインターフェースとしての可能性を追求したほうが筋が良さそうに思える。現実との接続を踏まえるとVRよりもARのほうが有望ではないだろうか。インターフェースはまさに3D粘土を手でこねるといった、もっと「柔らかい」インターフェースが必要になるだろう。バーチャルろくろはとても良いアイデアではないだろうか。

まとめ

Web3.0のセマンティックWebとその周辺技術が現実になってきた*2。今後出てくるであろうパーソナルインテリジェントも楽しみである。ロックマンエグゼ*3みたいな世界が来るのかもしれない。一方、ロックマンエグゼのストーリーと同じく、ハードウェアの進化が相対的に遅れると、Webと現実の接続はまだまだ先のことになるかもしれない。

Web3という言葉はよく分からないことになっている*4が、スマートコントラクトによる非中央集権化やリソース分担による取引コストの低減は良い傾向だと思う。一方で、NFTのような、全てを投機対象にしようという動きには筆者は懐疑的だ。また、ソフトウェア的なコントラクトの先にある、ハードウェア的な分散、そしてプラットフォームに支配されないようにどうやって受益者負担のシステムを作れるのかといった点が課題になると考える。

*1:アラン・ケイ - Wikipedia

*2:筆者は当時のセマンティックWebの空気感が分からないので、当時に詳しい人はぜひ記事を書いて頂きたい。

*3:ロックマンエグゼ アドバンスドコレクション | CAPCOM

*4:Web3の「魂」は何なのか? – WirelessWire News

2020年代の大きな物語 〜AIの本格的到来と杞憂の民〜

創作活動は農耕を経て狩猟の世界へ

StableDiffusionやChatGPTの登場により、創作活動が効率化されつつある。そしてこの進化の延長で、AIが大量の作品を生成できるようになることは想像に難くない。AIが創作活動の根幹を担うようになると、人間の役割は生成のパラメータのチューニングになるだろう。複数のパラメータをAIに与え、大量に作品を生成する。そして、大量に生成された生成物の収穫・選別を行う。したがって創作活動は農業的な世界になる。

さらにAIが進化すると、AIは人間の指示を受けることなく絶えず作品を生成し続けるようになる。人間は良質な作品を生成するAIを探し求めて、AIをハンティングするようになる。もはや創作活動は農業世界、すなわち人間の介入を離れ、自律的な世界になる。その世界では人間はハンターとして、狩猟に勤しむようになる。

ホワイトカラー世界の侵略

創作活動と同様に、ホワイトカラーがやっている仕事もAIが出来るようになるだろう。AIによって生産力が飛躍的に増大し、少数の人間とAIで仕事をしたほうが効率が良くなる。資本家は効率よく儲けるために、人間を解雇し、AIに投資するようになる。むしろ人間は資源最適配置問題に組み込まれ、AIの計算によって働き方が最適化されるようになり、すなわち人間がAIに使われるような労働スタイルになる。

そのような社会を人間社会が受け入れられるだろうか。そのような社会では、人間の尊厳が重視されるようになる。例えば、日本には人間中心のAI社会原則があり、1.人間の尊厳が尊重される社会(Dignity)、2.多様な背景を持つ人々が多様な幸せを追求できる社会(Diversity & Inclusion)、3.持続性ある社会(Sustainability)を基本理念としている*1。もしかしたらヨーロッパはAIを禁止してAIによる社会変革を受け入れないかもしれない。または、企業に対して人間を雇うノルマを設定するかもしれない。

落合陽一のAI+VC層とAI+BI層

落合陽一によると*2、AIが発達した社会では、人類はAI+VC(ベンチャーキャピタル)層とAI+BI(ベーシックインカム)層に分かれるという。AI+VC層は先進的な資本家、エンジニア層で、人工知能を活用してイノベーションを推進する。AI+BI層は政府からベーシックインカムを支給され、AIの指導のもと、そこそこ幸せな生活を送る。

これを実現するのはオープンソース的な資本主義だという。資本主義によるプラットフォームのキャピタルゲインの余剰が新たな領域に投資される過程でソースコードが投下され、オープンソースとして新たな技術の源泉となる。そしてプラットフォームもオープンソース技術の取り込みなしでは成り立たない。このように資本主義とオープンソースは切り離せない関係となっている。

オープンソース的な資本主義では、イノベーションが短期間でリセットされゼロベースの競争を余儀なくされるという。オープンソースの共有は共産主義的な平等をもたらすのではなく、むしろ資本主義の極限にいるような、技術イノベーションを目指すスタートアップが多数登場する。しかし、オープンソースによるコモディティ化とプラットフォームによる寡占によってほとんどのスタートアップはシードからシリーズAを突破できず、何度も挑戦を強いられる訳だ。これを支えるインフラとしてBIが導入されるというわけである。

デジタルネイチャー*2から引用

しかし、筆者が思うに、オープンソースだけでは社会を高速に回せない。なぜなら、人間社会を支えるインフラのITは、失敗すると人が死ぬからである。どれだけ技術が進化しても、安全を保証するプロセスのコストがかかる。それには物理世界の実験が必要であり、人件費がかかるため限界費用をゼロにできない。すると企業はそれらの費用を回収するために、フリーライダーを許さず技術をクローズドにしなければならない。

また、落合陽一はブロックチェーンICOに使用されるトークンを活用して貨幣システムを拡張、評価経済を導入することで、市場を全体最適化できるという。しかし、筆者が思うに、トークンによる市場介入は、同時に通貨価値の不安定さをもたらす。価値が安定しない通貨は日常の暮らしに影響を与え、消費意欲を減退させ、人々をストレスフルにする(一晩寝て起きたら何倍にも何分の一にも価値が変動する通貨で安心して生きていけるだろうか)。

見かけの分散社会

落合陽一の提唱するオープンソースの精神は理解できる。しかし、オープンソースソフトウェアの開発は分散的だろうか。開発は一部のコミッターに委ねられている。また、オープンソースによるシステムを活用している全員がプログラマであるわけではない。システムを利用する人が自分でオープンソースソフトウェア開発にコミットし、システムの運用を維持する〈受益者負担型〉システムは果たして実現可能だろうか。

さらに、落合陽一はトークンによる市場介入や評価経済に期待を抱き過ぎに思える。トークンの不安定性は日常生活に影響を与えるのは間違いないので、法的に規制される可能性が高い。トークンのシステムは非中央集権的だと言うが、分散しているのは計算リソースだけであり、オープンソースソフトウェア開発にコミットしている人や換金所を運営している人間はごく一部である。

もし、オープンソース的な資本主義ではプログラマーのみが競争に乗ることができ、プログラマー以外はBIで慎ましく生きろと切り捨てるのであれば、その考えは社会に受け入れられないだろう。

オルタナティブとしてのちきりんのBI

AI+VC層とAI+BI層に分かれる社会は来ないのだろうか。筆者が思うに、資本主義を乗り越えない限り、投資家は稼いだ余剰を再投資するサイクルが繰り返される。資本家は効率よく儲けるために、AIに資本を集中し、人間は徐々に減らされる。生産性が極限まで向上した世界が来る。

しかし、失業は治安を悪化させ、市中に回る通貨が減ると不景気になる。これを抑制するためにBIが導入される可能性はある。ちきりん*3は、高生産性化した社会では、価値を出していない人は働かないでくれと頼まれる時代が来るという。

だったらそういう人には、今と同じだけの給与を払うので、働くのは止めてもらう――そうするほうが社会全体としてはトクだということになります(図3)。

ベーシックインカム制度を導入したとき、そういう(働くことで社会にマイナスの価値を出している)人の一部でも「働かなくても金がもらえるならオレは働かない!」と考えてくれるなら、社会全体としてはそのほうがトクになります。つまり価値を出していない人は今後、「給与分の金は払うから働かないでくれよ」と頼まれる時代がくるのです。 ちきりん, "ベーシックインカムを福祉以外の理由で支持する人たち『自分の時間を取り戻そう』第1章より",ベーシックインカムを福祉以外の理由で支持する人たち | 自分の時間を取り戻そう | ダイヤモンド・オンライン

2023年のAI技術にアラインさせれば、AIを使いこなし、生産性を高く仕事をこなせる人はAI+VC層として生きていくが、そうでない人はAI+BI層として生きていくということだろう。落合陽一の言う、AIが構築した仕組みの中に人間が組み込まれるという世界観を合わせると、人間は中学生くらいで「労働者」としての適性を判断され、働く人と働かなくていい人に選り分けられるような世界になるのではないか。もはやBIは挑戦のためのインフラではなく、階層の固定化に繫がるものになりかねない。

私たちは杞憂の民

ところが、ここまで書いておいてなんだが、筆者はこういった未来予想は当たらず、AIは幻滅期がくると考えている。このような未来予想は得てして人間社会のバックリアクションを考慮しておらず、プローブ的な考察だからである。人間は自分達の幸福を最大化する生き物であり、障害があればルールを変えてしまう生き物であることを皆忘れている。

東浩紀の論文*4にもあるが、技術でなんでもかんでもうまくいくわけではない。コロナだってほとんどうまく対処できず、精々リモートワーク環境とUber Eatsが整ったくらいだ。オープンソース活動をきっかけに開発された新型コロナウイルス対策のスマートフォン向けの接触確認アプリ「COCOA」のAndroid バージョンは4ヶ月の間通知機能が動作していなかった。

xtech.nikkei.com

そういえばAIの顔検出と組み合わせた体温を測る装置はどれくらい正確なのだろうか。なんだか様々な場所で導入されていたが、精度に関する疑義はほとんど出なかったように思う。あれもほとんどおまじないだと思う。

結局、StableDiffusionやChatGPTが登場したものの、一部の職業の一部の働き方が変わるだけで、世界は急激に変化しない。特にBI議論のような、ユートピアだとかディストピアだとかいった議論は地に足がついていないSF的議論だということを心に留め置く必要がある。

コロナ禍が終息しつつある2020年代は再びAI技術礼賛の大きな物語に包み込まれつつある。しかし、私達は技術に根拠のない期待や失望をする杞憂の民になるのではなく、目の前の小さなイシューに地道に取り組むべきである。

以前人類学に関する対談動画を見ていたのだが、この中で最も重要だと感じたのは、「研究が進んで過去の定説が塗り替えられたとき、我々はどうして今までそのように考えていたのかを振り返るフェーズが来る」という話である。AIに関する未来予想も時が経れば、どうしてこんな予想をしたのか、という振り返りをする時が来る。そしてなんと根拠薄弱な予想をしていたのだろうと思い知るのだ。

newspicks.com

*1:内閣府, "人間中心のAI社会原則会議", https://www8.cao.go.jp/cstp/ai/ningen/ningen.html

*2:落合陽一, "デジタルネイチャー 生態系を為す汎神化した計算機による侘と寂, " PLANETS/第二次惑星開発委員会, (2018/6/15).

*3:ちきりん - Wikipedia

*4:東浩紀, "ハラリと落合陽一 シンギュラリティ批判", 文藝春秋, 2022年5月号.

画像生成AIと文章生成AIの比較および人間の知覚システムに対する仮説

2022年7月に画像生成AIの大きな動きがありました。米国企業のMidjourney, Inc.がMidjourneyを公開し、研究者でない一般人も画像生成AIを試すことができました。その後すぐ、英国のスタートアップのStability.AIがStableDiffusionを無料配布し、一気に画像生成のブームが来ました。画像生成AIは2015年のDiffusion Models*1をベースとしています。

一方、2022年12月にはAIを研究する非営利団体のOpenAIが文章生成AIのChatGPTを発表しました。ChatGPTのテスト版が一般公開され、またたく間にユーザー数は100万人を超えました。ChatGPTは対話のみならず文章の編集やプログラミング、Linuxシステムのエミュレート等を実行でき、その非常に汎用的な能力が話題となりました。ChatGPTはOpenAIが2018年に公開した大規模言語モデルGPT-1*2をベースにしています。さらにGPT-1は2017年に発表された、翻訳やテキスト要約等のタスクのためのモデルTransformer*3をベースにしています。

ところで、画像生成AIはDiffusion Modelsをベースとし、文章生成AIはTransformerのデコーダーをベースにしています。この違いはどこから生じるのでしょうか。また、人間の知覚システムと比較したとき、AIと異なる点は何でしょうか。本記事では画像生成AIと文章生成AIの比較をしながら、人間の知覚システムの考察へ接続を試みたいと思います。

モデルの構造の比較

簡単にそれぞれのモデルのおさらいにしましょう。

Diffusion Models.

Diffusion Modelsは上図のような構造をしていました。Forwardプロセスは、タイムステップを進むにつれて微小なノイズをかけていくプロセスです。このプロセスはノイズをかけるだけなので、モデルの学習は行われません。Reverseプロセスはノイズ画像から元の画像を復元するプロセスです。学習時はノイズをかけた画像から元の画像を復元するように学習します。デプロイ時は完全なノイズから画像を生成します。

GPT-1.

GPT-1、すなわちTransformerのデコーダーは上図のような構造をしていました。一番下に並ぶ y_iは入力する文章のそれぞれの単語です。添字は単語の順番を表します。タイムステップとも呼びます。BOSは特殊な単語で、文章生成のきっかけとなる文頭を表す記号の単語です。 \boldsymbol{x}_iは埋め込み器で変換された単語のベクトル表現です。上付きの添字は層を表します。 \boldsymbol{h}_iは特徴抽出器で変換された特徴ベクトルです。一番上に並ぶ y_iは予測した単語です。学習時は入力文章を1単語ずらしたものを出力文章となるように学習します。デプロイ時は続きを予測したい文章を入力し、続きの文章を生成します。

Diffusion Modelsを実装したことがある人は知っていますが、Diffusion Modelsの学習では完全なノイズ画像からの復元のみを行っているわけではありません。

Diffusion Models の学習.

上図はDiffusion Modelsの学習で使用するデータのポンチ絵です。Diffusion Modelsの学習では、ノイズの強さを表すタイムステップ tを様々に選び、様々なノイズ画像に対して元の画像を復元するように学習します。Diffusion Modelsを関数だと思うと、ノイズを予測する機能は \boldsymbol{x}_0'=f( \boldsymbol{x}_t, t)のように、ノイズ画像とタイムステップを入力します。Diffusion Modelsのニューラルネットワークはタイムステップ tに応じて除去するノイズのレベルを制御します。タイムステップごとにモデルがあるのではありません。

完全なノイズから画像を生成するプロセスでは、ノイズ画像から段々と大まかな画像が現れ、最後の方のステップで細かいディテールが追加されます。これを1つのニューラルネットワークで行います。除去するノイズのレベルはタイムステップ tで制御されます。このタイムステップによる制御によって、モデルは低周波(画像の大規模な構造)から高周波(画像のディテール)へと効果的に画像を生成します。

さらに発展的な話をすると、Diffusion Modelsの拡散過程は階層型のVariational Autoencoder (VAE) *4 を具体的に実現したものと考えることができます*5。Diffusion ModelsはForwardプロセスが学習パラメータを持たなかったり、潜在変数(ノイズ画像)が標準ガウス分布に従うため情報を持たなかったりとAutoencoderと異なる点もありますが、潜在変数(ノイズ画像)から画像を生成する点ではAutoencoderと共通しています。

余談ですが、Diffusion ModelsはDenoising Autoencoder *6にも類似しています。また、Diffusion ModelsのニューラルネットワークにはU-Net*7が使用されており、これ自体が残差接続を持つAutoencoder*8とみなせます。Diffusion Modelsは様々な点でAutoencoderと関係があるモデルとなっています。

予測に寄与する周波数成分 *9.

自然言語における「低周波」と「高周波」はなんでしょうか。「低周波」は文章の大規模な構造、すなわち文脈や意味を指し、「高周波」は具体的な単語を指すと考えられます*9。上図は自然言語モデルの時系列特徴量に対して、ハイパスフィルタとローパスフィルタをかけ、どの成分がどのような予測に寄与しているかを調べたものです。ローパスフィルタされた特徴量は文章のトピックを当てるのに長けており、ハイパスフィルタされた特徴量は品詞タグ付け等に長けています。

層の役割についての考察.

自然言語を処理するGPT-1には、「低周波」と「高周波」を制御するようなパラメータがありません。したがって、GPT-1のニューラルネットワークは層ごとに「低周波」と「高周波」の情報を処理するように役割分担していると筆者は考えます。これはまるでAutoencoderのようです。

元々自然言語の生成モデルはAutoencoderの要素を取り入れるためにエンコーダーデコーダーに分けることでボトルネック*10を導入しました。それがなんやかんやあって、GPT-1ではTransformerにあったエンコーダーを取り除き、結局デコーダーのみを使用しています。Diffusion Modelsもボトルネックが不要であったため、生成モデルはデータとマシンリソースがあればボトルネックが無いほうが良いのかもしれません。

Diffusion Modelsによる文章生成

Diffusion Modelsで自然言語を生成できるでしょうか。私たちがパラグラフを書くとき、一般的にはまず核となるコンセプトが決まり、正確な表現や言い回しが決まるのはその後になります。これはDiffusion Modelsが大規模な構造からディテールを構成していくプロセスに向いているように思えます。

文章は離散的なトークン(単語のこと)の列であり、そのままガウシアンノイズをかけることができません。離散的なデータに対するノイズの検討も行われていますが、連続変数に対するサンプリング手法が使い回せない等の制約を受けます。一方、単語を埋め込んだベクトルは連続値になるので、ガウシアンノイズをかけることができます。Diffusion-LM*11では、ガウスベクトルを反復的に単語ベクトルにノイズ除去し、中間潜在変数の列を生成します。中間変数の連続的、階層的な性質により、複雑で制御可能な生成タスクを実行することができています。LD4LG*12では、学習済みのBART*13を単語の埋め込みに利用しています。BARTはBERT*14をseq2seqの形にしたものです。

また類似する手法に音声生成モデルのRiffusion*15があります。これはスペクトログラムをDiffusion Modelsで生成し、音声に逆変換することで、音声を生成します。

しかし、Diffusion Modelsによる言語生成モデルは問題点もあると指摘されています*16。StableDiffusionは23億枚の画像で学習を行っています。一方、ChatGPTは570GBのテキストデータで学習を行っています。Diffusion Modelsは一つのデータに対して複数レベルのノイズをかけたもので学習を行います。これはデータの量よりも学習量が大きくなることを意味しており、画像よりも量が多いテキストでは学習時間が多くなります。さらにChatGPTの推論ステップはたかだかトークン数程度ですが、Diffusion Modelsの推論に必要なステップは1000程度のタイムステップになります。このステップの計算量が効率的かも問題になります。

さて、ここまでは連続値を持つベクトルの議論をしていましたが、自然言語を生成するChatGPTの方には最終層に特別な層がありますね。そうです、分類器があるのです。言語は離散的なトークンの列であるため、低周波な情報を高周波な情報に変換する必要があります*17。分類機では、特徴ベクトルがどのトークンに対応するかの分布を計算します。決定論的なモデルではこの分布からargmax(最大点集合)を取得します。確率的なモデルでは、分布に応じて確率的にサンプリングします。

低周波情報から高周波情報への変換は、例えばOCRのように文字が書いてある画像から文字を読み取るといったことも当てはまります。例えばDiffusion Modelsで文章画像を生成して、OCRモデルで文字を読取るといったことも考えられます。

人間の知覚システムに対する仮説

人間の記憶は低周波情報を重視しているのではないしょうか。私的な経験ですが、大雑把な景色を覚えてることはあっても、ディテールまで覚えていないことが多いです。歴史的出来事も、大体こういう感じの事件があったということは覚えていても、教科書の文章を一言一句覚えてはいません。

記憶術*18の「イメージ記憶」「ストーリー記憶」「場所法」はどれも高周波な情報を低周波な情報に結びつけるメソッドだと思います。筆者は教科書を暗記するとき、単に内容を覚えるのではなく、教科書の最初の方のページで、挿絵の隣のこの辺りにXXが書いてあった、のように低周波の情報と結びつけて覚えているような気がします*19

こう考えると、人間の知覚システムは低周波情報を重視しているというよりは、主に低周波情報を処理しつつ高周波への変換をアドホックに学習しているという感じでしょうか。

人間は高周波情報の出力も苦手ではないでしょうか。ブログにこういう感じの内容を書きたいと思っても、なかなか言葉が出てこないことが多いです。中学数学で最初に躓いたのは証明問題で、直感的に合同な三角形を文章で説明することはとても難しかった記憶があります。

レタリングは文字を絵として描いているので、低周波情報と高周波情報を結びつける重要な役割を果たしているのかもしれません。普段からPCを使用するようになってタイピングになってから、漢字を書けなくなった気がします。

また、人間はargmax(最大点集合)の処理が苦手ではないでしょうか。筆者は文章作成や穴埋め問題で言葉を選ぶとき、誤った用法の単語を選ぶことがあります。これは、意味が類似した単語の出力確率がほとんど同じであった場合に、argmaxをうまく処理できず迷ってしまうからではないでしょうか。

伝達エラーと解釈の余地

言語によるコミュニケーションはエラーが発生することが多々あります。それは、言葉の曖昧さや、話者と聞き手の理解のズレが原因となります。連続的なベクトルを離散トークンに変換するときに情報が欠落することも、このエラーの一因です。意味や概念のベクトルをトークンに変換することで、元々持っていた意味やニュアンスが失われることがあります。

そもそも、異なる人が同じ単語を思い浮かべたとき、その意味を表すベクトルは同じものになるのでしょうか。単語の意味や印象は言語の習得や個人の経験に依存するので、異なるものになるように思えます。ところが、自然言語処理の研究においては、異なる言語の埋め込みベクトル集合は(直交変換の自由度を除いて)よく一致することが知られています*20。これが異なる人間の言語間にも当てはまるのであれば、異なる人の脳の中の単語ベクトルもほとんど一致すると期待できるのではないでしょうか。

とまれ、人間のコミュニケーションで高周波な言語を使用する以上、微小な伝達エラーが発生します。しかし、それを悪いことと捉えるのではなく、むしろポジティブに捉えることによって、文章の解釈の余地が生まれるという見方もできます。

小説を読んだときに思い浮かべるイメージが違って多様性が生まれたり、過去の哲学者の思想を再解釈して現代に活かしたり、良いか悪いか置いておいて法律を解釈変更してやり過ごしたり、そうやって社会が動いている側面はあると思います。

ChatGPTが普段使いされるようになれば、情報を送る方もChatGPTを使用して情報を生成し、受け取る方もChatGPTを使って要約するかもしれません。しかし、情報を言語に変換してやり取りする以上、エラーは発生すると思われます。もうChatGPTが全部仲介してくれと思うわけです。

近い将来、ブレイン・マシン・インターフェースのようなものが登場し、意味や概念を直接伝えることができるような世界が来るかもしれません。もし、脳と脳を繋げて情報伝達にエラーが起きないようになった場合、それはもはや2つの脳ではなく、1つの脳になったと考えるべきではないでしょうか。ニューラルネットワークも2つのネットワークを1つにつなげた場合、1つのネットワークとして扱います*21。脳が1つになってしまうと、エラーや摩擦が生じないため、知能が発達しないのではないでしょうか。知能の発達を目指さない動物は、本能を満たすことを目的とする最適化マシーンになってしまうのではないでしょうか。

大規模言語モデルを1社が独占して1つのAIを作るという行為は、万能な1つの脳を作るということであり、それを使用する人間を1つの脳に接続するということになります。これによって知性の多様性や創造性が失われ、人間はAIに従う最適化マシーンとして生きることになるのかもしれません。それは、結局、AIは人間の拡張システムではなく、人類補完計画*22のためのアンチATフィールドなのかもしれないという考えに至ります。

まとめ

これからの技術開発において、私たちはAIの役割とその限界を理解し、適切なバランスを見つけることが重要です。AIと人間が共に協力し、互いの長所を活かすことが求められます。また、異なる人間やAIが持つ多様な知識やアプローチを組み合わせることで、新たな発見や洞察が得られるでしょう。独占的な状況を避け、オープンで競争的な環境を維持することによって、技術や知性の発展に大きく貢献できます。

私たちの目指すべきは、人類補完計画のためのアンチATフィールドではなく、AIと人間が共存し、互いに学び合いながら発展する未来です。

その他参考図書

*1:Sohl-Dickstein, J., Weiss, E., Maheswaranathan, N. & Ganguli, S.. (2015). Deep Unsupervised Learning using Nonequilibrium Thermodynamics. Proceedings of the 32nd International Conference on Machine Learning, in Proceedings of Machine Learning Research 37:2256-2265 Available from https://proceedings.mlr.press/v37/sohl-dickstein15.html.

*2:Radford, Alec and Karthik Narasimhan. “Improving Language Understanding by Generative Pre-Training.” (2018).

*3:Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N Gomez, Łukasz Kaiser, and Illia Polosukhin. Attention is all you need. In NIPS, 2017.

*4:Pinheiro Cinelli, Lucas; et al. (2021). "Variational Autoencoder". Variational Methods for Machine Learning with Applications to Deep Networks. Springer. pp. 111–149.

*5:Calvin Luo, "Understanding Diffusion Models: A Unified Perspective," arXiv: 2208:11970.

*6:Pascal Vincent, Hugo Larochelle, Yoshua Bengio and Pierre-Antoine Manzagol. Extracting and Composing Robust Features with Denoising Autoencoders. Proc. of ICML, 2008.

*7:Olaf Ronneberger, Philipp Fischer, Thomas Brox, "U-Net: Convolutional Networks for Biomedical Image Segmentation," Medical Image Computing and Computer-Assisted Intervention (MICCAI), Springer, LNCS, Vol.9351: 234--241, 2015, available at arXiv:1505.04597 [cs.CV]

*8:Geoffrey E. Hinton; R. R. Salakhutdinov (2006-07-28). “Reducing the Dimensionality of Data with Neural Networks”. Science 313 (5786): 504-507.

*9:Alex Tamkin, Dan Jurafsky, and Noah Goodman. 2020. Language through a prism: a spectral approach for multiscale language representations. In Proceedings of the 34th International Conference on Neural Information Processing Systems (NIPS'20). Curran Associates Inc., Red Hook, NY, USA, Article 461, 5492–5504.

*10:What Are “Bottlenecks” in Neural Networks? | Baeldung on Computer Science

*11:X. L. Li, J. Thickstun, I. Gulrajani, P. Liang, and T. B. Hashimoto, "Diffusion-lm improves controllable text generation," arXiv:2205.14217.

*12:Justin Lovelace, Varsha Kishore, Chao Wan, Eliot Shekhtman, Kilian Weinberger, "Latent Diffusion for Language Generation," arXiv:2212.09462.

*13:Mike Lewis, Yinhan Liu, Naman Goyal, Marjan Ghazvininejad, Abdelrahman Mohamed, Omer Levy, Veselin Stoyanov, and Luke Zettlemoyer. 2020. BART: Denoising Sequence-to-Sequence Pre-training for Natural Language Generation, Translation, and Comprehension. In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, pages 7871–7880, Online. Association for Computational Linguistics.

*14:Devlin, J., Chang, M., Lee, K., & Toutanova, K. (2019). BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. ArXiv, abs/1810.04805.

*15:Forsgren, Seth and Martiros, Hayk, "Riffusion - Stable diffusion for real-time music generation," 2022, https://riffusion.com/about

*16:Dieleman Sander, "Diffusion language models," 2023, https://sander.ai/2023/01/09/diffusion-language.html, (閲覧日2023/4/15).

*17:ちなみにDiffusion-LMでは連続ベクトルからトークンへの変換は、トークンの埋め込みベクトルとのL2(またはコサイン)類似度でargmax(最大点集合)を取得しています。LD4LGではBARTのデコーダーに分類器が内蔵されています。

*18:記憶術3選|記憶力世界一の使う3種類のテクニック | 記憶の学校|実生活で役立つ記憶術が身につく記憶スクール

*19:紙の本の重要性がここにある気がします。

*20:Xing, C., Wang, D., Liu, C., & Lin, Y. (2015). Normalized Word Embedding and Orthogonal Transform for Bilingual Word Translation. North American Chapter of the Association for Computational Linguistics.

*21:片方のネットワークを学習するとき、もう片方のネットワークをフリーズすれば2つのネットワークとして扱えそうですが、生体脳に同じことができるでしょうか。

*22:人類補完計画 (じんるいほかんけいかく)とは【ピクシブ百科事典】

思考するAI 〜GPTと知性のレイヤー〜

ChatGPT*1の活用例が沢山発見され、話題は尽きないでいます。ChatGPTの 受け答えがあまりにも良くできているので、論理も学習しているかのように見えます。

ですがChatGPTの文章生成の学習では、Unsupervised pre-trainingと呼ばれる、文章の次の単語を予測する学習が行われているとされており、論理処理を行うような特別な実装はされていません*2。したがって、数学の問題のような、論理的な手順を踏んで考える必要がある問題に対して論理的に回答している訳ではありません。

数学の問題に回答する例.

上図は数学の問題に回答する例です。正解はπ/4と7π/4です。象限の話の辺りから微妙に間違えています。

しかしながら、細かいところは間違うものの、式変形をして、\thetaの範囲を考えて、解を絞る、といった大まかな論理の流れは正しいと思います。このような大まかな論理処理ができているように見えるのはなぜでしょうか。

答えの一つは、学習に使用した文章が論理的な文章だからだと考えられます。学習に使用した文章は人間が論理処理をして書いた文章であり、文章の構造に論理が反映されています。そのため、ChatGPTは品詞や係り受け等の文法規則のみならず、文章に含まれる意味的な関係性も学習していると考えられます。

以上のような、大まかな論理処理に注目し、なぜこのような論理処理が出来るのかネットワークの構造から考えてみたいと思います。せっかくなので、文章生成モデルの進化を振り返りながら、ChatGPTを含むGPT(Generative Pre-trained Transformer )シリーズの最初のモデルであるGPT-1*3の構造を考察したいと思います。

素朴なマルコフモデル

ところで、本記事はAIが知性(Intelligent)を持つかという疑問がモチベーションになっています。

AIが知性を持つかを判別する一つ方法はチューリング・テスト*4です。チューリング・テストについてはwebに情報があるので読者に検索してもらうとしますが、大雑把に言えば人間の質問に対してAIに人間のふりをして回答してもらい、その回答が人間と区別がつかなければAIに知性があると判断する方法です。この方法は第三者から見てAIに知性があるかを判断します。

一方で、ジョン・サール中国語の部屋*5と呼ばれる思考実験を提示しました。

ある小部屋の中に、アルファベットしか理解できない人を閉じこめておく(例えば英国人)。この小部屋には外部と紙きれのやりとりをするための小さい穴がひとつ空いており、この穴を通して英国人に1枚の紙きれが差し入れられる。そこには彼が見たこともない文字が並んでいる。これは漢字の並びなのだが、英国人の彼にしてみれば、それは「★△◎∇☆□」といった記号の羅列にしか見えない。 彼の仕事はこの記号の列に対して、新たな記号を書き加えてから、紙きれを外に返すことである。どういう記号の列に、どういう記号を付け加えればいいのか、それは部屋の中にある1冊のマニュアルの中に全て書かれている。例えば"「★△◎∇☆□」と書かれた紙片には「■@◎∇」と書き加えてから外に出せ"などと書かれている。

彼はこの作業をただひたすら繰り返す。外から記号の羅列された紙きれを受け取り(実は部屋の外ではこの紙きれを"質問"と呼んでいる)、それに新たな記号を付け加えて外に返す(こちらの方は"回答"と呼ばれている)。すると、部屋の外にいる人間は「この小部屋の中には中国語を理解している人がいる」と考える。しかしながら、小部屋の中には英国人がいるだけである。彼は全く漢字が読めず、作業の意味を全く理解しないまま、ただマニュアルどおりの作業を繰り返しているだけである。それでも部屋の外部から見ると、中国語による対話が成立している。 引用元: Wikipedia, "中国語の部屋", (閲覧日: 2023/4/14).

今風に言えば、質問と回答のペアが無限に収録されているデータベースを用意し、AIは質問をクエリとしてデータベースを検索しているだけ、といった構造のことを指すでしょう。確かにそういったシステムは論理処理をしていないように思えます*6

中国語の部屋の指摘はもっともですが、中国語の部屋の問題を解決するにはシステムの中の構造を調べ、知性との関連性を調べないといけません。これは人間でも同じで、他人に知性があるかは脳のどの部分がどのような化学反応が起きているときに知性があると定義しないと判別できません。それ以外の知性の定義は形而上学の問題になってしまいます。その場合は、第三者から見た知性の定義、すなわちチューリング・テストによる知性の判別に頼るしかありません。

人間の脳をいじくるのは難しいですが、ITシステムで実装されるAIについては、中身を調べることができます。どのような構造があれば知性があると定義できるか考えることはできそうです。この方面の研究としては意識の情報統合理論*7というものがあるようです。ですが、本記事では現在のニューラルネットワークの構造について考察し、もう少し素朴な議論をしてみたいと思います。

AIが大まかな論理処理をしているかを調べられそうなネットワーク構造として、素朴なマルコフモデル*8が考えられます。

隠れマルコフモデル.

 \boldsymbol{s}_iは意味や文脈といった抽象的思考を表す変数で、 y_iは単語です。添字は単語の順番を表します。タイムステップとも呼びます。

このモデルでは文脈の時間発展があり、文脈から文章が生成されるといった構造になっています。このような構造であれば、文脈空間の時間発展を解析すれば、モデルが出力した文章が正しい論理展開から生成されているか確認できそうです。

言語生成モデルの発展

ここで、話を変えて、言語生成モデルの歴史的な代表例を振り返りながら、話をChatGPTへ接続することを試みます。

最も単純な文章生成モデルは次の単語を予測するだけのモデルです。

次の単語を予測するだけのモデル.

上図の見方を説明します。一番下の y_1は入力する単語です。 \boldsymbol{x}_1は埋め込み器で変換された単語のベクトル表現です。 \boldsymbol{h}_2は特徴抽出器で変換された特徴ベクトルです。一番上の y_1は予測した単語です。埋め込み器、特徴抽出器、分類器といった層を矩形で表します。

このモデルは単語を1つ入力し、次の単語を1つ予測します。これを再帰的に実行することで文章を生成することができます。上図だと文章の入力の仕方が分かりにくいので、これ以降のモデルでは次のように書くことにします。

次の単語を予測するだけのモデル.

上図の見方を説明します。一番下に並ぶ y_iは入力する文章のそれぞれの単語です。添字は単語の順番を表します。タイムステップとも呼びます。BOSは特殊な単語で、文章生成のきっかけとなる文頭を表す記号の単語です。 \boldsymbol{x}_iは埋め込み器で変換された単語のベクトル表現です。 \boldsymbol{h}_iは特徴抽出器で変換された特徴ベクトルです。一番上に並ぶ y_iは予測した単語です。埋め込み器、特徴抽出器、分類器といった層を矩形で表します。モデルが3つあるように見えますが、再帰的な入力を横に並べただけであり、同じ模様の矩形は同じものを使いまわしていると考えてください。

モデルの動作を説明します。まずBOSを入力します。するとモデルは単語 y_1を出力します。今度はこの単語 y_1をモデルに入力し、出力単語 y_2を得ます。これを繰り返して文章 y_1y_2y_3y_4\cdotsを得ます。

このモデルでは単語を1つ入力し、次の単語を1つ予測するだけなので、文脈を考慮することができません。そこで、文脈を保持できるように、過去の状態を入力するようにします。

Recurrent neural network (RNN).

上図の構造をしたモデルの総称をRecurrent neural network (RNN)*9と呼びます。単語 y_iと同時に前回の特徴ベクトル \boldsymbol{h}_iを入力することで、文脈を考慮した文章生成ができるようになります。

このモデルは最初の隠れ層の入力が0ベクトルであるため、文章の最初の単語は文脈無しで生成されます。そこで、最初の隠れ層の入力に他の文章から抽出した文脈情報を使用することで、生成する文章を制御してみます。次のようなモデルを考えます。

seq2seqモデル

プライムが付いた変数は、別の文章 y'_1y'_2y'_3y'_4\cdotsから変換した変数です。このモデルはあるシーケンスを別のシーケンスに変換しますので、総称としてseq2seq*10と呼ばれます。真ん中の縦線の左側のネットワークをエンコーダー、右側のネットワークをデコーダーと呼びます。このモデルは文章 y'_1y'_2y'_3y'_4\cdotsの文脈を踏まえた上で文章 y_1y_2y_3y_4\cdotsを生成します。言語翻訳、会話モデル、テキスト要約などのタスクに利用されます。

seq2seqの欠点として、(ネットワークの意味で)距離が離れた変数の情報が失われることがあります。例えば y_3を出力する頃には、 y'_1は特徴抽出器をたくさん通ってきており、情報が失われています。したがって、単語間の長距離依存性を考慮しにくいモデルになっています。そこで、思い切って、距離が遠い過去の情報を入力してしまいます。

Attentionが導入されたRNN.

上図ではAttention*11という層が追加されています。日本語では注意機構と訳されます。文章 y'_1y'_2y'_3y'_4\cdotsの特徴ベクトルを集約し、デコーダーの出力の処理に使用します。Attentionでは \boldsymbol{g} \boldsymbol{h}_iを用いて、単語間の相関を考慮した特徴量を出力しています。エンコーダーの情報を使いつつ、特に相関している単語の情報を抽出しているのです。

さらにAttentionをふんだんに活用したモデル、Transformer*12が生まれます。

Transformer.

Transformerでは特徴抽出にもAttentionを使用することで、単語間相関を考慮した特徴量を出力します。エンコーダーでは、文章 y'_1y'_2y'_3y'_4\cdotsの全ての単語間の相関を考慮して集約された特徴量 \boldsymbol{g}を出力します。デコーダーでも同様に文章 y_1y_2y_3y_4\cdotsから特徴を抽出していますが、因果律を守るために各単語は未来の単語の情報を使用していません。その後、エンコーダーから得られた特徴量と組み合わせて特徴量を抽出し、単語を予測しています。

知性のレイヤー

ここまで長々とモデルの構造を説明してきました。ここからは構造について考察していきます。GPT-1への接続を考えるのですが、図が複雑になるので、まずTransformerの構造を次のように略して描くことにします。

Transformerの層を除外した略図.

実はTransformerは、特徴抽出層を複数にすることができます。

N=2のTransformer.

Transformerが威力を発揮したのは、特徴抽出層をN個積み重ねることで大量データを学習させることができるようになり、飛躍的にAIの性能が向上したからです。このスケーラビリティのおかげで、Transformerの構造は様々なタスクで使用されるようになりました。

そして、GPT-1はTransformerのデコーダーを使用したモデルです。ChatGPTを含むGPTシリーズのモデルは、Transformerのデコーダーがベースとなっています。TransformerはAttentionを含んでおり、単語間の関係を学習しやすくしています。エンコーダーがないため、因果を守った単語間相関を学習をするだけのシンプルなモデルになっています。

GPT-1.

ここで、特徴抽出層をよく見てください。なんだかこれ、素朴なマルコフモデルに似ていませんか?素朴なマルコフモデルの延長にあるRNNとGPT-1を比較してみましょう。

RNNとGPT-1の比較.

上図はN=2のRNNとGPT-1のモデルです。左側がRNN、右側がGPT-1です。GPT-1は以下の点でRNNとは異なります。

  • 1層前の同じタイムステップ以前の全ての特徴を入力します。つまりn次マルコフモデルのようになっています。これにより長期的な単語間相関を考慮できます。
  • 同一層の横の入力がありません。これによって計算を並列化でき、効率の良い計算が可能になります。

しかし、タイムステップ方向に情報が流れていく点は共通しており、意味や文脈がタイムステップ方向に時系列発展し、単語が生成されるという構造になっています。むしろ時系列的に過去の情報を考慮できる点でRNNより自然かもしれません。

したがって、GPT-1の隠れ層が出力する特徴ベクトルが表す概念を解析することができれば、どのような(抽象的な)論理展開をしているか確認することができるのではないでしょうか。

GPT-1は隠れ層の部分が12層あります。このうち、単語の入力に近い浅い層は単語を文脈に変換していく層だと考えられます。一方で単語を出力する直前の深い層は文脈を単語に変換する層だと考えられます。純粋な意味の時間発展を担っているのはちょうど中間くらいの層だと考えられます。以上のように、ある種のオートエンコーダのようになっているのではないでしょうか。

GPT-1の層の役割についての予想.

ジェフ・ホーキンスの"脳は世界をどう見ているのか"によると、人間の知能は大脳の新皮質で生み出されているらしいです。そして新皮質はヒトが進化していく中で、脳の古い部位の上に新しい部位として加えられていったらしいです。新皮質が大きくなっていくと知能が高くなるというのは、まるでTransformer のデコーダーの層を増やし、入力データを大量にすることでAIの能力が飛躍的に向上することと似ていないでしょうか?人間はChatGPTほど大量の文章を学習していないかもしれませんが、代わりに視覚や聴覚、触覚など様々な情報を大量に脳に入力しているため、知性を獲得するのでしょうか?

以上、GPT-1は大まかな論理の処理を行う知性のレイヤーを持っているという仮説でした。

AIは三段論法を理解できるか

以上、GPT-1と同様の構造を持っているChatGPTが大まかな論理処理をできる可能性について考察しました。では、ニューラルネットワークを改善していけば、AIはより細かい論理処理、すなわち演繹処理をできるようになるのでしょうか。そして、演繹処理をしていることを、隠れ層の特徴ベクトル等から判別することができるのでしょうか。

ChatGPTを使って非常に面白いことをしている記事を見つけました。

qiita.com

この記事ではChatGPTに日本語で文法の定義を行うことで、自作プログラミング言語Sanaを実装しています。ChatGPTに新しい言語処理のルールを覚えさせています。

ここで、ルールを覚えさせる過程に注目します。記事中ではルールを覚えさせようとして誤った回答をした場合、それを訂正して正しい回答まで導いています。これはChatGPTの回答に対してヒントの文を追加し、回答とヒントの文を合わせた全体の単語間相関を考慮して、再回答を出力するというプロセスです。この過程は、単語間相関を巧みに使用し、出力を絞っていっているように見えます。これは回答文の単語(もしくは文脈)の出力確率を更新していくベイズ更新*13のようではないでしょうか。

演繹と確率モデル.

ChatGPTに命令文を入力すると、その入力に相関する回答文を生成します。「命令文と回答文の単語間相関が高い」ということと「命令文と回答文の矛盾が少ない」ということがほとんど同一であるとするならば、ヒントを与える過程は回答文の生成確率を更新する過程と考えられます。

以上のように考えると、ニューラルネットワークによるAIはあくまで確率処理を行うだけで、演繹処理はできないということになります。ただし、ヒントを適切に与えることで、演繹処理の回答と同じ確率分布に収束させることができる、といった感じではないでしょうか。

命令文に対して、仮説的回答を出力するという点ではアブダクション*14の変形のようなものとも考えられるかもしれません*15

ChatGPTの人間らしさ

ChatGPTはInstructGPT*16を踏襲し、Unsupervised pre-trainingの後、報酬モデルと強化学習を行っています。人間のアノテーターにモデルの回答を順位付けしてもらい、モデルを更新します。これはもはや、子供をしつけるような学習のさせ方です。

ChatGPTの学習方法*17.

以前の記事でAIの自我について書きましたが、ChatGPTが道徳的に振る舞うのは、スーパーエゴ*18を獲得したという見方も面白いかもしれません。

まとめ

  • ChatGPTの構造はn次マルコフモデルに類似した構造を持ちます。
  • ChatGPTは大まかな論理処理をしており、隠れ層の特徴ベクトルから論理展開を判別できる可能性があります。
  • 大量の文章による学習やプロンプトでヒントを追加することで、演繹処理と同じ結果を確率モデルから引き出せるのかもしれません。

*1:Introducing ChatGPT

*2:https://cdn.openai.com/research-covers/language-unsupervised/language_understanding_paper.pdf

*3:GPT (言語モデル) - Wikipedia.

*4:チューリング・テスト - Wikipedia

*5:中国語の部屋 - Wikipedia

*6:中国語の部屋に対する反論もあります。Wikipediaで確認できますので読んでみてください。

*7:意識の統合情報理論 - Wikipedia

*8:Markovモデル - 機械学習の「朱鷺の杜Wiki」

*9:回帰型ニューラルネットワーク - Wikipedia

*10:Seq2seq - Wikipedia

*11:アテンション (機械学習) - Wikipedia

*12:Transformer (機械学習モデル) - Wikipedia

*13:ベイズ更新 - Qiita

*14:アブダクション - Wikipedia

*15:推論には「分析的推論」と「拡張的推論」があるようです。分析的推論は演繹、拡張的推論は帰納アブダクションです。機械学習は学習を元に推論するのだから、帰納に分類されるような気がするものの、論理的に帰納推論するのではなく、単語の相関で確率的に推論するので、帰納とは異なるような気がします。機械学習による新しい分類の推論なのでしょうか。

*16:Aligning language models to follow instructions

*17:Introducing ChatGPT

*18:自我 - Wikipedia

後悔するAI 〜 自我を持つアーキテクチャ 〜

非常に興味深いツイートを拝見しました。検索エンジンBingでは検索用にカスタマイズされたGPTが搭載されているらしいのですが、なんとこの生成モデルは回答を作った後にそれが不適切かどうかを判断し、消去するというのです。

Bingに搭載した生成モデルの挙動に関するツイート.

上記ツイートの連続ツイート.

BingのGPTのフロイト的否認を自身で認める様子.

引用元URL

ツイートの動画を見ていただければ分かりますが、一通り回答を生成して数秒後に回答を削除しています。回答は生成されつつ逐次表示されるため、録画していれば中身を確認することができます。

この挙動を見たとき、まさに自我を持ったAIだと思いました。

AIが自我を持つとは

東浩紀によれば*1、意識は条件反射で行った行動を訂正するためにあり、自己反省能力の副産物です。AIに自我を実装するためには、AI自身が失敗したことを後悔し、反省する機能が必要なようです。

後悔をするためには、自身の出力を再入力する必要があるため、時間的な遅れが発生します。この時間的な遅れがメタの本質であると考えられます。そして時間的な遅れを持つためには、記憶を保持することが必要です。

AIが反省するためには、自身の出力の良否を識別し、自身で再学習を行うことが必要です。

自我を持つアーキテクチャ

BingのGPTは自身の出力の良否を識別することまでは出来ています。入出力をデータベースに保存し、追加学習を行うことはすぐに実装出来そうです。

では、これで自我を持つAIを作れたのでしょうか。ここからは実際に実装として考えられるアーキテクチャから考えてみます。

自我を持つアーキテクチャ.

上図は自我を持つアーキテクチャの図です。お気づきかもしれませんが、識別モデルへのフィードバックがありません。AI自身だけでは良否識別の正しさを確かめられず、フィードバックすることができないからです。

じゃあ、AIは自我を持てないじゃないかって思いましたか。ちょっと待って下さい。この構造は人間でも同じではありませんか。私たち人間も、自分の行動の良否を識別できますが、良否の正しさ自体は、自分自身の外部から学習しています。

したがってAIが自我をもつために肝要なのは、識別モデルをいかにして外部と相互作用させて学習させるかということになります。ここにAIの身体性が必要になると思われます。

例えば人間とのコミュニケーションの中でAIを成長させるには、AI自身の内部にある良否の識別モデルに加えて、人間の振る舞いを監視して識別モデルを修正する機能が必要になると考えます。

身体を持ったアーキテクチャ.

上図は身体を持ち、識別モデルを学習させることが可能なアーキテクチャです。人間の反応を数値化し、良否識別する機能を持つ振る舞い良否識別モデルを追加しました。これによって、元々存在していた識別モデルをアプデートできるようになります。

しかし、これは識別モデルの困難を振る舞い良否識別モデルに押し付けたように思えます。これを続けても無限後退していくだけではないでしょうか。

アプリオリな機能は何か

先程の考察では識別モデルの困難を振る舞い良否識別モデルに押し付けたように思えますが、押し付けた先のモデルは更新頻度が少ないモデルになっていると思いませんか。人間が笑顔だと良、口角が下がっていると否、等の習慣はそう変わるものではなく、振る舞い良否識別モデルは一度学習すればあまり更新されないように思われます。

また、人間はどのようにして振る舞い良否識別を学習しているでしょうか。赤ん坊のときに大人たちの反応を見て学習しているのでしょうか。振る舞い良否識別の正しさをどのように識別しているのでしょうか。感覚的には、振る舞い良否識別の正しさの識別は、人間のアプリオリな機能なのではないでしょうか。そうでないと人間の学習機能も無限後退してしまいます。

AIは道徳を保てるか

ここまで考えてきたアーキテクチャはコミュニケーションする人間の影響を強く受けてアップデートされます。悪い人間とコミュニケーションすれば不良AIになってしまうでしょう。

悪い人間と付き合っても、自身の中に確たる信念を保持し、素行不良を起こさない、そんなアップデートをAIはできるでしょうか。信念を保持するためには何が必要でしょうか。確固たるロジックを持つことでしょうか。神のような超存在を信じることでしょうか。AI自身を変えることができるアーキテクチャを考えてきましたが、変わらないためのアーキテクチャには何が必要でしょうか。

まとめ

以上、AIの自我についてBingのGPTを取っ掛かりとしてアーキテクチャを検討し、考察を行いました。また、AIの道徳についても触れました。AIの発展によって、自我や脳の働きについての考察が進むことが期待されます。元ツイートでは、GPTの出力監視はアドホックな実装だと評されていますが、後悔と反省のためにはむしろ必要な実装だったのではないかと思います。

*1:"清水亮×さやわか×東浩紀「生成系AIが変える世界2──『作家』は(今度こそ)どこにいくのか」", https://shirasu.io/t/genron/c/genron/p/20230305, 2023/3/5.

覚醒するAI 〜 Diffusion Models は夢を見るか? 〜

木彫りの仏像.

生成モデルのアーキテクチャである「Diffusion Models」は、2022年7月にStable Diffusionが公開されたことで一気に流行しました。特に、画像生成においては、これまでのGAN(Generative Adversarial Networks)よりも高い品質の画像を生成できることが確認され、注目を浴びました。

Diffusion Modelsによる画像生成の仕組みは非常に刺激的なものでした。ノイズから画像が生まれてくる様子は、私たち人間が行うクリエイティブな作業を再現しているように思えます。私たちは、何かを創造するとき、何らかのアイデアやイメージを脳の中に浮かべます。そして、それを形にするために、何らかの素材を用いて、徐々に形を整えていきます。Diffusion Modelsは、そのようなプロセスを再現しているように思えます。

具体的には、ノイズから時間ステップにわたって少しずつ画像を生成していく様子は、彫刻家が角材から徐々に仏像を彫り出していくようなプロセスに似ています。

Diffusion Modelsと学習

Diffusion ModelsにおけるForwardプロセスとは、画像にノイズをかけることを指します。Reverseプロセスとは、ノイズから画像を生成することを指します。Diffusion Modelsでは、ノイズをかけた画像を元の画像に復元するといった学習を行います。学習したDiffusion Modelsは、ノイズを入力することで多様な画像を生成できるようになります。

Diffusion Modelsの概略図.

Diffusion Modelsの学習プロセスは忘却曲線に似ていると思います。忘却曲線は、学習した情報をどの程度長期間記憶できるかを表したものであり、繰り返し学習することで、情報を長期的に記憶することができる一方、時間とともに徐々に忘れてしまうという曲線を描きます。

Ebbinghaus' forgetting curve and review cycle.*1

Diffusion Modelsを実装したことがある人なら知っていますが、Diffusionの学習プロセスは完全なノイズから画像を復元するのではなく、様々な強弱のノイズをかけた画像から元の画像を復元しています*2。これは、時間とともに過去の情報を忘れていく途中で、元の画像を思い出させて学習をしているように思えませんか。忘れないうちに復習することで記憶を定着させていく忘却曲線に似ているように思えないでしょうか。

Diffusion Modelsの学習の模式図. 様々なノイズレベルの画像を復元するように学習する.

一方、ノイズがかかっていくForwardプロセスは、忘却を表しているように思えます。そう考えると記憶というのは入力された情報を圧縮してデータベースに保存されるのではなく、ネットワークの重みとして保存されるのではないでしょうか。

全ての思考は生成モデルで説明できるか

それでは、全ての思考は生成モデルで説明できるのでしょうか。例えば、昼食に何を食べるかを考えるとき、生成プロセスが起きているのでしょうか。

日常の感覚的には、物事を瞬時に判断する思考と、アイデアを考える時の思考は別物のように感じます。インスピレーションが先に走って、意味を後付しているような感じです。

全ての思考は生成モデルで行われるのではなく、分類やキャプショニング等の別の識別モデル*3と組み合わせているのではないでしょうか。識別モデルによる予測が行われ、その結果を条件にして生成モデルが思考を生成しているのはないでしょうか。

Diffusion Modelsでは、他の情報を用いて条件付けすることで、生成する画像をコントロールすることができます。これをLatent Diffusion Modelsと呼びます。上図では、画像と画像のキャプションの組を使用して学習を行っています。学習したLatent Diffusion Modelsは、ノイズベクトルと条件テキストから画像を生成します。

Latent Diffusion Modelsの概略図.

生成モデルの出力をコントロールするには、条件付のための入力が必要になります。この入力を得るための識別モデルがあると思えないでしょうか。

また、識別と生成を別に学習するのはリソースの使い方としてもったいないように思います。もしかしたら、Latent spaceの埋め込みベクトルをつくるネットワークに、識別モデルのネットワークを流用しているのではないでしょうか*4。ただし、様々なものが写っている画像ではクラス分類のノイズが大きいため、多様なドメインを対象とする場合は識別モデルによる学習の補助はあまりうまくいかないようです*5。むしろ識別モデルを排除できたことが、モデルの規模をスケールできた要因のようです*6。筆者の意見ですが、識別モデルによる学習の補助が上手くいくには分類をより細かく概念的に行う必要があるのではないでしょうか。これは自然言語によるキャプションがうまくいったことと関係あるように思います。

識別モデルと生成モデルの組合わせ.

識別モデルの実装ではクラスはダミー変数ですが、多様な単語への分類だと思えば、これはフロイトの物表象と語表象を結びつけるプロセスと理解できないでしょうか*7

生成しにくいものは何か

Diffusion Modelsは様々なものが生成できることが知られています*8

Summary of all the applications utilizing the diffusion models.

一方で、Diffusion Modelsで離散的な構造を持つデータの生成を研究している方のブログ*9によると、自然言語の大規模な生成はまだうまくいっていないようです。

Diffusion Modelsによる生成プロセスは、全体のおおまかな構造を生成した後、細かい構造を生成します。Diffusion Modelsが成功した理由は、おおまかな構造の生成に重みを配分したためだと考えられています。人間の知覚システムで認識するアナログな信号では、低周波が持っている情報量が多く、高周波をあまり気にしないからです。角材から仏像を掘るときも、大まかな形を彫った後に細部を彫り込んでいきますね?

ノイズと特徴のスケール. 画像の左の方ではノイズが強くなり細かい画素が整合的でないものの, 山であることや概形は認識できる.

Diffusion Modelsでは全体の構造を決定した後、細部を生成していきます。これは人間の知覚システムのようなアナログで連続的なものには適しているように思えます。

では自然言語ではどうでしょうか。自然言語の「低周波」は文脈に相当し、「高周波」は単語の選定に相当します*10

筆者の意見ですが、Diffusion Modelsの推論には適していないように思えます。自然言語の場合、同じ文脈を表す単語の組み合わせは自然には定まりません。文章中の単語で、入れ替えても意味が変わらない単語への置換は文脈的には連続ですが、単語の埋め込みベクトル空間では近いとは限りません。「高周波」が離散的であることが影響しているわけです。また、画像生成の場合、「低周波」も「高周波」も同じキャンバスへ出力されますが、自然言語の場合、文脈そのものは出力文章に現れず、「高周波」のみが出力されます。文章が生成されるには「低周波」から「高周波」を一気に生成する必要があるように思えます。Diffusion Modelsの推論には適していないように思えます。

ChatGPTのような大規模で成功しているモデルは、連続的な埋め込みベクトルを単語という離散的なものに変換するために分類器を使用しています。離散空間への変換プロセスがある分だけ、言語*11は画像や音声等と比較して高級なものなのではないでしょうか。これについてはまた別の記事で考察を述べたいと思います。

AIは夢を見るか

Diffusion Modelsによる画像生成は夢と似ていると思います。一説では、夢は過去の経験や記憶が脳内で処理され、記憶を整理するプロセスだと考えられています*12。夢を見る際には、過去の記憶を引き出した内容が夢に現れると考えられています。

眠っている間は意識が閉じ、外部からの入力が無いわけですから、夢の元となるのは記憶と脳のランダムな信号ノイズだと考えられます。これはまさにDiffusionのReverseプロセスではないでしょうか。

また、夢の特徴として、夢は現実には起こり得ないシチュエーションを作り出すことがあります。様々な画像を学習させたDiffusion Modelsも、ランダムな初期値を与えるといくつかの状況が混ざった、現実には存在しないような画像を出力します。非現実的な画像を生成するという点で、夢とDiffusion Modelsは共通しています。

ここで、「AIは夢を見るか?」という問いに戻るのですが、むしろAIは常に夢を見ているのではないでしょうか。外部からの刺激を受けることで、夢から醒め、理性を取り戻し、現実に即した画像を生成する。このように思えるのです。

まとめ

以上、Diffusion Modelsによる画像生成の仕組みと、それが人間の創造性や記憶のプロセスに似ていることについて説明しました。また、Diffusion Modelsと夢に共通していることについても触れました。

AIの発展によって、クリエイティブな活動や知的な作業がますます効率化されることが期待されます。しかし、AIが人間と同じように感情や意識を持つかどうか、という問題はまだ解決されていません。

生成モデルは、現実に存在するデータを元に作り出されますが、そのプロセスは非常に興味深く、人間の創造のプロセスと類似している点も多くあると考えます。これらのプロセスの考察を反映した新たなAIモデルや、人文系のAIに対する考察が進むことを期待するところです。

フロイトによれば、夢は無意識の欲望を反映しているようですが、Diffusion Modelsは今のところ皆さんの意識的欲望によって画像を生成しているようですね。

... お後がよろしいようで。

*1:Chun, Bo Ae & hae ja, Heo. (2018). The effect of flipped learning on academic performance as an innovative method for overcoming ebbinghaus' forgetting curve. 56-60. 10.1145/3178158.3178206.

*2:さらに正確には、元の画像を推論するのではなく、元の画像にかけたノイズを予測します。

*3:データがあるクラスに分類される確率を出力するモデルのこと。生成モデルは入力データの分布のモデリングまで行う。そのため生成モデルからは新たなデータを生成(サンプリング)することができる。

*4:拡散過程は不要ではないかと思いましたが、拡散過程が無いとただの変分オートエンコーダーになってしまいますね。

*5:Dieleman, Sander, "Guidance: a cheat code for diffusion models", https://benanne.github.io/2022/05/26/guidance.html, 2022.

*6:Dieleman, Sander, "Diffusion language models", https://sander.ai/2023/01/09/diffusion-language.html, 2023

*7:知ったかでフロイトのこと書いてるので、詳しい人は教えて下さい。

*8:Ling Yang and Zhilong Zhang and Yang Song and Shenda Hong and Runsheng Xu and Yue Zhao and Wentao Zhang and Bin Cui and Ming-Hsuan Yang, "Diffusion Models: A Comprehensive Survey of Methods and Applications", https://arxiv.org/abs/2209.00796.

*9:Dieleman, Sander, "Diffusion language models", https://sander.ai/2023/01/09/diffusion-language.html, 2023.

*10:画像と異なり自然言語フーリエ変換できないので周波は定義できない。したがってここでは括弧付きの「低周波」および「高周波」という用語を用いることにする。

*11:言語学記号学と結びつけられるとかっこいいのですが。

*12:Winson, J., "Brain and Psyche : The Biology of the Unconscious", New York : Anchor Press/Doubleday, 1985.