LWのサイゼリヤ

ミラノ風ドリア300円

24/1/28 「生成AIの『学習』は学術用語だ」ということをそろそろちゃんと説明した方がいい

お題箱から

797.生成aiについて無知なので質問です
下記のように学習元画像を合成したかのような元画像がでることから合成ツールと主張する人がいますが、実際に生成aiは合成ツールなのでしょうか?

https://x.com/r18rensyu/status/1745959957990965624?s=61

質問に対する答えは「依然として生成AIは合成ではなく学習を行っている」で、このツイートは100%誤りです。「塩水を沸騰させると砂糖水になる」と同じレベルの端的な誤りで、議論の余地は特にありません。

ただその理由を説明するのは意外と難しくて、「そもそも生成AIの文脈における『学習』という語は本来は学術的な専門用語であって日常語とは全く異なるのだが、なまじ同じ日本語であるだけに誤解が蔓延してしまった」みたいな経緯を長々と書く必要があります。

最初にポイントをまとめておきます。また、この文章は生成AIの是非については一切論じていません。その前段階として議論が成立してない不毛な状況を何とかしたいよねみたいな話です。

この記事のポイント(ChatGPTが出したものを修正)

  1. 学術用語としての「学習」: 「学習」という用語は、AIの文脈で用いられる際、専門的な学術用語であり、日常語の「学習」とは異なる意味を持ちます。この言葉は、数学的な操作を指し、機械学習の理論の根幹に関わるものです。
  2. 誤解の原因: 日常語としての「学習」と専門用語としての「学習」が混同されることが多いです。この混同が、生成AIに関する誤解の一因となっています。
  3. 生成AIの誤解: 生成AIが単に既存の画像を「合成」していると指摘されることがありますが、これは誤りです。実際には、AIは数学的な「学習」プロセスを通じて新しい画像を生成しています。
  4. 正しい議論への誘導: 生成AIの是非について建設的な議論を行うためには、専門用語の「学習」を理解する必要があります。また、専門家も誤解を招かないような言葉遣いに注意するべきです。

以下大きく外したことは書いていないと思いますが、最先端の研究者とかではないので怪しい部分があったらコメントとかリプライで教えてください。

 

「学習」は数学的な操作を指す学術用語です

まず大前提としてAIの文脈で使用される「学習」という言葉は機械学習分野の学術用語で、日常語の「学習」とは異なります。

本来は専門用語であるワードがたまたま日常語と一致しているせいで素人が混同してしまうことはどの分野でも往々にしてよくあります。例えば法学で用いられる「善意」という専門用語は日常語とは異なる意味を持ちますが、それを知らない人は日常語と混同して判決文について誤った解釈をしてしまいます。それと同じ事態が生成AIの「学習」でも起きています。

では専門用語としての「学習」はどういう意味なのかというと、今たまたま手元にある適当な機械学習の教科書を捲ると冒頭にこんなことが書いてあります。

『東京大学工学教程 情報工学 機械学習』6ページ目

細かい内容は理解しなくてよく、とにかくこういうノリで説明されている数学的な操作だということだけわかればOKです。教科書の6ページ目という極めて早い段階で記載されていることからわかるように、この定義は機械学習分野においては常識に属します。技術者が生成AIについて「学習」というとき、この定義を踏まえていないことは有り得ません。

補足492:この記述は生成タスクではなくもっと古典的な分類タスクについて扱ったものなので、生成AIで使われる定義とは若干異なります(生成AIについて教科書的な記述をしている本が手元に見当たらなかった)。ただ根本から全く違うわけでもないので、なんかこんな雰囲気で定義されているやつということだけわかればOKです。

「『学習』とは学術用語である」と言われたときに当然出てくる疑問三点についてあらかじめ答えておきます(疑問に思わなかった人は読み飛ばして構いません)。

 

①学術用語の「学習」は日常語の「学習」と同じなのか?

不明です。そうかもしれないし、そうではないかもしれないし、部分的にそうかもしれません。これは見た目より遥かに難しい問題で、まだ誰もよくわかっていません。

というのは、科学的には言葉が属する分野が全く違うからです。機械学習の文脈でいう「学習」は数学的な操作である一方、日常語の「学習」は人間の脳や精神がどう動いているのかという哲学ないし脳科学的な問いに属します。そもそも人間の脳が何をどう学んでいるのかはまだ完全には解明されていないはずで、それを数式に置き換えた場合にどう表現されるのかなんてまだ全然わからないとしか言いようがありません。

とはいえ「同じ言葉を使っても違和感がない程度には日常的な比喩としては妥当である」というのもまた事実で、これがまた話をややこしくします。日常語の「学習」と完全に無関係な操作に対してわざわざ同じワードを使うほど学者は根性曲がりではありませんし、「まあよく似ているよね」と言われてはっきり否定する技術者もなかなかいないと思います。

ただその「似ている」というのは誰かが責任を持って科学的に証明した事柄ではなく、比喩として妥当だから使っている以上のものではありません。「人間の学習みたいな操作なので学習と呼んでいる」というのは「唐辛子が鷹の爪によく似ているので鷹の爪と呼んでいる」くらいの話でしかなく、真面目な科学的議論で通用するロジックではありません。

 

②何故そんな紛らわしい用語を使っているのか?

遥か昔から使われてきてもう完全に定着してしまっているからです。

生成AIはもっと大枠では「機械学習(machine learning)」という分野に属しますが、それは将棋AIだのディープラーニングだのが登場する遥か昔の第二次大戦直後くらいからある分野で、当然「学習」という概念もそのくらいの歴史を持ちます。

そしてそれは教科書の6ページ目で説明されるほど理論の根幹にあるワードであり、代替ワードも特にありません。だから技術界隈の人々がわざわざ紛らわしい用語を使って門外漢の人々にマウントを取る意地悪をしているわけではなくて、少しでも機械学習を学術的に齧った人なら誰でも知っているので当たり前に使ってしまうという背景です。技術文脈での会話で「学習ってどっちの意味?」という確認が生じることはまず有り得ません(自明に学術用語を指すので)。

 

③なんで技術者は学術用語としての「学習」の意味を教えてくれないのか?

門外漢にパッと教えるには難しすぎるからです。

この記事でも厳密な説明を放棄して「数学的な操作」としか書いていないのは、詳しい説明を始めるとそれだけで別の記事が一本できてしまうからです。僕も昔ゼミで機械学習を教えたことがありますが(→■)、理系の高等教育を修めた人かかなり地頭の良い人で「学習」を理解するまでに最短15分は要する気がします。

それでもわかりやすい説明をするため腐心している神的に良い技術者は世の中にいるもので、特に漫画やイラストを使って解説しているまっくすさんのツイートはとても参考になると思います。

この方の説明は人類の到達点くらいわかりやすいのですが、逆に言えばこれだけの人が説明してもなお漫画や連ツイのツリーが必要なくらいには複雑な話です。少なくとも140字で説明しきることはまず不可能で、レスバをしていて敵対関係にある相手に伝えるのは輪をかけて現実的ではないことがすぐ後で説明するような誤解が蔓延している実際的な原因であるように感じます。

 

「学習」が誤解された経緯の推測

以下は推測を大いに含みますが、最近オススメ欄に流れてくるツイートを見るにつけ、一部でだいたいこんな感じの誤解が蔓延しているのだろうなと僕が感じていることを書きます。

まず生成AIについての議論が始まった最初期、「要するに学習はセーフ」という言い回しがよく流通していました。本当にセーフにすべきかどうかは今も議論されている最中ですし、その妥当性を論じることはこの記事の目的ではありません。ただ当時、著作権法の解釈を噛み砕いて説明するにあたって、主に技術畑の人にとってはかなりわかりやすい説明として「要するに学習過程はセーフです」と言われていたことまでは単に事実です。

これは技術に詳しい人にとっては「学習と呼ばれている数学的操作において著作物のデータを用いることは法的に問題がない」という意味ですが、「学習」が専門用語であることを知らない人にとっては全く異なる意味で解釈されることになります。具体的には日常語としての「学習」から意味を組み立てると、「機械が人間と同じように学び習っているのが生成AIであってトレパクなどではないのでセーフ」という解釈になります。こうして技術畑の人による「まあ学習はセーフだなあ」という数学的な操作の法的妥当性についての発言が、「まあ機械は人間と同じように学習しているからセーフだなあ」という正当化の発言だと誤解されるようになります(前述した通り、まともな技術者は機械の学習が人間の学習と同じだとは全く思っていないはずですが)。

この誤解が最も顕著に出たのは、ある作家の名前をプロンプトに入力するとその作家のサインが出力される事件がちょっと前に起きたときです。その挙動は専門用語としての「学習」を行った結果としては極めて妥当なので(もちろんそれは法的倫理的に妥当であることを意味しませんが)、技術系の人は「ああちゃんと『学習』してる証拠だね(『学習』と呼ばれる数学的な操作が行われているね)」と反応する一方、技術に詳しくない一部の人は「これは『学習』ではない証拠だ(人間と同じ『学習』をしているならばサインをそのまま出すことはないはずだ)」という全く逆の発言をすることになりました。

同じ単語で指している内容が全く違っているのでそもそも相手が何を言っているのかわからず、お互いに「なんで相手はこんな簡単なこともわからないのか」という泥沼のバトルが繰り広げられ、その一つが冒頭のツイートでもありますが、一応それぞれに対するクリアな回答も書いておきます。

 

①既存画像と酷似した出力をする生成AIは日常語としての「学習」を行っているか?

わかりません。

前述した通り、そもそも日常語としての「学習」がどのような数学的な操作やコードに対応するのかが現状で不明であるため何とも言えません。

 

②既存画像と酷似した出力をする生成AIは専門用語としての「学習」を行っているか?

全く新しい技術が開発されている可能性はゼロではないので断言はできませんが、ほぼ間違いなく行っているはずです。

多分ここにものすごい誤解があるのですが、そもそも「引用合成で画像を生成する」というのは巷で思われているほど簡単なことではありません(メモリ的にもアルゴリズム的にも)。「切り貼りに使う膨大な量の画像を凄まじい圧縮率で保持しておいて的確に展開して切り抜いて境界をいい感じにして繋ぎ合わせる」という作業を学習なしで出来れば苦労しないというか、それが出来ないから学習という手法に需要があるのであって、技術的には本末転倒です。

補足493:ちなみに引用合成という操作を数学的に表現すると「複数の画像データ行列から小行列を作成して並べる」みたいな操作だと思われます。

 

「学習」が学術用語であることを踏まえて建設的な議論へ

ここまでの話を踏まえると、正確な言葉遣いはこんな感じになると思います。

×:このAIは学習ではなく引用合成を行っている

△:このAIは学習ではなく引用合成を行っているように見える

〇:このAIは学習をした結果、まるで引用合成したかのような画像を出力している

もちろん僕は「生成AIは実際に引用合成しているわけではないから引用合成したかのような画像を出力しても問題ないのだ」と主張したいわけでは全くありません。そういう論点を含めて生成AIが法的倫理的文化的に妥当かどうかの議論をやっていくにあたって、相互に使う単語の意味が違う状況は極めて不毛なので、誤解を解いた方がいいよねというだけです。

基本的にはこういう状況では日常語とは異なる言葉を使っている専門家サイドが配慮して好意的に解釈すべきなのですが(「このAIは学習ではなく引用合成を行っている」という素人の発言をそのまま解釈せずに「このAIは学習をした結果、まるで引用合成したかのような画像を出力している」と言いたいのだなと汲み取ってあげるなど)、今回に限ってはそれが難しい事情があります。

それは専門用語と日常語の両面で「学習」という言葉が生成AIを巡る議論のまさに核心に位置していることです。もっと周縁のどうでもいい概念であれば専門家が気を利かせて好意的に解釈してあげた方が色々と円滑に回るのですが、今回に限っては「数学的な操作としての『学習』がどういう理由でどのくらい許容されるべきなのか」や「人間が行う日常語としての『学習』の価値をどう考えるのか」というような事柄を正確に議論する必要があって、そこで好意的な解釈を挟んで意味を捻じ曲げているとお互いに何を議論しているのかが不明になるため、はっきりさせてお互いに理解した上で喋るしか道はないと思います。

もう少し卑近な処方箋としては、生成AIの仕組みがよくわからない場合には内部動作に踏み込まずに出力結果について議論した方がいいです(技術者が聞くと「学習」という言葉が出てきた時点で内部動作の話になってしまいますし、著作権法上の議論は出力結果の話だけでも十分に意義があります)。例えばこのツイートなどは言葉の定義が噛み合っていないことを認識した上でそこは問題視していないというスタンスを明確にしていて正しく建設的なポジション取りだと思います。

最後に技術者を軽く刺しておくと、技術者側も省略や露悪や皮肉を含んでいてニュアンスを誤解されても仕方ない発言をすることがだいぶ多くて、そこが誤解の温床になっている節はある気がします。

例えば技術者がNAIv3(既存画像に酷似した画像を出すモデル)を触って「こんなんもう学習じゃなくて切り貼りじゃん!」とツイートした場合、技術者コミュニティ内では「NAIv3が学習しているのは当然の前提として、出力結果だけ見ればまるで学習したというよりは切り貼りしたかのような画像が出力されているじゃん!」と正しく解釈されるのですが、技術に詳しくない部外者が「NAIv3は実際には学習ではなく切り貼りをしているじゃん!」という告発だと理解するのも無理からぬことです。他にも技術者は「生成AIの中身はブラックボックスだ」みたいな言い回しを割とするのですが、これも複雑な歴史的経緯を踏まえたスラングみたいなものです。「古典的な技法に比べるとわからない挙動が多い」と言っているだけで、中身で学習をしているかどうかすらもわからないほどわからないということはまずありません。

ただ技術者に対して普段のツイートが誤解される可能性を考慮して常に厳密に発言しなさいと言うわけにもいかないし、これはもうコミュニケーションの領分に属する何とも言えない話ではあります。基本的には技術者側が悪いとはいえ、門外漢が文字通りに真に受けるのは危険な発言が多いので注意してくださいということだけ一応書いておきます。