No.366 - 高校数学で理解する ChatGPT の仕組み(2) [技術]
\(\newcommand{\bs}[1]{\boldsymbol{#1}} \newcommand{\mr}[1]{\mathrm{#1}} \newcommand{\br}[1]{\textbf{#1}} \newcommand{\ol}[1]{\overline{#1}} \newcommand{\sb}{\subset} \newcommand{\sp}{\supset} \newcommand{\al}{\alpha} \newcommand{\sg}{\sigma}\newcommand{\cd}{\cdots}\)
Attention Is All You Need
Google社は、2017年に "Attention Is All You Need" という論文(以下、"論文" と記述)を発表し、"Transformer" という画期的な技術を提案しました。Transformer は機械翻訳で当時の世界最高性能を発揮し、これが OpenAI 社の GPT シリーズや ChatGPT につながりました。
Attention(アテンション)とは "注意" という意味で、Transformer に取り入れられている "注意機構"(Attetion mechanism)を指します。"Attention Is All You Need" を直訳すると、
「必要なのはアテンションだけ」
ですが、少々意訳すると、
「アテンションこそがすべて」
となるでしょう(蛇足ですが、ビートルズの "All You Need Is Love" を連想させる論文タイトルです)。
Transformer を訳すと "変換器" ですが、その名の通り「系列 A から系列 B への変換」を行います。系列 A = 日本語、系列 B = 英語、とすると和文英訳になります。第3章では、この Transformer の仕組みを説明をします。
全体のアーキテクチャ
Transformer のアーキテクチャの全体像が次図です(論文より)。以降、この絵の意味を順に説明します。
アーキテクチャを簡略化して書くと次のようになります。以下では「日本語 → 英語の機械翻訳」を例として Transformer の動作を説明します。
左側がエンコーダで、入力された日本語テキストを中間表現(=テキストの特徴を抽出した内部表現)に変換します。右側のデコーダは、中間表現を参照しつつ「次に生成すべき英単語」を推論します。
エンコーダ、デコーダとも、図で「ブロック」と書いた単位を積層した構造です。つまり、1つのブロックの出力が次のブロックへの入力になります。アーキテクチャの絵で「N x」と書いてあるのはその積層の意味(= N 倍)で、積層する数を \(N\) とすると、Transformer では、
\(N=6\)
です。エンコーダの中間表現は最終ブロックからの出力です。その出力がデコーダの全てのブロックへ伝わります。
訓練
多数の「日本語 \(\rightarrow\) 英語の翻訳データ」を用いて Transformer を訓練するとき、全体がどのように動くかを示したのが次の図です。
エンコーダには日本語の文(Input)が入力されます。デコーダからの出力は、英文の推論結果(確率)です。これを正しい英文(Output = 教師ラベル)と照らし合わして損失(交差エントロピー誤差)を計算し、誤差逆伝播を行ってニューラル・ネットワークの重みを更新します(前回参照)。デコーダの入力となるのは「右に1語だけずらした Output」です。アーキテクチャの図18 で shifted right と書いてあるのはその意味です。なお、実際に入力されるのは単語ではなくトークンの列です(前回参照)。
推論
訓練を終えた Transformer を使って日本語文を英語文に機械翻訳するときの動きは次図です。
エンコーダに日本語のテキストを入力し、中間表現を得ます。これは1回きりです。
デコーダには、生成すべき英語テキストの最初のトークン、[BOS](文の始まりを示す特殊トークン)を入力し、[BOS] の次にくるべきトークンの確率を推論します。最も確率が高いトークンを選ぶと [I] になるはずです。これが1回目の推論(#1)です。
2回目(#2)では [I] を入力し、[I] の次のトークンを推論します([am] となるはずです)。[BOS] から [I] を推論したときの情報はデコーダに残されているので、その部分を再計算する必要はありません。推論のためには、日本語文の全情報(エンコーダの中間表現)と、既に生成した英文([BOS] [I])を参照します。
このようにして順々に英文を生成していき、推論結果が [EOS](文の終了を示す特殊トークン)になるところで、翻訳が終了します。
アーキテクチャの詳細
用語と記号
トークンの語彙
トークンの語彙(vocabulary)のサイズ を \(V\) とします。トークンを識別する "トークンID" は \(1\)~\(V\) の数字です。
系列
Transformer への入力となるテキストは、Tokenizer でトークンID の列に変換されます。以降、Transformer への入力を "系列(sequece)" と呼びます。
系列はその最大サイズ \(S\) が決まっています(普通、数千程度)。入力が \(S\) より少ない場合、残りのトークンは無効トークン([PAD])としておき、そこの処理は回避するようにします。[PAD] を含めて、系列は長さ \(\bs{S}\) の固定長とします。
系列\(=\{\:t_1,\:t_2,\:\cd\:,\:t_S\:\}\)
\(t_i\):トークンID \((1\leq t_i\leq V)\)
Transformer の論文には語彙のサイズと系列のサイズが書いてありませんが、以降の説明では \(V\) と \(S\) を使います。
分散表現ベクトル
トークンの分散表現ベクトル(埋め込みベクトル)の次元を \(D\) とします。トークンID が \(t_i\) であるトークンの分散表現を \(\bs{x}_i\) とすると、
\(\bs{x}_i=\left(\begin{array}{r}x_1&x_2&\cd&x_D\\\end{array}\right)\) \([1\times D]\)
というようになり、系列をベクトル列で表現すると、
系列\(=\{\:\bs{x}_1,\:\bs{x}_2,\:\cd\:,\:\bs{x}_S\:\}\)
となります。なお、\(D\) 次元ベクトルを、\(1\)行 \(D\)列の配列とし、\([1\times D]\) で表わします(前回参照)。
なお、Transformer では \(D=512\) です。
以降、全体アーキテクチャの図に沿って、各レイヤー(計算処理)の説明をします。以降の説明での \(\bs{x}_i,\:\:\bs{y}_i\) は、
\(\bs{x}_i\):レイヤーへの入力
(系列の \(i\) 番目。\(1\leq i\leq S\))
\(\bs{y}_i\):レイヤーからの出力
(系列の \(i\) 番目。\(1\leq i\leq S\))
で、すべてのレイヤーに共通です。また、\(D\) 次元ベクトルを \([1\times D]\)、\(S\)行 \(D\)列の行列を \([S\times D]\) と書きます。
埋め込みベクトルの生成
このレイヤーの入出力を、
とすると、
\(\bs{y}_i=\bs{x}_i\cdot\bs{W}_{\large enc}\)
\([1\times D]=[1\times V]\cdot[V\times D]\)
で表現できます(前回の word2vec 参照)。もちろん、この行列演算を実際にする必要はなく、\(\bs{x}_i\) のトークンID を \(t_i\) とすると、
\(\bs{y}_i=\bs{W}_{\large enc}\) の \(t_i\) 行
です。\(\bs{W}_{\large enc}\) は Transformer の訓練を始める前に、あらかじめ(ニューラル・ネットワークを用いて)作成しておきます。従って、埋め込みベクトルの作成はテーブルの参照処理(table lookup)です。
位置エンコーディング
埋め込みベクトル(分散表現)に、トークンの位置を表す「位置符号ベクトル」を加算します。つまり、
とすると、
\(\bs{y}_i=\bs{x}_i+\bs{p}_i\:\:\:(1\leq i\leq S)\)
\([1\times D]=[1\times D]+[1\times D]\)
の単純加算です。位置符号ベクトル \(\bs{p}_i\) の要素を次の記号で表します。
\(p_{t,d}\)
\(t\) は \(0\) から始まる、トークンの位置
\((t=i-1,\:\:0\leq t\leq S-1)\)
\(d\) は \(0\) から始まる、ベクトル内の要素の位置
\((0\leq d\leq D-1)\)
この \(p_{t,d}\) の値は次のように定義されます。
\((0\leq k < \dfrac{D}{2},\:\:\:x=\dfrac{2k}{D},\:\:\:0\leq x < 1)\)
つまり、\(D=512\) とすると、
\(d\) が偶数の要素位置では \(\mr{sin}\) 波
(\(d=0,\:2,\:4,\:\cd\:,510\))
\(d\) が奇数の要素位置では \(\mr{cos}\) 波
(\(d=1,\:3,\:5\:\:\cd\:,511\))
で位置符号値を決めます。この \(\mr{sin}/\mr{cos}\)波の波長 λ は
λ\(=2\pi\cdot10000^x\)
であり、\(0\leq d < D\) の範囲で、
\(2\pi\leq\)λ\( < 2\pi\cdot10000\)
となります。この \(\mr{sin}/\mr{cos}\) 波を図示してみます。グラフをわかりやすくするために、\(D=512\) ではなく、
\(D=32\)
とし、ベクトルの要素 \(32\)個のうちの最初の6つ、
\(d=0,\:1,\:2,\:3,\:4,\:5\)
だけのグラフにします。グラフの
・横軸はトークンの位置 \(t\)
・縦軸は位置符号ベクトルの要素 \(p_{t,d}\)
です。
具体的に \(t=3\) のときのベクトルの要素 \(p_{3,d}\:\:(0\leq d\leq31)\) の \(0\leq d\leq5\) の部分を書いてみると、
\(p_{3,0}=\phantom{-}0.1411\)
\(p_{3,1}=-0.9900\)
\(p_{3,2}=\phantom{-}0.9933\)
\(p_{3,3}=-0.1160\)
\(p_{3,4}=\phantom{-}0.8126\)
\(p_{3,5}=\phantom{-}0.5828\)
となります(図22)。
言うまでもなく、言語モデルにとってトークンの位置はきわめて重要な情報です。位置をバラバラにすると意味をなさないテキストになるし、Bob loves Alice と Alice loves Bob では意味が逆です。従って、何らかの手段で「トークンの位置を考慮したモデル化」をしなければならない。
\(\bs{y}_i=\bs{x}_i+\bs{p}_i\:\:\:(1\leq i\leq S)\)
の式で、\(\bs{x}_i\) は「単語埋め込み」のアルゴリズムで作られ、似たような単語/トークンは類似したベクトルになります(前回参照)。それに対し \(\bs{p}_i\) の \(\mr{sin}/\mr{cos}\) 波は、言語処理とは全く無関係な数学の産物です。従って、加算結果である \(\bs{y}_i\) がどのような「意味」をもつベクトルなのか、説明しようとしても無理でしょう。全く異質なものの足し算をしているのだから ・・・・・・。それでいて、このやり方で全体として成り立つのが驚きです。
Transformer より以前の機械翻訳では、トークンの出現順に逐次処理をするアーキテクチャでした。つまり、1つのトークンの処理結果を利用しながら次のトークンを処理するという逐次処理によって、並び順に意味があるという言語の特質を捕らえていました。
それに対し、位置エンコーディングを取り入れた Transformer では、逐次処理の必要性がなくなり、系列のトークン全部の並列処理が可能になりました。この結果、同一計算の超並列処理ができる GPU(数千並列が可能) をフルに活用することで、実用的な大規模言語モデルが構築できるようになったわけです。位置エンコーディングにはそういう意味があります。
なお Transformer の論文にも書いてあるのですが、位置符号ベクトルを \(\mr{sin}/\mr{cos}\) 波のような「決めうち」で作らないで、「学習可能なパラメータ」としておき、Transformer を訓練する過程で決めるやり方があります。位置符号ベクトルを学習で決めるわけです。GPT はこの方法をとっています。
Single Head Attention : SHA
アテンション・レイヤー(Multi Head Attention : MHA)の説明をするために、まず "Single Head Attention : SHA" の処理論理を説明します。Transformer で実際に使われている MHA は、以下に説明する SHA の拡張版で、核となるアルゴリズムは同じです。
SHAの入出力は、それぞれ \(S\)個の \(D\)次元ベクトルであり、
入力 \(\bs{x}_i\:\:[1\times D]\:\:(1\leq i\leq S)\)
出力 \(\bs{y}_i\:\:[1\times D]\:\:(1\leq i\leq S)\)
ですが、系列の全体を1つの行列で表すことができます。1つのベクトルを行列の1行として、それを縦方向に \(S\)個並べて行列を作ります。つまり、
入力 \(\bs{X}\:\:[S\times D]\) (\(i\) 番目の行が \(\bs{x}_i\))
出力 \(\bs{Y}\:\:[S\times D]\) (\(i\) 番目の行が \(\bs{y}_i\))
とすると SHA は、
\(\bs{Y}=\mr{SHA}(\bs{X})\)
と書けます。アテンションの処理では、まず入力ベクトル \(\bs{x}_i\) を、
の組、( \(\bs{q}_i,\:\:\bs{k}_i,\:\:\bs{v}_i\) )に変換します。変換式は次の通りです。
ここで、\(\bs{W}_Q,\:\:\bs{W}_K,\:\:\bs{W}_V\) は学習で決まる変換行列です。系列全体についての Query/Key/Value(\(QKV\))を行列の形で表すと、
となります。SHA レイヤーからの出力、\(\bs{y}_i\:\:[1\times D]\) は、\(S\)個のバリュー・ベクトル \(\bs{v}_j\:\:(1\leq j\leq S)\) の "重み付き和" (加重和)で求めます。加重和に使う重み、\(\bs{w}_i\:\:[1\times S]\) は次のように計算されます。
まず、クエリ・ベクトル \(\bs{q}_i\) とキー・ベクトル \(\bs{k}_j\:\:(1\leq j\leq S)\) の "スケール化内積(scaled dot product)" を計算し、\(S\)個のスカラー値を求めます。スケール化内積(\(\mr{SDP}\) と記述します)とは、2つの \(D\)次元ベクトル \(\bs{a}\) と \(\bs{b}\) の場合、
\(\mr{SDP}(\bs{a},\bs{b})=\dfrac{1}{\sqrt{D}}\bs{a}\bs{b}^T\)
\([1\times1]=[1\times D]\cdot[D\times1]\)
で定義されます。つまり、一般の内積(=スカラー値)を「ベクトルの次元数の平方根」で割ったものです。
\(\bs{q}_i\) と \(\bs{k}_j\:\:(1\leq j\leq S)\) のスケール化内積を順番に \(S\)個並べたベクトルを \(\bs{s}_i\:\:[1\times S]\) と書くと、スケール化内積の定義によって、
\(\bs{s}_i=\dfrac{1}{\sqrt{D}}\bs{q}_i\bs{K}^T\)
\([1\times S]=[1\times D]\cdot[D\times S]\)
です。そして、加重和を求めるときの重み \(\bs{w}_i\) は、
\(\bs{w}_i=\mr{Softmax}(\bs{s}_i)\)
\([1\times S]=\mr{Softmax}([1\times S])\)
とします。この \(S\)次元の重みベクトルを使って、\(S\)個のバリュー・ベクトル \(\bs{v}_j\:\:(1\leq j\leq S)\) の加重和をとると、出力ベクトル \(\bs{y}_i\) は、
\(\bs{y}_i=\bs{w}_i\cdot\bs{V}\)
\([1\times D]=[1\times S]\cdot[S\times D]\)
となります。以上の計算プロセスを一つの式で書いてしまうと、
です。従って、SHA からの出力ベクトル \(\bs{y}_i\) を縦方向に並べた行列 \(\bs{Y}\) は、
\(\bs{Y}=\mr{Softmax}\left(\dfrac{1}{\sqrt{D}}\bs{Q}\cdot\bs{K}^T\right)\cdot\bs{V}\)
\([S\times D]=\mr{Softmax}([S\times D]\cdot[D\times S])\cdot[S\times D]\)
と表すことがきます。この表記で \(\mr{Softmax}\) 関数が作用するのは \([S\times S]\) の行列ですが、\(S\)個の行ごとに \(\bs{\mr{Softmax}}\) を計算します。
単なる内積ではなく「スケール化内積」を使う理由ですが、2つのベクトルの内積は、要素同士のかけ算を次元数 \(D\) 個だけ加算したものです。従って、ベクトル \(\bs{s}_i\) を、シンプルな内積を使って、
\(\bs{s}_i\:=\bs{q}_i\cdot\bs{K}^T\)
のように定義し、重み \(\bs{w}_i\) を、
\(\bs{w}_i=\mr{Softmax}(\bs{s}_i)\)
で求めると、\(D\) が大きいと \(\bs{s}_i\) の要素が大きくなり、その結果として \(\bs{w}_i\) はゼロに近いところに多くの要素が集まるようになります。これは \(\mr{Softmax}\) 関数の性質によります(前回参照)。こうなると勾配消失が起きやすくなり、訓練が収束しづらくなります。そのため「スケール化」するというのが論文の説明です。
もちろん、幾多の試行錯誤があり、その結果として決まったのが「スケール化内積で加重和の重みを計算する」というやり方だったのでしょう。
以上の計算でわかるように、注意機構(Attention machanism)とは、あるトークンを処理するときに、注意を向けるべきトークンと注意の強さを決め(それ自体が学習で決まる)、注意を向けた先の情報を集めてきて集積するものです。
しかも、注意機構は6層(\(N=6\)) に重ねられています。ということは、階層的な(多段階の) "注意の向け方" ができることになります。また、言語における単語と単語の関係性は多様です。動作\(\cdot\)動作主体、修飾\(\cdot\)被修飾、指示代名詞と指示されるもの(照応関係)など多岐に渡ります。それらのさまざまなタイプの関係性を、Transformer の訓練を通して、多層の注意機構が自動的に把握すると考えられるのです。
MHA : Multi Head Attention
SHA では、入力ベクトル \(\bs{x}_i\) から、1組の Query/Key/Value(\(QKV\)) ベクトルを抽出しましたが、Transformer で実際に使われているのは、
という処理です。これを Multi Head Attention : MHA と呼びます。この「それぞれについてのアテンション処理」のことを "head(ヘッド)" と言います。複数の head なので Multi Head です。このヘッドの数を \(H\) とし、
\(d=\dfrac{D}{H}\) (\(D\) は入出力ベクトルの次元)
とします(\(H\) は \(d\) が整数になるように選びます)。このとき、
です。つまり MHA は「複数の特徴を抽出し(一つの情報量は SHA より少ない)、それぞれの特徴について 独立した "注意機構" を働かせ、最後に統合してまとめる」仕組みです。なお、Transformer では、
\(H=8\)
\(d=\dfrac{D}{H}=\dfrac{512}{8}=64\)
です。
\(h\) 番目のヘッド \((1\leq h\leq H)\) に着目し、"注意機構" の計算プロセスを式で書くと、次のようになります。まず、\(h\) 番目のヘッドの \(QKV\) ベクトルの計算は、
です。系列全体について、\(h\) 番目のヘッドの \(QKV\) を行列の形で表すと、
です。\(h\) 番目のヘッドのアテンション処理は、SHA の場合と同様で、
となり、これを系列全体での表現にすると、
となります。行列 \(\bs{Y}^h\) は、\(h\) 番目のヘッドの出力ベクトル \(\bs{y}_i^h\:\:[1\times d]\) を、系列の数だけ縦に並べた行列です。
系列の \(i\) 番目の入力 \(\bs{x}_i\) に対する \(H\) 個の出力ベクトル
\(\bs{y}_i^h\:\:[1\times d]\:\:(1\leq h\leq H)\)
が求まったところで、これら \(H\) 個を単純結合して(=順に並べる)一つのベクトルにし、さらに Linear 変換をして最終出力にします。変換に使う行列は \(\bs{W}_O\:\:[D\times D]\) です。
Linear 変換は直前の単純結合(Concatenation)とセットになっています。つまり、ヘッドの順序を表す \(h\:\:(1\leq h\leq H)\) という数字には、"注意機構" における何らかの意味があるわけではありません。単にアテンション処理を \(H\) 個に分けた \(h\) 番目というだけです。従って、順に単純結合する、
\(\mr{Concat}(\bs{y}_i^1,\:\bs{y}_i^2,\:\cd,\:\bs{y}_i^H)\)
という操作の「結合順序」には意味が無いことになります。そこで結合した後で、学習可能なパラメータ \(\bs{W}_O\) で線型写像を行って、最適な出力ベクトルを求めるわけです。
エンコーダの MHA は、エンコーダ内に閉じたアテンションで、これを「自己アテンション」(Self Attention)と言います。一方、デコーダ側には自己アテンションの他に、エンコーダとデコーダにまたがるアテンションがあります。これを Source Target Attention と言います。このアテンションは、
します。これによってエンコーダからデコーダ側への情報の流れを作ります。日本語 → 英語の機械翻訳の場合だと、次に生成すべき英単語に関連して「注意を向けるべき日本語のトークンと、その注意の量」がここで決まります。
Multi Head Attention において、1つのベクトルから複数の \(QKV\) を取り出すことの意味は、おそらくトークンの「多義性」でしょう。その例ですが、英語で fine という語の代表的な意味を4つあげるとしたら、たとえば、
fine :
(1) 素晴らしい
(2) 晴れた
(3) 細かい
(4) 罰金
です(例です。(1) (2) は同類の意味)。単語の埋め込みベクトルは、似たような(あるいは同一ジャンルの)語は類似している(= コサイン類似度が 1 に近い)わけです(前回参照)。とすると、(1)~(4) の同一ジャンルの言葉は、それぞれ、
(1) good, excellent, ・・・・・・
(2) cloudy, rainy, ・・・・・・
(3) tiny, small, coarce, ・・・・・・
(4) penalty, guilty, ・・・・・・
などとなるはずです。fine がこれら4つのジャンルと類似性があるということは、fine の埋め込みベクトルおいて4つの意味が物理的に分散して配置されていると考えられます。さらにイタリア語まで考えると、
fine :
(5) 終わり
が加わります(イタリア映画の最後に出てくる語、ないしは音楽用語)。埋め込みベクトルは言語ごとに作るわけではないので、fine のベクトルはあくまで1つです。ということは、埋め込みベクトルには(この例では)5つの意味が分散して配置されているはずです。
この状況は、埋め込みベクトルから複数の \(QKV\) ベクトルを取り出し、それぞれについて独立したアテンション計算をするというアルゴリズムがマッチしていると考えられるのです。
Add & Norm
アーキテクチャの絵で5カ所にある「Add & Norm」は、ベクトルごとに「残差結合」と「レイヤー正規化」を行うレイヤーです(詳細は前回参照)。図で表すと以下です。
計算式は次のようになります。系列の \(i\) 番目を示す \(\bs{x}_i,\:\:\bs{y}_i\) の \(i\) は省略します。
\(\bs{y}=\mr{LayerNormalization}(\bs{x})\)
\(\begin{eqnarray}
&&\:\: \bs{x}=\{\:x_1, &x_2, &\cd\:, &x_D\:\}\\
&&\:\: \bs{y}=\{\:y_1, &y_2, &\cd\:, &y_D\:\}\\
\end{eqnarray}\)
\(x_k\:\:(1\leq k\leq D)\) の平均 : \(\mu\)
\(\mu=\dfrac{1}{D}\displaystyle\sum_{k=1}^{D}x_k\)
\(x_k\:\:(1\leq k\leq D)\) の標準偏差 : \(\sg\)
\(\sg=\sqrt{\dfrac{1}{D}\displaystyle\sum_{k=1}^{D}(x_k-\mu)^2}\)
とおくと、
です。ここで \(\bs{g}\) と \(\bs{b}\) は学習で決まるベクトル(=パラメータ)です。
Feed Forward Network
ベクトルごとに処理される、2層の全結合ニューラル\(\cdot\)ネットワークです。第1層の活性化関数は \(\mr{ReLU}\) で、第2層(出力層)には活性化関数がありません。3つのレイヤーで表現すると次の通りです。
ニューロンの数(=ベクトルの次元)は、
入力層:\(D\)
第1層:\(D_{ff}=4\times D\)
出力層:\(D\)
です。計算を式で表すと(系列の \(i\) 番目を示す \(\bs{x}_i,\:\:\bs{y}_i\) の \(i\) は省略)、
\(\bs{y}=\mr{ReLU}(\bs{x}\bs{W}_1+\bs{b}_1)\cdot\bs{W}_2+\bs{b}_2\)
です。第1層の次元を入力\(\cdot\)出力層の4倍にとるのは、そのようにするのが Transformer の性能(たとえば、翻訳文の質)が最も向上するからです。GPT-3、ChatGPT も踏襲しています。
Masked Multi Head Attention
デコーダ側にある Masked Multi Head Attention の説明をします。系列のトークンの列を、
\(\{\:\bs{x}_1,\:\cd\:,\:\bs{x}_{t-1},\:\bs{x}_t,\:\bs{x}_{t+1},\:\cd\:,\:\bs{x}_S\:\}\)
とし、いま \(\bs{x}_t\) に着目しているとします。
\(\bs{x}_i\:\:\:(1\leq i\leq t)\:\longrightarrow\) 過去のトークン
\(\bs{x}_i\:\:\:(t < i\leq S)\:\longrightarrow\) 未来のトークン
と呼ぶことにします。着目しているトークンを基準に、系列でそれ以前のトークンが「過去」、次以降のトークンが「未来」です。
日本語から英語に翻訳する Transformer を例にとると、デコーダの推論時には、英文のトークンを一つずつ推論していきます。つまり、
[BOS] \(\longrightarrow\) [I]
[BOS] [I] \(\longrightarrow\) [am]
[BOS] [I] [am] \(\longrightarrow\) [a]
[BOS] [I] [am] [a] \(\longrightarrow\) [cat]
[BOS] [I] [am] [a] [cat] \(\longrightarrow\) [EOS]
といった具合です(図21)。このときの各ステップにおけるアテンション処理は、当然ですが、末尾のトークンから生成済みのトークン(=過去のトークン)に対して行われます。つまり「トークンが注意を向ける先は常に過去のトークン」です。「すでに生成済みのトークンの情報だけから次にくるトークンを推論する」のがデコーダなので、これは当然です。
一方、デコーダの訓練時のことを考えると、
で(図20)、入力データとしては系列のトークンが全部与えられています。しかしここで未来のトークンに注意を向けてしまうと、推論時との不整合が起きてしまいます。そこで
という配慮が、デコーダ側のアテンション処理では必要になります。この配慮をした注意機構が Masked Multi Head Attention です。一方、エンコーダ側では、訓練時も推論時も、
[我が輩] [は] [猫] [で] [ある]
という系列が一括して与えられるので(図20、図21)、未来のトークンに注意を向けても問題ありません。またデコーダ側からエンコダー側に注意を向けるのもかまいません。
この「過去のトークンにだけ注意を向ける」ことを数式で表現するには、\([S\times S]\) のマスク行列、\(\bs{M}\) を次のように定義します。
\(\bs{M}=\left(\begin{array}{c}
0&\phantom{0}&\phantom{0}&\phantom{0}&\phantom{0}\\
\phantom{0}&\large\ddots&\phantom{0}&\huge\textrm{-}\infty&\phantom{0}\\
\phantom{0}&\phantom{0}&0&\phantom{0}&\phantom{0}\\
\phantom{0}&\huge0&\phantom{0}&\large\ddots&\phantom{0}\\
\phantom{0}&\phantom{0}&\phantom{0}&\phantom{0}&0\\
\end{array}\right)\) \([S\times S]\)
このマスク行列は、
です。これを、アテンションの計算式の \(\mr{Softmax}\) 関数の内側に足し込みます。\(h\) 番目のヘッドに着目したアテンションの計算式は、
でした。これに \(\bs{M}\) を足し込むと、
となります。\(\mr{Softmax}\) 関数は、ベクトル(上式では行列の1行)の各要素の \(\mr{exp}()\) をとります。従って、要素が \(-\infty\) だと \(\mr{exp}(-\infty)=0\) となり、\(\mr{Softmax}\) 関数にとってはその要素が無いのと同じことになります。
上式の \(\mr{Softmax}\) 関数の内側は \([S\times S]\) の行列ですが、縦方向が系列全体のクエリ・ベクトルに対応し、横方向が系列全体のキー・ベクトルに対応しています。そのため、マスク行列を足し込むと、アテンション処理において過去のトークンだけに注意が行き、未来のトークンには注意が行かない(=結果としてバリュー・ベクトルが加重和されない)ようになるのです。
こうして求めた行列 \(\bs{Y}^h\) の \(i\) 行目をベクトル、
\(\bs{y}_i^h\:\:[1\times d]\:\:(1\leq h\leq H)\)
とすると、これ以降の処理はマスク行列がない場合と同じです。つまり \(H\) 個のベクトル \([1\times d]\) を単純結合して一つのベクトル \([1\times D]\) にし、さらに Linear 変換をしてアテンション処理からの最終出力にします。
\(\bs{y}_i=\mr{Concat}(\bs{y}_i^1,\:\bs{y}_i^2,\:\cd,\:\bs{y}_i^H)\cdot\bs{W}_O\)
\(\begin{eqnarray}
&&\:\: [1\times D]&=\mr{Concat}([1\times d],\:\cd\:)\cdot[D\times D]\\
&&&=[1\times D]\cdot[D\times D]\\
\end{eqnarray}\)
わざわざ \(\mr{exp}(-\infty)\) を持ち出してマスク行列を使うのは、話をややこしくするだけのようですが、マスク行列を使った Masked Multi Head Attention の計算式を見ると、線型変換と \(\mr{Softmax}\) 関数だけからできています。ということは、「過去のトークンだけに注意を向けるアテンション計算は微分可能」であり、誤差逆伝播の計算が成り立つことがわかります。
確率生成
Transformerのデコーダの最終部分は、推論結果である \(D\) 次元のベクトルを、語彙集合の中での確率ベクトルに変換する部分です。計算式で書くと、
\(\bs{y}=\mr{Softmax}(\bs{x}\cdot\bs{W}_{\large dec})\)
\([1\times V]=\mr{Softmax}([1\times D]\cdot[D\times V])\)
です(系列の \(i\) 番目を示す \(\bs{x}_i,\:\:\bs{y}_i\) の \(i\) は省略)。\(\bs{W}_{\large dec}\) は、前回の word2vec のところに出てきた、\(D\)次元の埋め込みベクトルを \(V\) 次元の確率ベクトルに変換する行列です。
以上で Transformer のアーキテクチャの説明は終わりですが、全体を振り返ると、
ことがわかります。以降は、この中で鍵となる「アテンション」と「Feed Foward Network」についての補足です。
アテンションの意義
一般のニューラル・ネットワークにおいて、隣合った2つの層、\(\bs{x}\) と \(\bs{y}\) が同じニューロン数 \(D\) だとします。活性値を、
\(\begin{eqnarray}
&&\:\:\bs{x}=\{x_1, &x_2, &\cd\:,&x_D\}\\
&&\:\:\bs{y}=\{y_1, &y_2, &\cd\:,&y_D\}\\
\end{eqnarray}\)
とし、重み行列を \(\bs{W}\)、バイアスはなし、活性化関数を \(\mr{ReLU}\) とするると、
\(\bs{y}=\mr{ReLU}(\bs{x}\cdot\bs{W})\)
です。重み \(\bs{W}\) は誤差逆伝播法による訓練で決まり、推論時には一定の値です。Transformer のアテンション機構もこれと似ています。アテンションは、
入力ベクトル列 :\(\bs{x}_i\:\:\:(1\leq i\leq S)\)
出力ベクトル列 :\(\bs{y}_i\:\:\:(1\leq i\leq S)\)
の間の変換をする機構だからです。ニューラル\(\cdot\)ネットワークの活性値(実数値)がベクトルに置き換わったものと言えます。ヘッドが1つの場合(Single Head Attension)で図示すると、次の通りです。
しかし、この図は一般のニューラル\(\cdot\)ネットワークとは決定的に違います。重み行列 \(\bs{W}_Q,\:\:\bs{W}_K,\:\:\bs{W}_V\) は推論時には一定ですが、実際に \(\bs{x}_i\) と \(\bs{y}_i\) の関係性を決めているのは、クエリ・ベクトル \(\bs{Q}\) とキー・ベクトル \(\bs{K}\) であり、これは入力ベクトル列 \(\bs{x}_i\) の内容にもろに依存しているからです。つまり、
と言えます。\(\bs{x}_1\) の値を変えると、その影響は \(\bs{y}_i\:\:(1\leq i\leq S)\) の全体に及びます。それは、「\(x_1\) を変えると \(y_i\) の全部が変わる」という一般のニューラル\(\cdot\)ネットワークと同じではありません。一般のニューラル\(\cdot\)ネットワークを関数とみなすと、「関数は一定だが、入力が変わるから出力も変わる」のです。それに対して注意機構は「入力が変わると関数の形まで変わる」とみなすことができるでしょう。もちろん、実際には図25のように関数は一定なのですが、一般のニューラル\(\cdot\)ネットワークとの比較で言うと、そうみなせるということです。
この柔軟性とダイナミックな(動的な)性格が、Transformer に大きなアドバンテージをもたらしました。次章の GPT-3 / ChatGPT が実現している「本文中学習(In Context Learning)」はその一つです。ChatGPT では、プロンプトを変える、ないしは文言を追加すると、応答が大きく変わることがあります。また、欲しい応答の表現形式を例示したプロンプトをすると、その形式どおりのに応答がきたりします。あたかも、プロンプトからその場で学んだように見えるのが In Context Learning です。しかし、ニューラル・ネットワークのパラメータは、推論時にはあくまで一定であり、決してその場で学んでいるわけではありません。この "あたかも" を作り出しているのが "注意機構"です。
Feed Forward Network の意味
Transformer のアーキテクチャは、注意機構の後ろに Feed Forward Network(FFN) が接続され、このペアが多層に積み重ねられています。この FFN の意味は何でしょうか。
FFN は、注意機構と違ってベクトルごとの処理です。論文では "Position-wise(位置ごとの)Feed Forward Network" と書いてあります。ということは、系列の文脈には依存しないということです。つまり Transformer の訓練を通して、ベクトル(トークンの中間表現)が本来持っている性格や関連情報が、FFN の重みの中に蓄えられると考えられます。AI の専門家である、プリファードネットワークス社の共同創業者の岡野原大輔氏は、著書の『大規模言語モデルは新たな知能か』の中で次のように書いています。
岡野原氏が「多重パーセプトロン(Multi-Layer Perceptron : MLP)と書いているのは FFN のことです。ちなみに入力層(第0層)を含めて「三層」という言い方になっています。
ここで、FFN のパラメータ数を求めてみます。バイアスを無視すると、
\(\bs{W}_1\:\:[D\times D_{ff}]\)
\(\bs{W}_2\:\:[D_{ff}\times D]\)
\(D\) : 埋め込みベクトルの次元
\(D_{ff}=4D\)
なので、
FFN のパラメータ数\(=8D^2\)
です。一方、Multi Head Attention で、
\(H\) : ヘッドの数
\(d=\dfrac{D}{H}\)
とすると、\(h\)番目のヘッドの \(QKV\) を作る行列は、
\(\bs{W}_Q^h\) \([D\times d]\)
\(\bs{W}_K^h\) \([D\times d]\)
\(\bs{W}_V^h\) \([D\times d]\)
であり、これらを足すとパラメータ数は \(3Dd\) ですが、この組が \(H\) セットあるので、合計は \(3DdH=3D^2\) です。さらに、単純結合したあとの Linear 変換行列である、
\(\bs{W}_O\) \([D\times D]\)
が加わるので、結局、
MHA のパラメータ数\(=4D^2\)
です。ということは、
FFN のパラメータ数は、MHA のパラメータ数の2倍
ということになります。パラメータ数だけの単純比較はできませんが、FFN が極めて多い情報量=記憶を持っていることは確かでしょう。それが、大量の訓練データの中から関連する情報を記憶し、また推論時にそれを想起することを可能にしています。
論文のタイトルは "Attention Is All You Need" で、これは従来の機械翻訳の技術では補助的役割だった Attention を中心に据えたという意味でしょう。しかし技術の内実をみると、決して「アテンションがすべて」ではなく「アテンション機構と多重パーセプトロンの合わせ技」であり、しかもそれを多層に重ねたのが Transformer なのでした。
前回でニューラル・ネットワークの例とした多重パーセプトロンは、ニューラル・ネットワークの研究の歴史の中で最も由緒あるもので、1980年代に盛んに研究されました。それが、2010年代半ばから研究が始まった "アテンション機構" と合体して Transformer のアーキテクチャになり、さらには ChatGPT につながったのが興味深いところです。
OpenAI 社は、GPT(2018)、GPT-2(2019)、GPT-3(2020)、ChatGPT(2022)と発表してきましたが、技術内容が論文で公開されているのは GPT-3 までです。また、ChatGPT の大規模言語モデルは GPT-3 と同じ仕組みであり、大幅に学習を追加して一般公開できるようにしたのが ChatGPT です。ここではまず GPT-3 の仕組みを説明します。
GPT-3 のアーキテクチャ
GPT は Generative Pre-trained Transformer の略です。generative とは "生成型の"、pre-trained は ""事前学習済の" という意味で、Transformer は Google が 2017年に提案した Transformer を指します。
訳すると "事前学習済の生成型トランスフォーマー" となるでしょう。Transformer は「変換器」という意味でした。とすると「生成型の変換器」とは言葉が矛盾しているようですが、実は GPT は Transformer のアーキテクチャのデコーダ部分だけを使った大規模言語モデルです。だから「生成型変換器」なのです(下図)。
この「デコーダ部分だけを使う」という発想が、OpenAI の技術者の慧眼でした。デコーダだけで系列変換(機械翻訳、文章要約、質問応答、・・・・・・ )ができるはず、という発想が GPT に柔軟性と大きな能力を与えました。GPT-3 のアキテクチャーは以下のようです。
このアキテクチャーは、Transformer から「エンコーダとエンコーダ関連部分」を取り去ったものです。ただし、次が違います。
これらはいずれも、学習の安定化と高速化のための工夫です。さらに GPT-3 は Transformer に比べてモデルの規模が大きく拡大されています。
・埋め込みベクトルの次元 \(D=12288\)
\((\)Transformer \(:\:512\) の \(24\)倍\()\)
・デコーダブロックの積層数 \(N=96\)
\((\)Transformer \(:\:6\) の \(16\)倍\()\)
・アテンションのヘッドの数 \(H=96\)
\((\)Transformer \(:\:8\) の \(12\)倍\()\)
です。大規模言語モデルでは、モデルの規模と学習量の拡大を続けると、それにともなって性能(たとえば機械翻訳の精度)が上がり続けるという「スケール則」がみられました。これは一般の深層学習のニューラル\(\cdot\)ネットワークにはない特徴です。このスケール則を信じ、アーキテクチャをシンプルにしつつ、モデルの規模を「桁違いに」拡大した OpenAI 社と出資した会社(マイクロソフト)の勝利でしょう。
このアーキテクチャのパラメータ数をカウントしてみます。
とします。GPT-3 の具体的な数値は、
です(\(V\) の値については前回参照)。学習で決まる行列やベクトルを順にカウントしていくと次のとおりです。
(1) Embedding と確率生成
\(\bs{W}_{\large enc}\) \([V\times D]\)
\(\bs{W}_{\large dec}\) \([D\times V]\)
\(\rightarrow\) パラメータ数\(=2VD\)
(2) Positional Encoding
\(\bs{p}\) \([S\times D]\)
\(\rightarrow\) パラメータ数\(=SD\)
(3) Masked Multi Head Attention
\(\bs{W}_Q\) \([D\times D]\) ※
\(\bs{W}_K\) \([D\times D]\) ※
\(\bs{W}_V\) \([D\times D]\) ※
\(\bs{W}_O\) \([D\times D]\)
\(\rightarrow\) パラメータ数\(=4D^2\)
(4) Feed Forward Network
\(\rightarrow\) パラメタ数\(=8D^2+5D\)
(5) Layer Nomaliation (2レイヤー)
\(\bs{g}\) \([1\times D]\)
\(\bs{b}\) \([1\times D]\)
\(\rightarrow\) パラメタ数\(=2\times2D=4D\)
(3), (4), (5) は \(\times\:N\) に積層されていることに注意して総パラメータ数を計算すると、
総パラメータ数
\(=\:2VD+SD+N(4D^2+8D^2+5D+4D)\)
\(=\:2VD+SD+N(12D^2+9D)\)
\(=\) \(\bs{175,217,074,176}\)
となり、約 1752億となります。一般に言われているパラメータ数が 1750億というのは、英語の 175B(B = Billion = 10億)の日本語訳で、Billion 単位にしたパラメータ数です。
GPT-3 が系列の次のトークンを推論するとき、1752億のパラメータの全てを使った演算が行われます(図21)。40文字の日本語文章を 60トークンだとすると、 わずか 40文字の日本語文章を生成するために、1752億のパラメータの全てを使った演算が 60回行われるということです。
また、1752億のパラメータがすべて 32ビットの浮動小数点数(4バイト)だとすると、パラメータのためだけに、
653ギガバイト(1ギガ = \(1024^3\) 換算)
のメモリが必要になります。業務用コンピュータ・システムの開発経験者ならわかると思いますが、これだけのデータ量を常時抱えつつ、更新やリアルタイムの推論を行うシステムを開発・運用するのは、ちゃんとやればできるでしょうが、かなり大変そうな感じです。
GPT-3 のアーキテクチャを振り返ってみると、Transformer のデコーダ部分だけを採用したことによる、Transformer との違いがあることに気づきます。それは、
ことです。言うまでもなく、アテンション機構は Transformer / GPT-3 の "キモ" です。そのキモのところに違いがある。
人間の言語活動(発話・文章作成)では「過去の単語との整合性を考慮しつつ、未来の単語を想定して次の単語を決める」ことが多々あります。このことは、機械翻訳では、翻訳前の「原文」を処理するエンコーダ側の「過去と未来の両方に注意を向けるアテンション機構」で実現されています(Mask がない Multi Head Attention)。
しかし GPT-3 では様子が違ってきます。事前学習(次項)だけの GPT-3 で機械翻訳がなぜできるかというと、
[ 原文 ] を翻訳すると [ 翻訳文 ] です
といった対訳(に相当するデータ)が訓練データの中に多数あるからです(GPT-2 の論文による)。この「原文」の部分のアテンション処理において、「原文」の中の未来の単語に注意が向くことはありません(Masked Multi Head Attention しかないから)。このことにより翻訳の精度が Transformer とは違ってくる(精度が落ちる)と想定できます。
こういった "問題" は、大規模言語モデルを "超大規模" にすることで解決するというのが、GPT-3 の開発方針だと考えられます。1752億という膨大なパラメータ数が、それを表しています。
GPT-3 の訓練
GPT-3 の訓練は、
・WebText
・電子ブック
・Wikipedia
をもとに行われました。WebText は "訓練に使うべきではない" テキストを除外してあります。集められたテキストの量はトークンの数でカウントすると、
です。これらのテキストからランダムに選んだミニバッチを作り、「ミニバッチ勾配降下法」(前回参照)で訓練が行われました。但し、Wikipedia などの "信頼性が高いテキスト" は、より多くミニバッチに選ばれるような工夫がしてあります。訓練は、使われたテキストが、トークン数で延べ \(3000\)億になったところで打ち切られました。
訓練は、Transformer のデコーダのところでで説明したように「ひたすら次のトークンの予測をする」というものです。この「次のトークンの予測」について補足しますと、前回、GPT のトークン化のロジックである BPE(Byte Pair Encoding)のことを書きました。これによると、UTF-8 では改行も空白も文字として扱われるので、改行、空白のそれぞれにトークンID が割り当てられることになります。
これから言えることは、テキストを学習するということは、その意味内容だけでなく、テキストの表現形式も学習するということです。つまり、段落、字下げ、箇条書きなどの形式です。訓練が終わった 1752億のパラメータには、そういった "表現形式に関する知識" も含まれていることに注意すべきでしょう。
以上のように、一般的に入手できるテキストだけを使ってニューラル・ネットワークを訓練することを「事前学習」と言います。このような事前学習を行った上で、機械翻訳や質問応答などのタスク別に専用に作成した訓練データで「目的別学習」を行うのが、言語モデルの定番の学習手法です。あらかじめ事前学習を行った方が言語モデルの性能が良くなるからです。目的別学習を "ファイン・チューニング" と言います。
GPT-3 は、それまでの GPT、GPT-2 と違って、ファイン・チューニングなしの言語モデルを狙ったものです。つまり、
と言えるでしょう。実際 GPT-3 は、ファイン・チューニングを行った言語モデルと比較しても、"そこそこの"、ないしは "同等の" 性能であることが分かりました。もちろんファイン・チューニング済の言語モデルに劣るタスクも多々あります。しかし全体としては "そこそこの" 性能を示します。「ニューラル・ネットワークの超大規模化」と「大量の訓練データ」によってそれが可能であることを、GPT-3 は示したのでした。
ChatGPT
ChatGPT は GPT-3 のアーキテクチャと事前学習をもとに、さらに「目標駆動型学習」を追加したものです。ここでの目標駆動型学習とは「人間にとって好ましい応答の例を人間が作り、それを目標として、そこに近づくように学習する」という意味です。OpenAI 社は RLHF(Reinforcement Learning by Human Feedback:人間のフィードバックによる強化学習)と呼んでいます。これは一種のファイン・チューニングであると言えます。
この、目標駆動型学習をどうやるか、その詳細が OpenAI 社のノウハウでしょう。考えてみると、GPT-3 の(従って ChatGPT の)アーキテクチャはシンプルあり、これをシステム上に実現するのは、コンピュータ技術とAI技術、ハードウェアの調達(特にGPU)、そしてお金の問題です。事前学習に使う WebText にしても、世界中から集めて公開している団体があります(GPT-3 でも使われた Common Crawl)。お金がある(かつ投資意欲がある)大手IT企業なら、システム構築は難しくない。
しかし「人手で作った訓練データをもとに、人にとって違和感がない対話ができるまでに訓練する」のは、Transformer の性質や "癖 を熟知していないとできないと考えられます。そこにノウハウがあるはずです。
その目標駆動型学習の概要を、先ほど引用した岡野原氏の「大規模言語モデルは新たな知能か」では、次のような3つのステップで説明しています。この説明は専門用語を最小にした簡潔なものなので、以降これに沿って書きます。
この岡野原氏の説明を読み解くと、次のようになるでしょう。ラベラーとは訓練データ(教師ラベル)を作る人の意味です。
第1ステップは、機械学習の分野でいう「教師あり学習」です。ここで具体的にどのような訓練をしたのかは、OpenAI 社も公表していません。推測すると「望ましい対話」の例には、人間の質問に「答えられません」や「できません」と応答する訓練データも多数あるのではと思います。たとえば「反社会的行為を助長するような質問」の場合(爆弾の作り方など)です。
さらにこの第1ステップでは、特定のタイプのプロンプトに対して、あたかも ChatGPT が感情をもっているかのように応答する訓練が可能なはずです。それが「望ましい対話」だと OpenAI が判断すればそうなります。
第2ステップは2つのフェーズに分かれています。第1フェーズは、人手によるランキングの作成です。このとき「複数の異なるモデル」を使います。モデルとは言語モデルのことです。実は、GPT-3 を開発する過程においても、パラメータ数の違う複数の言語モデルが開発されていて、最終的に公開されたのが GPT-3 です。またパラメータ数が同じでも、訓練のやり方が違うとパラメータの値が違うので、モデルとしては別です。
このような複数の異なるモデルを選び(4つとします)、同じ入力(プロンプト。\(P\) で表します)に対して、4つの違った応答、\(A,\:B,\:C,\:D\) を得ます。ラベラーは、この \(P/A,\:P/B,\:P/C,\:P/D\) という4つの「プロンプト \(/\) 応答」にランク付けします( \(/\) はプロンプトのあとに応答が続くという意味です)。ランク付けが仮に、
\(P/A\: > \:P/B\: > \:P/C\: > \:P/D\)
だとします。現実問題としては4つのランク付けは難しいので、2つずつの6つのペアについて、どちらが良いかを決めます。ランク付けの基準について岡野原氏は書いていないのですが、OpenAI 社の公開資料によると、
・嘘やデマを含まない
・差別的・攻撃的な内容を含まない
・ユーザの役に立つ
という基準です。このような「ランク付けデータ」を大量に準備します。これは人に頼る "人海戦術" しかないので、アウトソーシングしたとしてもコストがかかります。
第2ステップの第2フェーズは、ランキングのデータをもとに自動評価システムを作ることが目的です。データを入力して評価値(強化学習の用語でいうと "報酬")を出力する関数(=自動評価システム)を \(\mr{Score}()\) と書くと、
\(\mr{Score}(P/A) > \mr{Score}(P/B) > \mr{Score}(P/C) > \mr{Score}(P/D)\)
となるように関数を決めます。これはニューラル・ネットワークを使って、訓練を繰り返して決めます(強化学習の用語で "報酬モデル")。ここで岡野原氏が指摘しているのは、\(\mr{Score}\) 関数への入力は、
だということです。従って、\(\mr{Score}(P/A)\) は、
\(\mr{Score}(\mr{InnerState}(P/A))\)
と書くべきでしょう。これによって「高精度に評価を推定できる」というのが岡野原氏の説明です。
第3ステップでは、この自動評価システムを使って、プロンプトに対する応答の評価値が最も高くなるように強化学習を行います。このステップには人手を介した評価はないので、大量のプロンプトで学習することができます。
ここで、言語モデル \(\al\) の内部状態を入力とする自動評価システムを \(\mr{Score}_{\large\:\al}\) とし、言語モデル \(\al\) を上記のように訓練した結果、言語モデル \(\beta\) になったとします。すると、同じ「プロンプト/応答」を投入したときの内部状態が、2つの言語モデルで違ってきます。つまり、
\(\mr{InnerState}_{\large\:\al}(P/A)\neq\mr{InnerState}_{\large\:\beta}(P/A)\)
です。ということは、
ことになります。つまり「第2ステップの第2フェーズ」と「第3ステップ」をループさせて繰り返すことができる。このとき、ラベラーが作ったランキングデータはそのまま使えます。このランキングが絶対評価ではなく相対評価だからです。以上のことから、
と言えます。岡野原氏が言っている「高精度に評価を推定できる」とは、こういった "共進化" も含めてのことだと考えられます。このように、目標駆動型学習で鍵となるのは、この「高精度の自動評価システム」です。
補足しますと、ChatGPT が公開された後は、利用者の実際のプロンプトとそれに対する ChatGPT の応答を膨大に集積できます(利用者が拒否しなければ)。この実際の「プロンプト/応答」データの中から自動評価システムの評価が低いものだけを集め、プロンプトへの応答の評価が高くなるように ChatGPT の強化学習ができることになります。ChatGPT から "でたらめな" 応答を引き出そうとする(そして成功すれば喜ぶ)人は多いでしょうから、強化学習のためのデータにはこと欠かないはずです。
以上が、岡野原氏の説明の "読み解き" です。
ここまでをまとめると、次のようになるでしょう。
このような GPT-3 の仕組みでは、計算や論理的推論は本質的にできません。簡単な計算(2桁整数同士のたし算、2次方程式を解くなど)ができる(ように見える)のは、それが訓練データにあるからです。また、正しい論理的推論ができたとしたら、類似の推論が訓練データの中にあるからです。
とはいえ、ChatGPT はバックに語と語の関係性についての膨大な "知識" をもっていて、それによって "規則性" や "ルール" の認識が内部にできているはずです。その中には「人が気づかない」「暗黙の」「意外なもの」があってもおかしくない。それにより、蓄積した知識を "混ぜ合わせて" 正しい推論、ないしは発見的な推論がきることもあり得るはずです。
さらに、人が普段話すのと同じように話せば、その膨大な "知識" が活用できるのは多大なメリットでしょう。もちろん "悪用" される可能性はいつでもありますが、そのことを踏まえつつ、使い方の発見や検討が今後も進むのでしょう。
人の問いかけに対する ChatGPT の応答は、いかにも人らしいものです。もちろん間違いや、変な答え、明らかに事実とは違う応答もあります。しかし、世界中から集めた知識の量は膨大で、言語の壁も越えています。
その "知識" は(GPT-3, ChatGPT では)1752億個のパラメータの中に埋め込まれています。量は膨大ですが、それを処理する仕組みはシンプルです。なぜこれでうまくいくのか、そこが驚異だし、その理由を理解することは難しいでしょう。
もちろん、その中身を解明しようとする研究は進むでしょうが、"理解" は難しいのではと思われます。というのも、「比較的シンプルな記述による、人にフレンドリーな説明」でないと、人は "理解" したとは思わないからです。
しかし考えてみると、我々が言語(母語)を習得でき、かつ自在に扱えるのはなぜか、その脳の働きは、Transformer / ChatGPT と極めて似ているのではないでしょうか。
前回の冒頭で紹介したように、慶応義塾大学の今井教授は、「ChatGPT の仕組み(=注意機構)は、幼児が言語を学習するプロセスと類似している」と指摘していました。今井教授は幼児の言語発達を研究する専門家なのでこの指摘になるのですが、実は Transformer / ChatGPT のやっていることは、幼児のみならず、我々が言葉(母語)を理解してきた(現に理解している)やりかたと酷似していることに気づきます。それは、
という言語理解のありようです。もちろん(外からの指摘による)「好ましくない言葉の使い方」であれば訂正します。しかし、学び方も含めて、我々は内発的・創発的に言葉を理解しています。それが我々の脳の働きの重要な一面です。
前回、Transformer がタンパク質の機能分析に使える(可能性がある)ことを書きましたが、さらにヒトの脳の(ある脳領域の)解明に役立つこともありそうです。
大規模言語モデルの外面的な機能は驚異的ですが、さらにその内部の「仕組み」を理解することで、その応用範囲が極めて広いことがわかるのでした。
(前回より続く)
この記事は、No.365「高校数学で理解する ChatGPT の仕組み(1)」の続きです。記号の使い方、用語の定義、ニューラル・ネットワークの基本事項、単語の分散表現などは、前回の内容を踏まえています。 |
3.Transformer |
Attention Is All You Need
Google社は、2017年に "Attention Is All You Need" という論文(以下、"論文" と記述)を発表し、"Transformer" という画期的な技術を提案しました。Transformer は機械翻訳で当時の世界最高性能を発揮し、これが OpenAI 社の GPT シリーズや ChatGPT につながりました。
Attention(アテンション)とは "注意" という意味で、Transformer に取り入れられている "注意機構"(Attetion mechanism)を指します。"Attention Is All You Need" を直訳すると、
「必要なのはアテンションだけ」
ですが、少々意訳すると、
「アテンションこそがすべて」
となるでしょう(蛇足ですが、ビートルズの "All You Need Is Love" を連想させる論文タイトルです)。
Transformer を訳すと "変換器" ですが、その名の通り「系列 A から系列 B への変換」を行います。系列 A = 日本語、系列 B = 英語、とすると和文英訳になります。第3章では、この Transformer の仕組みを説明をします。
全体のアーキテクチャ
Transformer のアーキテクチャの全体像が次図です(論文より)。以降、この絵の意味を順に説明します。
図18:Transformer のアーキテクチャ |
アーキテクチャを簡略化して書くと次のようになります。以下では「日本語 → 英語の機械翻訳」を例として Transformer の動作を説明します。
図19:アーキテクチャの簡略図 |
左側がエンコーダで、入力された日本語テキストを中間表現(=テキストの特徴を抽出した内部表現)に変換します。右側のデコーダは、中間表現を参照しつつ「次に生成すべき英単語」を推論します。
エンコーダ、デコーダとも、図で「ブロック」と書いた単位を積層した構造です。つまり、1つのブロックの出力が次のブロックへの入力になります。アーキテクチャの絵で「N x」と書いてあるのはその積層の意味(= N 倍)で、積層する数を \(N\) とすると、Transformer では、
\(N=6\)
です。エンコーダの中間表現は最終ブロックからの出力です。その出力がデコーダの全てのブロックへ伝わります。
訓練
多数の「日本語 \(\rightarrow\) 英語の翻訳データ」を用いて Transformer を訓練するとき、全体がどのように動くかを示したのが次の図です。
図20:Transformerの動作(訓練時) |
エンコーダには日本語の文(Input)が入力されます。デコーダからの出力は、英文の推論結果(確率)です。これを正しい英文(Output = 教師ラベル)と照らし合わして損失(交差エントロピー誤差)を計算し、誤差逆伝播を行ってニューラル・ネットワークの重みを更新します(前回参照)。デコーダの入力となるのは「右に1語だけずらした Output」です。アーキテクチャの図18 で shifted right と書いてあるのはその意味です。なお、実際に入力されるのは単語ではなくトークンの列です(前回参照)。
推論
訓練を終えた Transformer を使って日本語文を英語文に機械翻訳するときの動きは次図です。
図21:Transformerの動作(推論時) |
エンコーダに日本語のテキストを入力し、中間表現を得ます。これは1回きりです。
デコーダには、生成すべき英語テキストの最初のトークン、[BOS](文の始まりを示す特殊トークン)を入力し、[BOS] の次にくるべきトークンの確率を推論します。最も確率が高いトークンを選ぶと [I] になるはずです。これが1回目の推論(#1)です。
2回目(#2)では [I] を入力し、[I] の次のトークンを推論します([am] となるはずです)。[BOS] から [I] を推論したときの情報はデコーダに残されているので、その部分を再計算する必要はありません。推論のためには、日本語文の全情報(エンコーダの中間表現)と、既に生成した英文([BOS] [I])を参照します。
このようにして順々に英文を生成していき、推論結果が [EOS](文の終了を示す特殊トークン)になるところで、翻訳が終了します。
アーキテクチャの詳細
用語と記号
トークンの語彙
トークンの語彙(vocabulary)のサイズ を \(V\) とします。トークンを識別する "トークンID" は \(1\)~\(V\) の数字です。
系列
Transformer への入力となるテキストは、Tokenizer でトークンID の列に変換されます。以降、Transformer への入力を "系列(sequece)" と呼びます。
系列はその最大サイズ \(S\) が決まっています(普通、数千程度)。入力が \(S\) より少ない場合、残りのトークンは無効トークン([PAD])としておき、そこの処理は回避するようにします。[PAD] を含めて、系列は長さ \(\bs{S}\) の固定長とします。
系列\(=\{\:t_1,\:t_2,\:\cd\:,\:t_S\:\}\)
\(t_i\):トークンID \((1\leq t_i\leq V)\)
Transformer の論文には語彙のサイズと系列のサイズが書いてありませんが、以降の説明では \(V\) と \(S\) を使います。
分散表現ベクトル
トークンの分散表現ベクトル(埋め込みベクトル)の次元を \(D\) とします。トークンID が \(t_i\) であるトークンの分散表現を \(\bs{x}_i\) とすると、
\(\bs{x}_i=\left(\begin{array}{r}x_1&x_2&\cd&x_D\\\end{array}\right)\) \([1\times D]\)
というようになり、系列をベクトル列で表現すると、
系列\(=\{\:\bs{x}_1,\:\bs{x}_2,\:\cd\:,\:\bs{x}_S\:\}\)
となります。なお、\(D\) 次元ベクトルを、\(1\)行 \(D\)列の配列とし、\([1\times D]\) で表わします(前回参照)。
なお、Transformer では \(D=512\) です。
以降、全体アーキテクチャの図に沿って、各レイヤー(計算処理)の説明をします。以降の説明での \(\bs{x}_i,\:\:\bs{y}_i\) は、
\(\bs{x}_i\):レイヤーへの入力
(系列の \(i\) 番目。\(1\leq i\leq S\))
\(\bs{y}_i\):レイヤーからの出力
(系列の \(i\) 番目。\(1\leq i\leq S\))
で、すべてのレイヤーに共通です。また、\(D\) 次元ベクトルを \([1\times D]\)、\(S\)行 \(D\)列の行列を \([S\times D]\) と書きます。
埋め込みベクトルの生成
このレイヤーの入出力を、
トークンID を one hot ベクトルにしたもの \([1\times V]\) | |
埋め込みベクトル \([1\times D]\) |
とすると、
\(\bs{y}_i=\bs{x}_i\cdot\bs{W}_{\large enc}\)
\([1\times D]=[1\times V]\cdot[V\times D]\)
で表現できます(前回の word2vec 参照)。もちろん、この行列演算を実際にする必要はなく、\(\bs{x}_i\) のトークンID を \(t_i\) とすると、
\(\bs{y}_i=\bs{W}_{\large enc}\) の \(t_i\) 行
です。\(\bs{W}_{\large enc}\) は Transformer の訓練を始める前に、あらかじめ(ニューラル・ネットワークを用いて)作成しておきます。従って、埋め込みベクトルの作成はテーブルの参照処理(table lookup)です。
位置エンコーディング
埋め込みベクトル(分散表現)に、トークンの位置を表す「位置符号ベクトル」を加算します。つまり、
\(\bs{x}_i\):埋め込みベクトル | \([1\times D]\) | |
\(\bs{p}_i\):位置符号ベクトル | \([1\times D]\) | |
\(\bs{y}_i\):位置符号加算ベクトル | \([1\times D]\) |
とすると、
\(\bs{y}_i=\bs{x}_i+\bs{p}_i\:\:\:(1\leq i\leq S)\)
\([1\times D]=[1\times D]+[1\times D]\)
の単純加算です。位置符号ベクトル \(\bs{p}_i\) の要素を次の記号で表します。
\(p_{t,d}\)
\(t\) は \(0\) から始まる、トークンの位置
\((t=i-1,\:\:0\leq t\leq S-1)\)
\(d\) は \(0\) から始まる、ベクトル内の要素の位置
\((0\leq d\leq D-1)\)
この \(p_{t,d}\) の値は次のように定義されます。
\(p_{t,2k}\) | \(=\mr{sin}\left(\dfrac{1}{10000^x}\cdot t\right)\) | |
\(p_{t,2k+1}\) | \(=\mr{cos}\left(\dfrac{1}{10000^x}\cdot t\right)\) |
\((0\leq k < \dfrac{D}{2},\:\:\:x=\dfrac{2k}{D},\:\:\:0\leq x < 1)\)
つまり、\(D=512\) とすると、
\(d\) が偶数の要素位置では \(\mr{sin}\) 波
(\(d=0,\:2,\:4,\:\cd\:,510\))
\(d\) が奇数の要素位置では \(\mr{cos}\) 波
(\(d=1,\:3,\:5\:\:\cd\:,511\))
で位置符号値を決めます。この \(\mr{sin}/\mr{cos}\)波の波長 λ は
λ\(=2\pi\cdot10000^x\)
であり、\(0\leq d < D\) の範囲で、
\(2\pi\leq\)λ\( < 2\pi\cdot10000\)
となります。この \(\mr{sin}/\mr{cos}\) 波を図示してみます。グラフをわかりやすくするために、\(D=512\) ではなく、
\(D=32\)
とし、ベクトルの要素 \(32\)個のうちの最初の6つ、
\(d=0,\:1,\:2,\:3,\:4,\:5\)
だけのグラフにします。グラフの
・横軸はトークンの位置 \(t\)
・縦軸は位置符号ベクトルの要素 \(p_{t,d}\)
です。
図22:位置符号値を計算するための正弦・余弦波 |
図の黒丸は、\(t=3\) の位置符号ベクトルの、要素\(0\)~要素\(5\)(\(0\leq d\leq5\))を示す。 |
具体的に \(t=3\) のときのベクトルの要素 \(p_{3,d}\:\:(0\leq d\leq31)\) の \(0\leq d\leq5\) の部分を書いてみると、
\(p_{3,0}=\phantom{-}0.1411\)
\(p_{3,1}=-0.9900\)
\(p_{3,2}=\phantom{-}0.9933\)
\(p_{3,3}=-0.1160\)
\(p_{3,4}=\phantom{-}0.8126\)
\(p_{3,5}=\phantom{-}0.5828\)
となります(図22)。
言うまでもなく、言語モデルにとってトークンの位置はきわめて重要な情報です。位置をバラバラにすると意味をなさないテキストになるし、Bob loves Alice と Alice loves Bob では意味が逆です。従って、何らかの手段で「トークンの位置を考慮したモデル化」をしなければならない。
\(\bs{y}_i=\bs{x}_i+\bs{p}_i\:\:\:(1\leq i\leq S)\)
の式で、\(\bs{x}_i\) は「単語埋め込み」のアルゴリズムで作られ、似たような単語/トークンは類似したベクトルになります(前回参照)。それに対し \(\bs{p}_i\) の \(\mr{sin}/\mr{cos}\) 波は、言語処理とは全く無関係な数学の産物です。従って、加算結果である \(\bs{y}_i\) がどのような「意味」をもつベクトルなのか、説明しようとしても無理でしょう。全く異質なものの足し算をしているのだから ・・・・・・。それでいて、このやり方で全体として成り立つのが驚きです。
Transformer より以前の機械翻訳では、トークンの出現順に逐次処理をするアーキテクチャでした。つまり、1つのトークンの処理結果を利用しながら次のトークンを処理するという逐次処理によって、並び順に意味があるという言語の特質を捕らえていました。
それに対し、位置エンコーディングを取り入れた Transformer では、逐次処理の必要性がなくなり、系列のトークン全部の並列処理が可能になりました。この結果、同一計算の超並列処理ができる GPU(数千並列が可能) をフルに活用することで、実用的な大規模言語モデルが構築できるようになったわけです。位置エンコーディングにはそういう意味があります。
なお Transformer の論文にも書いてあるのですが、位置符号ベクトルを \(\mr{sin}/\mr{cos}\) 波のような「決めうち」で作らないで、「学習可能なパラメータ」としておき、Transformer を訓練する過程で決めるやり方があります。位置符号ベクトルを学習で決めるわけです。GPT はこの方法をとっています。
Single Head Attention : SHA
アテンション・レイヤー(Multi Head Attention : MHA)の説明をするために、まず "Single Head Attention : SHA" の処理論理を説明します。Transformer で実際に使われている MHA は、以下に説明する SHA の拡張版で、核となるアルゴリズムは同じです。
SHAの入出力は、それぞれ \(S\)個の \(D\)次元ベクトルであり、
入力 \(\bs{x}_i\:\:[1\times D]\:\:(1\leq i\leq S)\)
出力 \(\bs{y}_i\:\:[1\times D]\:\:(1\leq i\leq S)\)
ですが、系列の全体を1つの行列で表すことができます。1つのベクトルを行列の1行として、それを縦方向に \(S\)個並べて行列を作ります。つまり、
入力 \(\bs{X}\:\:[S\times D]\) (\(i\) 番目の行が \(\bs{x}_i\))
出力 \(\bs{Y}\:\:[S\times D]\) (\(i\) 番目の行が \(\bs{y}_i\))
とすると SHA は、
\(\bs{Y}=\mr{SHA}(\bs{X})\)
と書けます。アテンションの処理では、まず入力ベクトル \(\bs{x}_i\) を、
◆クエリ・ベクトル | \(\bs{q}_i\)(query:問合わせ) | |
◆キー・ベクトル | \(\bs{k}_i\)(key:鍵) | |
◆バリュー・ベクトル | \(\bs{v}_i\)(value:値) |
の組、( \(\bs{q}_i,\:\:\bs{k}_i,\:\:\bs{v}_i\) )に変換します。変換式は次の通りです。
\(\bs{q}_i=\bs{x}_i\cdot\bs{W}_Q\:\:\:(1\leq i\leq S)\) \(\bs{k}_i=\bs{x}_i\cdot\bs{W}_K\:\:\:(1\leq i\leq S)\) \(\bs{v}_i=\bs{x}_i\cdot\bs{W}_V\:\:\:(1\leq i\leq S)\) \([1\times D]=[1\times D]\cdot[D\times D]\) |
ここで、\(\bs{W}_Q,\:\:\bs{W}_K,\:\:\bs{W}_V\) は学習で決まる変換行列です。系列全体についての Query/Key/Value(\(QKV\))を行列の形で表すと、
\(\bs{Q}=\bs{X}\cdot\bs{W}_Q\) \(\bs{K}=\bs{X}\cdot\bs{W}_K\) \(\bs{V}=\bs{X}\cdot\bs{W}_V\) \([S\times D]=[S\times D]\cdot[D\times D]\) |
となります。SHA レイヤーからの出力、\(\bs{y}_i\:\:[1\times D]\) は、\(S\)個のバリュー・ベクトル \(\bs{v}_j\:\:(1\leq j\leq S)\) の "重み付き和" (加重和)で求めます。加重和に使う重み、\(\bs{w}_i\:\:[1\times S]\) は次のように計算されます。
まず、クエリ・ベクトル \(\bs{q}_i\) とキー・ベクトル \(\bs{k}_j\:\:(1\leq j\leq S)\) の "スケール化内積(scaled dot product)" を計算し、\(S\)個のスカラー値を求めます。スケール化内積(\(\mr{SDP}\) と記述します)とは、2つの \(D\)次元ベクトル \(\bs{a}\) と \(\bs{b}\) の場合、
\(\mr{SDP}(\bs{a},\bs{b})=\dfrac{1}{\sqrt{D}}\bs{a}\bs{b}^T\)
\([1\times1]=[1\times D]\cdot[D\times1]\)
で定義されます。つまり、一般の内積(=スカラー値)を「ベクトルの次元数の平方根」で割ったものです。
\(\bs{q}_i\) と \(\bs{k}_j\:\:(1\leq j\leq S)\) のスケール化内積を順番に \(S\)個並べたベクトルを \(\bs{s}_i\:\:[1\times S]\) と書くと、スケール化内積の定義によって、
\(\bs{s}_i=\dfrac{1}{\sqrt{D}}\bs{q}_i\bs{K}^T\)
\([1\times S]=[1\times D]\cdot[D\times S]\)
です。そして、加重和を求めるときの重み \(\bs{w}_i\) は、
\(\bs{w}_i=\mr{Softmax}(\bs{s}_i)\)
\([1\times S]=\mr{Softmax}([1\times S])\)
とします。この \(S\)次元の重みベクトルを使って、\(S\)個のバリュー・ベクトル \(\bs{v}_j\:\:(1\leq j\leq S)\) の加重和をとると、出力ベクトル \(\bs{y}_i\) は、
\(\bs{y}_i=\bs{w}_i\cdot\bs{V}\)
\([1\times D]=[1\times S]\cdot[S\times D]\)
となります。以上の計算プロセスを一つの式で書いてしまうと、
\(\bs{y}_i=\mr{Softmax}\left(\dfrac{1}{\sqrt{D}}\bs{q}_i\cdot\bs{K}^T\right)\cdot\bs{V}\) \([1\times D]=\mr{Softmax}([1\times D]\cdot[D\times S])\cdot[S\times D]\) |
です。従って、SHA からの出力ベクトル \(\bs{y}_i\) を縦方向に並べた行列 \(\bs{Y}\) は、
\(\bs{Y}=\mr{Softmax}\left(\dfrac{1}{\sqrt{D}}\bs{Q}\cdot\bs{K}^T\right)\cdot\bs{V}\)
\([S\times D]=\mr{Softmax}([S\times D]\cdot[D\times S])\cdot[S\times D]\)
と表すことがきます。この表記で \(\mr{Softmax}\) 関数が作用するのは \([S\times S]\) の行列ですが、\(S\)個の行ごとに \(\bs{\mr{Softmax}}\) を計算します。
単なる内積ではなく「スケール化内積」を使う理由ですが、2つのベクトルの内積は、要素同士のかけ算を次元数 \(D\) 個だけ加算したものです。従って、ベクトル \(\bs{s}_i\) を、シンプルな内積を使って、
\(\bs{s}_i\:=\bs{q}_i\cdot\bs{K}^T\)
のように定義し、重み \(\bs{w}_i\) を、
\(\bs{w}_i=\mr{Softmax}(\bs{s}_i)\)
で求めると、\(D\) が大きいと \(\bs{s}_i\) の要素が大きくなり、その結果として \(\bs{w}_i\) はゼロに近いところに多くの要素が集まるようになります。これは \(\mr{Softmax}\) 関数の性質によります(前回参照)。こうなると勾配消失が起きやすくなり、訓練が収束しづらくなります。そのため「スケール化」するというのが論文の説明です。
もちろん、幾多の試行錯誤があり、その結果として決まったのが「スケール化内積で加重和の重みを計算する」というやり方だったのでしょう。
以上の計算でわかるように、注意機構(Attention machanism)とは、あるトークンを処理するときに、注意を向けるべきトークンと注意の強さを決め(それ自体が学習で決まる)、注意を向けた先の情報を集めてきて集積するものです。
しかも、注意機構は6層(\(N=6\)) に重ねられています。ということは、階層的な(多段階の) "注意の向け方" ができることになります。また、言語における単語と単語の関係性は多様です。動作\(\cdot\)動作主体、修飾\(\cdot\)被修飾、指示代名詞と指示されるもの(照応関係)など多岐に渡ります。それらのさまざまなタイプの関係性を、Transformer の訓練を通して、多層の注意機構が自動的に把握すると考えられるのです。
MHA : Multi Head Attention
SHA では、入力ベクトル \(\bs{x}_i\) から、1組の Query/Key/Value(\(QKV\)) ベクトルを抽出しましたが、Transformer で実際に使われているのは、
1つの入力ベクトル \(\bs{x}_i\) から、複数組の違った \(\bs{QKV}\) ベクトルを抽出し、 | |
それぞれについて独立に SHA と同等のアテンション処理をし、 | |
処理結果を単純結合(Concatenation)し、 | |
最後に線型変換をして出力ベクトルに \(\bs{y}_i\) する |
という処理です。これを Multi Head Attention : MHA と呼びます。この「それぞれについてのアテンション処理」のことを "head(ヘッド)" と言います。複数の head なので Multi Head です。このヘッドの数を \(H\) とし、
\(d=\dfrac{D}{H}\) (\(D\) は入出力ベクトルの次元)
とします(\(H\) は \(d\) が整数になるように選びます)。このとき、
\(\bs{x}_i\:\:[1\times D]\) から抽出される(複数組の)\(QKV\) ベクトルの次元はすべて \([1\times d]\)
です。つまり MHA は「複数の特徴を抽出し(一つの情報量は SHA より少ない)、それぞれの特徴について 独立した "注意機構" を働かせ、最後に統合してまとめる」仕組みです。なお、Transformer では、
\(H=8\)
\(d=\dfrac{D}{H}=\dfrac{512}{8}=64\)
です。
\(h\) 番目のヘッド \((1\leq h\leq H)\) に着目し、"注意機構" の計算プロセスを式で書くと、次のようになります。まず、\(h\) 番目のヘッドの \(QKV\) ベクトルの計算は、
\(\bs{q}_i^h=\bs{x}_i\cdot\bs{W}_Q^h\:\:\:(1\leq i\leq S,\:\:1\leq h\leq H)\) \(\bs{k}_i^h=\bs{x}_i\cdot\bs{W}_K^h\:\:\:(1\leq i\leq S,\:\:1\leq h\leq H)\) \(\bs{v}_i^h=\bs{x}_i\cdot\bs{W}_V^h\:\:\:(1\leq i\leq S,\:\:1\leq h\leq H)\) \([1\times d]=[1\times D]\cdot[D\times d]\) |
です。系列全体について、\(h\) 番目のヘッドの \(QKV\) を行列の形で表すと、
\(\bs{Q}^h=\bs{X}\cdot\bs{W}_Q^h\) \(\bs{K}^h=\bs{X}\cdot\bs{W}_K^h\) \(\bs{V}^h=\bs{X}\cdot\bs{W}_V^h\) \([S\times d]=[S\times D]\cdot[D\times d]\) |
です。\(h\) 番目のヘッドのアテンション処理は、SHA の場合と同様で、
\(\bs{y}_i^h=\mr{Softmax}\left(\dfrac{1}{\sqrt{d}}\bs{q}_i^h\cdot(\bs{K}^h)^T\right)\cdot\bs{V}^h\) \([1\times d]=\mr{Softmax}([1\times d]\cdot[d\times S])\cdot[S\times d]\) |
となり、これを系列全体での表現にすると、
\(\bs{Y}^h=\mr{Softmax}\left(\dfrac{1}{\sqrt{d}}\bs{Q}^h\cdot(\bs{K}^h)^T\right)\cdot\bs{V}^h\) \([S\times d]=\mr{Softmax}([S\times d]\cdot[d\times S])\cdot[S\times d]\) |
となります。行列 \(\bs{Y}^h\) は、\(h\) 番目のヘッドの出力ベクトル \(\bs{y}_i^h\:\:[1\times d]\) を、系列の数だけ縦に並べた行列です。
系列の \(i\) 番目の入力 \(\bs{x}_i\) に対する \(H\) 個の出力ベクトル
\(\bs{y}_i^h\:\:[1\times d]\:\:(1\leq h\leq H)\)
が求まったところで、これら \(H\) 個を単純結合して(=順に並べる)一つのベクトルにし、さらに Linear 変換をして最終出力にします。変換に使う行列は \(\bs{W}_O\:\:[D\times D]\) です。
\(\bs{y}_i=\mr{Concat}(\bs{y}_i^1,\:\bs{y}_i^2,\:\cd,\:\bs{y}_i^H)\cdot\bs{W}_O\) \(\begin{eqnarray} &&\:\: [1\times D]&=\mr{Concat}([1\times d],\:\cd\:)\cdot[D\times D]\\ &&&=[1\times D]\cdot[D\times D]\\ \end{eqnarray}\) |
Linear 変換は直前の単純結合(Concatenation)とセットになっています。つまり、ヘッドの順序を表す \(h\:\:(1\leq h\leq H)\) という数字には、"注意機構" における何らかの意味があるわけではありません。単にアテンション処理を \(H\) 個に分けた \(h\) 番目というだけです。従って、順に単純結合する、
\(\mr{Concat}(\bs{y}_i^1,\:\bs{y}_i^2,\:\cd,\:\bs{y}_i^H)\)
という操作の「結合順序」には意味が無いことになります。そこで結合した後で、学習可能なパラメータ \(\bs{W}_O\) で線型写像を行って、最適な出力ベクトルを求めるわけです。
エンコーダの MHA は、エンコーダ内に閉じたアテンションで、これを「自己アテンション」(Self Attention)と言います。一方、デコーダ側には自己アテンションの他に、エンコーダとデコーダにまたがるアテンションがあります。これを Source Target Attention と言います。このアテンションは、
クエリは、デコーダ側のベクトルから生成し、 | |
キーとバリューは、エンコーダ側のベクトルから生成 |
します。これによってエンコーダからデコーダ側への情報の流れを作ります。日本語 → 英語の機械翻訳の場合だと、次に生成すべき英単語に関連して「注意を向けるべき日本語のトークンと、その注意の量」がここで決まります。
Multi Head Attention において、1つのベクトルから複数の \(QKV\) を取り出すことの意味は、おそらくトークンの「多義性」でしょう。その例ですが、英語で fine という語の代表的な意味を4つあげるとしたら、たとえば、
fine :
(1) 素晴らしい
(2) 晴れた
(3) 細かい
(4) 罰金
です(例です。(1) (2) は同類の意味)。単語の埋め込みベクトルは、似たような(あるいは同一ジャンルの)語は類似している(= コサイン類似度が 1 に近い)わけです(前回参照)。とすると、(1)~(4) の同一ジャンルの言葉は、それぞれ、
(1) good, excellent, ・・・・・・
(2) cloudy, rainy, ・・・・・・
(3) tiny, small, coarce, ・・・・・・
(4) penalty, guilty, ・・・・・・
などとなるはずです。fine がこれら4つのジャンルと類似性があるということは、fine の埋め込みベクトルおいて4つの意味が物理的に分散して配置されていると考えられます。さらにイタリア語まで考えると、
fine :
(5) 終わり
が加わります(イタリア映画の最後に出てくる語、ないしは音楽用語)。埋め込みベクトルは言語ごとに作るわけではないので、fine のベクトルはあくまで1つです。ということは、埋め込みベクトルには(この例では)5つの意味が分散して配置されているはずです。
この状況は、埋め込みベクトルから複数の \(QKV\) ベクトルを取り出し、それぞれについて独立したアテンション計算をするというアルゴリズムがマッチしていると考えられるのです。
Add & Norm
アーキテクチャの絵で5カ所にある「Add & Norm」は、ベクトルごとに「残差結合」と「レイヤー正規化」を行うレイヤーです(詳細は前回参照)。図で表すと以下です。
図23:残差結合とレイヤー正規化 |
計算式は次のようになります。系列の \(i\) 番目を示す \(\bs{x}_i,\:\:\bs{y}_i\) の \(i\) は省略します。
\(\bs{y}=\mr{LayerNormalization}(\bs{x})\)
\(\begin{eqnarray}
&&\:\: \bs{x}=\{\:x_1, &x_2, &\cd\:, &x_D\:\}\\
&&\:\: \bs{y}=\{\:y_1, &y_2, &\cd\:, &y_D\:\}\\
\end{eqnarray}\)
\(x_k\:\:(1\leq k\leq D)\) の平均 : \(\mu\)
\(\mu=\dfrac{1}{D}\displaystyle\sum_{k=1}^{D}x_k\)
\(x_k\:\:(1\leq k\leq D)\) の標準偏差 : \(\sg\)
\(\sg=\sqrt{\dfrac{1}{D}\displaystyle\sum_{k=1}^{D}(x_k-\mu)^2}\)
とおくと、
\(\bs{y}=\dfrac{1}{\sg}\bs{g}\odot(\bs{x}-\mu)+\bs{b}\) \([1\times D]=[1\times D]\odot[1\times D]+[1\times D]\) |
です。ここで \(\bs{g}\) と \(\bs{b}\) は学習で決まるベクトル(=パラメータ)です。
Feed Forward Network
ベクトルごとに処理される、2層の全結合ニューラル\(\cdot\)ネットワークです。第1層の活性化関数は \(\mr{ReLU}\) で、第2層(出力層)には活性化関数がありません。3つのレイヤーで表現すると次の通りです。
図24:Feed Forward Network |
ニューロンの数(=ベクトルの次元)は、
入力層:\(D\)
第1層:\(D_{ff}=4\times D\)
出力層:\(D\)
です。計算を式で表すと(系列の \(i\) 番目を示す \(\bs{x}_i,\:\:\bs{y}_i\) の \(i\) は省略)、
\(\bs{y}=\mr{ReLU}(\bs{x}\bs{W}_1+\bs{b}_1)\cdot\bs{W}_2+\bs{b}_2\)
です。第1層の次元を入力\(\cdot\)出力層の4倍にとるのは、そのようにするのが Transformer の性能(たとえば、翻訳文の質)が最も向上するからです。GPT-3、ChatGPT も踏襲しています。
Masked Multi Head Attention
デコーダ側にある Masked Multi Head Attention の説明をします。系列のトークンの列を、
\(\{\:\bs{x}_1,\:\cd\:,\:\bs{x}_{t-1},\:\bs{x}_t,\:\bs{x}_{t+1},\:\cd\:,\:\bs{x}_S\:\}\)
とし、いま \(\bs{x}_t\) に着目しているとします。
\(\bs{x}_i\:\:\:(1\leq i\leq t)\:\longrightarrow\) 過去のトークン
\(\bs{x}_i\:\:\:(t < i\leq S)\:\longrightarrow\) 未来のトークン
と呼ぶことにします。着目しているトークンを基準に、系列でそれ以前のトークンが「過去」、次以降のトークンが「未来」です。
日本語から英語に翻訳する Transformer を例にとると、デコーダの推論時には、英文のトークンを一つずつ推論していきます。つまり、
[BOS] \(\longrightarrow\) [I]
[BOS] [I] \(\longrightarrow\) [am]
[BOS] [I] [am] \(\longrightarrow\) [a]
[BOS] [I] [am] [a] \(\longrightarrow\) [cat]
[BOS] [I] [am] [a] [cat] \(\longrightarrow\) [EOS]
といった具合です(図21)。このときの各ステップにおけるアテンション処理は、当然ですが、末尾のトークンから生成済みのトークン(=過去のトークン)に対して行われます。つまり「トークンが注意を向ける先は常に過去のトークン」です。「すでに生成済みのトークンの情報だけから次にくるトークンを推論する」のがデコーダなので、これは当然です。
一方、デコーダの訓練時のことを考えると、
(入力データ) | [BOS] | [I] | [am] | [a] | [cat] | |
(教師ラベル) | [I] | [am] | [a] | [cat] | [EOS] |
で(図20)、入力データとしては系列のトークンが全部与えられています。しかしここで未来のトークンに注意を向けてしまうと、推論時との不整合が起きてしまいます。そこで
未来のトークンには注意を向けない。自分自身を含む過去のトークンにだけ注意を向ける
という配慮が、デコーダ側のアテンション処理では必要になります。この配慮をした注意機構が Masked Multi Head Attention です。一方、エンコーダ側では、訓練時も推論時も、
[我が輩] [は] [猫] [で] [ある]
という系列が一括して与えられるので(図20、図21)、未来のトークンに注意を向けても問題ありません。またデコーダ側からエンコダー側に注意を向けるのもかまいません。
この「過去のトークンにだけ注意を向ける」ことを数式で表現するには、\([S\times S]\) のマスク行列、\(\bs{M}\) を次のように定義します。
\(\bs{M}=\left(\begin{array}{c}
0&\phantom{0}&\phantom{0}&\phantom{0}&\phantom{0}\\
\phantom{0}&\large\ddots&\phantom{0}&\huge\textrm{-}\infty&\phantom{0}\\
\phantom{0}&\phantom{0}&0&\phantom{0}&\phantom{0}\\
\phantom{0}&\huge0&\phantom{0}&\large\ddots&\phantom{0}\\
\phantom{0}&\phantom{0}&\phantom{0}&\phantom{0}&0\\
\end{array}\right)\) \([S\times S]\)
このマスク行列は、
対角項:\(0\) | |
行列の左下(行番号\( > \)列番号):\(0\) | |
行列の右上(行番号\( < \)列番号):\(-\infty\) |
\(\bs{Y}^h=\mr{Softmax}\left(\dfrac{1}{\sqrt{d}}\bs{Q}^h\cdot(\bs{K}^h)^T\right)\cdot\bs{V}^h\) \([S\times d]=\mr{Softmax}([S\times d]\cdot[d\times S])\cdot[S\times d]\) |
でした。これに \(\bs{M}\) を足し込むと、
\(\bs{Y}^h=\mr{Softmax}\left(\dfrac{1}{\sqrt{d}}\bs{Q}^h\cdot(\bs{K}^h)^T+\bs{M}\right)\cdot\bs{V}^h\) \([S\times d]=\mr{Softmax}([S\times d]\cdot[d\times S]+[S\times S])\cdot[S\times d]\) |
となります。\(\mr{Softmax}\) 関数は、ベクトル(上式では行列の1行)の各要素の \(\mr{exp}()\) をとります。従って、要素が \(-\infty\) だと \(\mr{exp}(-\infty)=0\) となり、\(\mr{Softmax}\) 関数にとってはその要素が無いのと同じことになります。
上式の \(\mr{Softmax}\) 関数の内側は \([S\times S]\) の行列ですが、縦方向が系列全体のクエリ・ベクトルに対応し、横方向が系列全体のキー・ベクトルに対応しています。そのため、マスク行列を足し込むと、アテンション処理において過去のトークンだけに注意が行き、未来のトークンには注意が行かない(=結果としてバリュー・ベクトルが加重和されない)ようになるのです。
こうして求めた行列 \(\bs{Y}^h\) の \(i\) 行目をベクトル、
\(\bs{y}_i^h\:\:[1\times d]\:\:(1\leq h\leq H)\)
とすると、これ以降の処理はマスク行列がない場合と同じです。つまり \(H\) 個のベクトル \([1\times d]\) を単純結合して一つのベクトル \([1\times D]\) にし、さらに Linear 変換をしてアテンション処理からの最終出力にします。
\(\bs{y}_i=\mr{Concat}(\bs{y}_i^1,\:\bs{y}_i^2,\:\cd,\:\bs{y}_i^H)\cdot\bs{W}_O\)
\(\begin{eqnarray}
&&\:\: [1\times D]&=\mr{Concat}([1\times d],\:\cd\:)\cdot[D\times D]\\
&&&=[1\times D]\cdot[D\times D]\\
\end{eqnarray}\)
わざわざ \(\mr{exp}(-\infty)\) を持ち出してマスク行列を使うのは、話をややこしくするだけのようですが、マスク行列を使った Masked Multi Head Attention の計算式を見ると、線型変換と \(\mr{Softmax}\) 関数だけからできています。ということは、「過去のトークンだけに注意を向けるアテンション計算は微分可能」であり、誤差逆伝播の計算が成り立つことがわかります。
確率生成
Transformerのデコーダの最終部分は、推論結果である \(D\) 次元のベクトルを、語彙集合の中での確率ベクトルに変換する部分です。計算式で書くと、
\(\bs{y}=\mr{Softmax}(\bs{x}\cdot\bs{W}_{\large dec})\)
\([1\times V]=\mr{Softmax}([1\times D]\cdot[D\times V])\)
です(系列の \(i\) 番目を示す \(\bs{x}_i,\:\:\bs{y}_i\) の \(i\) は省略)。\(\bs{W}_{\large dec}\) は、前回の word2vec のところに出てきた、\(D\)次元の埋め込みベクトルを \(V\) 次元の確率ベクトルに変換する行列です。
以上で Transformer のアーキテクチャの説明は終わりですが、全体を振り返ると、
アテンションだけが系列全体に関わる処理であり、あとはすべてベクトル(トークン)ごとの処理である
ことがわかります。以降は、この中で鍵となる「アテンション」と「Feed Foward Network」についての補足です。
アテンションの意義
一般のニューラル・ネットワークにおいて、隣合った2つの層、\(\bs{x}\) と \(\bs{y}\) が同じニューロン数 \(D\) だとします。活性値を、
\(\begin{eqnarray}
&&\:\:\bs{x}=\{x_1, &x_2, &\cd\:,&x_D\}\\
&&\:\:\bs{y}=\{y_1, &y_2, &\cd\:,&y_D\}\\
\end{eqnarray}\)
とし、重み行列を \(\bs{W}\)、バイアスはなし、活性化関数を \(\mr{ReLU}\) とするると、
\(\bs{y}=\mr{ReLU}(\bs{x}\cdot\bs{W})\)
です。重み \(\bs{W}\) は誤差逆伝播法による訓練で決まり、推論時には一定の値です。Transformer のアテンション機構もこれと似ています。アテンションは、
入力ベクトル列 :\(\bs{x}_i\:\:\:(1\leq i\leq S)\)
出力ベクトル列 :\(\bs{y}_i\:\:\:(1\leq i\leq S)\)
の間の変換をする機構だからです。ニューラル\(\cdot\)ネットワークの活性値(実数値)がベクトルに置き換わったものと言えます。ヘッドが1つの場合(Single Head Attension)で図示すると、次の通りです。
図25:注意機構 |
ヘッドが1つの場合の計算処理である。ヘッドが複数の場合も本質は同じで、この計算処理を独立して複数個行ない、結果を結合して出力とする。 |
しかし、この図は一般のニューラル\(\cdot\)ネットワークとは決定的に違います。重み行列 \(\bs{W}_Q,\:\:\bs{W}_K,\:\:\bs{W}_V\) は推論時には一定ですが、実際に \(\bs{x}_i\) と \(\bs{y}_i\) の関係性を決めているのは、クエリ・ベクトル \(\bs{Q}\) とキー・ベクトル \(\bs{K}\) であり、これは入力ベクトル列 \(\bs{x}_i\) の内容にもろに依存しているからです。つまり、
注意機構により、ネットワークの "ありよう"(結合状態と結合強度)が、入力データの内容に依存して、ダイナミックに変化する
と言えます。\(\bs{x}_1\) の値を変えると、その影響は \(\bs{y}_i\:\:(1\leq i\leq S)\) の全体に及びます。それは、「\(x_1\) を変えると \(y_i\) の全部が変わる」という一般のニューラル\(\cdot\)ネットワークと同じではありません。一般のニューラル\(\cdot\)ネットワークを関数とみなすと、「関数は一定だが、入力が変わるから出力も変わる」のです。それに対して注意機構は「入力が変わると関数の形まで変わる」とみなすことができるでしょう。もちろん、実際には図25のように関数は一定なのですが、一般のニューラル\(\cdot\)ネットワークとの比較で言うと、そうみなせるということです。
この柔軟性とダイナミックな(動的な)性格が、Transformer に大きなアドバンテージをもたらしました。次章の GPT-3 / ChatGPT が実現している「本文中学習(In Context Learning)」はその一つです。ChatGPT では、プロンプトを変える、ないしは文言を追加すると、応答が大きく変わることがあります。また、欲しい応答の表現形式を例示したプロンプトをすると、その形式どおりのに応答がきたりします。あたかも、プロンプトからその場で学んだように見えるのが In Context Learning です。しかし、ニューラル・ネットワークのパラメータは、推論時にはあくまで一定であり、決してその場で学んでいるわけではありません。この "あたかも" を作り出しているのが "注意機構"です。
Feed Forward Network の意味
FFN は、注意機構と違ってベクトルごとの処理です。論文では "Position-wise(位置ごとの)Feed Forward Network" と書いてあります。ということは、系列の文脈には依存しないということです。つまり Transformer の訓練を通して、ベクトル(トークンの中間表現)が本来持っている性格や関連情報が、FFN の重みの中に蓄えられると考えられます。AI の専門家である、プリファードネットワークス社の共同創業者の岡野原大輔氏は、著書の『大規模言語モデルは新たな知能か』の中で次のように書いています。
|
岡野原氏が「多重パーセプトロン(Multi-Layer Perceptron : MLP)と書いているのは FFN のことです。ちなみに入力層(第0層)を含めて「三層」という言い方になっています。
ここで、FFN のパラメータ数を求めてみます。バイアスを無視すると、
\(\bs{W}_1\:\:[D\times D_{ff}]\)
\(\bs{W}_2\:\:[D_{ff}\times D]\)
\(D\) : 埋め込みベクトルの次元
\(D_{ff}=4D\)
なので、
FFN のパラメータ数\(=8D^2\)
です。一方、Multi Head Attention で、
\(H\) : ヘッドの数
\(d=\dfrac{D}{H}\)
とすると、\(h\)番目のヘッドの \(QKV\) を作る行列は、
\(\bs{W}_Q^h\) \([D\times d]\)
\(\bs{W}_K^h\) \([D\times d]\)
\(\bs{W}_V^h\) \([D\times d]\)
であり、これらを足すとパラメータ数は \(3Dd\) ですが、この組が \(H\) セットあるので、合計は \(3DdH=3D^2\) です。さらに、単純結合したあとの Linear 変換行列である、
\(\bs{W}_O\) \([D\times D]\)
が加わるので、結局、
MHA のパラメータ数\(=4D^2\)
です。ということは、
FFN のパラメータ数は、MHA のパラメータ数の2倍
ということになります。パラメータ数だけの単純比較はできませんが、FFN が極めて多い情報量=記憶を持っていることは確かでしょう。それが、大量の訓練データの中から関連する情報を記憶し、また推論時にそれを想起することを可能にしています。
論文のタイトルは "Attention Is All You Need" で、これは従来の機械翻訳の技術では補助的役割だった Attention を中心に据えたという意味でしょう。しかし技術の内実をみると、決して「アテンションがすべて」ではなく「アテンション機構と多重パーセプトロンの合わせ技」であり、しかもそれを多層に重ねたのが Transformer なのでした。
前回でニューラル・ネットワークの例とした多重パーセプトロンは、ニューラル・ネットワークの研究の歴史の中で最も由緒あるもので、1980年代に盛んに研究されました。それが、2010年代半ばから研究が始まった "アテンション機構" と合体して Transformer のアーキテクチャになり、さらには ChatGPT につながったのが興味深いところです。
4.GPT-3 と ChatGPT |
OpenAI 社は、GPT(2018)、GPT-2(2019)、GPT-3(2020)、ChatGPT(2022)と発表してきましたが、技術内容が論文で公開されているのは GPT-3 までです。また、ChatGPT の大規模言語モデルは GPT-3 と同じ仕組みであり、大幅に学習を追加して一般公開できるようにしたのが ChatGPT です。ここではまず GPT-3 の仕組みを説明します。
GPT-3 のアーキテクチャ
GPT は Generative Pre-trained Transformer の略です。generative とは "生成型の"、pre-trained は ""事前学習済の" という意味で、Transformer は Google が 2017年に提案した Transformer を指します。
訳すると "事前学習済の生成型トランスフォーマー" となるでしょう。Transformer は「変換器」という意味でした。とすると「生成型の変換器」とは言葉が矛盾しているようですが、実は GPT は Transformer のアーキテクチャのデコーダ部分だけを使った大規模言語モデルです。だから「生成型変換器」なのです(下図)。
GPT は上図の Transformer のアーキテクチャから赤枠の部分のみを使っている。 |
この「デコーダ部分だけを使う」という発想が、OpenAI の技術者の慧眼でした。デコーダだけで系列変換(機械翻訳、文章要約、質問応答、・・・・・・ )ができるはず、という発想が GPT に柔軟性と大きな能力を与えました。GPT-3 のアキテクチャーは以下のようです。
図26:GPT-3 のアーキテクチャ |
このアキテクチャーは、Transformer から「エンコーダとエンコーダ関連部分」を取り去ったものです。ただし、次が違います。
Position Encoding における位置符号ベクトルは、学習で決まるパラメータとします。Transformer では固定的な \(\mr{sin}/\mr{cos}\) 波でした。 | |
レイヤー正規化を Masked Multi Head Attetion と Feed Forward Network の直前に行います。Transformer では、それぞれの後にレイヤー正規化が配置されていました。 | |
Feed Forward Network の活性化関数は \(\mr{GELU}\) を使います。Transformer では \(\mr{ReLU}\)です(\(\mr{GELU}\) については前回参照)。 |
これらはいずれも、学習の安定化と高速化のための工夫です。さらに GPT-3 は Transformer に比べてモデルの規模が大きく拡大されています。
・埋め込みベクトルの次元 \(D=12288\)
\((\)Transformer \(:\:512\) の \(24\)倍\()\)
・デコーダブロックの積層数 \(N=96\)
\((\)Transformer \(:\:6\) の \(16\)倍\()\)
・アテンションのヘッドの数 \(H=96\)
\((\)Transformer \(:\:8\) の \(12\)倍\()\)
です。大規模言語モデルでは、モデルの規模と学習量の拡大を続けると、それにともなって性能(たとえば機械翻訳の精度)が上がり続けるという「スケール則」がみられました。これは一般の深層学習のニューラル\(\cdot\)ネットワークにはない特徴です。このスケール則を信じ、アーキテクチャをシンプルにしつつ、モデルの規模を「桁違いに」拡大した OpenAI 社と出資した会社(マイクロソフト)の勝利でしょう。
このアーキテクチャのパラメータ数をカウントしてみます。
・トークンの語彙数 | \(V\) | |
・埋め込みベクトルの次元 | \(D\) | |
・系列の長さ | \(S\) | |
・デコーダの積層数 | \(N\) |
とします。GPT-3 の具体的な数値は、
\(V\) | \(=50257\) | |
\(D\) | \(=12288\) | |
\(S\) | \(=\phantom{1}2048\) | |
\(N\) | \(=\phantom{111}96\) |
です(\(V\) の値については前回参照)。学習で決まる行列やベクトルを順にカウントしていくと次のとおりです。
(1) Embedding と確率生成
\(\bs{W}_{\large enc}\) \([V\times D]\)
\(\bs{W}_{\large dec}\) \([D\times V]\)
\(\rightarrow\) パラメータ数\(=2VD\)
(2) Positional Encoding
\(\bs{p}\) \([S\times D]\)
\(\rightarrow\) パラメータ数\(=SD\)
(3) Masked Multi Head Attention
\(\bs{W}_Q\) \([D\times D]\) ※
\(\bs{W}_K\) \([D\times D]\) ※
\(\bs{W}_V\) \([D\times D]\) ※
\(\bs{W}_O\) \([D\times D]\)
\(\rightarrow\) パラメータ数\(=4D^2\)
※ GPT-3 のヘッドの数は \(H=96\) なので、\(\bs{W}_Q,\:\:\bs{W}_K,\:\bs{W}_V\) はそれぞれ \(96\)個の部分行列に分かれていますが、パラメータ数の全体は上式のとおりです。
(4) Feed Forward Network
\(\bs{W}_1\) | \([D\times4D]\) | |
\(\bs{b}_1\) | \([1\times4D]\) | |
\(\bs{W}_2\) | \([4D\times D]\) | |
\(\bs{b}_2\) | \([1\times D]\) |
\(\rightarrow\) パラメタ数\(=8D^2+5D\)
(5) Layer Nomaliation (2レイヤー)
\(\bs{g}\) \([1\times D]\)
\(\bs{b}\) \([1\times D]\)
\(\rightarrow\) パラメタ数\(=2\times2D=4D\)
(3), (4), (5) は \(\times\:N\) に積層されていることに注意して総パラメータ数を計算すると、
総パラメータ数
\(=\:2VD+SD+N(4D^2+8D^2+5D+4D)\)
\(=\:2VD+SD+N(12D^2+9D)\)
\(=\) \(\bs{175,217,074,176}\)
となり、約 1752億となります。一般に言われているパラメータ数が 1750億というのは、英語の 175B(B = Billion = 10億)の日本語訳で、Billion 単位にしたパラメータ数です。
GPT-3 が系列の次のトークンを推論するとき、1752億のパラメータの全てを使った演算が行われます(図21)。40文字の日本語文章を 60トークンだとすると、 わずか 40文字の日本語文章を生成するために、1752億のパラメータの全てを使った演算が 60回行われるということです。
また、1752億のパラメータがすべて 32ビットの浮動小数点数(4バイト)だとすると、パラメータのためだけに、
653ギガバイト(1ギガ = \(1024^3\) 換算)
のメモリが必要になります。業務用コンピュータ・システムの開発経験者ならわかると思いますが、これだけのデータ量を常時抱えつつ、更新やリアルタイムの推論を行うシステムを開発・運用するのは、ちゃんとやればできるでしょうが、かなり大変そうな感じです。
GPT-3 のアーキテクチャを振り返ってみると、Transformer のデコーダ部分だけを採用したことによる、Transformer との違いがあることに気づきます。それは、
Transformer には「過去と未来の両方に注意を向けるアテンション機構」と「過去にだけ注意を向けるアテンション機構」の両方があるが、GPT-3 には「過去にだけ注意を向けるアテンション機構」しかない
ことです。言うまでもなく、アテンション機構は Transformer / GPT-3 の "キモ" です。そのキモのところに違いがある。
人間の言語活動(発話・文章作成)では「過去の単語との整合性を考慮しつつ、未来の単語を想定して次の単語を決める」ことが多々あります。このことは、機械翻訳では、翻訳前の「原文」を処理するエンコーダ側の「過去と未来の両方に注意を向けるアテンション機構」で実現されています(Mask がない Multi Head Attention)。
しかし GPT-3 では様子が違ってきます。事前学習(次項)だけの GPT-3 で機械翻訳がなぜできるかというと、
[ 原文 ] を翻訳すると [ 翻訳文 ] です
といった対訳(に相当するデータ)が訓練データの中に多数あるからです(GPT-2 の論文による)。この「原文」の部分のアテンション処理において、「原文」の中の未来の単語に注意が向くことはありません(Masked Multi Head Attention しかないから)。このことにより翻訳の精度が Transformer とは違ってくる(精度が落ちる)と想定できます。
こういった "問題" は、大規模言語モデルを "超大規模" にすることで解決するというのが、GPT-3 の開発方針だと考えられます。1752億という膨大なパラメータ数が、それを表しています。
GPT-3 の訓練
GPT-3 の訓練は、
・WebText
・電子ブック
・Wikipedia
をもとに行われました。WebText は "訓練に使うべきではない" テキストを除外してあります。集められたテキストの量はトークンの数でカウントすると、
・WebText | \(4290\)億 | |
・電子ブック | \(\phantom{42}67\)億 | |
・Wikipedia | \(\phantom{42}30\)億 |
訓練は、Transformer のデコーダのところでで説明したように「ひたすら次のトークンの予測をする」というものです。この「次のトークンの予測」について補足しますと、前回、GPT のトークン化のロジックである BPE(Byte Pair Encoding)のことを書きました。これによると、UTF-8 では改行も空白も文字として扱われるので、改行、空白のそれぞれにトークンID が割り当てられることになります。
これから言えることは、テキストを学習するということは、その意味内容だけでなく、テキストの表現形式も学習するということです。つまり、段落、字下げ、箇条書きなどの形式です。訓練が終わった 1752億のパラメータには、そういった "表現形式に関する知識" も含まれていることに注意すべきでしょう。
以上のように、一般的に入手できるテキストだけを使ってニューラル・ネットワークを訓練することを「事前学習」と言います。このような事前学習を行った上で、機械翻訳や質問応答などのタスク別に専用に作成した訓練データで「目的別学習」を行うのが、言語モデルの定番の学習手法です。あらかじめ事前学習を行った方が言語モデルの性能が良くなるからです。目的別学習を "ファイン・チューニング" と言います。
GPT-3 は、それまでの GPT、GPT-2 と違って、ファイン・チューニングなしの言語モデルを狙ったものです。つまり、
事前学習済みの(=事前学習だけの)、生成型の(=デコーダだけの)トランスフォーマー
と言えるでしょう。実際 GPT-3 は、ファイン・チューニングを行った言語モデルと比較しても、"そこそこの"、ないしは "同等の" 性能であることが分かりました。もちろんファイン・チューニング済の言語モデルに劣るタスクも多々あります。しかし全体としては "そこそこの" 性能を示します。「ニューラル・ネットワークの超大規模化」と「大量の訓練データ」によってそれが可能であることを、GPT-3 は示したのでした。
ChatGPT
ChatGPT は GPT-3 のアーキテクチャと事前学習をもとに、さらに「目標駆動型学習」を追加したものです。ここでの目標駆動型学習とは「人間にとって好ましい応答の例を人間が作り、それを目標として、そこに近づくように学習する」という意味です。OpenAI 社は RLHF(Reinforcement Learning by Human Feedback:人間のフィードバックによる強化学習)と呼んでいます。これは一種のファイン・チューニングであると言えます。
この、目標駆動型学習をどうやるか、その詳細が OpenAI 社のノウハウでしょう。考えてみると、GPT-3 の(従って ChatGPT の)アーキテクチャはシンプルあり、これをシステム上に実現するのは、コンピュータ技術とAI技術、ハードウェアの調達(特にGPU)、そしてお金の問題です。事前学習に使う WebText にしても、世界中から集めて公開している団体があります(GPT-3 でも使われた Common Crawl)。お金がある(かつ投資意欲がある)大手IT企業なら、システム構築は難しくない。
しかし「人手で作った訓練データをもとに、人にとって違和感がない対話ができるまでに訓練する」のは、Transformer の性質や "癖 を熟知していないとできないと考えられます。そこにノウハウがあるはずです。
その目標駆動型学習の概要を、先ほど引用した岡野原氏の「大規模言語モデルは新たな知能か」では、次のような3つのステップで説明しています。この説明は専門用語を最小にした簡潔なものなので、以降これに沿って書きます。
|
この岡野原氏の説明を読み解くと、次のようになるでしょう。ラベラーとは訓練データ(教師ラベル)を作る人の意味です。
第1ステップは、機械学習の分野でいう「教師あり学習」です。ここで具体的にどのような訓練をしたのかは、OpenAI 社も公表していません。推測すると「望ましい対話」の例には、人間の質問に「答えられません」や「できません」と応答する訓練データも多数あるのではと思います。たとえば「反社会的行為を助長するような質問」の場合(爆弾の作り方など)です。
さらにこの第1ステップでは、特定のタイプのプロンプトに対して、あたかも ChatGPT が感情をもっているかのように応答する訓練が可能なはずです。それが「望ましい対話」だと OpenAI が判断すればそうなります。
第2ステップは2つのフェーズに分かれています。第1フェーズは、人手によるランキングの作成です。このとき「複数の異なるモデル」を使います。モデルとは言語モデルのことです。実は、GPT-3 を開発する過程においても、パラメータ数の違う複数の言語モデルが開発されていて、最終的に公開されたのが GPT-3 です。またパラメータ数が同じでも、訓練のやり方が違うとパラメータの値が違うので、モデルとしては別です。
このような複数の異なるモデルを選び(4つとします)、同じ入力(プロンプト。\(P\) で表します)に対して、4つの違った応答、\(A,\:B,\:C,\:D\) を得ます。ラベラーは、この \(P/A,\:P/B,\:P/C,\:P/D\) という4つの「プロンプト \(/\) 応答」にランク付けします( \(/\) はプロンプトのあとに応答が続くという意味です)。ランク付けが仮に、
\(P/A\: > \:P/B\: > \:P/C\: > \:P/D\)
だとします。現実問題としては4つのランク付けは難しいので、2つずつの6つのペアについて、どちらが良いかを決めます。ランク付けの基準について岡野原氏は書いていないのですが、OpenAI 社の公開資料によると、
・嘘やデマを含まない
・差別的・攻撃的な内容を含まない
・ユーザの役に立つ
という基準です。このような「ランク付けデータ」を大量に準備します。これは人に頼る "人海戦術" しかないので、アウトソーシングしたとしてもコストがかかります。
ちなみに、応答が「差別的・攻撃的な内容を含まない」というのは極めて重要です。というのも、過去に「AI を使った Chat システムが差別的発言をするようになり、公開中止に追い込まれる」という事件が何件か発生しているからです(2016年のマイクロソフト、2022年のメタなど)。
特に、メタ(旧フェイスブック)の Galactica 炎上事件(差別的応答による)は、システムの公開日が 2022年11月15日であり、ChatGPT の公開日(2022年11月30日)とほぼ同時期でした。メタがつまづき、ChatGPT がつまづかなかったのは、OpenAI 社が極めて慎重に「反倫理的・反社会的応答」を排除するように訓練したからと考えられます。
特に、メタ(旧フェイスブック)の Galactica 炎上事件(差別的応答による)は、システムの公開日が 2022年11月15日であり、ChatGPT の公開日(2022年11月30日)とほぼ同時期でした。メタがつまづき、ChatGPT がつまづかなかったのは、OpenAI 社が極めて慎重に「反倫理的・反社会的応答」を排除するように訓練したからと考えられます。
第2ステップの第2フェーズは、ランキングのデータをもとに自動評価システムを作ることが目的です。データを入力して評価値(強化学習の用語でいうと "報酬")を出力する関数(=自動評価システム)を \(\mr{Score}()\) と書くと、
\(\mr{Score}(P/A) > \mr{Score}(P/B) > \mr{Score}(P/C) > \mr{Score}(P/D)\)
となるように関数を決めます。これはニューラル・ネットワークを使って、訓練を繰り返して決めます(強化学習の用語で "報酬モデル")。ここで岡野原氏が指摘しているのは、\(\mr{Score}\) 関数への入力は、
ランキングをつけたデータそのものでなく、目標駆動型学習をしたい大規模言語モデル(この場合は GPT-3)にランキング済みデータを入力したときの、大規模言語モデルの内部状態
だということです。従って、\(\mr{Score}(P/A)\) は、
\(\mr{Score}(\mr{InnerState}(P/A))\)
と書くべきでしょう。これによって「高精度に評価を推定できる」というのが岡野原氏の説明です。
第3ステップでは、この自動評価システムを使って、プロンプトに対する応答の評価値が最も高くなるように強化学習を行います。このステップには人手を介した評価はないので、大量のプロンプトで学習することができます。
ここで、言語モデル \(\al\) の内部状態を入力とする自動評価システムを \(\mr{Score}_{\large\:\al}\) とし、言語モデル \(\al\) を上記のように訓練した結果、言語モデル \(\beta\) になったとします。すると、同じ「プロンプト/応答」を投入したときの内部状態が、2つの言語モデルで違ってきます。つまり、
\(\mr{InnerState}_{\large\:\al}(P/A)\neq\mr{InnerState}_{\large\:\beta}(P/A)\)
です。ということは、
\(\mr{InnerState}_{\large\:\beta}\) を入力とする、自動評価システム \(\mr{Score}_{\large\:\al}\) の改訂版、\(\mr{Score}_{\large\:\beta}\) が作れる
ことになります。つまり「第2ステップの第2フェーズ」と「第3ステップ」をループさせて繰り返すことができる。このとき、ラベラーが作ったランキングデータはそのまま使えます。このランキングが絶対評価ではなく相対評価だからです。以上のことから、
自動評価システムと言語モデルは、より正確な評価値を獲得するように "共進化" できる
と言えます。岡野原氏が言っている「高精度に評価を推定できる」とは、こういった "共進化" も含めてのことだと考えられます。このように、目標駆動型学習で鍵となるのは、この「高精度の自動評価システム」です。
補足しますと、ChatGPT が公開された後は、利用者の実際のプロンプトとそれに対する ChatGPT の応答を膨大に集積できます(利用者が拒否しなければ)。この実際の「プロンプト/応答」データの中から自動評価システムの評価が低いものだけを集め、プロンプトへの応答の評価が高くなるように ChatGPT の強化学習ができることになります。ChatGPT から "でたらめな" 応答を引き出そうとする(そして成功すれば喜ぶ)人は多いでしょうから、強化学習のためのデータにはこと欠かないはずです。
以上が、岡野原氏の説明の "読み解き" です。
ここまでをまとめると、次のようになるでしょう。
GPT-3 は、ひたすら次の語を予測することに徹し、大量のテキストで訓練された大規模言語モデルである。その基盤技術は Transformer をシンプルにしたものであり、\(1752\)億のパラメータをもつ巨大ニューラル・ネットワークである。 | |
ChatGPT は GPT-3 をベースに、人手で作った「人にとって好ましい応答例」を訓練データとして学習し、人と違和感なく会話できるようにした大規模言語モデルである。 |
このような GPT-3 の仕組みでは、計算や論理的推論は本質的にできません。簡単な計算(2桁整数同士のたし算、2次方程式を解くなど)ができる(ように見える)のは、それが訓練データにあるからです。また、正しい論理的推論ができたとしたら、類似の推論が訓練データの中にあるからです。
とはいえ、ChatGPT はバックに語と語の関係性についての膨大な "知識" をもっていて、それによって "規則性" や "ルール" の認識が内部にできているはずです。その中には「人が気づかない」「暗黙の」「意外なもの」があってもおかしくない。それにより、蓄積した知識を "混ぜ合わせて" 正しい推論、ないしは発見的な推論がきることもあり得るはずです。
さらに、人が普段話すのと同じように話せば、その膨大な "知識" が活用できるのは多大なメリットでしょう。もちろん "悪用" される可能性はいつでもありますが、そのことを踏まえつつ、使い方の発見や検討が今後も進むのでしょう。
言語の "理解" とは |
人の問いかけに対する ChatGPT の応答は、いかにも人らしいものです。もちろん間違いや、変な答え、明らかに事実とは違う応答もあります。しかし、世界中から集めた知識の量は膨大で、言語の壁も越えています。
その "知識" は(GPT-3, ChatGPT では)1752億個のパラメータの中に埋め込まれています。量は膨大ですが、それを処理する仕組みはシンプルです。なぜこれでうまくいくのか、そこが驚異だし、その理由を理解することは難しいでしょう。
もちろん、その中身を解明しようとする研究は進むでしょうが、"理解" は難しいのではと思われます。というのも、「比較的シンプルな記述による、人にフレンドリーな説明」でないと、人は "理解" したとは思わないからです。
しかし考えてみると、我々が言語(母語)を習得でき、かつ自在に扱えるのはなぜか、その脳の働きは、Transformer / ChatGPT と極めて似ているのではないでしょうか。
前回の冒頭で紹介したように、慶応義塾大学の今井教授は、「ChatGPT の仕組み(=注意機構)は、幼児が言語を学習するプロセスと類似している」と指摘していました。今井教授は幼児の言語発達を研究する専門家なのでこの指摘になるのですが、実は Transformer / ChatGPT のやっていることは、幼児のみならず、我々が言葉(母語)を理解してきた(現に理解している)やりかたと酷似していることに気づきます。それは、
外界からくる複雑な情報を丸ごと飲み込んで、ルールを知らないうちから活用する(活用できる)
という言語理解のありようです。もちろん(外からの指摘による)「好ましくない言葉の使い方」であれば訂正します。しかし、学び方も含めて、我々は内発的・創発的に言葉を理解しています。それが我々の脳の働きの重要な一面です。
前回、Transformer がタンパク質の機能分析に使える(可能性がある)ことを書きましたが、さらにヒトの脳の(ある脳領域の)解明に役立つこともありそうです。
大規模言語モデルの外面的な機能は驚異的ですが、さらにその内部の「仕組み」を理解することで、その応用範囲が極めて広いことがわかるのでした。
2023-10-06 07:39
nice!(0)
No.365 - 高校数学で理解する ChatGPT の仕組み(1) [技術]
\(\newcommand{\bs}[1]{\boldsymbol{#1}} \newcommand{\mr}[1]{\mathrm{#1}} \newcommand{\br}[1]{\textbf{#1}} \newcommand{\ol}[1]{\overline{#1}} \newcommand{\sb}{\subset} \newcommand{\sp}{\supset} \newcommand{\al}{\alpha} \newcommand{\sg}{\sigma}\newcommand{\cd}{\cdots}\)
前回の No.364「言語の本質」の補足で紹介した新聞記事で、慶応義塾大学の今井教授は、
と指摘していました。メタ学習とは「学習のしかたを学習する」ことですが、 ChatGPT がそれをできる理由も「注意機構(Attention mechanism)」にあります。そこで今回は、その気になる ChatGPT の仕組みをまとめます。
今まで「高校数学で理解する ・・・・・・」というタイトルの記事をいくつか書きました。
の 13 の記事です。"高校数学で理解する" という言い方は、「高校までで習う数学だけを前提知識として説明する」という意味ですが、今回もそれに習います。もちろん、文部科学省の学習指導要領は年々変わるので、"おおよそ高校までの数学" が正しいでしょう。今回、前提とする知識は、
です。ChaGPT は "ニューラル・ネットワーク"、ないしは "深層学習(ディープ・ラーニング)" の技術を使った AI ですが、こういった知識は前提とはしないことにします。つまり、ニューラル・ネットワークについては、その基礎から(必要なものだけに絞って)順を追って説明します。
全体の構成
全体の構成は次の4つです
1.ニューラル・ネットワーク
2.自然言語のモデル化
3.Transformer
4.GPT-3 と ChatGPT
なお、この記事の作成には、Google と OpenAI の論文に加えて、以下を参考にしました。
◆岡野原 大輔(プリファードネットワークス)
「大規模言語モデルは新たな知能か」
(岩波書店 2023)
◆澁谷 崇(SONY)
「系列データモデリング (RNN/LSTM/Transformer)」
第7回「Transformer」
第12回「GPT-2, GPT-3」
(YouTube 動画)
記号
以降で使用する記号の意味は次の通りす。
ニューラル・ネットワークの例
2層から成るシンプルなニューラル・ネットワークの例が図1です。この例では隠れ層が1つだけですが、隠れ層は何層あってもかまいません(なお、入力層を含めて、これを "3層" のニューラル・ネットワークとする定義もあります)。
丸印は "ニューロン" で、各ニューロンは1つの値(活性値)をもちます。値は実数値で、32ビットの浮動小数点数が普通です。図1のニューロンの数は 3+4+3=10 個ですが、もちろんこの数は多くてもよく、実用的なネットワークでは数100万から億の単位になることがあります。
ニューロン間の矢印が "シナプス" で、一つのニューロンは、シナプスで結ばれている前の層のニューロンから値を受けとり、決められた演算をして自らの値を決めます(入力層を除く)。なお、"ニューロン" や "シナプス" は脳神経科学の用語に沿っています。
各層は、重み \(\bs{W}\)(行列)とバイアス \(\bs{b}\)(ベクトル)、活性化関数 \(f\) を持ちます。図1の場合、第1層の重みは \(\bs{W}\:\:[3\times4]\)、バイアスは \(\bs{b}\:\:[1\times4]\) で、
\(\bs{W}=\left(\begin{array}{r}w_{11}&w_{12}&w_{13}&w_{14}\\w_{21}&w_{22}&w_{23}&w_{24}\\w_{31}&w_{32}&w_{33}&w_{34}\\\end{array}\right)\)
\(\bs{b}=\left(\begin{array}{r}b_1&b_2&b_3&b_4\\\end{array}\right)\)
です。このとき、隠れ層(第1層)のニューロンの活性値、\(\bs{h}=\left(\begin{array}{r}h_1&h_2&h_3&h_4\\\end{array}\right)\) は、
\(h_1=f\:(\:x_1w_{11}+x_2w_{21}+x_3w_{31}+b_1\:)\)
\(h_2=f\:(\:x_1w_{12}+x_2w_{22}+x_3w_{32}+b_2\:)\)
\(h_3=f\:(\:x_1w_{13}+x_2w_{23}+x_3w_{33}+b_3\:)\)
\(h_4=f\:(\:x_1w_{14}+x_2w_{24}+x_3w_{34}+b_4\:)\)
の式で計算されます。ベクトルと行列で表示すると、
\(\bs{h}=f\:(\bs{x}\cdot\bs{W}+\bs{b})\)
になります。第2層も同様です。
このニューラル・ネットワークは、多重パーセプトロン(Multi Layer Perceptron : MLP)と呼ばれるタイプのもので、ニューラル・ネットワークの歴史の中では、古くから研究されている由緒のあるものです。
また上図の第1層、第2層は、すべてのニューロンが前層のすべてのニューロンとシナプスを持ってます。このような層を「全結合層」(Fully connected layer. FC-layer. FC層)と言います。全結合の多重パーセプトロンは Transformer や GPT で使われていて、重要な意味を持っています。
活性化関数 \(f\) は、隠れ層では、\(\mr{ReLU}\) 関数(Rectified Linear Unit:正規化線形ユニット)を使うのが普通です。\(\mr{ReLU}\) 関数は、
で定義される非線形関数です(図2)。以降での表記を簡潔にするため、単位ステップ関数 \(H(x)\) を用いて \(\mr{ReLU}\) 関数を表しておきます。単位ステップ関数は、
\(H(x)=1\:\:(x > 0)\)
\(H(x)=0\:\:(x\leq0)\)
で定義される関数で(図3)、ヘヴィサイド関数とも呼ばれます。\(H(x)\) の微分は、
\(H\,'(x)=0\:\:(x\neq0)\)
です。\(x=0\) において \(H(x)\) は不連続で、微分は定義できませんが、無理矢理、
\(H\,'(0)=0\)
と定義してしまうと、\(x\) の全域において、
\(H\,'(x)=0\)
となります。この \(H(x)\) を用いて \(\mr{ReLU}\) 関数を定義すると、
となり、微分は、
\(\dfrac{d}{dx}\mr{ReLU}(x)=H(x)\)
と表現できます。
出力層の活性化関数 \(f\,'\) は、ニューラル・ネットワークをどんな用途で使うかによって違ってきます。
ニューラル・ネットワークによる推論
ニューラル・ネットワークが扱う問題は、入力ベクトル \(\bs{x}\) をもとに出力ベクトル \(\bs{y}\) を "推論"(ないしは "推定"、"予測")する問題です。これには主に「回帰問題」と「分類問題」があります。
回帰問題で推論する \(\bs{y}\) は実数値(=連続値)です。たとえば、
・身長
・体重
・年齢
・男女の区別
・生体インピーダンス
から(\(=\bs{x}\))、
・体脂肪率
・筋肉量
・骨密度
を推定する(\(=\bs{y}\))といった例です(但し、市販の体組成計が AI を使っているわけではありません)。
一方、分類問題の例は、たとえば手書き数字を認識する問題です。この場合、多数の手書き数字の画像(をベクトルに変換した \(\bs{x}\))を「\(0\) のグループ」「\(1\) のグループ」・・・・・ というように分類していきます。このグループのことを AI では "クラス" と呼んでいます。つまり「クラス分類問題」です。
手書き数字の場合、明確に \(0\) ~ \(9\) のどれかに認識できればよいのですが、そうでない場合もある。たとえば、\(1\) なのか \(7\) なのか紛らわしい、\(0\) なのか \(6\) なのか曖昧、といったことが発生します。分類するのは、\(0\) ~ \(9\) のうちのどれかという「離散値の予測」であり、連続値とは違って、どうしても紛らわしい例が発生します。
従って、クラス分類問題(=離散値を予測する問題)では、出力ベクトル \(\bs{y}\) は確率です。手書き数字の認識では、\(\bs{y}\) は\(10\)次元の確率ベクトルで、たとえば、
となるように、ニューラル・ネットワークを設計します。確率なので、
\(0\leq y_i\leq1,\:\:\:\displaystyle\sum_{i=1}^{10}y_i=1\)
です。入力画像が \(1\) なのか \(7\) なのか紛らわしい場合、たとえば推定の例は、
\(\bs{y}=\left(\begin{array}{r}0.8&0&0&0&0&0&0.2&0&0&0\\\end{array}\right)\)
です。これは、
\(1\) である確率が \(0.8\)
\(7\) である確率が \(0.2\)
を表します。クラス分類問題は「離散値を推論する問題」、すなわち「確率を推定する問題」であると言えます。
回帰問題の出力層の活性化関数は、恒等関数(=何もしない)とするのが普通です。一方、クラス分類問題の出力層の活性化関数は、出力 \(\bs{y}\) が確率として解釈できるような関数を選びます。それが \(\mr{Softmax}\) 関数です。
\(\mr{Softmax}\) 関数
\(\mr{Softmax}\) 関数によって、出力 \(\bs{y}\) が確率と解釈できるようになります。ベクトル \(\bs{x}\) を \(\mr{Softmax}\) 関数によって確率ベクトル \(\bs{y}\) に変換する式は、次のように定義できます。なお、ここでの \(\bs{x}\) は入力層の \(\bs{x}\) ではなく、一般的なベクトルを表します。
\(\bs{y}=\mr{Softmax}(\bs{x})\)
(\(\bs{x}\:\:\bs{y}\) は \(n\)次元ベクトル)
\(y_i=\dfrac{\mr{exp}(x_i)}{\displaystyle\sum_{i=1}^{n}\mr{exp}(x_i)}\)
\(0 < y_i < 1,\:\:\:\displaystyle\sum_{i=1}^{n}y_i=1\)
ここで使われている指数関数は、すぐに巨大な数になります。たとえば \(\mr{exp}(100)\) は\(10\)進で\(40\)桁以上の数で、\(32\)ビット浮動小数点の最大値(\(10\)進で\(40\)桁弱)を越えてしまいます。従って、\(\mr{Softmax}\) 関数の計算には工夫が必要で、それには \(\mr{Softmax}\) 関数の性質を利用します。
\(C\) を任意の実数値とし、\(n\)次元ベクトル \(\bs{z}\) を
\(z_i=x_i+C\)
と定義します。そして、
\(\bs{y}\,'=\mr{Softmax}(\bs{z})\)
と置くと、
\(\begin{eqnarray}
&&\:\:y_i\,'&=\dfrac{\mr{exp}(z_i)}{\displaystyle\sum_{i=1}^{n}\mr{exp}(z_i)}=\dfrac{\mr{exp}(x_i+C)}{\displaystyle\sum_{i=1}^{n}\mr{exp}(x_i+C)}\\
&&&=\dfrac{\mr{exp}(x_i)\cdot\mr{exp}(C)}{\displaystyle\sum_{i=1}^{n}\mr{exp}(x_i)\cdot\mr{exp}(C)}\\
&&&=\dfrac{\mr{exp}(x_i)\cdot\mr{exp}(C)}{\mr{exp}(C)\cdot\displaystyle\sum_{i=1}^{n}\mr{exp}(x_i)}\\
&&&=\dfrac{\mr{exp}(x_i)}{\displaystyle\sum_{i=1}^{n}\mr{exp}(x_i)}=y_i\\
\end{eqnarray}\)
となります。つまり \(x_i\:\:(1\leq i\leq n)\) の全部に定数 \(C\) を足しても、\(\mr{Softmax}\) 関数は変わりません。そこで、
\(C=-\mr{max}(x_1,\:x_2,\:\cd\:,x_n)\)
と置いて、
\(x_i\:\longleftarrow\:x_i+C\:\:(1\leq i\leq n)\)
と修正すると、\(x_i\) の最大値は \(0\) になります。従って、
\(0 < \mr{exp}(x_i)\leq1\)
の範囲で \(\mr{Softmax}\) 関数が計算可能になります。
大規模言語モデルと確率
クラス分類問題の出力ベクトル \(\bs{y}\) は確率でしたが、実は Transformer や GPT が実現している「大規模言語モデル」も "確率を推定するニューラル・ネットワーク" です。たとえば、
[今日] [は] [雨] [なの] [で]
というテキストに続く単語を推定します。仮に、日本語の日常用語の語彙数を5万語とすると、5万の単語すべてについて上のテキストに続く単語となる確率を、実例をもとに推定します。当然、「雨の日の行動」とか「雨の日の情景」、「雨の日の心理状態」、「雨の日に起こりうること」を描写・説明する単語の確率が高くなるわけです。たとえば名詞だけをとると、[家] [ビデオ] [映画] [傘] [犬] [洗濯] [祭] [運動会] などの確率が高く、[ニンジン] [牛] [鉛筆] などの確率は(雨の日とは関係があるとは思えないので)低いといった具合です(あくまで想定です)。
「大規模言語モデル」の重要な応用例(=タスク)である機械翻訳も同じです。日本語 → 英語の翻訳を例にとると、
[今日] [は] [晴れ] [です] [。] [BOS]
に続く英単語を推定します([BOS] は文の開始を示す特殊単語)。確率の高い単語から [it] を選んだとすると、次には、
[今日] [は] [晴れ] [です] [。] [BOS] [it]
に続く単語を推定します([is] になるはず)。こうやって進むのが機械翻訳です。
Transformer や GPT をごくごくシンプルに言えば、入力ベクトル \(\bs{x}\) はテキスト列、出力ベクトル \(\bs{y}\) は次に続く単語を示す確率ベクトル(次元は語彙数)です。
この記事は、Transformer、GPT、ChatGPT などの大規模言語モデルを説明するのが目的です。従って以降では、出力ベクトル \(\bs{y}\) は確率ベクトルであることを前提とします。
確率を推定するニューラル・ネットワーク
図1において、第1層(隠れ層)の活性化関数を \(\mr{ReLU}\)、第2層(出力層)の活性化関数を \(\mr{Softmax}\) とすると、図4になります。
図4の計算は、以下に示すような4段階の計算処理で表すことができます。
第1層
\(\bs{h}\,'=\bs{x}\cdot\bs{W}+\bs{b}\)
\(\bs{h}=\mr{ReLU}(\bs{h}\,')\)
第2層
\(\bs{y}\,'=\bs{h}\cdot\bs{W}\,'+\bs{b}\,'\)
\(\bs{y}=\mr{Softmax}(\bs{y}\,')\)
この4つの計算処理を「計算レイヤー」、略して「レイヤー」と呼び、図5のグラフで表現することにします。
レイヤー(layer)は日本語にすると「層」で、第1層や隠れ層の「層」と紛らわしいのですが、「レイヤー」と書いたときは "ある一定の計算処理" を示します。後ほど説明する Transformer や GPT は、図4のような単純な「層」では表現できない複雑な計算処理があります。従って "ある一定の計算処理 = レイヤー" とした方が、すべての場合を共通に表現できて都合が良いのです。
レイヤーの四角に向かう矢印は計算処理への入力を示し、四角から出る矢印は計算処理からの出力(計算結果)を示します。「レイヤーは一つの関数」と考えてもOKです。
図5の「Linear レイヤー」は、「Affine(アフィン)レイヤー」と呼ばれることが多いのですが、Transformer の論文で Linear があるので、そちらを採用します。
図5のネットワークがどうやって「学習可能なのか」を次に説明します。この「学習できる」ということが、ニューラル・ネットワークが成り立つ根幹です。
ニューラル・ネットワークの学習
重みとバイアスの初期値
まず、重み(\(\bs{W},\:\bs{W}\,'\))の初期値を乱数で与えます。この乱数は、前の層のニューロンの数を \(n\) とすると
の正規分布の乱数とするのが普通です。\(n=10,000\) とすると、標準偏差は \(0.01\) なので、
\(-\:0.01\) ~ \(0.01\)
の間にデータの多く(約 \(2/3\))が集まる乱数です。但し、\(\mr{ReLU}\) を活性化関数とする層(図4では第1層)の重みは、
の乱数とします。なお、バイアスの初期値は \(0\) とします。こういった初期値の与え方は、学習をスムーズに進めるためです。
損失と損失関数
初期値が決まったところで、訓練データの一つを、
\(\bs{x}\):入力データ
\(\bs{t}\):確率の正解データ
とします。この正解データのことを「教師ラベル」と呼びます。そして、ニューラル・ネットワークによる予測の確率 \(\bs{y}\) と、正解の確率である \(\bs{t}\) との差異を計算します。この差異を「損失(\(Loss\))」といい、\(L\) で表します。\(L\) は正のスカラー値です。
\(\bs{y}\) と \(\bs{t}\) から \(L\) を求めるのが「損失関数(Loss Function)」です。確率を予測する場合の損失関数は「交差エントロピー誤差(Cross Entropy Error : CEE)」とするのが普通で、次の式で表されます。
たとえば、先ほどの手書き数字の認識の「\(1\) または \(7\) という予測」を例にとって、その正解が \(1\) だとすると、
予測 \(\bs{y}=\left(\begin{array}{r}0.8&0&0&0&0&0&0.2&0&0&0\\\end{array}\right)\)
正解 \(\bs{t}=\left(\begin{array}{r}1&0&0&0&0&0&0&0&0\\\end{array}\right)\) = 教師ラベル
です。なお、\(\mr{Softmax}\)関数の出力は \(0\) にはならないので、上の \(\bs{y}\) で \(0\) と書いた要素は、実際には微小値です。すると、
\(L=-\mr{log}\:0.8\fallingdotseq0.223\)
となります。損失関数を含めると、レイヤー構成は図6のようになります。
この図の重みとバイアスを少しだけ調整して、\(L\) を少しだけ \(0\) に近づけます。この調整を多数の学習データ(= \(\bs{x}\:\:\bs{t}\) のペア)で繰り返して、\(L\) を次第に \(0\) に近づけていくのが学習です。
勾配降下法
重みの調整には「勾配降下法(Gradient descent method)」を使います。図6の場合、損失 \(L\) は、ある関数 \(f\) を用いて、
\(L=f(\bs{x},\:\bs{W},\:\bs{b},\:\bs{W}\,',\:\bs{b}\,',\:\bs{t})\)
と表現できます。ここで、\(\bs{W}\) の一つの要素、\(w_{11}\) を例にとると、
を計算します。これはいわゆる微分ですが、多変数関数の微分なので、数学的には偏微分であり、
\(\dfrac{\partial L}{\partial w_{11}}\)
です。つまり、\(w_{11}\) 以外の変数をすべて固定しての(すべて定数とした上での)、\(w_{11}\) による微分です。
具体的な入力 \(\bs{x}\) のときの \(\dfrac{\partial L}{\partial w_{11}}\) が求まったとします。もし仮に、\(\dfrac{\partial L}{\partial w_{11}}\) が正の値だとしたら、\(w_{11}\) を少しだけ減らせば、\(L\) は少しだけ \(0\) に近づきます。もし \(\dfrac{\partial L}{\partial w_{11}}\) が負だとしたら、\(w_{11}\) を少しだけ増やせば、\(L\) は少しだけ \(0\) に近づきます。つまり、
更新式:\(w_{11}\:\longleftarrow\:w_{11}-\eta\cdot\dfrac{\partial L}{\partial w_{11}}\)
として重みを更新すればよいわけです。\(\eta\) は「少しだけ」を表す値で「学習率」といい、\(0.01\) とか \(0.001\) とかの値をあらかじめ決めておきます。この決め方は、学習の効率に大いに影響します。こういった更新を、すべての重みとバイアスに対して行います。
"学習で調整される値" を総称して「パラメータ」と言います。図6のパラメータは重みとバイアスですが、実用的なニューラル・ネットワークでは、それ以外にも更新されるパラメータがあります。
\(L\) の偏微分値をベクトルや行列単位でまとめたものを、次のように表記します。2次元のベクトル \(\bs{b}\) と、2行2列の行列 \(\bs{W}\) で例示すると、
\(\dfrac{\partial L}{\partial\bs{b}}=\left(\begin{array}{r}\dfrac{\partial L}{\partial b_1}&\dfrac{\partial L}{\partial b_2}\\\end{array}\right)\)
\(\dfrac{\partial L}{\partial\bs{W}}=\left(\begin{array}{r}\dfrac{\partial L}{\partial w_{11}}&\dfrac{\partial L}{\partial w_{12}}\\\dfrac{\partial L}{\partial w_{21}}&\dfrac{\partial L}{\partial w_{22}}\\\end{array}\right)\)
です。これを「勾配(gradient)」と言います。勾配を求めることでパラメータを少しづつ更新し、損失を少しづつ小さくしていく(=降下させる)のが勾配降下法です。
ミニバッチ勾配降下法
学習は次のように進みます。まず、すべての訓練データ(たとえば
数万件)から、数\(10\)~数\(100\)件(たとえば\(256\)件)の訓練データをランダムに選びます。この一群のデータを「ミニバッチ」と呼びます。ミニバッチの各訓練データによる確率の推定から損失を計算し、そこからすべてのパラメータの勾配と求め、その勾配ごとに "ミニバッチの平均値" をとります。その平均値に基づき、更新式に従って各パラメータを更新します。
ミニバッチによる更新が終わると、別のミニバッチをランダムに選び、更新を繰り返します。こうすると、損失は次第に減少していきますが、そのうち "頭打ち" になります。そこで更新を止めます。
このようなパラメータ更新のやり方を「ミニバッチ勾配降下法」と言います。一つの訓練データだけで更新しないのは、たまたまその訓練データが「外れデータ」(全体の傾向とは異質なデータ)だと、学習の進行に支障が出てくるからです。
訓練データをランダムに選択する方法を「確率的勾配降下法(Stochastic gradient method - SGD)」と言いますが、ミニバッチ勾配降下法は、その確率的勾配降下法の一種です。
誤差逆伝播法
ここで問題になるのは、すべてのパラメータの勾配をどうやって求めるかです。それに使われるのが「誤差逆伝播法(Back propagation)」です。その原理を、Linear レイヤーから説明します。
(1) Linear
図7で示すように、Linear レイヤーがあり、そのあとに何らかの計算処理が続いて、最終的に損失 \(L\) が求まったとします。\(\bs{x}\:\:\bs{y}\) はニューラル・ネットワークへの入力と出力ではなく、Linear レイヤーへの入力と出力の意味です。ここで、
と言えます。これが誤差逆伝播法の原理です。このことを、2次元ベクトル(\(\bs{x},\:\:\bs{b},\:\:\bs{y}\))、2行2列の配列(\(\bs{W}\))で例示します(\(N=2,\:M=2\) の場合)。
【Linear の計算式】
\(\left(\begin{array}{r}y_1&y_2\\\end{array}\right)=\left(\begin{array}{r}x_1&x_2\\\end{array}\right)\cdot\left(\begin{array}{r}w_{11}&w_{12}\\w_{21}&w_{22}\\\end{array}\right)+\left(\begin{array}{r}b_1&b_2\\\end{array}\right)\)
\(y_1=x_1w_{11}+x_2w_{21}+b_1\)
\(y_2=x_1w_{12}+x_2w_{22}+b_2\)
\(x_1\) が変化すると \(y_1,\:y_2\) が変化し、それが損失 \(L\) に影響することに注意して、\(\bs{x},\:\:\bs{W},\:\:\bs{b}\) の勾配を計算します。
【\(\bs{\bs{x}}\) の勾配】
同様にして、
\(\dfrac{\partial L}{\partial x_2}=\left(\begin{array}{r}\dfrac{\partial L}{\partial y_1}&\dfrac{\partial L}{\partial y_2}\\\end{array}\right)\left(\begin{array}{r}w_{21}\\w_{22}\\\end{array}\right)\)
です。これをまとめると、
\(\left(\begin{array}{r}\dfrac{\partial L}{\partial x_1}&\dfrac{\partial L}{\partial x_2}\\\end{array}\right)=\:\:\:\left(\begin{array}{r}\dfrac{\partial L}{\partial y_1}&\dfrac{\partial L}{\partial y_2}\\\end{array}\right)\left(\begin{array}{r}w_{11}&w_{21}\\w_{12}&w_{22}\\\end{array}\right)\)
\(\dfrac{\partial L}{\partial\bs{x}}=\dfrac{\partial L}{\partial\bs{y}}\cdot\bs{W}^T\)
となり、\(\bs{x}\) の勾配が求まります。
【\(\bs{\bs{W}}\) の勾配】
\(\dfrac{\partial L}{\partial w_{11}}=\dfrac{\partial y_1}{\partial w_{11}}\dfrac{\partial y_1}{\partial w_{11}}=x_1\dfrac{\partial y_1}{\partial w_{11}}\)
\(\dfrac{\partial L}{\partial w_{12}}=\dfrac{\partial y_2}{\partial w_{12}}\dfrac{\partial y_2}{\partial w_{12}}=x_1\dfrac{\partial y_2}{\partial w_{12}}\)
\(\dfrac{\partial L}{\partial w_{21}}=\dfrac{\partial y_1}{\partial w_{21}}\dfrac{\partial y_1}{\partial w_{21}}=x_2\dfrac{\partial y_1}{\partial w_{21}}\)
\(\dfrac{\partial L}{\partial w_{22}}=\dfrac{\partial y_2}{\partial w_{22}}\dfrac{\partial y_2}{\partial w_{22}}=x_2\dfrac{\partial y_2}{\partial w_{22}}\)
これらをまとめると、
となります。
【\(\bs{\bs{b}}\) の勾配】
以上の計算で求まった勾配をまとめて図示すると、図8になります。黒字(入力・出力とパラメータ)の下の赤字がパラメータの勾配で、右から左への矢印は、「レイヤーの出力の勾配が求まれば、レイヤーの入力の勾配が求まる」こと示します(= 逆伝播)。上での計算は2次元ベクトルと2行2列の配列で例示しましたが、図8のようなベクトル・配列で表示すると、\([1\times N]\) のベクトルと \([N\times M]\) の行列で成り立つことが確認できます。
(2) ReLU
\(\mr{ReLU}\) 関数は、
\(\mr{ReLU}(x_i)=x_i\:\:(x_i > 0)\)
\(\mr{ReLU}(x_i)=0\:\:\:(x_i\leq0)\)
であり、ベクトルの表現では、単位ステップ関数、
\(H(x)=1\:\:\:(x > 0)\)
\(H(x)=0\:\:\:(x\leq0)\)
と要素積 \(\odot\) を使って、
\(\mr{ReLU}(\bs{x})=H(\bs{x})\odot\bs{x}\)
と定義できます。従って、勾配は、
\(\dfrac{\partial L}{\partial\bs{x}}=H(\bs{x})\odot\dfrac{\partial L}{\partial\bs{y}}\)
です。
(3) Softmax
\(\mr{Softmax}\) 関数の定義は、
\(\bs{y}=\mr{Softmax}(\bs{x})\)
(\(\bs{x}\:\:\bs{y}\) は \(N\)次元ベクトル)
\(y_i=\dfrac{\mr{exp}(x_i)}{\displaystyle\sum_{i=1}^{N}\mr{exp}(x_i)}\)
\(0 < y_i < 1,\:\:\:\displaystyle\sum_{i=1}^{N}y_i=1\)
です。勾配の計算を \(N=3\) の場合で例示します。
\(\dfrac{\partial L}{\partial x_1}=\dfrac{\partial y_1}{\partial x_1}\dfrac{\partial L}{\partial y_1}+\dfrac{\partial y_2}{\partial x_1}\dfrac{\partial L}{\partial y_2}+\dfrac{\partial y_3}{\partial x_1}\dfrac{\partial L}{\partial y_3}\)
\(\dfrac{\partial L}{\partial x_1}=y_1(1-y_1)\dfrac{\partial L}{\partial y_1}-y_1y_2\dfrac{\partial L}{\partial y_2}-y_1y_3\dfrac{\partial L}{\partial y_3}\)
\(\dfrac{\partial L}{\partial x_2}=y_2(1-y_2)\dfrac{\partial L}{\partial y_2}-y_2y_3\dfrac{\partial L}{\partial y_3}-y_2y_1\dfrac{\partial L}{\partial y_1}\)
\(\dfrac{\partial L}{\partial x_3}=y_3(1-y_3)\dfrac{\partial L}{\partial y_3}-y_3y_1\dfrac{\partial L}{\partial y_1}-y_3y_2\dfrac{\partial L}{\partial y_2}\)
(4) Cross Entropy Error - CEE
交差エントロピー誤差の定義は、
入力 \(\bs{y}\) \((1\times N)\)
入力 \(\bs{t}\) \((1\times N)\) 教師ラベル(正解データ)
出力 \(L\:(Loss)\)
とすると、
\(L=-\displaystyle\sum_{i=1}^{N}(t_i\mr{log}y_i)\)
で定義されます。従って、
\(\dfrac{\partial L}{\partial y_i}=-\dfrac{t_i}{y_i}\)
であり、\(N=3\) の場合を書くと、
\(\dfrac{\partial L}{\partial y_1}=-\dfrac{t_1}{y_1}\)
\(\dfrac{\partial L}{\partial y_2}=-\dfrac{t_2}{y_2}\)
\(\dfrac{\partial L}{\partial y_3}=-\dfrac{t_2}{y_3}\)
です。
(5) Softmax + CEE
\(\mr{Softmax}\) レイヤーの直後に交差エントロピー誤差のレイヤーを配置した場合を考えます。(3) と (4) の計算を合体させると、次のように計算できます。
計算の過程で、\(\bs{t}\) が確率ベクトルであることから、\(t_1+t_2+t_3=1\) を使いました。この計算は \(x_2,\:\:x_3\) についても全く同様にできます。それを含めてまとめると、
\(\dfrac{\partial L}{\partial x_1}=y_1-t_1\)
\(\dfrac{\partial L}{\partial x_2}=y_2-t_2\)
\(\dfrac{\partial L}{\partial x_3}=y_3-t_3\)
となります。この結果、勾配は、
\(\dfrac{\partial L}{\partial\bs{x}}=\bs{y}-\bs{t}\)
という、大変シンプルな形になりました。これは任意の次元のベクトルで成り立ちます。実は、このようなシンプルな形になるように、\(\mr{Softmax}\) と 交差エントロピー誤差が設計されています。図示すると次の通りです。
ニューラル・ネットワークの誤差逆伝播
以上で「確率を推定するニューラル・ネットワーク」を構成する各レイヤーの誤差逆伝播が計算できました。これらをまとめると、次の図11になります。
ちなみに、第1層の重み \(\bs{W}\) の勾配は図11から陽に計算すると、次のようになります。
\(\dfrac{\partial L}{\partial\bs{W}}=\bs{x}^T(H(\bs{x}\bs{W}+\bs{b})\odot((\bs{y}-\bs{t})\bs{W}\,'))\)
このネットワークは隠れ層が1つだけというシンプルなものですが、今までの計算で分かるように、層数が何百層に増えたとしても、逆伝播を多段に重ねることで、誤差逆伝播法が成立します。
また、図11 で使っているレイヤーは、Linear、\(\mr{ReLU}\)、\(\mr{Softmax}\)、Cross Entropy Error ですが、これらを関数と見なしたとき、誤差逆伝播で使った数学的な前提は「関数がパラメータで微分可能」ということだけです。つまり、レイヤーの関数が微分可能である限り、誤差逆伝播法は有効です。
実は、実用的なニューラル・ネットワークで誤差逆伝播法をうまく機能させるためには、数々の工夫が必要です。また、一般に訓練データの数は膨大なので、学習速度を上げる工夫も必要です(以降でその一部を説明します)。上で述べた「初期値の選択」や「学習率」はその工夫の一つです。そういったことはありますが、ネットワークがいかに巨大になろうとも(大規模言語モデルはその巨大な典型です)、誤差逆伝播法は可能なことが分かっています。
以上が、「ニューラル・ネットワークが学習可能である」ということの原理です。
\(\mr{GELU}\)
最近の大規模言語モデル(GPT など)では、活性化関数 \(\mr{ReLU}\) の代わりに \(\mr{GELU}\) \((\)Gaussian Error Linear Unit:ガウス誤差線形ユニット\()\) が使われます。その方が、学習が効率的に進むことが分かったからです。
\(\mr{ReLU}\) は、\(H(x)\) を単位ステップ関数として、
\(\mr{ReLU}(x)=H(x)x\)
でしたが、\(\mr{GELU}\) は、
\(\mr{GELU}(x)=\Phi(x)x\)
で定義されます。\(\Phi(x)\) は標準正規分布(平均 \(0\)、標準偏差 \(1\))の累積分布関数です。標準正規分布の確率密度を \(f(x)\) とすると、
\(f(x)=\dfrac{1}{\sqrt{2\pi}}\mr{exp}\left(-\dfrac{x^2}{2}\right)\)
です(図12)。つまり \(x\) ~ \(x+dx\) である事象が発生する確率が \(f(x)dx\) です。また \(-\infty\) ~ \(\infty\) の範囲で積分すると \(1\) で、原点を中心に左右対称です。
この確率分布を \(-\infty\) から \(x\) まで積分したのが累積分布関数で、
\(\Phi(x)=\displaystyle\int_{-\infty}^{x}f(t)dt\)
です(図13)。これは正規分布に従うデータ値が \(x\) 以下になる確率です。これはガウスの誤差関数(Gaussian error function)\(\mr{Erf}\) を用いて表現できます。\(\Phi(0)=0.5\) となることを使って計算すると、
\(\begin{eqnarray}
&&\:\:\Phi(x)&=\displaystyle\int_{-\infty}^{x}f(t)dt\\
&&&=\dfrac{1}{\sqrt{2\pi}}\displaystyle\int_{-\infty}^{x}\mr{exp}\left(-\dfrac{t^2}{2}\right)dt\\
&&&=\dfrac{1}{2}+\dfrac{1}{\sqrt{2\pi}}\displaystyle\int_{0}^{x}\mr{exp}\left(-\dfrac{t^2}{2}\right)dt\\
\end{eqnarray}\)
\(t\:\rightarrow\:\sqrt{2}u\) の変数変換をすると、
\(\begin{eqnarray}
&&\:\:\phantom{\Phi(x)}&=\dfrac{1}{2}+\dfrac{1}{\sqrt{2\pi}}\displaystyle\int_{0}^{\tiny\dfrac{x}{\sqrt{2}}}\mr{exp}(-u^2)\sqrt{2}du\\
&&&=\dfrac{1}{2}+\dfrac{1}{\sqrt{\pi}}\displaystyle\int_{0}^{\tiny\dfrac{x}{\sqrt{2}}}\mr{exp}(-u^2)du\\
&&&=\dfrac{1}{2}\left(1+\mr{Erf}\left(\dfrac{x}{\sqrt{2}}\right)\right)\\
\end{eqnarray}\)
となります。ガウスの誤差関数、\(\mr{Erf}()\) の定義は
\(\mr{Erf}(x)=\dfrac{2}{\sqrt{\pi}}\displaystyle\int_{0}^{x}\mr{exp}(-u^2)du\)
です。従って、
\(\Phi(x)=\dfrac{1}{2}\left(1+\mr{Erf}\left(\dfrac{x}{\sqrt{2}}\right)\right)\)
と表現できます。\(\mr{GELU}\) 関数の形は 図14 です。
\(\mr{GELU}\) は \(\mr{ReLU}\) と良く似ていますが、すべての点で微分可能であり、\(\mr{ReLU}\) のように微係数がジャンプするところがありません。このことが、大規模言語モデルの効率的な学習に役だっていると考えられます。
残差結合
Linear レイヤーを例にとります。入力を \(\bs{x}\)、出力を \(\bs{y}\) とし、入力と出力のベクトルの次元は同一とします。重みを \(\bs{W}\) とし、バイアス \(\bs{b}\) は省略します。通常の Linear レイヤーは、
\(\bs{y}=\bs{x}\bs{W}\)
ですが、
\(\bs{y}=\bs{x}\bs{W}+\bs{x}\)
とするのが、「残差結合(residual connection)」をもつ Linear レイヤーです。なお「残差接続」とも言います。また「スキップ接続(skip connection)」も同じ意味です。
誤差逆伝播を計算すると、\(\bs{x}\) の勾配は次のようになります。2次元ベクトルの場合で例示します。
\(\left(\begin{array}{r}y_1&y_2\\\end{array}\right)=\left(\begin{array}{r}x_1&x_2\\\end{array}\right)\cdot\left(\begin{array}{r}w_{11}&w_{12}\\w_{21}&w_{22}\\\end{array}\right)+\left(\begin{array}{r}x_1&x_2\\\end{array}\right)\)
\(y_1=x_1w_{11}+x_2w_{21}+x_1\)
\(y_2=x_1w_{12}+x_2w_{22}+x_2\)
同様にして、
\(\dfrac{\partial L}{\partial x_2}=\left(\begin{array}{r}\dfrac{\partial L}{\partial y_1}&\dfrac{\partial L}{\partial y_2}\\\end{array}\right)\left(\begin{array}{r}w_{21}\\w_{22}\\\end{array}\right)+\dfrac{\partial L}{\partial y_2}\)
従って、
\(\dfrac{\partial L}{\partial\bs{x}}=\dfrac{\partial L}{\partial\bs{y}}\cdot\bs{W}^T+\dfrac{\partial L}{\partial\bs{y}}\)
です。つまり、勾配 \(\dfrac{\partial L}{\partial\bs{y}}\) が、逆伝播でそのまま \(\dfrac{\partial L}{\partial\bs{x}}\) に伝わります(図\(16\))。
一般にニューラル・ネットワークの学習を続けると、重みがゼロに近づき、その結果 \(\dfrac{\partial L}{\partial\bs{x}}\) が \(0\) に近い小さな値となることがあります。\(\dfrac{\partial L}{\partial\bs{x}}\) は、その一つ前への逆伝播の入力となるので、多層のニューラル・ネットワークでこれが重なると、前の方の層の勾配が極小になり、重みが更新できないという事態になります。これが「勾配消失」で、ニューラル・ネットワークの学習が困難になります。
残差結合を用いると、この問題を解決できます。Transformer では残差結合が使われています。
正規化
Transformer で使われているもう一つのレイヤーが「レイヤー正規化(Layer Normalization)」です。これは、ベクトル \(\bs{x}\:[1\times N]\) の要素を、平均 \(0\)、標準偏差 \(1\) のベクトル \(\bs{y}\:[1\times N]\) の要素に置き換えるものです。
\(\bs{y}=\mr{LayerNormalization}(\bs{x})\)
\(\mu=\dfrac{1}{N}\displaystyle\sum_{i=1}^{N}x_i\)
\(\sg=\sqrt{\dfrac{1}{N}\displaystyle\sum_{i=1}^{N}(x_i-\mu)^2}\)
とおくと、
\(y_i=\dfrac{1}{\sg}(x_i-\mu)\)
となります。実際にニューラル・ネットワークで使われるときには、さらにベクトルの要素ごとに線形変換をして、
\(y_i\:\longleftarrow\:g_iy_i+b_i\)
とします。ベクトルで表現すると、
\(\bs{y}=\dfrac{1}{\sg}\bs{g}\odot(\bs{x}-\mu)+\bs{b}\)
です。この \(\bs{g}\) と \(\bs{b}\) は学習可能なパラメータです。つまり、ニューラル・ネットワークの訓練のときに学習をして、最適値を決めます。もちろん、レイヤー正規化の式は微分可能なので、逆伝播計算が(少々複雑な式になりますが)可能です。
レイヤー正規化は、ニューラル・ネットワークを安定化させ、学習の効率化に役立ちます。その理由ですが、中間層の活性化関数で一般的な \(\mr{ReLU}\) 関数は、\(x=0\) の付近で非線型関数であり、それ以外では線型です。ニューラル・ネットワークは全体としては非線型関数で、そこにこそ意義があるのですが、その非線型性を生み出しているのは、\(x=0\) 付近の \(\mr{ReLU}\) 関数です。
従って、レイヤーの値を「ゼロ付近に集める」と、ニューラル・ネットワークの非線型性を強めることができ、これが学習の効率化につながります。その「ゼロ付近に集める」のがレイヤー正規化です。
以上の、
・\(\mr{ReLU}\) 関数(または \(\mr{GELU}\) 関数)
・残差結合
・正規化
は、大規模ニューラル・ネットワークを安定的に学習可能にするための必須技術であり、Transformer や GPT でも使われています。
単語への分解
自然言語で書かれたテキストをコンピュータで扱うとき、まずテキストを単語の系列に分解しなければなりません。系列とは「並び順に意味のある、同質の要素の集合」です。単語への分解は、単語の区切りを明示する英語(や、その他の欧米語)では容易です。文末を表すピリオドや、その他の記号も1つの単語と数えます。
日本語は単語の区切りがないので、形態素解析ソフトで単語に分解します。句読点、「、」などの記号も、それぞれ1単語と数えます。日本語の形態素解析ソフトは各種ありますが、オープンソースの MeCab が有名です。
大規模言語モデルは、世界中から集めた Webのテキスト(以下、WebText と言います)や Wikipedia、電子ブックなどを訓練データとして学習しますが、そこに出てくる単語を集めて「語彙の集合」を作ります。この集合のサイズを \(V\) とすると(たとえば、5万とか10万とかの値)、単語に \(1\)~\(V\) のユニークな番号を振ることができます。この番号を「単語ID」と呼びます。
なお、大規模言語モデルでは内部処理用として「特殊単語」も用います。以降の説明で使うのは、
[BOS] :文の開始
[EOS] :文の終了。ないしは文の区切り。
です。こうすると、テキスト \(\bs{T}\) は、
\(\bs{T}=\{x_1,\:x_2,\:x_3,\:\cd\:x_T\}\)
という単語IDの列で表現できることになります。もしこれが完結した文だとすると、\(x_1=\)[BOS]、\(x_T=\)[EOS] であり、複文だと途中にも [BOS] や [EOS] が出てくることになります。
単語IDは、その数字自体には意味がありません。また、語彙集合(要素数 \(V\))が増大すると単語IDの最大値も変化します。上の数字列は、あくまで「1時点での語彙集合をもとにして恣意的に付けられた数字の列」です。
分散表現
テキストをニュラール・ネットワークで扱うためには、すべての単語を、語彙集合のサイズにはよらない「固定長のベクトル」で表現するのが必須です。ここで使われるのが単語の「分散表現」で、固定長であるのみならず、"単語の意味もくみ取った" 表現です。ベクトルの次元は、たとば 512次元とか 1024次元です。
単語を分散表現にすることを "単語埋め込み"(word embedding)と言います。単語埋め込みの手法は各種ありますが、ここでは「word2vec」のアルゴリズムを例にとります。word2vec は、Google が2013年に提案したもので、実用的な分散表現の嚆矢となったものです。
word2vec に限りませんが、単語埋め込みのアルゴリズムの前提となっている仮定があります。それは、
というもので、これを「分布仮説」と言います。たとえば、英文を例にとり、「周囲」を仮に「前1語、後1語」とします。
[I] [ ] [beer]
という文で [ ] に入る1単語は何かです。1単語に限定すると、冠詞(a, the)は入れようがないので、入る単語は限定されます。たとえば、
などです。[ ] には「飲む」に関係した動詞か「嗜好」に関係した動詞が入る可能性が高い。少なくとも「私とビールの関わりについての動詞」です。つまり、入る単語は「前後の1語によって意味が限定される」わけです。もしこれが「前後5語」とか「前後10語」であると「似たような意味の単語」か、少なくとも「同じジャンルの単語」になるはずです。
word2vec という「単語埋め込みアルゴリズム」には2種類あり、「周囲の単語から中心の単語を推論する(CBOW)」と「中心の単語から周囲の単語を推論する(skip-gram)」の2つです。推論にはニューラル・ネットワークを使います。以下は CBOW(Continuous Bag of Words)のネットワーク・モデルで説明します。
word2vec(CBOW)
CBOW は「周囲の単語から中心の単語を推論する」ニューラル・ネットワークのモデルです。「周囲の単語」を "コンテクスト" と呼び、推論の対象とする単語を "ターゲット" と呼びます。
まず、コンテクストのサイズを決めます。ターゲットの前の \(c\) 語、ターゲットの後ろの \(c\) 語をコンテクストとする場合、この \(c\) を "ウィンドーサイズ" と呼びます。そして "ウィンドー" の中には \(2c\) 語のコンテクストと1つのターゲットが含まれます。そして、訓練データとする文の "ウィンドー" を1単語ずつずらしながら、コンテクストからターゲットを推論する学習を行います。
語彙集合の単語数を \(V\) とし、一つの文を、
\(\bs{T}=\{x_1,\:x_2,\:\cd x_T\}\)
\(x_i\) :単語ID \((1\leq x_i\leq V)\)
とします。そして、\(x_i\) に1対1に対応する、\(V\)次元の one hotベクトルを、
\(\bs{x}_i=\left(\begin{array}{r}a_1,&a_2,&a_3,&\cd&a_V\\\end{array}\right)\)
\(a_j=0\:\:(j\neq x_i)\)
\(a_j=1\:\:(j=x_i)\)
とします。つまり \(\bs{x}_i\) は、\(x_i\) 番目の要素だけが \(1\) で、他は全部 \(0\) の \(V\) 次元ベクトルです(1つだけ \(1\)、が "one hot" の意味です)。
例として、ウィンドーサイズを \(c=2\) とします。また分散表現の単語ベクトルの次元を \(D\) とします。この前提で、\(\bs{T}\) の中の \(t\) 番目の単語の one hotベクトルを推論するモデルが図17です。
\(\bs{T}=\{\:\cd,\:\bs{x}_{t-2},\:\bs{x}_{t-1},\:\bs{x}_t,\:\bs{x}_{t+1},\:\bs{x}_{t+2},\:\cd\:\}\)
という単語の one hotベクトルの系列を想定したとき、 \(\bs{x}_t\) がターゲットの正解データ(=教師ラベル)であり、その他の4つがコンテクストです。
最初の MatMul (Matrix Multiply) レイヤーは、4つの one hotベクトル \(\bs{x}_i\) を入力とし、それぞれに重み行列 \(\bs{W}_{\large enc}\) をかけて、4つのベクトル \(\bs{h}_i\) を出力します(enc=encode)。つまり、
\(\bs{h}_i=\bs{x}_i\cdot\:\bs{W}_{\large enc}\)
です。Average レイヤーは、入力された複数ベクトルの平均をとり、一つのベクトル \(\bs{h}_t\) を出力します。この \(\bs{h}_t\) が \(\bs{x}_t\) の分散表現(= \(D\)次元ベクトル)です(というより、そうなるようにネットワークを訓練します)。
次の MatMul レイヤーで 重み \(\bs{W}_{\large dec}\) を掛け(dec=decode)、\(\mr{Softmax}\) レイヤーを通して、分散表現を \(V\) 次元の確率ベクトル \(\bs{y}_t\) に変換します。そして、教師ラベルである \(\bs{x}_t\) との間で交差エントロピー誤差を計算し、損失 \(L\) を求めます。
損失が求まれば、誤差逆伝播法で重み行列 \(\bs{W}_{\large enc}\) と \(\bs{W}_{\large dec}\) を修正します。この修正を、大量の文とそのすべてのウィンドーで行って、損失 \(L\) を最小化します。これがネットワークの訓練です。
訓練済みのネットワークでは、重み行列 \(\bs{W}_{\large enc}\:[V\times D]\) が、単語の分散表現の集積体になっています。つまり、one hot ベクトル \(\bs{x}_i\) の分散表現を \(\bs{h}_i\) とすると、
\(\bs{h}_i=\bs{x}_i\cdot\:\bs{W}_{\large enc}\)
です。\(\bs{x}_i\) の単語IDを \(x_i\) とすると、
\(\bs{h}_i=\bs{W}_{\large enc}\) の \(x_i\)行(\(1\)列から\(D\)列まで)
となります。
分散表現と単語の意味
「分布仮説」をもとに、ニューラル・ネットワークによる推論で得られた単語の分散表現ベクトルは、類似の意味の単語は類似のベクトルになる(ことが多い)ことが確認されています。たとえば、
year, month, day
などや、
car, automobile, vehicle
などです。ベクトルの類似は「コサイン類似度」で計測します。2つの2次元ベクトル、
\(\bs{a}=\left(\begin{array}{r}a_1&a_2\\\end{array}\right)\)
\(\bs{b}=\left(\begin{array}{r}b_1&b_2\\\end{array}\right)\)
の場合で例示すると、
コサイン類似度\(=\dfrac{a_1b_1+a_2b_2}{\sqrt{a_1^2+a_2^2}\sqrt{b_1^2+b_2^2}}\)
で、2次元平面の2つのベクトルの角度(コサイン値)を求める式になります。この式の分子は内積(dot product)で、内積の定義式を変形したものです。この類似度を利用して「類推問題」が解けます。たとえば、
France : Paris = Japan : X
の X は何かという問題です。答えは Tokyo ですが、これを求めるには、分散表現ベクトルが類似しているという前提で、
となるはずなので、
X = France + Paris - Japan
であり、X を \(\bs{W}_{\large dec}\) と \(\mr{Softmax}\) 関数を使って確率ベクトルに変換すれば、確率が最も高い単語が Tokyo になるはずというわけです。
もちろん、分散表現ベクトルで類推問題を解くのは完璧ではありません。分散表現を作るときのウィンドーのサイズと訓練データの量にもよりますが、各種の類推問題を作って実際にテストをすると、60%~70% の正解率になるのが最大のようです。
言語モデル
分散表現ベクトルを用いて「言語モデル」を構築します。いま、一つの文を構成する単語の並び、
\(\bs{x}_1,\:\bs{x}_2,\:\bs{x}_3,\:\cd\:,\:\bs{x}_T\)
があったとき(\(\bs{x}_1=\)[BOS]、\(\bs{x}_T=\)[EOS])、この文が存在する確率を、
\(P(\bs{x}_1,\:\bs{x}_2,\:\bs{x}_3,\:\cd\:,\:\bs{x}_T)\)
で表します。文法として間違っている文の確率はゼロに近く、また文法としては合っていても、意味をなさない文の確率は低い。
\(P(\)[BOS],[彼女],[は],[学校],[へ],[行く],[EOS]\()\)
\( > \:P(\)[BOS],[学校],[は],[彼女],[へ],[行く],[EOS]\()\)
といった具合です。この「存在確率」は、次のような「条件付き確率」で表現できます。つまり、
\(P_1=P(\)[彼女] | [BOS]\()\)
:文頭が「彼女」である確率
\(P_2=P(\)[は] | [BOS],[彼女]\()\)
:「彼女」の次が「は」である確率
\(P_3=P(\)[学校] | [BOS],[彼女],[は]\()\)
:「彼女は」の次が「学校」である確率
\(P_4=P(\)[へ] | [BOS],[彼女],[は],[学校]\()\)
:「彼女は学校」の次が「へ」である確率
\(P_5=P(\)[行く] | [BOS],[彼女],[は],[学校],[へ]\()\)
:「彼女は学校へ」の次が「行く」である確率
\(P_6=P(\)[EOS] | [BOS],[彼女],[は],[学校],[へ],[行く]\()\)
:「彼女は学校へ行く」で文が終わる確率
とすると、
\(P(\)[BOS],[彼女],[は],[学校],[へ],[行く],[EOS]\()\)
\(=P_1\times P_2\times P_3\times P_4\times P_5\times P_6\)
となります。つまり、一般的に、
\(P(\bs{x}_{t+1}\:|\:\bs{x}_1,\:\bs{x}_2,\:\bs{x}_3,\:\cd\:,\:\bs{x}_t)\)
が分かれば、言語モデルは決まります。平たく言うと、
それまでの単語の系列から、次にくる単語の確率を推測する
のが言語モデルと言えます。もちろん、次にくる可能性のある単語は1つではありません。語彙集合のすべての単語それぞれについて「次にくる」確率を予測します。
実は、Transformer や GPT、ChatGPT がやっていることは「次にくる単語の予測」であり、これを実現しているのが、「超大規模なニューラル・ネットワークで作った言語モデル」なのです。
トークン
今まで、ニューラル・ネットワークでテキストを扱うためには、テキストを単語に分解するとしてきました。しかし大規模言語モデルで実際にやっていることは、テキストを「トークン(token)」に分解し、そのトークンの分散表現ベクトルを求めてニューラル・ネットワークで処理することです。
トークンとは、基本的には「単語」ないしは「単語の一部」です。英語ですと、たとえば頻出単語は「単語=トークン」ですが、GPT-3 の例だと、トークンには、ed, ly, er, or, ing, ab, bi, co, dis, sub, pre, ible などの「単語の一部」が含まれます。GPT-3 のトークンの語彙数は約5万ですが、そのうち英語の完全な単語は約3000と言われています。通常使われる英単語は4万~5万なので、3000の単語で WebText や Wikipedia の全部を表すことは到底できません。つまり、単語の "切れ端" と単語の組み合わせ、ないしは単語の "切れ端" 同士の組み合わせでテキストを表現する必要があります。
たとえば「ディスコ音楽」などの disco という単語は、[dis] [co] と表現します。edible(食用の、食べられる、という意味)は、[ed] [ible] です。disco や edible は 3000 単語の中に入っていないようです。edible などは「基本的な英単語」と思えますが、あくまで WebText や Wikipedia に頻出するかどうかの判断によります。
また xylophone(木琴)は、[x] [yl] [ophone] です。このように、1文字がトークンになることもあります。"単語"、"単語の切れ端"、"文字" がトークンです。
BPEによるトークン化
テキストをトークンに変換することを「トークン化(tokenize)」、トークン化を行うソフトを tokenizer と言います。ここで GPT-3 のトークン化のアルゴリズムの概要をみてみます。
上の xylophone → [x] [yl] [ophone] で明快なのですが、トークン化は単語の意味とは無関係です。意味を言うなら xylo("木の" という意味の接頭語)+ phone(音)ですが、そういうこととは全く関係ありません。
GPT-2 の論文にそのアルゴリズムである BPE(Byte Pair Encoding)が書かれています(GPT-3 は GPT-2 と同じだと、GPT-3 の論文にあります)。
コンピュータで文字を表現するには文字コード(文字に数字を割り振ったもの)を使います。国際的に広く使われているのは unicode です。unicode を使うと各国語の文字が統一的に文字コードで表現できます。
unicode の数字をコンピュータでどう表すか、その表し方(=エンコーディング)には3種類ありますが、その一つが UTF-8 です。UTF-8 は1バイト(8ビット、10進数で 0~255)を単位とし、1~4バイトで1文字を表現する可変長のエンコーディングです(漢字の異字体は5バイト以上になります)。
UTF-8 でば、通常の英文に使われる英数字、特殊文字(空白 , . ? など)は1バイトで表します。一方、日本語の平仮名、カタカナ、漢字は3バイトです(一部の漢字は4バイト)。バイトは文字ではありません。あくまで文字を表現するためのコンピュータ用の数字です。
BPE ではまず、UTF-8 でエンコーディングされた大量のテキストを用意します。そして、1バイトの全パターンを256種類の基本トークンとして語彙に初期登録します。トークン ID は 1~256 とします。従って、英文における1文字の単語( I, a )や記号( , . ? ! など)は、この時点でトークンID が割り当てられたことになります。
次に、テキストの「トークンのペア」で、最も出現頻度の高いペアをみつけます。英語で最も出現頻度が高い単語は the で、トークンで表現すると [t] [h] [e] です。仮に、[t] [h] のペアがテキスト中で最も出現頻度が高いとします(説明のための仮定です)。そうすると、この2つのトークンを結合した [th] を新たなトークン(トークン ID=257)として語彙に登録します。以降、テキスト中の [t] [h] は [th] と見なします。
次に出現頻度の高いペアが [th] [e] だとすると、この2つを結合した [the] を新たなトークン(トークン ID=258)として語彙に登録します。この段階で the という単語がトークンの語彙に登録されたわけです(以上の [th] [the] のトークン ID は説明のための数字で、実際の GPT-3 のトークン ID は違います)。
以上のプロセスにおいてトークンは、「空白をまたがない」「空白で終わらない」「同一カテゴリの文字(英字、数字、特殊文字など)でしかペアを作らない」などの制約をもうけておきます。「カテゴリ」が何かは論文に書いていないので想定です。もちろんこれは、なるべく頻出単語をトークンにする工夫です。
これを「結合の最大回数」になるで繰り返します。GPT-2 / GPT-3 の場合、最大回数は 50,000 です。従って、最終的には、
256 + 50,000 + 1 = 50,257
のトークンの語彙ができあがることになります。最後の + 1 は文末の記号 [EOS] を特殊トークンとしているからです。
いったん語彙ができあがると、以降、この語彙を使ってすべてのテキストを同じアルゴズムでトークン化します。当然ですが、長いバイトのトークンからテキストに割り当てることになります。
大規模言語モデルの成立要件
GPT-3 のトークン化のロジックによると、すべての言語のすべてのテキストが 50,257個のトークンを使って、統一的に、もれなくトークン化できることになります。それはあたりまえで、1バイトのデータがすべてトークンとして登録してあるからです。テキストを UTF-8 で統一的に表せば可能なのです。
ここで、日本語がどうなるかです。日本語の unicode を UTF-8 で表すと、漢字・仮名・文章記号は3バイトです(一部の漢字は4バイト。また異字体は5バイト以上)。ということは、普通の漢字1字、仮名1字は1~3トークンで表されることになります。
実際、OpenAI 社が公開している GPT-3 の Tokenizer で試してみると、
仮名は1~2トークン
ほとんどの漢字は2~3トークン
となります。ちなみに、平仮名(清音、濁音、半濁音、計71文字種)のトークン数を調べてみると、
28 文字種:1トークン
43 文字種:2トークン
です。濁音で1トークンになるのは「が だ で」の3つだけですが、これは助詞として頻出するからでしょう。特別の場合は、仮名2文字で1トークンになるようです(スト、ーク、など)。1トークンになる漢字はごく少数のようで、たとえば「上」「田」「中」「一」「大」がそうです(他にもあると思います)。
以上をまとめると、何をトークンとするかは、
・単語
・単語の一部、ないしは文字の連なり
・文字
・バイト
がありうるわけですが、GPT-3 のトークンにはこれらが混在していて、規則性は全くないことになります。ここから何が言えるかと言うと、
ということです。もちろん、英語を扱うときのように頻出単語のトークン化ができれば、生成されるテキストのクオリティーが向上することは確かでしょう。しかし、単語単位のトークン化は必須ではない。つまり、
わけです。GPT-3(= ChatGPT の基盤となっているモデル)がそれを示しています。大規模言語モデルは、翻訳、文章要約、質問回答、おしゃべり(chat)などの多様なタスクに使えます。これらのタスクを実現する仕組みを作るには、言語学的知識は全く不要です。不要というより、言語学的知識を持ち込むことは邪魔になる。もちろん、「翻訳、文章要約、質問回答、おしゃべり」の実例や好ましい例が大量にあるのが条件です。
その GPT-3 のベースになっているのは、Google が提案した Transformer という技術です。ということは、次のようにも言えます。
これが言えるのなら、少々先走りますが、Transformer はタンパク質の機能分析にも使える(可能性がある)ことになります。タンパク質はアミノ酸が鎖状に1列に並んだもので、そのアミノ酸は20種類しかありません。
タンパク質は「20種の記号の系列」であり、それが生体内で特定の機能を果たします。多数のタンパク質のアミノ酸配列を Transformer で学習し、タンパク質の機能と照らし合わせることで、新たなタンパク質の設計に役立てるようなことができそうです。実は、こういった生化学分野での Transformer や言語モデルの利用は、今、世界でホットな研究テーマになっています。
もちろん、系列データはタンパク質の構造だけではありません。従来から AI で扱われてきた音声・音源データや、各種のセンサーから取得したデータがそうだし、分子生物学では DNA / RNA が「4文字で書かれた系列データ」と見なせます。現に米国では、DNA / RNA の塩基配列を学習した大規模言語モデルでウイルスの変異予測がされています。
Transformer は、もともと機械翻訳のために提案されたものでした。しかしそれは意外なことに、提案した Google も予想だにしなかった "奥深い" ものだった。ここに、大規模言語モデルのサイエンスとしての意義があるのです。
前回の No.364「言語の本質」の補足で紹介した新聞記事で、慶応義塾大学の今井教授は、
ChatGPT の「仕組み」(=注意機構)と「メタ学習」は、幼児が言語を学習するプロセスと類似している
と指摘していました。メタ学習とは「学習のしかたを学習する」ことですが、 ChatGPT がそれをできる理由も「注意機構(Attention mechanism)」にあります。そこで今回は、その気になる ChatGPT の仕組みをまとめます。
今まで「高校数学で理解する ・・・・・・」というタイトルの記事をいくつか書きました。
高校数学で理解するRSA暗号の数理 | |
高校数学で理解する公開鍵暗号の数理 | |
高校数学で理解する楕円曲線暗号の数理 | |
高校数学で理解する誕生日のパラドックス | |
高校数学で理解するレジ行列の数理 | |
高校数学で理解するガロア理論 |
の 13 の記事です。"高校数学で理解する" という言い方は、「高校までで習う数学だけを前提知識として説明する」という意味ですが、今回もそれに習います。もちろん、文部科学省の学習指導要領は年々変わるので、"おおよそ高校までの数学" が正しいでしょう。今回、前提とする知識は、
行列 | |
ベクトル | |
指数関数、対数 | |
微分、積分 | |
標準偏差と正規分布(ガウス分布) |
全体の構成
全体の構成は次の4つです
1.ニューラル・ネットワーク
ニューラル・ネットワークの基礎から始まって、最も重要なポイントである「学習できる」ことを説明をします。
2.自然言語のモデル化
自然言語をニューラル・ネットワークで扱う際に必須である「単語の分散表現」を説明します。また、「言語モデル」と、ChatGPT で使われている「トークン」についても説明します。
3.Transformer
ChatGPT のベースになっている技術は、2017年に Google社が発表した Transformer です。この説明をします。
4.GPT-3 と ChatGPT
OpenAI 社は、GPT(2018)、GPT-2(2019)、GPT-3(2020)、ChatGPT(2022)と発表してきましたが、技術内容が論文で公開されているのは GPT-3 までです。また、ChatGPT の大規模言語モデルは GPT-3 と同じ仕組みであり、大幅に学習を追加して一般公開できるようにしたのが ChatGPT です。
ここでは GPT-3 の仕組み・技術内容を説明し、合わせて ChatGPT と GPT-3 の違いも説明します。
ここでは GPT-3 の仕組み・技術内容を説明し、合わせて ChatGPT と GPT-3 の違いも説明します。
なお、この記事の作成には、Google と OpenAI の論文に加えて、以下を参考にしました。
◆岡野原 大輔(プリファードネットワークス)
「大規模言語モデルは新たな知能か」
(岩波書店 2023)
◆澁谷 崇(SONY)
「系列データモデリング (RNN/LSTM/Transformer)」
第7回「Transformer」
第12回「GPT-2, GPT-3」
(YouTube 動画)
1.ニューラル・ネットワーク |
記号
以降で使用する記号の意味は次の通りす。
ボールド体ではない、ノーマル書体の英大文字・小文字はスカラー値(ないしはスカラー変数)を表します。\(a,\:\:b,\:\:x,\:\:y,\:\:x_1,\:w_{12},\:\:M,\:\:N,\:\:L\) などです。 | |
ボールド体の英大文字は行列を表します。\(\bs{W}\) などです。 \(N\) 行、\(M\) 列 の行列を \([N\times M]\) と表記します。\(\bs{W}\:[2\times3]\) は、2行3列の行列 \(\bs{W}\) で、 \(\bs{W}=\left(\begin{array}{r}w_{11}&w_{12}&w_{13}\\w_{21}&w_{22}&w_{23}\\\end{array}\right)\) です。 | |
ボールド体の英小文字はベクトルを表します。ベクトルは「行ベクトル」で表現し、\(n\)次元のベクトル \(\bs{x}\) は、 \(\bs{x}=\left(\begin{array}{r}x_1&x_2&\cd&x_n\\\end{array}\right)\) です。この \(n\)次元のベクトルを、\(1\) 行 \(n\) 列の行列と同一視します。従って次元の表記は \(\bs{x}\:[1\times n]\) です。 | |
列ベクトルは、転置行列の記号(\({}^T\))を使って、 \(\bs{x}^T\) で表します。たとえば、3次元の列ベクトルは3次元の行ベクトルの転置を使って、 \(\bs{x}^T=\left(\begin{array}{r}x_1\\x_2\\x_3\\\end{array}\right)\:\:[3\times1]\) です。 | |
同一次元の2つのベクトル \(\bs{x}\:\:\bs{y}\) の内積(スカラー積、ドット積)は、 \(\bs{x}\bs{y}^T\) で表します。ドッド記号(\(\cdot\))は内積ではなく、行列の積(または実数値同士の積)です。ただし、一般的に行列の積は、\(\bs{x}\bs{y}^T\) のように積記号を省略します。 | |
同一次元の2つのベクトルの「対応する要素同士の積」で作ったベクトルを「要素積」(ないしはアダマール積)と呼び、\(\odot\) の記号で表します(一般的には \(\otimes\) の記号も使います)。\(n\)次元ベクトル同士の要素積は、 \(\left(\begin{array}{r}x_1&x_2&\cd&x_n\\\end{array}\right)\odot\left(\begin{array}{r}y_1&y_2&\cd&y_n\\\end{array}\right)\) \(=\left(\begin{array}{r}x_1y_1&x_2y_2&\cd&x_ny_n\\\end{array}\right)\) です。要素積は、行数・列数が同一の2つの行列にも適用します。 | |
指数関数、\(f(x)=e^x\) を、 \(f(x)=\mr{exp}(x)\) と表記します。 | |
\(n\)次元ベクトルを \(\bs{x}=\{x_1\:x_2\:\cd\:x_n\}\) とし、1変数の関数 \(f(x)\) があるとき、ベクトル \(f(\bs{x})\) を、 \(f(\bs{x})=\left(\begin{array}{r}f(x_1)&f(x_2)&\cd&f(x_n)\\\end{array}\right)\) で定義します。 |
ニューラル・ネットワークの例
2層から成るシンプルなニューラル・ネットワークの例が図1です。この例では隠れ層が1つだけですが、隠れ層は何層あってもかまいません(なお、入力層を含めて、これを "3層" のニューラル・ネットワークとする定義もあります)。
図1:ニューラル・ネットワーク |
丸印は "ニューロン" で、各ニューロンは1つの値(活性値)をもちます。値は実数値で、32ビットの浮動小数点数が普通です。図1のニューロンの数は 3+4+3=10 個ですが、もちろんこの数は多くてもよく、実用的なネットワークでは数100万から億の単位になることがあります。
ニューロン間の矢印が "シナプス" で、一つのニューロンは、シナプスで結ばれている前の層のニューロンから値を受けとり、決められた演算をして自らの値を決めます(入力層を除く)。なお、"ニューロン" や "シナプス" は脳神経科学の用語に沿っています。
各層は、重み \(\bs{W}\)(行列)とバイアス \(\bs{b}\)(ベクトル)、活性化関数 \(f\) を持ちます。図1の場合、第1層の重みは \(\bs{W}\:\:[3\times4]\)、バイアスは \(\bs{b}\:\:[1\times4]\) で、
\(\bs{W}=\left(\begin{array}{r}w_{11}&w_{12}&w_{13}&w_{14}\\w_{21}&w_{22}&w_{23}&w_{24}\\w_{31}&w_{32}&w_{33}&w_{34}\\\end{array}\right)\)
\(\bs{b}=\left(\begin{array}{r}b_1&b_2&b_3&b_4\\\end{array}\right)\)
です。このとき、隠れ層(第1層)のニューロンの活性値、\(\bs{h}=\left(\begin{array}{r}h_1&h_2&h_3&h_4\\\end{array}\right)\) は、
\(h_1=f\:(\:x_1w_{11}+x_2w_{21}+x_3w_{31}+b_1\:)\)
\(h_2=f\:(\:x_1w_{12}+x_2w_{22}+x_3w_{32}+b_2\:)\)
\(h_3=f\:(\:x_1w_{13}+x_2w_{23}+x_3w_{33}+b_3\:)\)
\(h_4=f\:(\:x_1w_{14}+x_2w_{24}+x_3w_{34}+b_4\:)\)
の式で計算されます。ベクトルと行列で表示すると、
\(\bs{h}=f\:(\bs{x}\cdot\bs{W}+\bs{b})\)
になります。第2層も同様です。
このニューラル・ネットワークは、多重パーセプトロン(Multi Layer Perceptron : MLP)と呼ばれるタイプのもので、ニューラル・ネットワークの歴史の中では、古くから研究されている由緒のあるものです。
また上図の第1層、第2層は、すべてのニューロンが前層のすべてのニューロンとシナプスを持ってます。このような層を「全結合層」(Fully connected layer. FC-layer. FC層)と言います。全結合の多重パーセプトロンは Transformer や GPT で使われていて、重要な意味を持っています。
|
\(\mr{ReLU}(x)=x\:\:(x > 0)\) \(\mr{ReLU}(x)=0\:\:(x\leq0)\) |
で定義される非線形関数です(図2)。以降での表記を簡潔にするため、単位ステップ関数 \(H(x)\) を用いて \(\mr{ReLU}\) 関数を表しておきます。単位ステップ関数は、
|
\(H(x)=0\:\:(x\leq0)\)
で定義される関数で(図3)、ヘヴィサイド関数とも呼ばれます。\(H(x)\) の微分は、
\(H\,'(x)=0\:\:(x\neq0)\)
です。\(x=0\) において \(H(x)\) は不連続で、微分は定義できませんが、無理矢理、
\(H\,'(0)=0\)
と定義してしまうと、\(x\) の全域において、
\(H\,'(x)=0\)
となります。この \(H(x)\) を用いて \(\mr{ReLU}\) 関数を定義すると、
\(\mr{ReLU}(x)=H(x)x\) |
となり、微分は、
\(\dfrac{d}{dx}\mr{ReLU}(x)=H(x)\)
と表現できます。
出力層の活性化関数 \(f\,'\) は、ニューラル・ネットワークをどんな用途で使うかによって違ってきます。
ニューラル・ネットワークによる推論
ニューラル・ネットワークが扱う問題は、入力ベクトル \(\bs{x}\) をもとに出力ベクトル \(\bs{y}\) を "推論"(ないしは "推定"、"予測")する問題です。これには主に「回帰問題」と「分類問題」があります。
回帰問題で推論する \(\bs{y}\) は実数値(=連続値)です。たとえば、
・身長
・体重
・年齢
・男女の区別
・生体インピーダンス
から(\(=\bs{x}\))、
・体脂肪率
・筋肉量
・骨密度
を推定する(\(=\bs{y}\))といった例です(但し、市販の体組成計が AI を使っているわけではありません)。
一方、分類問題の例は、たとえば手書き数字を認識する問題です。この場合、多数の手書き数字の画像(をベクトルに変換した \(\bs{x}\))を「\(0\) のグループ」「\(1\) のグループ」・・・・・ というように分類していきます。このグループのことを AI では "クラス" と呼んでいます。つまり「クラス分類問題」です。
手書き数字の場合、明確に \(0\) ~ \(9\) のどれかに認識できればよいのですが、そうでない場合もある。たとえば、\(1\) なのか \(7\) なのか紛らわしい、\(0\) なのか \(6\) なのか曖昧、といったことが発生します。分類するのは、\(0\) ~ \(9\) のうちのどれかという「離散値の予測」であり、連続値とは違って、どうしても紛らわしい例が発生します。
従って、クラス分類問題(=離散値を予測する問題)では、出力ベクトル \(\bs{y}\) は確率です。手書き数字の認識では、\(\bs{y}\) は\(10\)次元の確率ベクトルで、たとえば、
\(y_1\) | :数字が \(1\) である確率 | |
\(y_2\) | :数字が \(2\) である確率 | |
\(\vdots\) | ||
\(y_9\) | :数字が \(9\) である確率 | |
\(y_{10}\) | :数字が \(0\) である確率 |
\(0\leq y_i\leq1,\:\:\:\displaystyle\sum_{i=1}^{10}y_i=1\)
です。入力画像が \(1\) なのか \(7\) なのか紛らわしい場合、たとえば推定の例は、
\(\bs{y}=\left(\begin{array}{r}0.8&0&0&0&0&0&0.2&0&0&0\\\end{array}\right)\)
です。これは、
\(1\) である確率が \(0.8\)
\(7\) である確率が \(0.2\)
を表します。クラス分類問題は「離散値を推論する問題」、すなわち「確率を推定する問題」であると言えます。
回帰問題の出力層の活性化関数は、恒等関数(=何もしない)とするのが普通です。一方、クラス分類問題の出力層の活性化関数は、出力 \(\bs{y}\) が確率として解釈できるような関数を選びます。それが \(\mr{Softmax}\) 関数です。
\(\mr{Softmax}\) 関数
\(\mr{Softmax}\) 関数によって、出力 \(\bs{y}\) が確率と解釈できるようになります。ベクトル \(\bs{x}\) を \(\mr{Softmax}\) 関数によって確率ベクトル \(\bs{y}\) に変換する式は、次のように定義できます。なお、ここでの \(\bs{x}\) は入力層の \(\bs{x}\) ではなく、一般的なベクトルを表します。
\(\bs{y}=\mr{Softmax}(\bs{x})\)
(\(\bs{x}\:\:\bs{y}\) は \(n\)次元ベクトル)
\(y_i=\dfrac{\mr{exp}(x_i)}{\displaystyle\sum_{i=1}^{n}\mr{exp}(x_i)}\)
\(0 < y_i < 1,\:\:\:\displaystyle\sum_{i=1}^{n}y_i=1\)
ここで使われている指数関数は、すぐに巨大な数になります。たとえば \(\mr{exp}(100)\) は\(10\)進で\(40\)桁以上の数で、\(32\)ビット浮動小数点の最大値(\(10\)進で\(40\)桁弱)を越えてしまいます。従って、\(\mr{Softmax}\) 関数の計算には工夫が必要で、それには \(\mr{Softmax}\) 関数の性質を利用します。
\(C\) を任意の実数値とし、\(n\)次元ベクトル \(\bs{z}\) を
\(z_i=x_i+C\)
と定義します。そして、
\(\bs{y}\,'=\mr{Softmax}(\bs{z})\)
と置くと、
\(\begin{eqnarray}
&&\:\:y_i\,'&=\dfrac{\mr{exp}(z_i)}{\displaystyle\sum_{i=1}^{n}\mr{exp}(z_i)}=\dfrac{\mr{exp}(x_i+C)}{\displaystyle\sum_{i=1}^{n}\mr{exp}(x_i+C)}\\
&&&=\dfrac{\mr{exp}(x_i)\cdot\mr{exp}(C)}{\displaystyle\sum_{i=1}^{n}\mr{exp}(x_i)\cdot\mr{exp}(C)}\\
&&&=\dfrac{\mr{exp}(x_i)\cdot\mr{exp}(C)}{\mr{exp}(C)\cdot\displaystyle\sum_{i=1}^{n}\mr{exp}(x_i)}\\
&&&=\dfrac{\mr{exp}(x_i)}{\displaystyle\sum_{i=1}^{n}\mr{exp}(x_i)}=y_i\\
\end{eqnarray}\)
となります。つまり \(x_i\:\:(1\leq i\leq n)\) の全部に定数 \(C\) を足しても、\(\mr{Softmax}\) 関数は変わりません。そこで、
\(C=-\mr{max}(x_1,\:x_2,\:\cd\:,x_n)\)
と置いて、
\(x_i\:\longleftarrow\:x_i+C\:\:(1\leq i\leq n)\)
と修正すると、\(x_i\) の最大値は \(0\) になります。従って、
\(0 < \mr{exp}(x_i)\leq1\)
の範囲で \(\mr{Softmax}\) 関数が計算可能になります。
大規模言語モデルと確率
クラス分類問題の出力ベクトル \(\bs{y}\) は確率でしたが、実は Transformer や GPT が実現している「大規模言語モデル」も "確率を推定するニューラル・ネットワーク" です。たとえば、
[今日] [は] [雨] [なの] [で]
というテキストに続く単語を推定します。仮に、日本語の日常用語の語彙数を5万語とすると、5万の単語すべてについて上のテキストに続く単語となる確率を、実例をもとに推定します。当然、「雨の日の行動」とか「雨の日の情景」、「雨の日の心理状態」、「雨の日に起こりうること」を描写・説明する単語の確率が高くなるわけです。たとえば名詞だけをとると、[家] [ビデオ] [映画] [傘] [犬] [洗濯] [祭] [運動会] などの確率が高く、[ニンジン] [牛] [鉛筆] などの確率は(雨の日とは関係があるとは思えないので)低いといった具合です(あくまで想定です)。
「大規模言語モデル」の重要な応用例(=タスク)である機械翻訳も同じです。日本語 → 英語の翻訳を例にとると、
[今日] [は] [晴れ] [です] [。] [BOS]
に続く英単語を推定します([BOS] は文の開始を示す特殊単語)。確率の高い単語から [it] を選んだとすると、次には、
[今日] [は] [晴れ] [です] [。] [BOS] [it]
に続く単語を推定します([is] になるはず)。こうやって進むのが機械翻訳です。
Transformer や GPT をごくごくシンプルに言えば、入力ベクトル \(\bs{x}\) はテキスト列、出力ベクトル \(\bs{y}\) は次に続く単語を示す確率ベクトル(次元は語彙数)です。
この記事は、Transformer、GPT、ChatGPT などの大規模言語モデルを説明するのが目的です。従って以降では、出力ベクトル \(\bs{y}\) は確率ベクトルであることを前提とします。
確率を推定するニューラル・ネットワーク
図1において、第1層(隠れ層)の活性化関数を \(\mr{ReLU}\)、第2層(出力層)の活性化関数を \(\mr{Softmax}\) とすると、図4になります。
図4:ニューラル・ネットワーク (出力層は確率ベクトル) |
図4の計算は、以下に示すような4段階の計算処理で表すことができます。
第1層
\(\bs{h}\,'=\bs{x}\cdot\bs{W}+\bs{b}\)
\(\bs{h}=\mr{ReLU}(\bs{h}\,')\)
第2層
\(\bs{y}\,'=\bs{h}\cdot\bs{W}\,'+\bs{b}\,'\)
\(\bs{y}=\mr{Softmax}(\bs{y}\,')\)
この4つの計算処理を「計算レイヤー」、略して「レイヤー」と呼び、図5のグラフで表現することにします。
図5:クラス分類問題のレイヤー構成(推論時) |
レイヤー(layer)は日本語にすると「層」で、第1層や隠れ層の「層」と紛らわしいのですが、「レイヤー」と書いたときは "ある一定の計算処理" を示します。後ほど説明する Transformer や GPT は、図4のような単純な「層」では表現できない複雑な計算処理があります。従って "ある一定の計算処理 = レイヤー" とした方が、すべての場合を共通に表現できて都合が良いのです。
レイヤーの四角に向かう矢印は計算処理への入力を示し、四角から出る矢印は計算処理からの出力(計算結果)を示します。「レイヤーは一つの関数」と考えてもOKです。
図5の「Linear レイヤー」は、「Affine(アフィン)レイヤー」と呼ばれることが多いのですが、Transformer の論文で Linear があるので、そちらを採用します。
図5のネットワークがどうやって「学習可能なのか」を次に説明します。この「学習できる」ということが、ニューラル・ネットワークが成り立つ根幹です。
ニューラル・ネットワークの学習
重みとバイアスの初期値
まず、重み(\(\bs{W},\:\bs{W}\,'\))の初期値を乱数で与えます。この乱数は、前の層のニューロンの数を \(n\) とすると
平均 | \(=0\) | |
標準偏差 | \(=\sqrt{\dfrac{1}{n}}\) |
の正規分布の乱数とするのが普通です。\(n=10,000\) とすると、標準偏差は \(0.01\) なので、
\(-\:0.01\) ~ \(0.01\)
の間にデータの多く(約 \(2/3\))が集まる乱数です。但し、\(\mr{ReLU}\) を活性化関数とする層(図4では第1層)の重みは、
平均 | \(=0\) | |
標準偏差 | \(=\sqrt{\dfrac{2}{n}}\) |
の乱数とします。なお、バイアスの初期値は \(0\) とします。こういった初期値の与え方は、学習をスムーズに進めるためです。
損失と損失関数
初期値が決まったところで、訓練データの一つを、
\(\bs{x}\):入力データ
\(\bs{t}\):確率の正解データ
とします。この正解データのことを「教師ラベル」と呼びます。そして、ニューラル・ネットワークによる予測の確率 \(\bs{y}\) と、正解の確率である \(\bs{t}\) との差異を計算します。この差異を「損失(\(Loss\))」といい、\(L\) で表します。\(L\) は正のスカラー値です。
\(\bs{y}\) と \(\bs{t}\) から \(L\) を求めるのが「損失関数(Loss Function)」です。確率を予測する場合の損失関数は「交差エントロピー誤差(Cross Entropy Error : CEE)」とするのが普通で、次の式で表されます。
\(L=-\displaystyle\sum_{i=1}^{n}t_i\cdot\mr{log}\:y_i\) |
たとえば、先ほどの手書き数字の認識の「\(1\) または \(7\) という予測」を例にとって、その正解が \(1\) だとすると、
予測 \(\bs{y}=\left(\begin{array}{r}0.8&0&0&0&0&0&0.2&0&0&0\\\end{array}\right)\)
正解 \(\bs{t}=\left(\begin{array}{r}1&0&0&0&0&0&0&0&0\\\end{array}\right)\) = 教師ラベル
です。なお、\(\mr{Softmax}\)関数の出力は \(0\) にはならないので、上の \(\bs{y}\) で \(0\) と書いた要素は、実際には微小値です。すると、
\(L=-\mr{log}\:0.8\fallingdotseq0.223\)
となります。損失関数を含めると、レイヤー構成は図6のようになります。
図6:クラス分類問題のレイヤー構成(学習時) |
この図の重みとバイアスを少しだけ調整して、\(L\) を少しだけ \(0\) に近づけます。この調整を多数の学習データ(= \(\bs{x}\:\:\bs{t}\) のペア)で繰り返して、\(L\) を次第に \(0\) に近づけていくのが学習です。
勾配降下法
重みの調整には「勾配降下法(Gradient descent method)」を使います。図6の場合、損失 \(L\) は、ある関数 \(f\) を用いて、
\(L=f(\bs{x},\:\bs{W},\:\bs{b},\:\bs{W}\,',\:\bs{b}\,',\:\bs{t})\)
と表現できます。ここで、\(\bs{W}\) の一つの要素、\(w_{11}\) を例にとると、
\(w_{11}\) を微小に増減させた場合、\(L\) はどのように増減するか、そのの \(w_{11}\) に対する変化の割合
を計算します。これはいわゆる微分ですが、多変数関数の微分なので、数学的には偏微分であり、
\(\dfrac{\partial L}{\partial w_{11}}\)
です。つまり、\(w_{11}\) 以外の変数をすべて固定しての(すべて定数とした上での)、\(w_{11}\) による微分です。
具体的な入力 \(\bs{x}\) のときの \(\dfrac{\partial L}{\partial w_{11}}\) が求まったとします。もし仮に、\(\dfrac{\partial L}{\partial w_{11}}\) が正の値だとしたら、\(w_{11}\) を少しだけ減らせば、\(L\) は少しだけ \(0\) に近づきます。もし \(\dfrac{\partial L}{\partial w_{11}}\) が負だとしたら、\(w_{11}\) を少しだけ増やせば、\(L\) は少しだけ \(0\) に近づきます。つまり、
更新式:\(w_{11}\:\longleftarrow\:w_{11}-\eta\cdot\dfrac{\partial L}{\partial w_{11}}\)
として重みを更新すればよいわけです。\(\eta\) は「少しだけ」を表す値で「学習率」といい、\(0.01\) とか \(0.001\) とかの値をあらかじめ決めておきます。この決め方は、学習の効率に大いに影響します。こういった更新を、すべての重みとバイアスに対して行います。
"学習で調整される値" を総称して「パラメータ」と言います。図6のパラメータは重みとバイアスですが、実用的なニューラル・ネットワークでは、それ以外にも更新されるパラメータがあります。
ちなみに、OpenAI 社の GPT\(-3\) のパラメータの総数は \(1750\)億個で、学習率は \(0.6\times10^{-4}\) です。
\(L\) の偏微分値をベクトルや行列単位でまとめたものを、次のように表記します。2次元のベクトル \(\bs{b}\) と、2行2列の行列 \(\bs{W}\) で例示すると、
\(\dfrac{\partial L}{\partial\bs{b}}=\left(\begin{array}{r}\dfrac{\partial L}{\partial b_1}&\dfrac{\partial L}{\partial b_2}\\\end{array}\right)\)
\(\dfrac{\partial L}{\partial\bs{W}}=\left(\begin{array}{r}\dfrac{\partial L}{\partial w_{11}}&\dfrac{\partial L}{\partial w_{12}}\\\dfrac{\partial L}{\partial w_{21}}&\dfrac{\partial L}{\partial w_{22}}\\\end{array}\right)\)
です。これを「勾配(gradient)」と言います。勾配を求めることでパラメータを少しづつ更新し、損失を少しづつ小さくしていく(=降下させる)のが勾配降下法です。
ミニバッチ勾配降下法
学習は次のように進みます。まず、すべての訓練データ(たとえば
数万件)から、数\(10\)~数\(100\)件(たとえば\(256\)件)の訓練データをランダムに選びます。この一群のデータを「ミニバッチ」と呼びます。ミニバッチの各訓練データによる確率の推定から損失を計算し、そこからすべてのパラメータの勾配と求め、その勾配ごとに "ミニバッチの平均値" をとります。その平均値に基づき、更新式に従って各パラメータを更新します。
ミニバッチによる更新が終わると、別のミニバッチをランダムに選び、更新を繰り返します。こうすると、損失は次第に減少していきますが、そのうち "頭打ち" になります。そこで更新を止めます。
このようなパラメータ更新のやり方を「ミニバッチ勾配降下法」と言います。一つの訓練データだけで更新しないのは、たまたまその訓練データが「外れデータ」(全体の傾向とは異質なデータ)だと、学習の進行に支障が出てくるからです。
訓練データをランダムに選択する方法を「確率的勾配降下法(Stochastic gradient method - SGD)」と言いますが、ミニバッチ勾配降下法は、その確率的勾配降下法の一種です。
誤差逆伝播法
ここで問題になるのは、すべてのパラメータの勾配をどうやって求めるかです。それに使われるのが「誤差逆伝播法(Back propagation)」です。その原理を、Linear レイヤーから説明します。
(1) Linear
図7:linear レイヤー |
入力 \(\bs{x}\) \([1\times N]\) \(\bs{W}\) \([N\times M]\) \(\bs{b}\) \([1\times M]\) 出力 \(\bs{y}\) \([1\times M]\) |
図7で示すように、Linear レイヤーがあり、そのあとに何らかの計算処理が続いて、最終的に損失 \(L\) が求まったとします。\(\bs{x}\:\:\bs{y}\) はニューラル・ネットワークへの入力と出力ではなく、Linear レイヤーへの入力と出力の意味です。ここで、
\(\bs{y}\) の勾配 \(\dfrac{\partial L}{\partial\bs{y}}\) が求まれば、合成関数の微分を使って、\(\bs{x},\:\:\bs{W},\:\:\bs{b}\) の勾配が求まる
と言えます。これが誤差逆伝播法の原理です。このことを、2次元ベクトル(\(\bs{x},\:\:\bs{b},\:\:\bs{y}\))、2行2列の配列(\(\bs{W}\))で例示します(\(N=2,\:M=2\) の場合)。
【Linear の計算式】
\(\left(\begin{array}{r}y_1&y_2\\\end{array}\right)=\left(\begin{array}{r}x_1&x_2\\\end{array}\right)\cdot\left(\begin{array}{r}w_{11}&w_{12}\\w_{21}&w_{22}\\\end{array}\right)+\left(\begin{array}{r}b_1&b_2\\\end{array}\right)\)
\(y_1=x_1w_{11}+x_2w_{21}+b_1\)
\(y_2=x_1w_{12}+x_2w_{22}+b_2\)
\(x_1\) が変化すると \(y_1,\:y_2\) が変化し、それが損失 \(L\) に影響することに注意して、\(\bs{x},\:\:\bs{W},\:\:\bs{b}\) の勾配を計算します。
【\(\bs{\bs{x}}\) の勾配】
\(\dfrac{\partial L}{\partial x_1}\) | \(=\dfrac{\partial y_1}{\partial x_1}\cdot\dfrac{\partial L}{\partial y_1}+\dfrac{\partial y_2}{\partial x_1}\cdot\dfrac{\partial L}{\partial y_2}\) | |
\(=\dfrac{\partial L}{\partial y_1}w_{11}+\dfrac{\partial L}{\partial y_2}w_{12}\) | ||
\(=\left(\begin{array}{r}\dfrac{\partial L}{\partial y_1}&\dfrac{\partial L}{\partial y_2}\\\end{array}\right)\left(\begin{array}{r}w_{11}\\w_{12}\\\end{array}\right)\) |
同様にして、
\(\dfrac{\partial L}{\partial x_2}=\left(\begin{array}{r}\dfrac{\partial L}{\partial y_1}&\dfrac{\partial L}{\partial y_2}\\\end{array}\right)\left(\begin{array}{r}w_{21}\\w_{22}\\\end{array}\right)\)
です。これをまとめると、
\(\left(\begin{array}{r}\dfrac{\partial L}{\partial x_1}&\dfrac{\partial L}{\partial x_2}\\\end{array}\right)=\:\:\:\left(\begin{array}{r}\dfrac{\partial L}{\partial y_1}&\dfrac{\partial L}{\partial y_2}\\\end{array}\right)\left(\begin{array}{r}w_{11}&w_{21}\\w_{12}&w_{22}\\\end{array}\right)\)
\(\dfrac{\partial L}{\partial\bs{x}}=\dfrac{\partial L}{\partial\bs{y}}\cdot\bs{W}^T\)
となり、\(\bs{x}\) の勾配が求まります。
【\(\bs{\bs{W}}\) の勾配】
\(\dfrac{\partial L}{\partial w_{11}}=\dfrac{\partial y_1}{\partial w_{11}}\dfrac{\partial y_1}{\partial w_{11}}=x_1\dfrac{\partial y_1}{\partial w_{11}}\)
\(\dfrac{\partial L}{\partial w_{12}}=\dfrac{\partial y_2}{\partial w_{12}}\dfrac{\partial y_2}{\partial w_{12}}=x_1\dfrac{\partial y_2}{\partial w_{12}}\)
\(\dfrac{\partial L}{\partial w_{21}}=\dfrac{\partial y_1}{\partial w_{21}}\dfrac{\partial y_1}{\partial w_{21}}=x_2\dfrac{\partial y_1}{\partial w_{21}}\)
\(\dfrac{\partial L}{\partial w_{22}}=\dfrac{\partial y_2}{\partial w_{22}}\dfrac{\partial y_2}{\partial w_{22}}=x_2\dfrac{\partial y_2}{\partial w_{22}}\)
これらをまとめると、
\(\dfrac{\partial L}{\partial\bs{W}}\) | \(=\left(\begin{array}{r}\dfrac{\partial L}{\partial w_{11}}&\dfrac{\partial L}{\partial w_{12}}\\\dfrac{\partial L}{\partial w_{21}}&\dfrac{\partial L}{\partial w_{22}}\\\end{array}\right)\) | |
\(=\left(\begin{array}{r}x_1\dfrac{\partial L}{\partial y_1}&x_1\dfrac{\partial L}{\partial y_2}\\x_2\dfrac{\partial L}{\partial y_1}&x_2\dfrac{\partial L}{\partial y_2}\\\end{array}\right)\) | ||
\(=\left(\begin{array}{r}x_1\\x_2\\\end{array}\right)\left(\begin{array}{r}\dfrac{\partial L}{\partial y_1}&\dfrac{\partial L}{\partial y_2}\\\end{array}\right)\) | ||
\(=\bs{x}^T\dfrac{\partial L}{\partial\bs{y}}\) |
となります。
【\(\bs{\bs{b}}\) の勾配】
\(\dfrac{\partial L}{\partial b_1}\) | \(=\dfrac{\partial L}{\partial y_1}\) | |
\(\dfrac{\partial L}{\partial b_2}\) | \(=\dfrac{\partial L}{\partial y_2}\) |
\(\dfrac{\partial L}{\partial\bs{b}}\) | \(=\dfrac{\partial L}{\partial\bs{y}}\) |
以上の計算で求まった勾配をまとめて図示すると、図8になります。黒字(入力・出力とパラメータ)の下の赤字がパラメータの勾配で、右から左への矢印は、「レイヤーの出力の勾配が求まれば、レイヤーの入力の勾配が求まる」こと示します(= 逆伝播)。上での計算は2次元ベクトルと2行2列の配列で例示しましたが、図8のようなベクトル・配列で表示すると、\([1\times N]\) のベクトルと \([N\times M]\) の行列で成り立つことが確認できます。
図8:linear の誤差逆伝播 |
出力側の勾配が求まれば、そこから入力側の勾配はすべて求まる。これが誤差逆伝播の原理で、合成関数の微分のシンプルな応用である。 |
(2) ReLU
\(\mr{ReLU}\) 関数は、
\(\mr{ReLU}(x_i)=x_i\:\:(x_i > 0)\)
\(\mr{ReLU}(x_i)=0\:\:\:(x_i\leq0)\)
であり、ベクトルの表現では、単位ステップ関数、
\(H(x)=1\:\:\:(x > 0)\)
\(H(x)=0\:\:\:(x\leq0)\)
と要素積 \(\odot\) を使って、
\(\mr{ReLU}(\bs{x})=H(\bs{x})\odot\bs{x}\)
と定義できます。従って、勾配は、
\(\dfrac{\partial L}{\partial x_i}=\dfrac{\partial L}{\partial y_i}\) | \((x_i > 0)\) | |
\(\dfrac{\partial L}{\partial x_i}=0\) | \((x_i\leq0)\) |
\(\dfrac{\partial L}{\partial\bs{x}}=H(\bs{x})\odot\dfrac{\partial L}{\partial\bs{y}}\)
です。
図9:ReLU の誤差逆伝播 |
(3) Softmax
\(\mr{Softmax}\) 関数の定義は、
\(\bs{y}=\mr{Softmax}(\bs{x})\)
(\(\bs{x}\:\:\bs{y}\) は \(N\)次元ベクトル)
\(y_i=\dfrac{\mr{exp}(x_i)}{\displaystyle\sum_{i=1}^{N}\mr{exp}(x_i)}\)
\(0 < y_i < 1,\:\:\:\displaystyle\sum_{i=1}^{N}y_i=1\)
です。勾配の計算を \(N=3\) の場合で例示します。
\(S\) | \(=\mr{exp}(x_1)+\mr{exp}(x_2)+\mr{exp}(x_3)\) | |
\(y_1\) | \(=\dfrac{\mr{exp}(x_1)}{S}\) | |
\(y_2\) | \(=\dfrac{\mr{exp}(x_2)}{S}\) | |
\(y_3\) | \(=\dfrac{\mr{exp}(x_3)}{S}\) |
\(\dfrac{\partial L}{\partial x_1}=\dfrac{\partial y_1}{\partial x_1}\dfrac{\partial L}{\partial y_1}+\dfrac{\partial y_2}{\partial x_1}\dfrac{\partial L}{\partial y_2}+\dfrac{\partial y_3}{\partial x_1}\dfrac{\partial L}{\partial y_3}\)
\(\dfrac{\partial y_1}{\partial x_1}\) | \(=\dfrac{\mr{exp}(x_1)}{S}-\dfrac{\mr{exp}(x_1)}{S^2}\mr{exp}(x_1)\) | |
\(=y_1-y_1^2\) | ||
\(=y_1(1-y_1)\) |
\(\dfrac{\partial y_2}{\partial x_1}\) | \(=-\dfrac{\mr{exp}(x_2)}{S^2}\mr{exp}(x_1)\) | |
\(=-y_1y_2\) |
\(\dfrac{\partial y_3}{\partial x_1}\) | \(=-\dfrac{\mr{exp}(x_3)}{S^2}\mr{exp}(x_1)\) | |
\(=-y_1y_3\) |
\(\dfrac{\partial L}{\partial x_1}=y_1(1-y_1)\dfrac{\partial L}{\partial y_1}-y_1y_2\dfrac{\partial L}{\partial y_2}-y_1y_3\dfrac{\partial L}{\partial y_3}\)
\(\dfrac{\partial L}{\partial x_2}=y_2(1-y_2)\dfrac{\partial L}{\partial y_2}-y_2y_3\dfrac{\partial L}{\partial y_3}-y_2y_1\dfrac{\partial L}{\partial y_1}\)
\(\dfrac{\partial L}{\partial x_3}=y_3(1-y_3)\dfrac{\partial L}{\partial y_3}-y_3y_1\dfrac{\partial L}{\partial y_1}-y_3y_2\dfrac{\partial L}{\partial y_2}\)
(4) Cross Entropy Error - CEE
交差エントロピー誤差の定義は、
入力 \(\bs{y}\) \((1\times N)\)
入力 \(\bs{t}\) \((1\times N)\) 教師ラベル(正解データ)
出力 \(L\:(Loss)\)
とすると、
\(L=-\displaystyle\sum_{i=1}^{N}(t_i\mr{log}y_i)\)
で定義されます。従って、
\(\dfrac{\partial L}{\partial y_i}=-\dfrac{t_i}{y_i}\)
であり、\(N=3\) の場合を書くと、
\(\dfrac{\partial L}{\partial y_1}=-\dfrac{t_1}{y_1}\)
\(\dfrac{\partial L}{\partial y_2}=-\dfrac{t_2}{y_2}\)
\(\dfrac{\partial L}{\partial y_3}=-\dfrac{t_2}{y_3}\)
です。
(5) Softmax + CEE
\(\mr{Softmax}\) レイヤーの直後に交差エントロピー誤差のレイヤーを配置した場合を考えます。(3) と (4) の計算を合体させると、次のように計算できます。
\(\dfrac{\partial L}{\partial x_1}\) | \(=y_1(1-y_1)\dfrac{\partial L}{\partial y_1}-y_1y_2\dfrac{\partial L}{\partial y_2}-y_1y_3\dfrac{\partial L}{\partial y_3}\) | |
\(=-y_1(1-y_1)\dfrac{t_1}{y_1}+y_1y_2\dfrac{t_2}{y_2}+y_1y_3\dfrac{t_3}{y_3}\) | ||
\(=-t_1+t_1y_1+y_1t_2+y_1t_3\) | ||
\(=-t_1+t_1y_1+y_1(t_2+t_3)\) | ||
\(=-t_1+t_1y_1+y_1(1-t_1)\) | ||
\(=y_1-t_1\) |
計算の過程で、\(\bs{t}\) が確率ベクトルであることから、\(t_1+t_2+t_3=1\) を使いました。この計算は \(x_2,\:\:x_3\) についても全く同様にできます。それを含めてまとめると、
\(\dfrac{\partial L}{\partial x_1}=y_1-t_1\)
\(\dfrac{\partial L}{\partial x_2}=y_2-t_2\)
\(\dfrac{\partial L}{\partial x_3}=y_3-t_3\)
となります。この結果、勾配は、
\(\dfrac{\partial L}{\partial\bs{x}}=\bs{y}-\bs{t}\)
という、大変シンプルな形になりました。これは任意の次元のベクトルで成り立ちます。実は、このようなシンプルな形になるように、\(\mr{Softmax}\) と 交差エントロピー誤差が設計されています。図示すると次の通りです。
図10:Softmax + CEE の逆伝播 |
\(\mr{Softmax}\) 関数の後ろに交差エントロピー誤差を重ねると、\(\bs{x}\) の勾配は \(\bs{y}\) と \(\bs{t}\)(教師ラベル)から直接に求まる。 |
ニューラル・ネットワークの誤差逆伝播
以上で「確率を推定するニューラル・ネットワーク」を構成する各レイヤーの誤差逆伝播が計算できました。これらをまとめると、次の図11になります。
図11:クラス分類問題の誤差逆伝播 |
ちなみに、第1層の重み \(\bs{W}\) の勾配は図11から陽に計算すると、次のようになります。
\(\dfrac{\partial L}{\partial\bs{W}}=\bs{x}^T(H(\bs{x}\bs{W}+\bs{b})\odot((\bs{y}-\bs{t})\bs{W}\,'))\)
このネットワークは隠れ層が1つだけというシンプルなものですが、今までの計算で分かるように、層数が何百層に増えたとしても、逆伝播を多段に重ねることで、誤差逆伝播法が成立します。
また、図11 で使っているレイヤーは、Linear、\(\mr{ReLU}\)、\(\mr{Softmax}\)、Cross Entropy Error ですが、これらを関数と見なしたとき、誤差逆伝播で使った数学的な前提は「関数がパラメータで微分可能」ということだけです。つまり、レイヤーの関数が微分可能である限り、誤差逆伝播法は有効です。
実は、実用的なニューラル・ネットワークで誤差逆伝播法をうまく機能させるためには、数々の工夫が必要です。また、一般に訓練データの数は膨大なので、学習速度を上げる工夫も必要です(以降でその一部を説明します)。上で述べた「初期値の選択」や「学習率」はその工夫の一つです。そういったことはありますが、ネットワークがいかに巨大になろうとも(大規模言語モデルはその巨大な典型です)、誤差逆伝播法は可能なことが分かっています。
以上が、「ニューラル・ネットワークが学習可能である」ということの原理です。
\(\mr{GELU}\)
最近の大規模言語モデル(GPT など)では、活性化関数 \(\mr{ReLU}\) の代わりに \(\mr{GELU}\) \((\)Gaussian Error Linear Unit:ガウス誤差線形ユニット\()\) が使われます。その方が、学習が効率的に進むことが分かったからです。
|
\(\mr{ReLU}(x)=H(x)x\)
でしたが、\(\mr{GELU}\) は、
\(\mr{GELU}(x)=\Phi(x)x\)
で定義されます。\(\Phi(x)\) は標準正規分布(平均 \(0\)、標準偏差 \(1\))の累積分布関数です。標準正規分布の確率密度を \(f(x)\) とすると、
\(f(x)=\dfrac{1}{\sqrt{2\pi}}\mr{exp}\left(-\dfrac{x^2}{2}\right)\)
です(図12)。つまり \(x\) ~ \(x+dx\) である事象が発生する確率が \(f(x)dx\) です。また \(-\infty\) ~ \(\infty\) の範囲で積分すると \(1\) で、原点を中心に左右対称です。
|
\(\Phi(x)=\displaystyle\int_{-\infty}^{x}f(t)dt\)
です(図13)。これは正規分布に従うデータ値が \(x\) 以下になる確率です。これはガウスの誤差関数(Gaussian error function)\(\mr{Erf}\) を用いて表現できます。\(\Phi(0)=0.5\) となることを使って計算すると、
\(\begin{eqnarray}
&&\:\:\Phi(x)&=\displaystyle\int_{-\infty}^{x}f(t)dt\\
&&&=\dfrac{1}{\sqrt{2\pi}}\displaystyle\int_{-\infty}^{x}\mr{exp}\left(-\dfrac{t^2}{2}\right)dt\\
&&&=\dfrac{1}{2}+\dfrac{1}{\sqrt{2\pi}}\displaystyle\int_{0}^{x}\mr{exp}\left(-\dfrac{t^2}{2}\right)dt\\
\end{eqnarray}\)
\(t\:\rightarrow\:\sqrt{2}u\) の変数変換をすると、
\(\begin{eqnarray}
&&\:\:\phantom{\Phi(x)}&=\dfrac{1}{2}+\dfrac{1}{\sqrt{2\pi}}\displaystyle\int_{0}^{\tiny\dfrac{x}{\sqrt{2}}}\mr{exp}(-u^2)\sqrt{2}du\\
&&&=\dfrac{1}{2}+\dfrac{1}{\sqrt{\pi}}\displaystyle\int_{0}^{\tiny\dfrac{x}{\sqrt{2}}}\mr{exp}(-u^2)du\\
&&&=\dfrac{1}{2}\left(1+\mr{Erf}\left(\dfrac{x}{\sqrt{2}}\right)\right)\\
\end{eqnarray}\)
となります。ガウスの誤差関数、\(\mr{Erf}()\) の定義は
\(\mr{Erf}(x)=\dfrac{2}{\sqrt{\pi}}\displaystyle\int_{0}^{x}\mr{exp}(-u^2)du\)
です。従って、
\(\Phi(x)=\dfrac{1}{2}\left(1+\mr{Erf}\left(\dfrac{x}{\sqrt{2}}\right)\right)\)
|
\(\mr{GELU}\) は \(\mr{ReLU}\) と良く似ていますが、すべての点で微分可能であり、\(\mr{ReLU}\) のように微係数がジャンプするところがありません。このことが、大規模言語モデルの効率的な学習に役だっていると考えられます。
残差結合
Linear レイヤーを例にとります。入力を \(\bs{x}\)、出力を \(\bs{y}\) とし、入力と出力のベクトルの次元は同一とします。重みを \(\bs{W}\) とし、バイアス \(\bs{b}\) は省略します。通常の Linear レイヤーは、
\(\bs{y}=\bs{x}\bs{W}\)
ですが、
\(\bs{y}=\bs{x}\bs{W}+\bs{x}\)
とするのが、「残差結合(residual connection)」をもつ Linear レイヤーです。なお「残差接続」とも言います。また「スキップ接続(skip connection)」も同じ意味です。
図15:残差結合 |
誤差逆伝播を計算すると、\(\bs{x}\) の勾配は次のようになります。2次元ベクトルの場合で例示します。
\(\left(\begin{array}{r}y_1&y_2\\\end{array}\right)=\left(\begin{array}{r}x_1&x_2\\\end{array}\right)\cdot\left(\begin{array}{r}w_{11}&w_{12}\\w_{21}&w_{22}\\\end{array}\right)+\left(\begin{array}{r}x_1&x_2\\\end{array}\right)\)
\(y_1=x_1w_{11}+x_2w_{21}+x_1\)
\(y_2=x_1w_{12}+x_2w_{22}+x_2\)
\(\dfrac{\partial L}{\partial x_1}\) | \(=\dfrac{\partial y_1}{\partial x_1}\cdot\dfrac{\partial L}{\partial y_1}+\dfrac{\partial y_2}{\partial x_1}\cdot\dfrac{\partial L}{\partial y_2}\) | |
\(=\dfrac{\partial L}{\partial y_1}w_{11}+\dfrac{\partial L}{\partial y_2}w_{12}+\dfrac{\partial L}{\partial y_1}\) | ||
\(=\left(\begin{array}{r}\dfrac{\partial L}{\partial y_1}&\dfrac{\partial L}{\partial y_2}\\\end{array}\right)\left(\begin{array}{r}w_{11}\\w_{12}\\\end{array}\right)+\dfrac{\partial L}{\partial y_1}\) |
同様にして、
\(\dfrac{\partial L}{\partial x_2}=\left(\begin{array}{r}\dfrac{\partial L}{\partial y_1}&\dfrac{\partial L}{\partial y_2}\\\end{array}\right)\left(\begin{array}{r}w_{21}\\w_{22}\\\end{array}\right)+\dfrac{\partial L}{\partial y_2}\)
従って、
\(\left(\begin{array}{r}\dfrac{\partial L}{\partial x_1}&\dfrac{\partial L}{\partial x_2}\\\end{array}\right)=\) | \(\left(\begin{array}{r}\dfrac{\partial L}{\partial y_1}&\dfrac{\partial L}{\partial y_2}\\\end{array}\right)\left(\begin{array}{r}w_{11}&w_{21}\\w_{12}&w_{22}\\\end{array}\right)\) | |
\(+\:\left(\begin{array}{r}\dfrac{\partial L}{\partial y_1}&\dfrac{\partial L}{\partial y_2}\\\end{array}\right)\) |
\(\dfrac{\partial L}{\partial\bs{x}}=\dfrac{\partial L}{\partial\bs{y}}\cdot\bs{W}^T+\dfrac{\partial L}{\partial\bs{y}}\)
です。つまり、勾配 \(\dfrac{\partial L}{\partial\bs{y}}\) が、逆伝播でそのまま \(\dfrac{\partial L}{\partial\bs{x}}\) に伝わります(図\(16\))。
図16:残差結合の誤差逆伝播 |
一般にニューラル・ネットワークの学習を続けると、重みがゼロに近づき、その結果 \(\dfrac{\partial L}{\partial\bs{x}}\) が \(0\) に近い小さな値となることがあります。\(\dfrac{\partial L}{\partial\bs{x}}\) は、その一つ前への逆伝播の入力となるので、多層のニューラル・ネットワークでこれが重なると、前の方の層の勾配が極小になり、重みが更新できないという事態になります。これが「勾配消失」で、ニューラル・ネットワークの学習が困難になります。
残差結合を用いると、この問題を解決できます。Transformer では残差結合が使われています。
正規化
Transformer で使われているもう一つのレイヤーが「レイヤー正規化(Layer Normalization)」です。これは、ベクトル \(\bs{x}\:[1\times N]\) の要素を、平均 \(0\)、標準偏差 \(1\) のベクトル \(\bs{y}\:[1\times N]\) の要素に置き換えるものです。
\(\bs{y}=\mr{LayerNormalization}(\bs{x})\)
\(x_i\) の平均 | : \(\mu\) | |
\(x_i\) の標準偏差 | : \(\sg\) |
\(\mu=\dfrac{1}{N}\displaystyle\sum_{i=1}^{N}x_i\)
\(\sg=\sqrt{\dfrac{1}{N}\displaystyle\sum_{i=1}^{N}(x_i-\mu)^2}\)
とおくと、
\(y_i=\dfrac{1}{\sg}(x_i-\mu)\)
となります。実際にニューラル・ネットワークで使われるときには、さらにベクトルの要素ごとに線形変換をして、
\(y_i\:\longleftarrow\:g_iy_i+b_i\)
とします。ベクトルで表現すると、
\(\bs{y}=\dfrac{1}{\sg}\bs{g}\odot(\bs{x}-\mu)+\bs{b}\)
です。この \(\bs{g}\) と \(\bs{b}\) は学習可能なパラメータです。つまり、ニューラル・ネットワークの訓練のときに学習をして、最適値を決めます。もちろん、レイヤー正規化の式は微分可能なので、逆伝播計算が(少々複雑な式になりますが)可能です。
レイヤー正規化は、ニューラル・ネットワークを安定化させ、学習の効率化に役立ちます。その理由ですが、中間層の活性化関数で一般的な \(\mr{ReLU}\) 関数は、\(x=0\) の付近で非線型関数であり、それ以外では線型です。ニューラル・ネットワークは全体としては非線型関数で、そこにこそ意義があるのですが、その非線型性を生み出しているのは、\(x=0\) 付近の \(\mr{ReLU}\) 関数です。
従って、レイヤーの値を「ゼロ付近に集める」と、ニューラル・ネットワークの非線型性を強めることができ、これが学習の効率化につながります。その「ゼロ付近に集める」のがレイヤー正規化です。
以上の、
・\(\mr{ReLU}\) 関数(または \(\mr{GELU}\) 関数)
・残差結合
・正規化
は、大規模ニューラル・ネットワークを安定的に学習可能にするための必須技術であり、Transformer や GPT でも使われています。
2.自然言語のモデル化 |
単語への分解
自然言語で書かれたテキストをコンピュータで扱うとき、まずテキストを単語の系列に分解しなければなりません。系列とは「並び順に意味のある、同質の要素の集合」です。単語への分解は、単語の区切りを明示する英語(や、その他の欧米語)では容易です。文末を表すピリオドや、その他の記号も1つの単語と数えます。
日本語は単語の区切りがないので、形態素解析ソフトで単語に分解します。句読点、「、」などの記号も、それぞれ1単語と数えます。日本語の形態素解析ソフトは各種ありますが、オープンソースの MeCab が有名です。
大規模言語モデルは、世界中から集めた Webのテキスト(以下、WebText と言います)や Wikipedia、電子ブックなどを訓練データとして学習しますが、そこに出てくる単語を集めて「語彙の集合」を作ります。この集合のサイズを \(V\) とすると(たとえば、5万とか10万とかの値)、単語に \(1\)~\(V\) のユニークな番号を振ることができます。この番号を「単語ID」と呼びます。
なお、大規模言語モデルでは内部処理用として「特殊単語」も用います。以降の説明で使うのは、
[BOS] :文の開始
[EOS] :文の終了。ないしは文の区切り。
です。こうすると、テキスト \(\bs{T}\) は、
\(\bs{T}=\{x_1,\:x_2,\:x_3,\:\cd\:x_T\}\)
という単語IDの列で表現できることになります。もしこれが完結した文だとすると、\(x_1=\)[BOS]、\(x_T=\)[EOS] であり、複文だと途中にも [BOS] や [EOS] が出てくることになります。
単語IDは、その数字自体には意味がありません。また、語彙集合(要素数 \(V\))が増大すると単語IDの最大値も変化します。上の数字列は、あくまで「1時点での語彙集合をもとにして恣意的に付けられた数字の列」です。
分散表現
テキストをニュラール・ネットワークで扱うためには、すべての単語を、語彙集合のサイズにはよらない「固定長のベクトル」で表現するのが必須です。ここで使われるのが単語の「分散表現」で、固定長であるのみならず、"単語の意味もくみ取った" 表現です。ベクトルの次元は、たとば 512次元とか 1024次元です。
単語を分散表現にすることを "単語埋め込み"(word embedding)と言います。単語埋め込みの手法は各種ありますが、ここでは「word2vec」のアルゴリズムを例にとります。word2vec は、Google が2013年に提案したもので、実用的な分散表現の嚆矢となったものです。
word2vec に限りませんが、単語埋め込みのアルゴリズムの前提となっている仮定があります。それは、
単語の意味は、周囲の単語によって形成される
というもので、これを「分布仮説」と言います。たとえば、英文を例にとり、「周囲」を仮に「前1語、後1語」とします。
[I] [ ] [beer]
という文で [ ] に入る1単語は何かです。1単語に限定すると、冠詞(a, the)は入れようがないので、入る単語は限定されます。たとえば、
[beer] (私はビール飲みます:習慣) | |
[beer] (ビールはガブ飲みします:習慣) | |
[beer] (ビールが大好きです:嗜好) | |
[beer] (ビールは大嫌いです:嗜好) |
などです。[ ] には「飲む」に関係した動詞か「嗜好」に関係した動詞が入る可能性が高い。少なくとも「私とビールの関わりについての動詞」です。つまり、入る単語は「前後の1語によって意味が限定される」わけです。もしこれが「前後5語」とか「前後10語」であると「似たような意味の単語」か、少なくとも「同じジャンルの単語」になるはずです。
word2vec という「単語埋め込みアルゴリズム」には2種類あり、「周囲の単語から中心の単語を推論する(CBOW)」と「中心の単語から周囲の単語を推論する(skip-gram)」の2つです。推論にはニューラル・ネットワークを使います。以下は CBOW(Continuous Bag of Words)のネットワーク・モデルで説明します。
word2vec(CBOW)
CBOW は「周囲の単語から中心の単語を推論する」ニューラル・ネットワークのモデルです。「周囲の単語」を "コンテクスト" と呼び、推論の対象とする単語を "ターゲット" と呼びます。
まず、コンテクストのサイズを決めます。ターゲットの前の \(c\) 語、ターゲットの後ろの \(c\) 語をコンテクストとする場合、この \(c\) を "ウィンドーサイズ" と呼びます。そして "ウィンドー" の中には \(2c\) 語のコンテクストと1つのターゲットが含まれます。そして、訓練データとする文の "ウィンドー" を1単語ずつずらしながら、コンテクストからターゲットを推論する学習を行います。
語彙集合の単語数を \(V\) とし、一つの文を、
\(\bs{T}=\{x_1,\:x_2,\:\cd x_T\}\)
\(x_i\) :単語ID \((1\leq x_i\leq V)\)
とします。そして、\(x_i\) に1対1に対応する、\(V\)次元の one hotベクトルを、
\(\bs{x}_i=\left(\begin{array}{r}a_1,&a_2,&a_3,&\cd&a_V\\\end{array}\right)\)
\(a_j=0\:\:(j\neq x_i)\)
\(a_j=1\:\:(j=x_i)\)
とします。つまり \(\bs{x}_i\) は、\(x_i\) 番目の要素だけが \(1\) で、他は全部 \(0\) の \(V\) 次元ベクトルです(1つだけ \(1\)、が "one hot" の意味です)。
例として、ウィンドーサイズを \(c=2\) とします。また分散表現の単語ベクトルの次元を \(D\) とします。この前提で、\(\bs{T}\) の中の \(t\) 番目の単語の one hotベクトルを推論するモデルが図17です。
図17:word2vec(CBOW) の単語推論モデル |
\(\bs{T}=\{\:\cd,\:\bs{x}_{t-2},\:\bs{x}_{t-1},\:\bs{x}_t,\:\bs{x}_{t+1},\:\bs{x}_{t+2},\:\cd\:\}\)
という単語の one hotベクトルの系列を想定したとき、 \(\bs{x}_t\) がターゲットの正解データ(=教師ラベル)であり、その他の4つがコンテクストです。
最初の MatMul (Matrix Multiply) レイヤーは、4つの one hotベクトル \(\bs{x}_i\) を入力とし、それぞれに重み行列 \(\bs{W}_{\large enc}\) をかけて、4つのベクトル \(\bs{h}_i\) を出力します(enc=encode)。つまり、
\(\bs{h}_i=\bs{x}_i\cdot\:\bs{W}_{\large enc}\)
です。Average レイヤーは、入力された複数ベクトルの平均をとり、一つのベクトル \(\bs{h}_t\) を出力します。この \(\bs{h}_t\) が \(\bs{x}_t\) の分散表現(= \(D\)次元ベクトル)です(というより、そうなるようにネットワークを訓練します)。
次の MatMul レイヤーで 重み \(\bs{W}_{\large dec}\) を掛け(dec=decode)、\(\mr{Softmax}\) レイヤーを通して、分散表現を \(V\) 次元の確率ベクトル \(\bs{y}_t\) に変換します。そして、教師ラベルである \(\bs{x}_t\) との間で交差エントロピー誤差を計算し、損失 \(L\) を求めます。
損失が求まれば、誤差逆伝播法で重み行列 \(\bs{W}_{\large enc}\) と \(\bs{W}_{\large dec}\) を修正します。この修正を、大量の文とそのすべてのウィンドーで行って、損失 \(L\) を最小化します。これがネットワークの訓練です。
訓練済みのネットワークでは、重み行列 \(\bs{W}_{\large enc}\:[V\times D]\) が、単語の分散表現の集積体になっています。つまり、one hot ベクトル \(\bs{x}_i\) の分散表現を \(\bs{h}_i\) とすると、
\(\bs{h}_i=\bs{x}_i\cdot\:\bs{W}_{\large enc}\)
です。\(\bs{x}_i\) の単語IDを \(x_i\) とすると、
\(\bs{h}_i=\bs{W}_{\large enc}\) の \(x_i\)行(\(1\)列から\(D\)列まで)
となります。
分散表現と単語の意味
「分布仮説」をもとに、ニューラル・ネットワークによる推論で得られた単語の分散表現ベクトルは、類似の意味の単語は類似のベクトルになる(ことが多い)ことが確認されています。たとえば、
year, month, day
などや、
car, automobile, vehicle
などです。ベクトルの類似は「コサイン類似度」で計測します。2つの2次元ベクトル、
\(\bs{a}=\left(\begin{array}{r}a_1&a_2\\\end{array}\right)\)
\(\bs{b}=\left(\begin{array}{r}b_1&b_2\\\end{array}\right)\)
の場合で例示すると、
コサイン類似度\(=\dfrac{a_1b_1+a_2b_2}{\sqrt{a_1^2+a_2^2}\sqrt{b_1^2+b_2^2}}\)
で、2次元平面の2つのベクトルの角度(コサイン値)を求める式になります。この式の分子は内積(dot product)で、内積の定義式を変形したものです。この類似度を利用して「類推問題」が解けます。たとえば、
France : Paris = Japan : X
の X は何かという問題です。答えは Tokyo ですが、これを求めるには、分散表現ベクトルが類似しているという前提で、
France | ≒ Japan | |
Paris | ≒ X |
X = France + Paris - Japan
であり、X を \(\bs{W}_{\large dec}\) と \(\mr{Softmax}\) 関数を使って確率ベクトルに変換すれば、確率が最も高い単語が Tokyo になるはずというわけです。
もちろん、分散表現ベクトルで類推問題を解くのは完璧ではありません。分散表現を作るときのウィンドーのサイズと訓練データの量にもよりますが、各種の類推問題を作って実際にテストをすると、60%~70% の正解率になるのが最大のようです。
言語モデル
分散表現ベクトルを用いて「言語モデル」を構築します。いま、一つの文を構成する単語の並び、
\(\bs{x}_1,\:\bs{x}_2,\:\bs{x}_3,\:\cd\:,\:\bs{x}_T\)
があったとき(\(\bs{x}_1=\)[BOS]、\(\bs{x}_T=\)[EOS])、この文が存在する確率を、
\(P(\bs{x}_1,\:\bs{x}_2,\:\bs{x}_3,\:\cd\:,\:\bs{x}_T)\)
で表します。文法として間違っている文の確率はゼロに近く、また文法としては合っていても、意味をなさない文の確率は低い。
\(P(\)[BOS],[彼女],[は],[学校],[へ],[行く],[EOS]\()\)
\( > \:P(\)[BOS],[学校],[は],[彼女],[へ],[行く],[EOS]\()\)
といった具合です。この「存在確率」は、次のような「条件付き確率」で表現できます。つまり、
\(P_1=P(\)[彼女] | [BOS]\()\)
:文頭が「彼女」である確率
\(P_2=P(\)[は] | [BOS],[彼女]\()\)
:「彼女」の次が「は」である確率
\(P_3=P(\)[学校] | [BOS],[彼女],[は]\()\)
:「彼女は」の次が「学校」である確率
\(P_4=P(\)[へ] | [BOS],[彼女],[は],[学校]\()\)
:「彼女は学校」の次が「へ」である確率
\(P_5=P(\)[行く] | [BOS],[彼女],[は],[学校],[へ]\()\)
:「彼女は学校へ」の次が「行く」である確率
\(P_6=P(\)[EOS] | [BOS],[彼女],[は],[学校],[へ],[行く]\()\)
:「彼女は学校へ行く」で文が終わる確率
とすると、
\(P(\)[BOS],[彼女],[は],[学校],[へ],[行く],[EOS]\()\)
\(=P_1\times P_2\times P_3\times P_4\times P_5\times P_6\)
となります。つまり、一般的に、
\(P(\bs{x}_{t+1}\:|\:\bs{x}_1,\:\bs{x}_2,\:\bs{x}_3,\:\cd\:,\:\bs{x}_t)\)
が分かれば、言語モデルは決まります。平たく言うと、
それまでの単語の系列から、次にくる単語の確率を推測する
のが言語モデルと言えます。もちろん、次にくる可能性のある単語は1つではありません。語彙集合のすべての単語それぞれについて「次にくる」確率を予測します。
実は、Transformer や GPT、ChatGPT がやっていることは「次にくる単語の予測」であり、これを実現しているのが、「超大規模なニューラル・ネットワークで作った言語モデル」なのです。
トークン
今まで、ニューラル・ネットワークでテキストを扱うためには、テキストを単語に分解するとしてきました。しかし大規模言語モデルで実際にやっていることは、テキストを「トークン(token)」に分解し、そのトークンの分散表現ベクトルを求めてニューラル・ネットワークで処理することです。
トークンとは、基本的には「単語」ないしは「単語の一部」です。英語ですと、たとえば頻出単語は「単語=トークン」ですが、GPT-3 の例だと、トークンには、ed, ly, er, or, ing, ab, bi, co, dis, sub, pre, ible などの「単語の一部」が含まれます。GPT-3 のトークンの語彙数は約5万ですが、そのうち英語の完全な単語は約3000と言われています。通常使われる英単語は4万~5万なので、3000の単語で WebText や Wikipedia の全部を表すことは到底できません。つまり、単語の "切れ端" と単語の組み合わせ、ないしは単語の "切れ端" 同士の組み合わせでテキストを表現する必要があります。
たとえば「ディスコ音楽」などの disco という単語は、[dis] [co] と表現します。edible(食用の、食べられる、という意味)は、[ed] [ible] です。disco や edible は 3000 単語の中に入っていないようです。edible などは「基本的な英単語」と思えますが、あくまで WebText や Wikipedia に頻出するかどうかの判断によります。
また xylophone(木琴)は、[x] [yl] [ophone] です。このように、1文字がトークンになることもあります。"単語"、"単語の切れ端"、"文字" がトークンです。
BPEによるトークン化
テキストをトークンに変換することを「トークン化(tokenize)」、トークン化を行うソフトを tokenizer と言います。ここで GPT-3 のトークン化のアルゴリズムの概要をみてみます。
上の xylophone → [x] [yl] [ophone] で明快なのですが、トークン化は単語の意味とは無関係です。意味を言うなら xylo("木の" という意味の接頭語)+ phone(音)ですが、そういうこととは全く関係ありません。
GPT-2 の論文にそのアルゴリズムである BPE(Byte Pair Encoding)が書かれています(GPT-3 は GPT-2 と同じだと、GPT-3 の論文にあります)。
コンピュータで文字を表現するには文字コード(文字に数字を割り振ったもの)を使います。国際的に広く使われているのは unicode です。unicode を使うと各国語の文字が統一的に文字コードで表現できます。
unicode の数字をコンピュータでどう表すか、その表し方(=エンコーディング)には3種類ありますが、その一つが UTF-8 です。UTF-8 は1バイト(8ビット、10進数で 0~255)を単位とし、1~4バイトで1文字を表現する可変長のエンコーディングです(漢字の異字体は5バイト以上になります)。
UTF-8 でば、通常の英文に使われる英数字、特殊文字(空白 , . ? など)は1バイトで表します。一方、日本語の平仮名、カタカナ、漢字は3バイトです(一部の漢字は4バイト)。バイトは文字ではありません。あくまで文字を表現するためのコンピュータ用の数字です。
BPE ではまず、UTF-8 でエンコーディングされた大量のテキストを用意します。そして、1バイトの全パターンを256種類の基本トークンとして語彙に初期登録します。トークン ID は 1~256 とします。従って、英文における1文字の単語( I, a )や記号( , . ? ! など)は、この時点でトークンID が割り当てられたことになります。
次に、テキストの「トークンのペア」で、最も出現頻度の高いペアをみつけます。英語で最も出現頻度が高い単語は the で、トークンで表現すると [t] [h] [e] です。仮に、[t] [h] のペアがテキスト中で最も出現頻度が高いとします(説明のための仮定です)。そうすると、この2つのトークンを結合した [th] を新たなトークン(トークン ID=257)として語彙に登録します。以降、テキスト中の [t] [h] は [th] と見なします。
次に出現頻度の高いペアが [th] [e] だとすると、この2つを結合した [the] を新たなトークン(トークン ID=258)として語彙に登録します。この段階で the という単語がトークンの語彙に登録されたわけです(以上の [th] [the] のトークン ID は説明のための数字で、実際の GPT-3 のトークン ID は違います)。
以上のプロセスにおいてトークンは、「空白をまたがない」「空白で終わらない」「同一カテゴリの文字(英字、数字、特殊文字など)でしかペアを作らない」などの制約をもうけておきます。「カテゴリ」が何かは論文に書いていないので想定です。もちろんこれは、なるべく頻出単語をトークンにする工夫です。
これを「結合の最大回数」になるで繰り返します。GPT-2 / GPT-3 の場合、最大回数は 50,000 です。従って、最終的には、
256 + 50,000 + 1 = 50,257
のトークンの語彙ができあがることになります。最後の + 1 は文末の記号 [EOS] を特殊トークンとしているからです。
いったん語彙ができあがると、以降、この語彙を使ってすべてのテキストを同じアルゴズムでトークン化します。当然ですが、長いバイトのトークンからテキストに割り当てることになります。
大規模言語モデルの成立要件
GPT-3 のトークン化のロジックによると、すべての言語のすべてのテキストが 50,257個のトークンを使って、統一的に、もれなくトークン化できることになります。それはあたりまえで、1バイトのデータがすべてトークンとして登録してあるからです。テキストを UTF-8 で統一的に表せば可能なのです。
ここで、日本語がどうなるかです。日本語の unicode を UTF-8 で表すと、漢字・仮名・文章記号は3バイトです(一部の漢字は4バイト。また異字体は5バイト以上)。ということは、普通の漢字1字、仮名1字は1~3トークンで表されることになります。
実際、OpenAI 社が公開している GPT-3 の Tokenizer で試してみると、
仮名は1~2トークン
ほとんどの漢字は2~3トークン
となります。ちなみに、平仮名(清音、濁音、半濁音、計71文字種)のトークン数を調べてみると、
28 文字種:1トークン
43 文字種:2トークン
です。濁音で1トークンになるのは「が だ で」の3つだけですが、これは助詞として頻出するからでしょう。特別の場合は、仮名2文字で1トークンになるようです(スト、ーク、など)。1トークンになる漢字はごく少数のようで、たとえば「上」「田」「中」「一」「大」がそうです(他にもあると思います)。
以上をまとめると、何をトークンとするかは、
・単語
・単語の一部、ないしは文字の連なり
・文字
・バイト
がありうるわけですが、GPT-3 のトークンにはこれらが混在していて、規則性は全くないことになります。ここから何が言えるかと言うと、
大規模言語モデルは、言語の文法や意味を関知しないのみならず、単語という概念さえなしでも成立しうる |
ということです。もちろん、英語を扱うときのように頻出単語のトークン化ができれば、生成されるテキストのクオリティーが向上することは確かでしょう。しかし、単語単位のトークン化は必須ではない。つまり、
単語の切れ端や文字どころか、文字を細分化した「バイト」をトークンとしても、その「バイト」には言語学的な意味が全く無いにもかかわらず、大規模言語モデルが、とりあえず成り立つ
わけです。GPT-3(= ChatGPT の基盤となっているモデル)がそれを示しています。大規模言語モデルは、翻訳、文章要約、質問回答、おしゃべり(chat)などの多様なタスクに使えます。これらのタスクを実現する仕組みを作るには、言語学的知識は全く不要です。不要というより、言語学的知識を持ち込むことは邪魔になる。もちろん、「翻訳、文章要約、質問回答、おしゃべり」の実例や好ましい例が大量にあるのが条件です。
その GPT-3 のベースになっているのは、Google が提案した Transformer という技術です。ということは、次のようにも言えます。
Transformer は「系列データ = 同質の記号・データが直列に並べられた、順序に意味のあるもの」であれば適用可能であり、その記号を文字としたのが大規模言語モデルである。もちろん、適用するには系列データの実例が大量にあることが必須である。 |
これが言えるのなら、少々先走りますが、Transformer はタンパク質の機能分析にも使える(可能性がある)ことになります。タンパク質はアミノ酸が鎖状に1列に並んだもので、そのアミノ酸は20種類しかありません。
タンパク質は「20種の記号の系列」であり、それが生体内で特定の機能を果たします。多数のタンパク質のアミノ酸配列を Transformer で学習し、タンパク質の機能と照らし合わせることで、新たなタンパク質の設計に役立てるようなことができそうです。実は、こういった生化学分野での Transformer や言語モデルの利用は、今、世界でホットな研究テーマになっています。
もちろん、系列データはタンパク質の構造だけではありません。従来から AI で扱われてきた音声・音源データや、各種のセンサーから取得したデータがそうだし、分子生物学では DNA / RNA が「4文字で書かれた系列データ」と見なせます。現に米国では、DNA / RNA の塩基配列を学習した大規模言語モデルでウイルスの変異予測がされています。
Transformer は、もともと機械翻訳のために提案されたものでした。しかしそれは意外なことに、提案した Google も予想だにしなかった "奥深い" ものだった。ここに、大規模言語モデルのサイエンスとしての意義があるのです。
(次回に続く)
タグ:正規分布 MLP ヘヴィサイド関数 単位ステップ関数 ReLU 活性化関数 多重パーセプトロン 標準偏差 積分 微分 指数関数 ベクトル 行列 ChatGPT 全結合 回帰問題 シナプス ニューロン GPT-3 GPT OpenAI Google transformer トークン 分散表現 大規模言語モデル 自然言語 バイアス 重み ニューラル・ネットワーク ガウス分布 分類問題 Softmax 損失 損失関数 交差エントロピー誤差 Cross Entropy Error 勾配 勾配降下法 ミニバッチ勾配降下法 確率的勾配降下法 誤差逆伝播法 標準正規分布 誤差関数 残差結合 GELU レイヤー正規化 パラメータ 単語埋め込み word2vec 分布仮説 コサイン類似度 BPE Byte Pair Encoding 系列データ バイト Unicode UTF-8 タンパク質 アミノ酸
2023-09-24 21:14
nice!(0)
No.363 - 自閉スペクトラム症と生成AI [技術]
No.346「アストリッドが推理した呪われた家の秘密」で、NHK総合で放映中の「アストリッドとラファエル 文書係の事件簿」に関係した話を書きました("麦角菌" と『イーゼンハイムの祭壇画』の関係)。今回もその継続で、このドラマから思い出したことを書きます。現在、世界中で大きな話題になっている "生成AI" に関係した話です。
アストリッドとラファエル
「アストリッドとラファエル 文書係の事件簿」は、NHK総合 日曜日 23:00~ の枠で放映されているフランスの警察ドラマです。そのシーズン2の放映が2023年5月21日から始まりました。
アストリッドはパリの犯罪資料局に勤務する文書係の女性(俳優はサラ・モーテンセン)、ラファエルはパリ警視庁の刑事(警視)です(俳優はローラ・ドヴェール)。アストリッドは自閉スペクトラム症ですが、過去の犯罪資料に精通していて、また抜群の洞察力、推理力があります。一方のラファエルは、思い立ったらすぐに(捜査規律違反もいとわず)行動に移すタイプです。しかし正義感は人一倍強く、人間としての包容力もある女性刑事です。この全く対照的な2人がペアになって難事件を解決していくドラマです(サラ・モーテンセンの演技が素晴らしい)。
シーズン2 第6話「ゴーレム」(2023年6月25日)
この第6話で、ラファエル警視とペラン警部とアストリッドは、殺害された犯罪被害者が勤務していた AI 開発会社を事情聴取のために訪れます。会社の受付にはディスプレイ画面が設置されていて、受付嬢が写っていました。訪問者はその受付嬢と会話して、訪問相手を伝えたり、アポイントメントを確認します。もちろん殺人事件の捜査なのでアポなしであり、ラファエルとペランは受付を無視してオフィスの中に入っていきました。
しかしアストリッドはその受付嬢に興味を持ちました。実はそれはAIが創り出した "バーチャル受付嬢" で(名前はエヴ)、表情の変化や声は人間そっくりで、受付業務に必要な応対ができるのみならず、受付業務とは関係のない会話も来訪者とできて、質問に答えたりするのです。これは今で言うと、世界中で大きな話題になっている「大規模言語モデルによる生成AI」(ChatGPT や Bard など)と「画像生成AI」の複合体です。アストリッドは受付に留まって、エヴとの対話を続けました。
会社での事情聴取が終わったあと、アストリッドはラファエルの車で帰ります。そのときの2人の会話です。
エヴとの会話について、アストリッドの発言をまとめると、
となるでしょう。キーワードは「安心」と「共感」です。
自閉スペクトラム症(ASD。Autism Spectrum Disorder)とは、自閉症やアスペルガー症など、かつては複数の診断名がついていたものを統合したものです。これらは境界線が引けるものではなく、光のスペクトルのように連続的に変化する症状がありうる。だから "スペクトラム" なのです。
NHKのホームページの「NHK健康チャネル」に簡潔な説明があります(https://www.nhk.or.jp/kenko/atc_346.html)。それによると自閉スペクトラム症は「自閉症」「高機能自閉症」「アスペルガー症候群」の総称であり、次のようになります。
このドラマにおいてアストリッドは極めて知的な人間として描かれています。記憶力は抜群だし、帰納的推論に長けていて、洞察力がある。そして強いこだわりがあります。その最たるものがパズルです。パズルを見ると解かずにはいられない。
ただし、人とのコミュニケーションが苦手で、その典型が人と共感できないことなのですね。その意味では、上の表ではアスペルガー症候群に近いわけですが、あくまで "スペクトラム" であって、簡単に分類できるものではありません。
ドラマは進行し、アストリッドは毎週参加している「社会力向上クラブ」の会合に出席しました。このクラブは、自閉スペクトラム症の人たち集まりで、主宰者はウィリアム・トマという人です。そのウィリアムとアストリッドの会話です。
アストリッドが「映画を見たり、詩を読んだり、夕日を見たときに、感動したことはありません。人工知能と同じです」と言っているのは、
ということであり、だから人工知能と同じなのです。知能の高低ではない。その意味で、ウィリアムとの会話は少々スレ違ってしまいました。アストリッドは、AI との会話が "安心で楽しかった" 自分がいて、そういう自分は AI と同じじゃないかと思い至り、それが自分が抱える問題だととらえたのです。
AI に心の相談をする
このドラマを見ていて、先日、新聞に掲載された東畑開人氏のコラムを思い出しました。
と題したコラムです。東畑開人氏は臨床心理士で、日本心理臨床学会常務理事です。
この中で東畑氏はまず、「何かあると、ひとまず ChatGPT に相談してしまう日々である」と書いています。見当違いな回答も多々あるが、
などとあります。東畑氏は臨床心理士であり、このコラムのテーマは「ChatGPT に心の問題、悩みを相談する」ということです。そのことについて、次にように書かれていました。
大規模言語モデル(LLM)を利用した生成AI については、今、さまざまな議論が行われていますが、この東畑氏のコメントは、生成AI と人々がどう関わるべきかについての本質(の一つ)をついたコメントだと思います。
アストリッドにとって、社会力向上クラブのメンバー以外で、何を言っても大丈夫と安心できる人間はごくわずかです。ラファエルと、シーズン2では、恋心を抱いたテツオ・タナカです(ちなみに彼も "夕日を見ても感動しない" と言ってました)。だからこそ、AI との対話が安心で心地よいものだったのです。
東畑氏のコメントに戻りますと、AIを活用したメンタルヘルスサービスが試みられているようです。
「AIを活用したメンタルヘルスサービス」は確かに有用と考えられます。但し、同時に "悪用されるリスク" も抱えているはずです。たとえば、心の悩みをもつ人を特定の宗教に "それとなく" "徐々に" 勧誘するようなAI が(作ろうと思えば)作れるでしょう。AI の訓練データ次第です。また極論すると "天国に行って楽になりましょう" 的な考えを植え付けることもできそうです。現にベルギーは AI メンタルサービスを使った人の自殺事件まで起きています。EU で議論されている生成AI の規制の検討はこういうことも踏まえているといいます。
人間は "心" をもっています。だから人と人とで共感できるし、困っている人を助けようともします。しかしそれと同時に、人を傷つけるようにも働きます。人間の "心" には AI にはない "弱さ"、"不安定さ"、"愚かさ" があるからです。
では、心の相談にとって人間と AI はどういう風に共存すべきか。その答えを東畑氏がもっているわけではないようですが、それは当然でしょう。そういった議論は、心の相談のみならず、各分野で始まったばかりなのだから。
ともかく、アストリッドが AI に抱いた「安心感」は、自閉スペクトラム症ではない健常者にとっても、"心の相談" を誰かにするときに必要な「安心感」に直結しています。東畑氏のコラムによって、そのことを強く感じました。
アストリッドとラファエル
「アストリッドとラファエル 文書係の事件簿」は、NHK総合 日曜日 23:00~ の枠で放映されているフランスの警察ドラマです。そのシーズン2の放映が2023年5月21日から始まりました。
アストリッドはパリの犯罪資料局に勤務する文書係の女性(俳優はサラ・モーテンセン)、ラファエルはパリ警視庁の刑事(警視)です(俳優はローラ・ドヴェール)。アストリッドは自閉スペクトラム症ですが、過去の犯罪資料に精通していて、また抜群の洞察力、推理力があります。一方のラファエルは、思い立ったらすぐに(捜査規律違反もいとわず)行動に移すタイプです。しかし正義感は人一倍強く、人間としての包容力もある女性刑事です。この全く対照的な2人がペアになって難事件を解決していくドラマです(サラ・モーテンセンの演技が素晴らしい)。
シーズン2 第6話「ゴーレム」(2023年6月25日)
この第6話で、ラファエル警視とペラン警部とアストリッドは、殺害された犯罪被害者が勤務していた AI 開発会社を事情聴取のために訪れます。会社の受付にはディスプレイ画面が設置されていて、受付嬢が写っていました。訪問者はその受付嬢と会話して、訪問相手を伝えたり、アポイントメントを確認します。もちろん殺人事件の捜査なのでアポなしであり、ラファエルとペランは受付を無視してオフィスの中に入っていきました。
しかしアストリッドはその受付嬢に興味を持ちました。実はそれはAIが創り出した "バーチャル受付嬢" で(名前はエヴ)、表情の変化や声は人間そっくりで、受付業務に必要な応対ができるのみならず、受付業務とは関係のない会話も来訪者とできて、質問に答えたりするのです。これは今で言うと、世界中で大きな話題になっている「大規模言語モデルによる生成AI」(ChatGPT や Bard など)と「画像生成AI」の複合体です。アストリッドは受付に留まって、エヴとの対話を続けました。
会社での事情聴取が終わったあと、アストリッドはラファエルの車で帰ります。そのときの2人の会話です。
|
エヴとの会話について、アストリッドの発言をまとめると、
的確な応答で、信頼できて、安心した。 | |
自閉スペクトラム症である私は、人と共感する能力がないとよく言われる。だからこそ、エヴとの会話が心地よかった。 |
となるでしょう。キーワードは「安心」と「共感」です。
自閉スペクトラム症(ASD。Autism Spectrum Disorder)とは、自閉症やアスペルガー症など、かつては複数の診断名がついていたものを統合したものです。これらは境界線が引けるものではなく、光のスペクトルのように連続的に変化する症状がありうる。だから "スペクトラム" なのです。
NHKのホームページの「NHK健康チャネル」に簡潔な説明があります(https://www.nhk.or.jp/kenko/atc_346.html)。それによると自閉スペクトラム症は「自閉症」「高機能自閉症」「アスペルガー症候群」の総称であり、次のようになります。
自閉スペクトラム症 | |||
自閉症 | 症候群 |
||
コミュニ | とても | 困難 | 少し困難 |
言葉の遅れ | ある | ある | ない |
知的障害 | ある | ない | ない |
こだわり | ある | ある | ある |
このドラマにおいてアストリッドは極めて知的な人間として描かれています。記憶力は抜群だし、帰納的推論に長けていて、洞察力がある。そして強いこだわりがあります。その最たるものがパズルです。パズルを見ると解かずにはいられない。
ただし、人とのコミュニケーションが苦手で、その典型が人と共感できないことなのですね。その意味では、上の表ではアスペルガー症候群に近いわけですが、あくまで "スペクトラム" であって、簡単に分類できるものではありません。
ドラマは進行し、アストリッドは毎週参加している「社会力向上クラブ」の会合に出席しました。このクラブは、自閉スペクトラム症の人たち集まりで、主宰者はウィリアム・トマという人です。そのウィリアムとアストリッドの会話です。
|
アストリッドが「映画を見たり、詩を読んだり、夕日を見たときに、感動したことはありません。人工知能と同じです」と言っているのは、
普通の人が思っている "人間らしい心" がないと、他人からは思われる
ということであり、だから人工知能と同じなのです。知能の高低ではない。その意味で、ウィリアムとの会話は少々スレ違ってしまいました。アストリッドは、AI との会話が "安心で楽しかった" 自分がいて、そういう自分は AI と同じじゃないかと思い至り、それが自分が抱える問題だととらえたのです。
AI に心の相談をする
このドラマを見ていて、先日、新聞に掲載された東畑開人氏のコラムを思い出しました。
社会季評 AI に心の相談 弱さが生む人間の役割 朝日新聞(2023年6月22日) |
と題したコラムです。東畑開人氏は臨床心理士で、日本心理臨床学会常務理事です。
この中で東畑氏はまず、「何かあると、ひとまず ChatGPT に相談してしまう日々である」と書いています。見当違いな回答も多々あるが、
二日酔いの解決策を尋ねて、「お酒を飲まなければいいのです」と返ってきたときには脱力したが、 | |
悩みを打ち明けて、核心に迫るコメントをされたときには動揺した |
などとあります。東畑氏は臨床心理士であり、このコラムのテーマは「ChatGPT に心の問題、悩みを相談する」ということです。そのことについて、次にように書かれていました。
|
大規模言語モデル(LLM)を利用した生成AI については、今、さまざまな議論が行われていますが、この東畑氏のコメントは、生成AI と人々がどう関わるべきかについての本質(の一つ)をついたコメントだと思います。
アストリッドにとって、社会力向上クラブのメンバー以外で、何を言っても大丈夫と安心できる人間はごくわずかです。ラファエルと、シーズン2では、恋心を抱いたテツオ・タナカです(ちなみに彼も "夕日を見ても感動しない" と言ってました)。だからこそ、AI との対話が安心で心地よいものだったのです。
東畑氏のコメントに戻りますと、AIを活用したメンタルヘルスサービスが試みられているようです。
|
「AIを活用したメンタルヘルスサービス」は確かに有用と考えられます。但し、同時に "悪用されるリスク" も抱えているはずです。たとえば、心の悩みをもつ人を特定の宗教に "それとなく" "徐々に" 勧誘するようなAI が(作ろうと思えば)作れるでしょう。AI の訓練データ次第です。また極論すると "天国に行って楽になりましょう" 的な考えを植え付けることもできそうです。現にベルギーは AI メンタルサービスを使った人の自殺事件まで起きています。EU で議論されている生成AI の規制の検討はこういうことも踏まえているといいます。
人間は "心" をもっています。だから人と人とで共感できるし、困っている人を助けようともします。しかしそれと同時に、人を傷つけるようにも働きます。人間の "心" には AI にはない "弱さ"、"不安定さ"、"愚かさ" があるからです。
では、心の相談にとって人間と AI はどういう風に共存すべきか。その答えを東畑氏がもっているわけではないようですが、それは当然でしょう。そういった議論は、心の相談のみならず、各分野で始まったばかりなのだから。
ともかく、アストリッドが AI に抱いた「安心感」は、自閉スペクトラム症ではない健常者にとっても、"心の相談" を誰かにするときに必要な「安心感」に直結しています。東畑氏のコラムによって、そのことを強く感じました。
2023-07-15 10:38
nice!(0)
No.274 - 蜂を静かにさせる方法 [技術]
今回は、No.105「鳥と人間の共生」の関連です。No.105 で書いたアフリカの狩猟採集民の「蜂の巣狩り」ですが、次の3つのポイントがありました。
タンザニア北部の狩猟採集民、ハッザ族が「蜂の巣狩り」をする様子が YouTube に公開されています(https://www.youtube.com/watch?v=6ETvF9z8pc0)。それを見ると、ハッザ族の男たちは木をこすって火をおこし、火種を作って木片を燃やし、ノドグロミツオシエが示した木に登って蜂の巣がある樹洞に煙を入れています。
No.105 で紹介したように、ハーバード大学の人類学者、リチャード・ランガム教授は「アフリカの狩猟採集民は、チンパンジーの100~1000倍のハチミツを手に入れる」と語っていました。①火を使う(煙でミツバチを麻痺させる)、②ノドグロミツオシエの誘導行動を利用する、の2つでハチミツを効率的に採取できるわけです。
このタイプの「蜂の巣狩り」はいつから始まったのでしょうか。アフリカに残る狩猟採集民がやっているということで、人類史を遡る遙か昔からと考えられます。人類が火を使った確かな証拠は約100万年前のものですが、それ以降のどこかで煙を使う「蜂の巣狩り」が始まったわけです。数万年前、いや数10万年前かもしれません。とにかく、大昔からアフリカの人類はそうしてきた。
ところで、煙でミツバチを麻痺させる方法は現代の養蜂農家も使っています。このための現代の道具が燻煙器です。Amazonでも売っています。
燻煙器は「燃焼室」と「ふいご」から成り、燃焼室の上部は吹き口のある蓋になっています。まず燃焼室に火種を入れ、その上から細かく裂いた麻布や籾殻などの自然由来の燃焼物を入れます。そして「ふいご」を使って吹き口から煙を出す。養蜂農家がミツバチの巣箱の世話をするときには、ミツバチに刺されないための必須の道具となっています。
燻煙器はステンレスなどで作られた現代の工業製品です。しかし「煙を使ってミツバチの活動を押さえて刺されないようにする」という1点においては、ハッザ族などのアフリカの狩猟採集民と現代の養蜂農家は全く同じなのです。
ところがごく最近、煙を全く使わすにミツバチを静かにさせるスプレーが開発されました。今回はその話を書くのが目的ですが、まずそのスプレーの発売を報じたニュース記事を引用します。
ミツバチの活動を抑えるスプレー
先日(2019年11月5日)、NHKの朝の情報番組で「ビーサイレント」を使い始めた関東の養蜂家を取材していました。その養蜂家は「火を起こして燻煙器をセットするのに10分~15分はかかる。ビーサイレントはスプレーなので手間が全然違う。養蜂家の必需品」と話していました。
早稲田大学を中心として運営されている国内最大の化学ポータルサイト「Chem-Station(ケムステ)」に、もう少し詳しい話が載っていました。
補足しますと、ススメバチもアシナガバチも「スズメバチ科」の蜂です。そして「スズメバチサラバ」はスズメバチ科の蜂に対して効果があります。
一つのポイントは、フェニルメタノールは香料として食品にも使われていることです。つまり人に対して安全であり、かつ農薬ではないので認可も不要です。
もう一つのポイントは、引用部分には書いてないのですが、養蜂で使うミツバチはミツバチ科であり「スズメバチサラバ」を忌避しないことです。ということは、巣箱のミツバチの出入り口付近で、フェニルメタノールを常に発生させるような「据え置き型スズメバチサラバ」を設置しておくと、スズメバチが巣箱に進入しないことになる。
人がスズメバチに刺されて死亡する事故は毎年起こっていますが、もう一つのスズメバチの被害は養蜂です。巣箱にスズメバチが進入してミツバチが全滅する事件が起こる。スズメバチは養蜂の大敵なのです。KINP社は「据え置き型スズメバチサラバ」を開発中のようで、これがうまくいくとさらに「スズメバチサラバ」の利用範囲が広がることになります。
この「スズメバチサラバ」と同様の効果をミツバチに対してもつのが、冒頭で紹介した「ミツバチの活動を抑えるスプレー」である「ビーサイレント」です。
この引用部分のポイントは3つあります。一つは「西洋ミツバチ」と書いてあるところです。ニホンミツバチと違って西洋ミツバチは攻撃性が強く、燻煙器が必要になる。現代の養蜂のほとんどは西洋ミツバチによるものです。
2番目は「都会では煙を使うことが避けられる」というところです。最近、都会のビルの屋上で養蜂をすることが増えています。東京都心などは緑が多く、ミツバチが蜜を採集する場所には困らない。さらに都心のビルの屋上にはミツバチの天敵であるスズメバチがくることはないので好都合です。銀座のビルの屋上で採蜜されたハチミツが「銀座のはちみつ」というブランドで松屋銀座店で販売されているほどです。ところが、ビルの屋上で火を燃やすことは一般には禁止されていて、燻煙器が使えません。つまり火を使わない「ビーサイレント」は、手間が省けることに加えて養蜂家にとって大変有り難い製品なのです。
3つ目は「スズメバチサラバをミツバチ向けに配合や濃度を改良した」としてあるところです。スズメバチサラバの成分であるフェニルメタノールはスズメバチ科の蜂が忌避し、ミツバチは忌避しないので、ビーサイレントにはフェニルメタノールではない(おそらく類似の)別の成分が配合されていると考えられます。その詳細は書いてないので不明ですが、特許の関係があるのかも知れません。いずれ明らかになると考えられます。"ケムステ・ニュース" の記事は次のように結ばれています。
スズメバチは農林業分野では害虫を駆除してくれる益虫でもあり、「よりよい害虫との付き合い方を開発」というところがまさに金哲史教授の狙いでしょう。
最大、年80人がスズメバチで死亡
ところで、そもそものスズメバチ忌避物質の発見はどういう経緯だったのでしょうか。国立科学技術振興機構(JST)が出している「産学官連携ジャーナル・2018年7月号」にその経緯が書かれていたので紹介します。まず、スズメバチによる被害の状況が解説してありました。
よくメディアで、山菜採りなどで熊に遭遇して怪我をしたというニュースが流れることがあり、また熊に襲われて死亡という事故も起きています。しかし死亡事故ということで言うと、スズメバチは熊の20倍~80倍もの被害を出しているのですね。人が人以外の生物に襲われて死ぬ数は、明らかにススメバチが一番多いのです。
ちなみに、人が人に襲われて死亡する数(殺人事件による他殺数)は年間300人程度(2016年)です。それと比較してもススメバチによる死者は無視できない数なのです。つまりススメバチを撃退する方法は重要で、それを発見したのが高知大学の金 哲史教授です。
スズメバチ忌避物質の発見
この発見は、スズメバチが好むクヌギと嫌うクヌギがあるということがヒントになりました。冒頭に書いたNHKの朝の情報番組では「金教授の同僚の教授からの示唆」だと言っていました。なぜ、スズメバチが好むクヌギと嫌うクヌギがあるのか、それは別の昆虫(=蛾)の意外な生態が関係していました。
つまり、ボクトウガの幼虫が住み付いているクヌギはスズメバチが嫌い、そうでないクヌギはスズメバチが好む。ボクトウガは漢字で書くと「木蠹蛾」です。「蠹」とは難しい字ですが(Shift JIS にある字です)「むしばむ = 虫食む」という意味です。その名の通り幼虫はクヌギやコナラなどの樹肌をかじって穴をあけ、樹液を滲出させます。そして樹液に惹かれてやってくる昆虫を捕食する。つまり自ら「餌場」を開設する昆虫です。これだけでも少々驚きですが、さらに上に引用した記事によると、
というわけです。一般的に言って昆虫の "生き残り戦略" の中には驚くほど巧妙なものがありますが、ボクトウガの幼虫もそうです。この程度の "戦略" は昆虫の世界ではありうることと言えそうですが、巧妙であることには違いありません。
そこで問題は、ボクトウガ放出する「スズメバチが忌避する化学物質」とは何かです。金教授はその成分が「2-フェニルエタノール」であることを突き止めました。そしてさらに研究を続けました。
スズメバチサラバを噴射するとスズメバチは一時的に攻撃性を失いますが、その時間はおよそ5分間だそうです。スズメバチを殺さずに攻撃性だけを一時的に失わせる。これが忌避剤の意味です。
金教授はかなりユーモアのセンスがある方のようで、商品のネーミングについては次のような発言が紹介されていました。
『八目散』とは素晴らしいネーミングのセンスだと思います。『蜂目散』でないことがミソです。少々の誤解を招いたとしてもこのネーミングにしてほしかったと思いますが、科学者としてそれはできなかったのでしょう。実際に選ばれた『スズメバチサラバ』は、少々安易な感じもしますが、『ゴキブリホイホイ』や『ダニコナーズ』(=KINCHOのダニ除けスプレー)という例もあるので、これは殺虫剤・忌避剤の "王道の" ネーミングなのでしょう。
殺虫剤ではなく、忌避剤である意味
その忌避剤であることの意味、スズメバチを殺す殺虫剤ではない意義はどこにあるのでしょうか。産学官連携ジャーナルは次のように締めくくられていました。
人類史の転換点
「ビーサイレント」の話に戻ります。冒頭にも書いたように「煙を用いてミツバチを静かにさせる」という方法は、人類が有史以前の(おそらく)数万年前(ないしは数10万年前)という太古の昔から現代まで、綿々と受け継がれてきたものです。
このことからすると「ビーサイレント」は大発明であり、人類史における根本的な技術革新だと言えるでしょう。大袈裟にいうと、2019年の「ビーサイレント」の発売は「人類史の転換点」です。金哲史教授はそのことを誇ってよいと思うし、是非そういうアッピールをして欲しいと思いました。
さらに付け加えると、その「人類史の転換点」の契機になったのは、ボクトウガという蛾の幼虫が出すスズメバチ忌避物質だった。昆虫は人類や霊長類とは比較にならないぐらいの長い時間に渡って進化を続けてきたのです。人類はまだまだ自然に学ぶことが多いようです。
山口百恵
以下は「ビーサイレント」という商品名についての余談です。金哲史教授が開発したスズメバチ忌避剤の商品名は、
スズメバチサラバ
でした。とすると、第2弾の商品であるミツバチ忌避剤の商品名は、
ミツバチシズカ
とするのが自然です。スズバチサラバの姉妹品であるということが明確になるし、KINP社の商品ラインナップとしてもその方がインパクトが強い。マーケティングのセオリーからすると「ミツバチシズカ」が妥当であり、これしかないはずです。
ところが実際の商品名は「ビーサイレント(= Bee Silent)」です。ここでなぜ急に英語を持ち出すのでしょうか ・・・・・・。想像ですが、このネーミングは、山口百恵さんの
美・サイレント
の "もじり" ではないでしょうか。阿木燿子作詞、宇崎竜童作曲の楽曲で、1979年3月のリリースです。ちなみに百恵さんのファイナル・コンサートは翌年の1980年でした。
"もじり" だと想像するのは2つの理由によります。一つは「ビーサーレント」を開発した金哲史教授と百恵さんが同世代だということです。百恵さんの生年月日は1959年1月17日です。一方、高知大学のサイトにある「研究者情報」によると、金教授は1958年生まれとあります。ということは、中学・高校は百恵さんと同学年の可能性が強いわけです(金教授が1学年上という可能性もある)。
私の親類に1958年12月生まれの男性がいるのですが、彼は中学・高校と桜田淳子さんの熱烈なファンでした。山口百恵・桜田淳子・森昌子の同学年の3人は「花の中三トリオ」から始まって「花の高三トリオ」と言われた国民的アイドルでした。その彼女たちと同学年の男子は3人のうちの誰かのファンになるのが自然だし、そうなって当然だったのではないでしょうか。私の親類みたいに ・・・・・・。金教授もそうだったのではと思ったのです。
もう一つの理由は、金教授が第1弾の商品であるスズメバチ忌避剤を当初「八目散」と名付けようとしたことです("一目散" のもじり)。どうも金教授は、"もじり" というか "パロディ" というか "ダジャレ" で名付けるのが好きそうです。ということからすると、「美・サイレント」のパロディで「Bee Silent → ビーサイレント」というのは大いにあり得ると思うのです。そもそも「美・サイレント」が「Be silent」(「静かに」ないしは「言わないで」)の "もじり" です。
真相は分かりませんが、もしそうだとするとこれは「ネーミング大賞 2019」にノミネートしていい感じだし、殺虫剤・忌避剤のネーミングの新パターンを作ったのではと思いました。
狩猟採集民は火をおこし、煙でミツバチを麻痺させて蜂の巣を取り、ハチミツを採取する。 | |
ノドグロミツオシエ(漢字で書くと "喉黒蜜教え"。英名:Greater Honeyguide)という鳥は、人間をミツバチの巣に誘導する習性がある。この誘導行動には特有の鳴き声がある。狩猟採集民はこれを利用してミツバチの巣を見つける。 | |
ノドグロミツオシエは人間の "おこぼれ" にあずかる。たとえば蜂の巣そのものである(巣の蝋を消化できる細菌を体内に共生させている)。つまり、ノドグロミツオシエと人間は共生関係にある。 |
タンザニア北部の狩猟採集民、ハッザ族が「蜂の巣狩り」をする様子が YouTube に公開されています(https://www.youtube.com/watch?v=6ETvF9z8pc0)。それを見ると、ハッザ族の男たちは木をこすって火をおこし、火種を作って木片を燃やし、ノドグロミツオシエが示した木に登って蜂の巣がある樹洞に煙を入れています。
YouTube に公開されているハッザ族の「蜂の巣狩り」の様子。ノドグロミツオシエの誘導によりハチミツの在り処を知ると、火をおこして木片を燃やし、木に登って、蜂の巣がある樹洞に木片から出る煙を入れ、蜂の巣を採取する。このあと、ハチミツを採ったあとの蜂の巣は地上に捨てるが、それをノドグロミツオシエが食べる。 |
No.105 で紹介したように、ハーバード大学の人類学者、リチャード・ランガム教授は「アフリカの狩猟採集民は、チンパンジーの100~1000倍のハチミツを手に入れる」と語っていました。①火を使う(煙でミツバチを麻痺させる)、②ノドグロミツオシエの誘導行動を利用する、の2つでハチミツを効率的に採取できるわけです。
このタイプの「蜂の巣狩り」はいつから始まったのでしょうか。アフリカに残る狩猟採集民がやっているということで、人類史を遡る遙か昔からと考えられます。人類が火を使った確かな証拠は約100万年前のものですが、それ以降のどこかで煙を使う「蜂の巣狩り」が始まったわけです。数万年前、いや数10万年前かもしれません。とにかく、大昔からアフリカの人類はそうしてきた。
ところで、煙でミツバチを麻痺させる方法は現代の養蜂農家も使っています。このための現代の道具が燻煙器です。Amazonでも売っています。
燻煙器 |
燻煙器は「燃焼室」と「ふいご」から成り、燃焼室の上部は吹き口のある蓋になっています。まず燃焼室に火種を入れ、その上から細かく裂いた麻布や籾殻などの自然由来の燃焼物を入れます。そして「ふいご」を使って吹き口から煙を出す。養蜂農家がミツバチの巣箱の世話をするときには、ミツバチに刺されないための必須の道具となっています。
巣箱の蓋をあけ、燻煙器の煙を巣箱に入れてミツバチを静かにさせて、巣枠を取り出す。ハッザ族の「蜂の巣狩り」と現代の養蜂では状況が全く違うが、「煙を使ってミツバチの活動を押さえて刺されないようにする」という1点においては同じである。画像は岐阜県の渡辺養蜂場のサイトより。 |
燻煙器はステンレスなどで作られた現代の工業製品です。しかし「煙を使ってミツバチの活動を押さえて刺されないようにする」という1点においては、ハッザ族などのアフリカの狩猟採集民と現代の養蜂農家は全く同じなのです。
ところがごく最近、煙を全く使わすにミツバチを静かにさせるスプレーが開発されました。今回はその話を書くのが目的ですが、まずそのスプレーの発売を報じたニュース記事を引用します。
ミツバチの活動を抑えるスプレー
|
先日(2019年11月5日)、NHKの朝の情報番組で「ビーサイレント」を使い始めた関東の養蜂家を取材していました。その養蜂家は「火を起こして燻煙器をセットするのに10分~15分はかかる。ビーサイレントはスプレーなので手間が全然違う。養蜂家の必需品」と話していました。
「ビーサイレント」を巣箱に噴射する高知大学の金哲史教授。朝日新聞デジタル(2019.9.21)より。 |
早稲田大学を中心として運営されている国内最大の化学ポータルサイト「Chem-Station(ケムステ)」に、もう少し詳しい話が載っていました。
|
|
一つのポイントは、フェニルメタノールは香料として食品にも使われていることです。つまり人に対して安全であり、かつ農薬ではないので認可も不要です。
もう一つのポイントは、引用部分には書いてないのですが、養蜂で使うミツバチはミツバチ科であり「スズメバチサラバ」を忌避しないことです。ということは、巣箱のミツバチの出入り口付近で、フェニルメタノールを常に発生させるような「据え置き型スズメバチサラバ」を設置しておくと、スズメバチが巣箱に進入しないことになる。
人がスズメバチに刺されて死亡する事故は毎年起こっていますが、もう一つのスズメバチの被害は養蜂です。巣箱にスズメバチが進入してミツバチが全滅する事件が起こる。スズメバチは養蜂の大敵なのです。KINP社は「据え置き型スズメバチサラバ」を開発中のようで、これがうまくいくとさらに「スズメバチサラバ」の利用範囲が広がることになります。
この「スズメバチサラバ」と同様の効果をミツバチに対してもつのが、冒頭で紹介した「ミツバチの活動を抑えるスプレー」である「ビーサイレント」です。
|
|
2番目は「都会では煙を使うことが避けられる」というところです。最近、都会のビルの屋上で養蜂をすることが増えています。東京都心などは緑が多く、ミツバチが蜜を採集する場所には困らない。さらに都心のビルの屋上にはミツバチの天敵であるスズメバチがくることはないので好都合です。銀座のビルの屋上で採蜜されたハチミツが「銀座のはちみつ」というブランドで松屋銀座店で販売されているほどです。ところが、ビルの屋上で火を燃やすことは一般には禁止されていて、燻煙器が使えません。つまり火を使わない「ビーサイレント」は、手間が省けることに加えて養蜂家にとって大変有り難い製品なのです。
3つ目は「スズメバチサラバをミツバチ向けに配合や濃度を改良した」としてあるところです。スズメバチサラバの成分であるフェニルメタノールはスズメバチ科の蜂が忌避し、ミツバチは忌避しないので、ビーサイレントにはフェニルメタノールではない(おそらく類似の)別の成分が配合されていると考えられます。その詳細は書いてないので不明ですが、特許の関係があるのかも知れません。いずれ明らかになると考えられます。"ケムステ・ニュース" の記事は次のように結ばれています。
|
スズメバチは農林業分野では害虫を駆除してくれる益虫でもあり、「よりよい害虫との付き合い方を開発」というところがまさに金哲史教授の狙いでしょう。
最大、年80人がスズメバチで死亡
ところで、そもそものスズメバチ忌避物質の発見はどういう経緯だったのでしょうか。国立科学技術振興機構(JST)が出している「産学官連携ジャーナル・2018年7月号」にその経緯が書かれていたので紹介します。まず、スズメバチによる被害の状況が解説してありました。
|
樹液を吸うオオスズメバチ(Wikipedia) |
よくメディアで、山菜採りなどで熊に遭遇して怪我をしたというニュースが流れることがあり、また熊に襲われて死亡という事故も起きています。しかし死亡事故ということで言うと、スズメバチは熊の20倍~80倍もの被害を出しているのですね。人が人以外の生物に襲われて死ぬ数は、明らかにススメバチが一番多いのです。
ちなみに、人が人に襲われて死亡する数(殺人事件による他殺数)は年間300人程度(2016年)です。それと比較してもススメバチによる死者は無視できない数なのです。つまりススメバチを撃退する方法は重要で、それを発見したのが高知大学の金 哲史教授です。
スズメバチ忌避物質の発見
この発見は、スズメバチが好むクヌギと嫌うクヌギがあるということがヒントになりました。冒頭に書いたNHKの朝の情報番組では「金教授の同僚の教授からの示唆」だと言っていました。なぜ、スズメバチが好むクヌギと嫌うクヌギがあるのか、それは別の昆虫(=蛾)の意外な生態が関係していました。
|
ボクトウガ |
(site : mushinavi.com) |
クヌギの木についているボクトウガの幼虫(上)。下は幼虫を取り出したもの。赤みを帯びた色をしている。産学官連携ジャーナル 2018年7月号より。 |
つまり、ボクトウガの幼虫が住み付いているクヌギはスズメバチが嫌い、そうでないクヌギはスズメバチが好む。ボクトウガは漢字で書くと「木蠹蛾」です。「蠹」とは難しい字ですが(Shift JIS にある字です)「むしばむ = 虫食む」という意味です。その名の通り幼虫はクヌギやコナラなどの樹肌をかじって穴をあけ、樹液を滲出させます。そして樹液に惹かれてやってくる昆虫を捕食する。つまり自ら「餌場」を開設する昆虫です。これだけでも少々驚きですが、さらに上に引用した記事によると、
ボクトウガの幼虫はスズメバチが開けた木の穴をちゃっかり占有する。 | |
スズメバチが忌避する化学物質を放出してスズメバチを寄せ付けないようにする。 | |
餌となる昆虫を誘因する化学物質も放出する。 |
というわけです。一般的に言って昆虫の "生き残り戦略" の中には驚くほど巧妙なものがありますが、ボクトウガの幼虫もそうです。この程度の "戦略" は昆虫の世界ではありうることと言えそうですが、巧妙であることには違いありません。
そこで問題は、ボクトウガ放出する「スズメバチが忌避する化学物質」とは何かです。金教授はその成分が「2-フェニルエタノール」であることを突き止めました。そしてさらに研究を続けました。
|
スズメバチサラバを噴射するとスズメバチは一時的に攻撃性を失いますが、その時間はおよそ5分間だそうです。スズメバチを殺さずに攻撃性だけを一時的に失わせる。これが忌避剤の意味です。
金教授はかなりユーモアのセンスがある方のようで、商品のネーミングについては次のような発言が紹介されていました。
|
『八目散』とは素晴らしいネーミングのセンスだと思います。『蜂目散』でないことがミソです。少々の誤解を招いたとしてもこのネーミングにしてほしかったと思いますが、科学者としてそれはできなかったのでしょう。実際に選ばれた『スズメバチサラバ』は、少々安易な感じもしますが、『ゴキブリホイホイ』や『ダニコナーズ』(=KINCHOのダニ除けスプレー)という例もあるので、これは殺虫剤・忌避剤の "王道の" ネーミングなのでしょう。
殺虫剤ではなく、忌避剤である意味
その忌避剤であることの意味、スズメバチを殺す殺虫剤ではない意義はどこにあるのでしょうか。産学官連携ジャーナルは次のように締めくくられていました。
|
人類史の転換点
「ビーサイレント」の話に戻ります。冒頭にも書いたように「煙を用いてミツバチを静かにさせる」という方法は、人類が有史以前の(おそらく)数万年前(ないしは数10万年前)という太古の昔から現代まで、綿々と受け継がれてきたものです。
このことからすると「ビーサイレント」は大発明であり、人類史における根本的な技術革新だと言えるでしょう。大袈裟にいうと、2019年の「ビーサイレント」の発売は「人類史の転換点」です。金哲史教授はそのことを誇ってよいと思うし、是非そういうアッピールをして欲しいと思いました。
さらに付け加えると、その「人類史の転換点」の契機になったのは、ボクトウガという蛾の幼虫が出すスズメバチ忌避物質だった。昆虫は人類や霊長類とは比較にならないぐらいの長い時間に渡って進化を続けてきたのです。人類はまだまだ自然に学ぶことが多いようです。
山口百恵
以下は「ビーサイレント」という商品名についての余談です。金哲史教授が開発したスズメバチ忌避剤の商品名は、
スズメバチサラバ
でした。とすると、第2弾の商品であるミツバチ忌避剤の商品名は、
ミツバチシズカ
とするのが自然です。スズバチサラバの姉妹品であるということが明確になるし、KINP社の商品ラインナップとしてもその方がインパクトが強い。マーケティングのセオリーからすると「ミツバチシズカ」が妥当であり、これしかないはずです。
ところが実際の商品名は「ビーサイレント(= Bee Silent)」です。ここでなぜ急に英語を持ち出すのでしょうか ・・・・・・。想像ですが、このネーミングは、山口百恵さんの
美・サイレント
の "もじり" ではないでしょうか。阿木燿子作詞、宇崎竜童作曲の楽曲で、1979年3月のリリースです。ちなみに百恵さんのファイナル・コンサートは翌年の1980年でした。
"もじり" だと想像するのは2つの理由によります。一つは「ビーサーレント」を開発した金哲史教授と百恵さんが同世代だということです。百恵さんの生年月日は1959年1月17日です。一方、高知大学のサイトにある「研究者情報」によると、金教授は1958年生まれとあります。ということは、中学・高校は百恵さんと同学年の可能性が強いわけです(金教授が1学年上という可能性もある)。
私の親類に1958年12月生まれの男性がいるのですが、彼は中学・高校と桜田淳子さんの熱烈なファンでした。山口百恵・桜田淳子・森昌子の同学年の3人は「花の中三トリオ」から始まって「花の高三トリオ」と言われた国民的アイドルでした。その彼女たちと同学年の男子は3人のうちの誰かのファンになるのが自然だし、そうなって当然だったのではないでしょうか。私の親類みたいに ・・・・・・。金教授もそうだったのではと思ったのです。
もう一つの理由は、金教授が第1弾の商品であるスズメバチ忌避剤を当初「八目散」と名付けようとしたことです("一目散" のもじり)。どうも金教授は、"もじり" というか "パロディ" というか "ダジャレ" で名付けるのが好きそうです。ということからすると、「美・サイレント」のパロディで「Bee Silent → ビーサイレント」というのは大いにあり得ると思うのです。そもそも「美・サイレント」が「Be silent」(「静かに」ないしは「言わないで」)の "もじり" です。
真相は分かりませんが、もしそうだとするとこれは「ネーミング大賞 2019」にノミネートしていい感じだし、殺虫剤・忌避剤のネーミングの新パターンを作ったのではと思いました。
2019-12-15 17:36
nice!(0)
No.273 - ソ連がAIを駆使したなら [技術]
No.237「フランスのAI立国宣言」で、国立情報学研究所の新井紀子教授が朝日新聞(2018年4月18日)に寄稿した "メディア私評" の内容を紹介しました。タイトルは、
で、AIと国家戦略の関係がテーマでした。その新井教授が最近の "メディア私評" で再び AI についてのコラムを書かれていました(2019年10月11日)。秀逸な内容だと思ったので、その内容を紹介したいと思います。
実はそのコラムは、朝日新聞 2019年9月21日に掲載された、ヘブライ大学教授・歴史学者のユヴァル・ノア・ハラリ氏へのインタビュー記事に触発されて書かれたものです。そこでまず、そのハラリ教授の記事の関連部分を紹介したいと思います。ハラリ教授は世界的なベストセラーになった「サピエンス全史」「ホモ・デウス」の著者です。
AIが支配する世界
朝日新聞が行ったハラリ教授へのインタビューは「AIが支配する世界」と題されています。サブの見出しは、
国民は常に監視下
膨大な情報を持つ独裁政府が現れる
データを使われ操作されぬため
己を知り抵抗を
です。まずハラリ教授は、現代が直面する大きな課題には3つあって、それは、
① 核戦争を含む世界的な戦争
② 地球温暖化などの環境破壊
③ 破壊的な技術革新
だと言います。そして「③ 破壊的な技術革新」が最も複雑な課題であり、それはAIとバイオテクノロジーだとします。この2つは今後20~40年の間に経済や政治のしくみ、私たちの暮らしを完全に変えてしまうだろう、AIとロボットはどんどん人にとってかわり、雇用市場は激変すると予想します。そして以下に引用する部分が、新井教授のコラムの関係した部分です。
ソ連がAIを駆使したなら
新井教授が朝日新聞の "メディア私評" に書かれた「ソ連がAIを駆使したなら」と題するコラムは、上に引用したハラリ教授の文章の趣旨を、わかりやすく、比喩を交え、背景も含めて詳しく展開したものと言っていいでしょう。その展開のしかたがうまいと思ったので引用します。まず「もしも」という問題設定からはじまります。
しかし自由主義市場経済は、自己の利益を追求することで最適解に到達するという信憑(「見えざる手」論)によって行動した結果、解決困難に思える問題を抱え込んでしまったように見えます。それは21世紀になると顕著に認識されるようになりました。新井教授は以下のように続けます。
日本の高度成長期も「自己の利益追求」をした結果、公害が蔓延しました。しかし当時の問題は日本の国の内部で解決可能でした。国民の利害の対立が激化すると(たとえば企業と住民)、メディアに取り上げられ、政府が調整に入り、民主的な手続きによって法律ができ、政府が法を強制することができたからです。
しかし21世紀に入って顕著になった課題(たとえば地球温暖化を筆頭とする環境破壊)はグローバルなものです。民主的な話合いで解決策を作ったとしても、それを強制する "グローバル政府" はありません。パリ協定から脱退したアメリカ(トランプ大統領と彼を支持する共和党)のように、協調はいやだ、勝手にやるんだと言えばそれを阻止はできない。
「見えざる手」論が国の内部に閉じているのらなまだしも、それをグローバルに拡大するのは無理が生じます。それでは、別の手段はないだろうか。「見えざる手」と真逆の経済運営をしたのが、旧ソ連の計画経済です。それは1980年代末で破綻したのだけれど、その時点ではなかった最新のAI技術を活用したらどうなるか。
新井教授も「ソ連がAIを駆使したら、計画経済はうまくいっただろう」などとは全く思っていないはずです。膨大なデータを集めて蓄積しても、それはその時点より過去のデータです。そのデータからの予測でうまく行く場合も多いだろうが、過去のデータから推測できないことも多々あります。前例がないからこそ価値があることも多い。また現在のAIがやっていることは人間の知的活動のごく一部の代行に過ぎず、さらには、人間の脳の働きや知的活動の仕組みのすべてが解明されているわけでもありません。
もっとも、歴史学者のハラリ氏が「ホモ・デウス」で可能性を指摘するように、人々が「エリート」と「無用者階級」に分断され、「無用者階級」はエリートがAIを駆使して作った "計画経済" 通りに動く、ということはありうるかもしれません。過去のデータから予測できない革新的なことや新しいアイデアに関わることはエリートが担当するというわけです。
しかし、そういった計画経済が1国の最適化にとどまっていたなら、なおかつ地球環境の破壊は起こります。現代の我々が "解決の希望を持てないでいる問題" は、なおかつ起きる。
「ソ連がAIを駆使した計画経済を行ったら」という「もしも」は、本当に言いたいことを言うためのレトリックです。その新井教授が言いたいことは、次の文章に書かれています。
世界的に著名な人物で「AI脅威論」を唱える方がいます。故スティーヴン・ホーキング博士や、テスラ社やSpaceXのCEOで起業家のイーロン・マスク氏などが有名です。その「AI脅威論」は、長期スパンでみると人間の知能を越えるAIが現れる可能性や、それが制御できなくなる可能性、悪用も含んでAIが社会に害毒を流す可能性、AIが人の雇用を決定的に奪ってしまう可能性などを指して言っているのでしょう。
ただ「AIが脅威」というなら、その直近の一番の脅威は、AIが全体主義を推進するツールとなる脅威だと考えられます。新井教授のコラムはそのことを言っているのだと思います。
全体主義者は、個々のモノや人の集合体に、独立した「全体」があると仮想します。その「全体」のために ・・・・ しようとか、「全体」の幸福を実現しようとか、そういう論法を吹聴する。その「全体」の中身は、よく見ると空虚なものであるわけです。しかし「全体」は「個」に優先され、「全体」のために「個」が犠牲になっていく。
AIは全体主義の強力なツールになりうる。現に中国がその方向に向かっているように ・・・・・(No.250「データ階層社会の到来」参照)。そのことを覚えておくべきでしょう。
数値化全体主義
このコラムは "メディア私評" と題するものです。では、どこがメディアを批評しているのでしょうか。
実はこのコラムは上に掲げた引用部分で終わっているのではなく、コラムの中に「ランキングの指標も」と題した囲み記事があります。その記事がメディアの批評になっています。
No.240「破壊兵器としての数学」で紹介したように、アメリカの数学者、キャシー・オニールは、時事雑誌「USニューズ」が発表している大学ランキングを批判するなかで、このランキングは授業料を考慮していないことを指摘していました。THEも同じということです。
この自由主義市場経済の中で、大学は "教育サービス" を提供しているわけですが、一般的にいって製品・サービスはコストをかけるほど品質が高くなるのはあたりまえです。しかし、裕福な人を対象とした嗜好品は別にして、それでは経営にならない。最高の品質の製品やサービスを提供して倒産した企業は一杯あります。いかにリーズナブルなコストで品質を高め、顧客満足度を向上させるかが経営なのです。ランキングを上げるために授業料を上げて高給で教授を引き抜く大学経営者は(たとえばの例です。実例は No.240 参照)、経営を語る資格など無さそうです。
引用されている外務省の安部憲明氏の文章は、朝日新聞の2018年6月21日に掲載されたものです。そのときの安部氏の肩書きは外務省OECD代表部参事官でした。この中で安部氏は、経済協力開発機構(OECD)が2017年秋に出した国別の「幸福度指標」に言及していました。この指標で「日本は対象38ヶ国の中で23位」だったのですが、安部氏はこれについて各種の視点から注意喚起をしています。次のような文章があります。
No.247「幸福な都道府県の第1位は福井県」で、日本総合研究所が出している "都道府県幸福度ランキング" の算出方法を詳述しました。それを見ても「データや指標を選ぶ段階から価値判断が入っている」のが分かります。もちろん特定のデータを「選ばない」という価値判断も含みます。まさに新井教授が引用した安部氏の文章にあるように「ランキングの多くは統計家が処理した『作品』」です。
ランキングというのは、単一数値の比較であれば、それほど問題がないわけです。「一人当たりのGDPのランキング」というのは(各国がGDPを正しく算定しているという前提で)問題はない。それは事実を提示する一つの方法です。
しかし「幸福度」とか「大学の教育・研究の卓越性」などは、一つの数値では表しようがないし、蓮實重彦元東大総長が批判するように、そもそも数値では表せないものです。
しかし、各国の幸福度を比較しよう、各大学の教育・研究の卓越性を比較しようとする "数値化全体主義者" は、何らかの共通数値化をし、各国全体、各大学全体を貫く統一指標を作成しようとします。その指標の中身を見ると、そこに鎮座しているのは一つの数学モデル(数式)です。それは作成者のもっともらしい説明がついているけれど、それがどういう意味を持つのか、誰にも分からない。少なくとも共通の理解は得られない空虚なものです。
我々としてはランキングのもとになった個々のデータを(データの正確さも含めて)注視する必要があります。それを分析してわかりやすく解説するのはメディアの責任ですが、現在のメディアはそうはなっていません。新井教授の、
という最後の一文が、このコラムの本来の主旨である「メディア私評」なのでした。
仏のAI立国宣言
何のための人工知能か 日本も示せ
何のための人工知能か 日本も示せ
で、AIと国家戦略の関係がテーマでした。その新井教授が最近の "メディア私評" で再び AI についてのコラムを書かれていました(2019年10月11日)。秀逸な内容だと思ったので、その内容を紹介したいと思います。
実はそのコラムは、朝日新聞 2019年9月21日に掲載された、ヘブライ大学教授・歴史学者のユヴァル・ノア・ハラリ氏へのインタビュー記事に触発されて書かれたものです。そこでまず、そのハラリ教授の記事の関連部分を紹介したいと思います。ハラリ教授は世界的なベストセラーになった「サピエンス全史」「ホモ・デウス」の著者です。
AIが支配する世界
|
国民は常に監視下
膨大な情報を持つ独裁政府が現れる
データを使われ操作されぬため
己を知り抵抗を
です。まずハラリ教授は、現代が直面する大きな課題には3つあって、それは、
① 核戦争を含む世界的な戦争
② 地球温暖化などの環境破壊
③ 破壊的な技術革新
だと言います。そして「③ 破壊的な技術革新」が最も複雑な課題であり、それはAIとバイオテクノロジーだとします。この2つは今後20~40年の間に経済や政治のしくみ、私たちの暮らしを完全に変えてしまうだろう、AIとロボットはどんどん人にとってかわり、雇用市場は激変すると予想します。そして以下に引用する部分が、新井教授のコラムの関係した部分です。
|
ソ連がAIを駆使したなら
新井教授が朝日新聞の "メディア私評" に書かれた「ソ連がAIを駆使したなら」と題するコラムは、上に引用したハラリ教授の文章の趣旨を、わかりやすく、比喩を交え、背景も含めて詳しく展開したものと言っていいでしょう。その展開のしかたがうまいと思ったので引用します。まず「もしも」という問題設定からはじまります。
|
しかし自由主義市場経済は、自己の利益を追求することで最適解に到達するという信憑(「見えざる手」論)によって行動した結果、解決困難に思える問題を抱え込んでしまったように見えます。それは21世紀になると顕著に認識されるようになりました。新井教授は以下のように続けます。
|
日本の高度成長期も「自己の利益追求」をした結果、公害が蔓延しました。しかし当時の問題は日本の国の内部で解決可能でした。国民の利害の対立が激化すると(たとえば企業と住民)、メディアに取り上げられ、政府が調整に入り、民主的な手続きによって法律ができ、政府が法を強制することができたからです。
しかし21世紀に入って顕著になった課題(たとえば地球温暖化を筆頭とする環境破壊)はグローバルなものです。民主的な話合いで解決策を作ったとしても、それを強制する "グローバル政府" はありません。パリ協定から脱退したアメリカ(トランプ大統領と彼を支持する共和党)のように、協調はいやだ、勝手にやるんだと言えばそれを阻止はできない。
「見えざる手」論が国の内部に閉じているのらなまだしも、それをグローバルに拡大するのは無理が生じます。それでは、別の手段はないだろうか。「見えざる手」と真逆の経済運営をしたのが、旧ソ連の計画経済です。それは1980年代末で破綻したのだけれど、その時点ではなかった最新のAI技術を活用したらどうなるか。
|
新井教授も「ソ連がAIを駆使したら、計画経済はうまくいっただろう」などとは全く思っていないはずです。膨大なデータを集めて蓄積しても、それはその時点より過去のデータです。そのデータからの予測でうまく行く場合も多いだろうが、過去のデータから推測できないことも多々あります。前例がないからこそ価値があることも多い。また現在のAIがやっていることは人間の知的活動のごく一部の代行に過ぎず、さらには、人間の脳の働きや知的活動の仕組みのすべてが解明されているわけでもありません。
もっとも、歴史学者のハラリ氏が「ホモ・デウス」で可能性を指摘するように、人々が「エリート」と「無用者階級」に分断され、「無用者階級」はエリートがAIを駆使して作った "計画経済" 通りに動く、ということはありうるかもしれません。過去のデータから予測できない革新的なことや新しいアイデアに関わることはエリートが担当するというわけです。
しかし、そういった計画経済が1国の最適化にとどまっていたなら、なおかつ地球環境の破壊は起こります。現代の我々が "解決の希望を持てないでいる問題" は、なおかつ起きる。
「ソ連がAIを駆使した計画経済を行ったら」という「もしも」は、本当に言いたいことを言うためのレトリックです。その新井教授が言いたいことは、次の文章に書かれています。
|
世界的に著名な人物で「AI脅威論」を唱える方がいます。故スティーヴン・ホーキング博士や、テスラ社やSpaceXのCEOで起業家のイーロン・マスク氏などが有名です。その「AI脅威論」は、長期スパンでみると人間の知能を越えるAIが現れる可能性や、それが制御できなくなる可能性、悪用も含んでAIが社会に害毒を流す可能性、AIが人の雇用を決定的に奪ってしまう可能性などを指して言っているのでしょう。
ただ「AIが脅威」というなら、その直近の一番の脅威は、AIが全体主義を推進するツールとなる脅威だと考えられます。新井教授のコラムはそのことを言っているのだと思います。
全体主義者は、個々のモノや人の集合体に、独立した「全体」があると仮想します。その「全体」のために ・・・・ しようとか、「全体」の幸福を実現しようとか、そういう論法を吹聴する。その「全体」の中身は、よく見ると空虚なものであるわけです。しかし「全体」は「個」に優先され、「全体」のために「個」が犠牲になっていく。
AIは全体主義の強力なツールになりうる。現に中国がその方向に向かっているように ・・・・・(No.250「データ階層社会の到来」参照)。そのことを覚えておくべきでしょう。
数値化全体主義
このコラムは "メディア私評" と題するものです。では、どこがメディアを批評しているのでしょうか。
実はこのコラムは上に掲げた引用部分で終わっているのではなく、コラムの中に「ランキングの指標も」と題した囲み記事があります。その記事がメディアの批評になっています。
|
No.240「破壊兵器としての数学」で紹介したように、アメリカの数学者、キャシー・オニールは、時事雑誌「USニューズ」が発表している大学ランキングを批判するなかで、このランキングは授業料を考慮していないことを指摘していました。THEも同じということです。
この自由主義市場経済の中で、大学は "教育サービス" を提供しているわけですが、一般的にいって製品・サービスはコストをかけるほど品質が高くなるのはあたりまえです。しかし、裕福な人を対象とした嗜好品は別にして、それでは経営にならない。最高の品質の製品やサービスを提供して倒産した企業は一杯あります。いかにリーズナブルなコストで品質を高め、顧客満足度を向上させるかが経営なのです。ランキングを上げるために授業料を上げて高給で教授を引き抜く大学経営者は(たとえばの例です。実例は No.240 参照)、経営を語る資格など無さそうです。
引用されている外務省の安部憲明氏の文章は、朝日新聞の2018年6月21日に掲載されたものです。そのときの安部氏の肩書きは外務省OECD代表部参事官でした。この中で安部氏は、経済協力開発機構(OECD)が2017年秋に出した国別の「幸福度指標」に言及していました。この指標で「日本は対象38ヶ国の中で23位」だったのですが、安部氏はこれについて各種の視点から注意喚起をしています。次のような文章があります。
|
No.247「幸福な都道府県の第1位は福井県」で、日本総合研究所が出している "都道府県幸福度ランキング" の算出方法を詳述しました。それを見ても「データや指標を選ぶ段階から価値判断が入っている」のが分かります。もちろん特定のデータを「選ばない」という価値判断も含みます。まさに新井教授が引用した安部氏の文章にあるように「ランキングの多くは統計家が処理した『作品』」です。
ランキングというのは、単一数値の比較であれば、それほど問題がないわけです。「一人当たりのGDPのランキング」というのは(各国がGDPを正しく算定しているという前提で)問題はない。それは事実を提示する一つの方法です。
しかし「幸福度」とか「大学の教育・研究の卓越性」などは、一つの数値では表しようがないし、蓮實重彦元東大総長が批判するように、そもそも数値では表せないものです。
しかし、各国の幸福度を比較しよう、各大学の教育・研究の卓越性を比較しようとする "数値化全体主義者" は、何らかの共通数値化をし、各国全体、各大学全体を貫く統一指標を作成しようとします。その指標の中身を見ると、そこに鎮座しているのは一つの数学モデル(数式)です。それは作成者のもっともらしい説明がついているけれど、それがどういう意味を持つのか、誰にも分からない。少なくとも共通の理解は得られない空虚なものです。
我々としてはランキングのもとになった個々のデータを(データの正確さも含めて)注視する必要があります。それを分析してわかりやすく解説するのはメディアの責任ですが、現在のメディアはそうはなっていません。新井教授の、
(ランキングに)一憂一喜するメディアは「数値化全体主義」にとって都合のよい幇間 |
という最後の一文が、このコラムの本来の主旨である「メディア私評」なのでした。
2019-11-29 17:42
nice!(0)
No.267 - ウナギの商用・完全養殖 [技術]
No.107「天然・鮮魚・国産への信仰」の続きです。No.107 で魚介類の「天然」と「養殖」の話の中で、ウナギの養殖に使うシラスウナギ(=天然のウナギの稚魚)の漁獲量が激減している(従って価格が高騰している)ことを書きました。
そのウナギですが、最近の日経サイエンス(2019年8月号)に完全養殖の商用化についての現状がレポートされていました。そこで、これを機会に魚介類の「天然・養殖」についてもう一度振り返り、日経サイエンスの記事からウナギの商用・完全養殖の状況を紹介したいと思います。
「天然信仰」からの脱却
No.107で書いたように、世間一般には「素朴な天然信仰」があり、まずそこから脱却する必要があるでしょう。そもそも魚介類について「天然もの」の方が「養殖もの」よりおいしいとか、品質が良いと決めつけるのがおかしいわけです。一つの例として No.107 でミシュランの3つ星店「すきやばし次郎」の小野二郎氏(現代の名工)の発言を紹介しました。次のような要旨でした。
「すきやばし次郎」は、一部の例外や入手困難なネタを除いて、天然ものを使うのが基本で、それは立派な見識です。しかし上の要旨にあるように、シマアジに関しては天然と養殖で客の好みが分かれるのですね。「すきやばし次郎」に通う客は相当な食通のはずですが、その人たちの意見が分かれているということです。またクルマエビについては小野氏自身が養殖が勝っていると認めています。「ミシュランの3つ星店基準」で判断しても「天然ものにひけをとらない養殖の鮨ネタ」があることを、まず覚えておくべきでしょう。
さらに「普通のレストラン基準」ないしは「家庭料理基準」では、天然ものと養殖ものはほとんど変わらないというのが大多数だと思います。それに一般的に言って、料理は素材だけでは決まりません。「素材 + 調理技術」が料理です。さらに長い目で見ると、品種改良と養殖技術の発展で、そのうちに養殖ものの方がおいしくなるのは目に見えています。ちょうど野生の動物や穀類・果物より、飼育された牛・豚、農業で作った米やフルーツの方が美味しいようにです。
天然の魚介類は「すきやばし次郎」のような店にこそ回すべきであり、我々としては「素朴な天然信仰」から脱却して、天然と養殖があれば養殖を選ぶぐらいの見識を持つべきでしょう。その大きな理由は、天然ものの魚介類は「自然の収奪」であることに違いはなく、資源量によほど注意して漁獲を行わないと、ウナギのように絶滅の危機に瀕するからです。
人類最後の狩猟採集:漁業
現生人類であるホモ・サピエンスが誕生してからでも20万年程度、2足歩行する初期人類(猿人)の誕生から数えると500万年程度たっています。この間、人類は狩猟・採集で生きてきました。現代でもアフリカや南米には狩猟・採集民がいます(No.221「なぜ痩せられないのか」で書いたハッザ族など)。
しかし1万年ほど前に農業が始まり、定住化が進み、これが文明の始まりになったとは、我々が世界史の最初で習うところです。またその後に牧畜や遊牧も始まった。つまり「狩猟・採集から脱却」によって今の人類の文明が存在するわけです。ところが、現代に残った最後の狩猟・採集が(養殖ではない)漁業です。
もちろん、漁業以外の狩猟・採集がないわけではありません。人工栽培ができない高価格野菜、日本の松茸や欧州のトリュフなどは、その採集を生業としている人がいます。しかしこれは野菜のごく一部です。山菜を採集する人もたくさんいますが、これは趣味か、せいぜい副業の部類でしょう。
野生動物で言うと、イノシシや鹿を狩った一部が食肉として出回っていますが、これも副業です。ハンターが少なくなったから鹿の食害が増えて困っているという話も聞きます。ヨーロッパでは、パリのマルシェなどに行くと野生動物がそのまま売られています。いわゆるジビエですが、これは「ご馳走」のたぐいであり、その狩猟で生活している人は少ないでしょう。以上のように考えると、現代のスーパーマーケットに並んでいる商品で狩猟採集で得られたものは、天然ものの魚介類だけということになります。
なぜ人類最後の狩猟・採集としての漁業が残っているのかというと、現代においても産業として成立するほど、漁業の生産性が高いからです(No.232「定住生活という革命」参照)。しかし生産性が高いということは裏を返すと、狩猟・採集の対象となる動植物の絶滅を招きかねないという地球環境上のリスクがあるわけです。
人類史をひもとくと、ユーラシア大陸や南北アメリカに生息していた数々の大型哺乳類(マンモス、サーベルタイガー、・・・・・・)が絶滅したのは人類の狩猟によるものという学説が有力です(No.127「捕食者なき世界(2)」の「大型捕食動物はヒトが絶滅させた」の項)。また歴史上の出来事をみても、地中海や大西洋にいた鯨は絶滅しました(No.20「鯨と人間(1)」)。幕末にペリー提督が日本にやってきて開国を迫った理由の一つがアメリカの捕鯨船の補給だったというのは有名な話ですが、なぜ大西洋沿岸のボストン付近の捕鯨船が日本近海にまでやってきたかというと、大西洋に(鯨油生産が産業として成立する程度の)鯨がいなくなったからです。
そして、このような大型哺乳類だけでなく、魚介類にも人間の乱獲で絶滅危惧種になってしまったものがあるのです。その中で、我々日本人に最も広くなじみがあるのがウナギです。
養殖の発展
現代人にとっての本来の漁業の姿は養殖であり、魚介類の絶滅を回避するためにも養殖が重要です。そして現代では数々の魚介類の養殖が進んでいて、ブリ類(ハマチなど)、タイ、マス、フグ、ヒラメ、シマアジ、牡蠣、ホタテ、クルマエビなどがすぐに思いつきます。クロマグロ(本マグロ)も養殖されるようになりました。
先日、NHKの情報番組を見ていたら、サバの養殖の研究のレポートをやっていました。サバの養殖のネックは、稚魚の攻撃性が強く、共食いをすることだそうです。稚魚の生存率は10%程度と言います。そこでゲノム編集技術を使って攻撃性を押さえるように遺伝子を改変すると、稚魚の生存率が40%に向上したそうです。こういった最新のバイオ・テクノロジーも養殖技術に使われ始めています。
もちろん養殖は、そのコストに見合う "高級魚" でないと成り立たないわけです。サンマやイワシを養殖しようとする人はいません。
そして本題のウナギですが、ウナギは "高級魚" であり、養殖にうってつけのはずです。しかしウナギの "養殖" といわれるものは、ウナギの稚魚である天然シラスウナギを捕獲し、それを養殖池で成魚に育てる「蓄養」です。これは本来の意味での養殖ではありません。そのシラスウナギの漁獲量が最近激減しています。
シラスウナギの漁獲量の激減は、この10~15年の現象です。ちなみに「シラスウナギの価格は、1キロあたり219万円」とありますが、シラスウナギの1匹の重さは0.2グラム程度なので、シラスウナギ1匹の価格は概算440円ということになります。
2014年6月、国際自然保護連合(IUCN)はニホンウナギを絶滅危惧種に指定しました(ヨーロッパウナギは2008年に絶滅危惧種に指定)。一刻も早く、蓄養ではない本来の意味での養殖(=完全養殖)の商用化をする必要があるのですが、まだ成功していません。その大きな理由は、自然界におけるウナギの生活史が極めて特異だからです。
ウナギの生活史
ニホンウナギの産卵地がどこかは長いあいだ分からなかったのですが、1991年に日本の水産関係者によってその場所が特定されました。グアム島の北西、西マリアナ海嶺(=海中の山脈)の南部で、孵化したニホンウナギの幼生であるレプトセファルスが採取されたからです。
レプトとはラテン語で「薄っぺらい、小さな」という意味で、セファルスは「~の頭をした」ということなので、「薄い頭」「小さな頭」という意味になります。「葉形幼生」という日本語もあります。
さらに2009年には同一海域でニホンウナギの親魚と卵が採取され、産卵地が確定しました。その付近の海底地形図が以下の図です。
西マリアナ海嶺の南端で生まれたレプトセファルスは西向きの北赤道海流に漂ってフィリピン沖へ向かいます。柳の葉のような独特の形は漂うのに都合のよい形です。そしてフィリピン沖で黒潮に乗りかえます(黒潮に乗れなかったものは死滅)。約6cmに成長したレプトセファルスは、2~3週間でシラスウナギに変態します。
その黒潮に乗ったシラスウナギは日本列島(を含む東アジア)の河口に到着します。西マリアナ海嶺南部で孵化してから日本の河口に到達するまでは約半年です。関東地方の河川だと、産卵場から5000km程度の旅になります。シラスウナギは河川を遡上し(海や汽水域に残る個体もある)定着生活を始め、そこで成魚になります。
オスは数年間、メス約10年間の淡水生活をした後、ウナギは川を下り(=下りウナギ)、海に出て、西マリアナ海嶺の産卵場に向かいます。そして雌雄のウナギが産卵場で落ち合って産卵・受精します。
上図には日本から産卵場のルートが単純な直線で描かれていますが、これはどいういう経路で産卵場にたどりつくのかが不明だからです。日本付近から西マリアナ海嶺の南端までに黒潮のような海流があるわけではありません。しかし川から海に出て産卵の旅についたウナギは、2500km離れた極めて狭いエリアに集結し、オスとメスが出会って産卵・受精します。いったいどうやってこんなことができるのかは不明です。ウナギはまだ「謎の魚」なのです。
なお、ニホンウナギという学名が付いているために日本固有種と思いがちですが、そうではありません。東アジアのウナギはすべてニホンウナギであり、その産卵地は西マリアナ海嶺南端の海中です。遺伝的には同一の種です。
ウナギの完全養殖
実は、2010年にウナギの完全養殖が達成されました(現在の、国立・水産研究教育機構 増養殖研究所)。完全養殖とは下の図のように、卵 → 人工シラスウナギ → 人工成魚 → 卵 というサイクルを回すことです。
シラスウナギを成魚にする蓄養は明治時代以来の歴史があり、技術が確立されています。問題は受精卵から孵化したレプトセフェルスをシラスウナギに育てる部分で、完全養殖ができたということはこれに成功したわけです。
しかし2010年に成功した完全養殖は水産試験場での成功であり、それがすぐに商用になるわけではありません。つまり製造業における「試作」と「量産」の違いのようなものです。新型車を開発するときに2年の歳月をかけて数10台の試作車を1台あたり数千万円の費用をかけて作る「試作」と、数百万円の販売価格に見合うコストで毎日数百~数千台のクルマを作る「量産」は違います。量産のためには、量産するための技術開発が必要です。
同じように、シラスウナギの量産が可能な技術開発できて始めて、ウナギの商用・完全養殖が実現するのです。その商用・完全養殖の研究現場のルポを次に紹介します。
ウナギの絶滅は回避できるか
日経サイエンスの2019年8月号に、伊豆半島の石廊崎にある「国立・水産研究教育機構 増養殖研究所」の「ウナギ種苗量産研究センター」(山野センター長:以下敬称略)を、日経サイエンス編集部が訪問したルポが掲載されていました。このセンターは2002年に世界で初めて、卵からシラスウナギを育てることに成功しました。その時のシラスウナギの個体数は、わずか24匹だったそうです。また、2010年にはウナギの完全養殖に成功しています。
その後、2013年からシラスウナギの量産の研究を進めています。あまたの試行錯誤を繰り返した結果、ようやく年間数千匹のシラスウナギが育つようになったとのことです。その難しさはどこにあるのでしょうか。
レプトセファルスは、
というあたりに、人工飼育の難しさがうかがわれます。日経サイエンスには具体的な飼育の研究の様子がありました。
エサは液体状をしていて、水を清潔に保つために数々の工夫や試行錯誤がされているようです。スポイトを使った人手による給餌ではコストがかかることが目に見えていますが、最適なやりかたを探るための過程なのでしょう。
この引用中に、従来の餌の主体が「アブラツノザメと呼ぶサメの卵の粉末」という箇所があります。なぜこのような "特殊な" 餌なのかと言うと、2010年に完全養殖に成功するまでの過程で数々の試行錯誤の結果、この餌が最適となったからです。しかし量産のためには別の餌を探す必要がある。それはまだ完全には見つかっていないようです。
ただし、ウナギの完全養殖に使う餌の種類と配合方法は "国家レベルの機密事項" だと、どこかで読んだ記憶があります。オープンにできない話も多いのだと想像します。
初めの方で引用した朝日新聞(2019.7.27 夕刊)の記事から計算すると、天然シラスウナギ1匹の最新の価格は概算で440円程度でした。それと比べて、人工シラスウナギは現状で10倍以上の価格ということになります。
また「日本全体で養殖のために必要なシラスウナギの量は年間で1億匹ともいわれる」とありますが、日経BP社「未来コトハジメ」のサイトによると、2006年から2018年のシラスウナギの池入量(養殖池に投入した重量)の平均は21.2トンだそうです。これを20トンとしてシラスウナギ1匹を0.2gとすると、1億匹という計算になります。「ウナギ種苗量産研究センター」で "量産" できるのは年間数千匹と書かれているので、必要量からすると1万分の1以下ということになります。
根幹は「コスト」でしょう。天然シラスウナギの価格に対抗できるコストで人工シラスウナギの量産が可能になったとすると、全国の企業が「商用・完全養殖」に向けた投資をするはずであり、生産量はグッと増えると考えられます。しかし、コストダウンのために大量生産を狙って、例えば水槽を大型化しようとしてもそう簡単ではないようです。
製造業と違って生き物が相手の量産は、その試行錯誤のプロセスも長い時間がかかることが分かります。
高次捕食者としてのウナギ
仮にウナギの商用・完全養殖が可能になったとします。そうするとシラスウナギの漁獲量が減少し、天然ウナギの絶滅が回避できそうに見えます。しかしさらに問題があって、それは天然ウナギが生涯の大半を過ごす河川の環境です。つまりこの数十年で国内の河川には堰やダムなどの構造物が増え、ウナギがこのような構造物を超えられず、生育環境が減少していると考えられるのです。この減少がシラスウナギの漁獲量の激減の一因になっていると推測されています。
つまり、ウナギを守るためには天然シラスウナギの漁獲量を減らすと同時に、ウナギの生育環境を守る必要があります。この生育環境について日経サイエンスのルポの最後に気になる話が書いてありました。ウナギは河川の生態系における「高次捕食者」という話です。
No.126-127「捕食者なき世界」で書いたように、生態系ピラミッドの頂点や上位にいる捕食者が絶滅すると、生態系のバランスがくずれ、それはピラミッドの土台を支える多くの生物の絶滅を引き起こしかねません。ウナギの絶滅を回避するということは、単にウナギだけの問題ではなく、河川の生態系全体の問題でもあるようです。
本文の最後の方で天然シラスウナギの漁獲量の激減の理由について、
の2つの理由を挙げました。この「ウナギの生育環境」についてですが、日本経済新聞に農薬の影響によるウナギの減少の記事が掲載されました。島根県の宍道湖の天然ウナギの話ですが、それを紹介したいと思います。
記事にある「ネオニコチノイド系の農薬」の特長は
数年前から世界各地で起こっているミツバチの大量死は「ネオニコチノイド系の農薬」が原因だとの疑いをもたれているのですが、②の性質があるからなのですね。養蜂や、蜂に受粉を依存している農業にとっては死活問題です。EUはとっくに規制をしているし、禁止も始まっているようです。この記事のポイントは、ミツバチだけでなくウナギやワカサギも、というところです。
これは宍道湖だけでなく、日本の河川のどこでも起こり得る話だと思います。このブログ記事の本文の最後に「ウナギは高次捕食者」と書きました。高次捕食者のウナギは、昆虫類(ミジンコのような節足動物を含む)だけでなく、小魚やミミズもエサとします。だから、かろうじて絶滅を免れているということでしょう。この話で思い出すのは日本の朱鷺の絶滅です。その原因の一つは、農薬の影響で朱鷺の生息域でエサになる魚類や昆虫がいなくなったから、と言われています。それと同じパターンです。
農薬は、守るべき植物(上の記事では稲)に対する害虫を選択的に死滅させるというのならまだしも、「ネオニコチノイド系の農薬」のように「すべての昆虫の神経系に作用する」のでは環境への影響が深刻になります。環境全体へのアセスメントなしに農薬を開発して認可するのでは何が起きるかわからないという、見本のような話だと思いました。
鹿児島市の医薬品開発受託会社である(株)新日本科学は、数年前からウナギの完全養殖に取り組んでいて、先日、養殖したウナギの試食会が開催されました。そのニュースを引用します。
2024年7月4日、水産庁の水産研究教育機構がウナギの完全養殖の最新状況を発表しました。発表の最大のポイントはコストです。日本経済新聞の記事を引用します。
記事に「遺伝的に早く成長する稚魚を選抜し」とあるところに注目したいと思います。天然と養殖の最大の違いは、養殖は品種改良が可能ということです。水産庁はこれも利用してコストを下げたようです。
一匹1800円ということは、天然物の現在の市場価格の3倍程度ということになりますが、天然物の漁獲量がさらに激減することも十分考えられます。もし天然物が一匹1000円を越えるというような事態になれば、"水産庁ウナギ" の競争力はかなり出てくることになります。
さらに、この日経の記事にはありませんが朝日新聞によると、"水産庁ウナギ" は現状でも年間4~5万匹の生産が可能なようです。国内のウナギの消費量は約1億匹なので、もし仮に全ての稚魚が成魚になったとすれば、年間消費量の半分を現状でもまかなえることになります。
商用・完全養殖にかなり近づいてきたようです。
そのウナギですが、最近の日経サイエンス(2019年8月号)に完全養殖の商用化についての現状がレポートされていました。そこで、これを機会に魚介類の「天然・養殖」についてもう一度振り返り、日経サイエンスの記事からウナギの商用・完全養殖の状況を紹介したいと思います。
「天然信仰」からの脱却
No.107で書いたように、世間一般には「素朴な天然信仰」があり、まずそこから脱却する必要があるでしょう。そもそも魚介類について「天然もの」の方が「養殖もの」よりおいしいとか、品質が良いと決めつけるのがおかしいわけです。一つの例として No.107 でミシュランの3つ星店「すきやばし次郎」の小野二郎氏(現代の名工)の発言を紹介しました。次のような要旨でした。
|
「すきやばし次郎」は、一部の例外や入手困難なネタを除いて、天然ものを使うのが基本で、それは立派な見識です。しかし上の要旨にあるように、シマアジに関しては天然と養殖で客の好みが分かれるのですね。「すきやばし次郎」に通う客は相当な食通のはずですが、その人たちの意見が分かれているということです。またクルマエビについては小野氏自身が養殖が勝っていると認めています。「ミシュランの3つ星店基準」で判断しても「天然ものにひけをとらない養殖の鮨ネタ」があることを、まず覚えておくべきでしょう。
さらに「普通のレストラン基準」ないしは「家庭料理基準」では、天然ものと養殖ものはほとんど変わらないというのが大多数だと思います。それに一般的に言って、料理は素材だけでは決まりません。「素材 + 調理技術」が料理です。さらに長い目で見ると、品種改良と養殖技術の発展で、そのうちに養殖ものの方がおいしくなるのは目に見えています。ちょうど野生の動物や穀類・果物より、飼育された牛・豚、農業で作った米やフルーツの方が美味しいようにです。
天然の魚介類は「すきやばし次郎」のような店にこそ回すべきであり、我々としては「素朴な天然信仰」から脱却して、天然と養殖があれば養殖を選ぶぐらいの見識を持つべきでしょう。その大きな理由は、天然ものの魚介類は「自然の収奪」であることに違いはなく、資源量によほど注意して漁獲を行わないと、ウナギのように絶滅の危機に瀕するからです。
人類最後の狩猟採集:漁業
現生人類であるホモ・サピエンスが誕生してからでも20万年程度、2足歩行する初期人類(猿人)の誕生から数えると500万年程度たっています。この間、人類は狩猟・採集で生きてきました。現代でもアフリカや南米には狩猟・採集民がいます(No.221「なぜ痩せられないのか」で書いたハッザ族など)。
しかし1万年ほど前に農業が始まり、定住化が進み、これが文明の始まりになったとは、我々が世界史の最初で習うところです。またその後に牧畜や遊牧も始まった。つまり「狩猟・採集から脱却」によって今の人類の文明が存在するわけです。ところが、現代に残った最後の狩猟・採集が(養殖ではない)漁業です。
もちろん、漁業以外の狩猟・採集がないわけではありません。人工栽培ができない高価格野菜、日本の松茸や欧州のトリュフなどは、その採集を生業としている人がいます。しかしこれは野菜のごく一部です。山菜を採集する人もたくさんいますが、これは趣味か、せいぜい副業の部類でしょう。
野生動物で言うと、イノシシや鹿を狩った一部が食肉として出回っていますが、これも副業です。ハンターが少なくなったから鹿の食害が増えて困っているという話も聞きます。ヨーロッパでは、パリのマルシェなどに行くと野生動物がそのまま売られています。いわゆるジビエですが、これは「ご馳走」のたぐいであり、その狩猟で生活している人は少ないでしょう。以上のように考えると、現代のスーパーマーケットに並んでいる商品で狩猟採集で得られたものは、天然ものの魚介類だけということになります。
なぜ人類最後の狩猟・採集としての漁業が残っているのかというと、現代においても産業として成立するほど、漁業の生産性が高いからです(No.232「定住生活という革命」参照)。しかし生産性が高いということは裏を返すと、狩猟・採集の対象となる動植物の絶滅を招きかねないという地球環境上のリスクがあるわけです。
人類史をひもとくと、ユーラシア大陸や南北アメリカに生息していた数々の大型哺乳類(マンモス、サーベルタイガー、・・・・・・)が絶滅したのは人類の狩猟によるものという学説が有力です(No.127「捕食者なき世界(2)」の「大型捕食動物はヒトが絶滅させた」の項)。また歴史上の出来事をみても、地中海や大西洋にいた鯨は絶滅しました(No.20「鯨と人間(1)」)。幕末にペリー提督が日本にやってきて開国を迫った理由の一つがアメリカの捕鯨船の補給だったというのは有名な話ですが、なぜ大西洋沿岸のボストン付近の捕鯨船が日本近海にまでやってきたかというと、大西洋に(鯨油生産が産業として成立する程度の)鯨がいなくなったからです。
そして、このような大型哺乳類だけでなく、魚介類にも人間の乱獲で絶滅危惧種になってしまったものがあるのです。その中で、我々日本人に最も広くなじみがあるのがウナギです。
養殖の発展
現代人にとっての本来の漁業の姿は養殖であり、魚介類の絶滅を回避するためにも養殖が重要です。そして現代では数々の魚介類の養殖が進んでいて、ブリ類(ハマチなど)、タイ、マス、フグ、ヒラメ、シマアジ、牡蠣、ホタテ、クルマエビなどがすぐに思いつきます。クロマグロ(本マグロ)も養殖されるようになりました。
先日、NHKの情報番組を見ていたら、サバの養殖の研究のレポートをやっていました。サバの養殖のネックは、稚魚の攻撃性が強く、共食いをすることだそうです。稚魚の生存率は10%程度と言います。そこでゲノム編集技術を使って攻撃性を押さえるように遺伝子を改変すると、稚魚の生存率が40%に向上したそうです。こういった最新のバイオ・テクノロジーも養殖技術に使われ始めています。
もちろん養殖は、そのコストに見合う "高級魚" でないと成り立たないわけです。サンマやイワシを養殖しようとする人はいません。
もっとも近年はサンマの水揚げ量が激減し、日本政府は国際的な漁獲量の上限設定に動いています。そのうちサンマも値段が高騰し、養殖が見合うようになるのかもしれません。
そして本題のウナギですが、ウナギは "高級魚" であり、養殖にうってつけのはずです。しかしウナギの "養殖" といわれるものは、ウナギの稚魚である天然シラスウナギを捕獲し、それを養殖池で成魚に育てる「蓄養」です。これは本来の意味での養殖ではありません。そのシラスウナギの漁獲量が最近激減しています。
|
シラスウナギの漁獲量の激減は、この10~15年の現象です。ちなみに「シラスウナギの価格は、1キロあたり219万円」とありますが、シラスウナギの1匹の重さは0.2グラム程度なので、シラスウナギ1匹の価格は概算440円ということになります。
シラスウナギ |
日経BP社「未来コトハジメ」のサイトより |
2014年6月、国際自然保護連合(IUCN)はニホンウナギを絶滅危惧種に指定しました(ヨーロッパウナギは2008年に絶滅危惧種に指定)。一刻も早く、蓄養ではない本来の意味での養殖(=完全養殖)の商用化をする必要があるのですが、まだ成功していません。その大きな理由は、自然界におけるウナギの生活史が極めて特異だからです。
ウナギの生活史
ニホンウナギの産卵地がどこかは長いあいだ分からなかったのですが、1991年に日本の水産関係者によってその場所が特定されました。グアム島の北西、西マリアナ海嶺(=海中の山脈)の南部で、孵化したニホンウナギの幼生であるレプトセファルスが採取されたからです。
レプトセファルス |
日経BP社「未来コトハジメ」のサイトより |
レプトとはラテン語で「薄っぺらい、小さな」という意味で、セファルスは「~の頭をした」ということなので、「薄い頭」「小さな頭」という意味になります。「葉形幼生」という日本語もあります。
さらに2009年には同一海域でニホンウナギの親魚と卵が採取され、産卵地が確定しました。その付近の海底地形図が以下の図です。
フィリピン海プレートの中央部から東部の海底地形図。 |
「旅するウナギ」(東海大学出版会。2011)より |
フィリピン海プレートの東南にはグアム島があり、プレートの北は日本列島の手前まで続く。この図の左上に日本列島が書いてあるが、東南海地震を引き起こしたり、伊豆半島を本州に押しつけるているのはフィリピン海プレートである。 グアム島の南には世界最深のマリアナ海溝(約11,000m)があり、北西部には西マリアナ海嶺(=海底の山脈)が連なる。西マリアナ海領に「パスファインダー」「アラカネ」「スルガ」の3つの白丸が付けてあるが、これらはいずれも海山(=海中の山)である。ニホンウナギの産卵地は、この3つの海山から西マリアナ海嶺の南端にかけてのエリアにある。産卵地は10km四方程度の極めて狭いエリアのようだが、年によって変動する。このあたりは、東京から直線距離で約2500km離れている。 |
西マリアナ海嶺の南端で生まれたレプトセファルスは西向きの北赤道海流に漂ってフィリピン沖へ向かいます。柳の葉のような独特の形は漂うのに都合のよい形です。そしてフィリピン沖で黒潮に乗りかえます(黒潮に乗れなかったものは死滅)。約6cmに成長したレプトセファルスは、2~3週間でシラスウナギに変態します。
シラスウナギへの変態 |
虫明敬一他「うなぎ・謎の生物」 (築地書館 2012)より |
人工飼育されたレプトセファルスがシラスウナギに変態していく様子。この図の矢印は背ビレの始まりの位置、三角は肛門の位置である。数字は孵化後の日数を表す。孵化後1年以上でシラスウナギになっているが、日経サイエンス(2019.8)によると、現在(2019年)の人工飼育では300日程度でシラスウナギになる。しかし自然界では130日~150日程度であり、人工飼育の技術開発はまだ発展途上にある。 |
その黒潮に乗ったシラスウナギは日本列島(を含む東アジア)の河口に到着します。西マリアナ海嶺南部で孵化してから日本の河口に到達するまでは約半年です。関東地方の河川だと、産卵場から5000km程度の旅になります。シラスウナギは河川を遡上し(海や汽水域に残る個体もある)定着生活を始め、そこで成魚になります。
オスは数年間、メス約10年間の淡水生活をした後、ウナギは川を下り(=下りウナギ)、海に出て、西マリアナ海嶺の産卵場に向かいます。そして雌雄のウナギが産卵場で落ち合って産卵・受精します。
ウナギの生活史 |
日経サイエンス(2019.8) |
上図には日本から産卵場のルートが単純な直線で描かれていますが、これはどいういう経路で産卵場にたどりつくのかが不明だからです。日本付近から西マリアナ海嶺の南端までに黒潮のような海流があるわけではありません。しかし川から海に出て産卵の旅についたウナギは、2500km離れた極めて狭いエリアに集結し、オスとメスが出会って産卵・受精します。いったいどうやってこんなことができるのかは不明です。ウナギはまだ「謎の魚」なのです。
なお、ニホンウナギという学名が付いているために日本固有種と思いがちですが、そうではありません。東アジアのウナギはすべてニホンウナギであり、その産卵地は西マリアナ海嶺南端の海中です。遺伝的には同一の種です。
ウナギの完全養殖
実は、2010年にウナギの完全養殖が達成されました(現在の、国立・水産研究教育機構 増養殖研究所)。完全養殖とは下の図のように、卵 → 人工シラスウナギ → 人工成魚 → 卵 というサイクルを回すことです。
ウナギの完全養殖 |
水産庁「ウナギをめぐる状況と対策について」(2016.7)より |
シラスウナギを成魚にする蓄養は明治時代以来の歴史があり、技術が確立されています。問題は受精卵から孵化したレプトセフェルスをシラスウナギに育てる部分で、完全養殖ができたということはこれに成功したわけです。
しかし2010年に成功した完全養殖は水産試験場での成功であり、それがすぐに商用になるわけではありません。つまり製造業における「試作」と「量産」の違いのようなものです。新型車を開発するときに2年の歳月をかけて数10台の試作車を1台あたり数千万円の費用をかけて作る「試作」と、数百万円の販売価格に見合うコストで毎日数百~数千台のクルマを作る「量産」は違います。量産のためには、量産するための技術開発が必要です。
同じように、シラスウナギの量産が可能な技術開発できて始めて、ウナギの商用・完全養殖が実現するのです。その商用・完全養殖の研究現場のルポを次に紹介します。
ウナギの絶滅は回避できるか
その後、2013年からシラスウナギの量産の研究を進めています。あまたの試行錯誤を繰り返した結果、ようやく年間数千匹のシラスウナギが育つようになったとのことです。その難しさはどこにあるのでしょうか。
|
ウナギ種苗量産研究センターで人工飼育されているレプトセファルス。体長は1cm~6cm程度である。 |
サイエンス(2019年8月号) |
レプトセファルスは、
自分ではエサを探そうとしない | |
水が濁ると死んでしまう | |
自然界では数十万分の1の生存率 |
|
人工飼育しているレプトセファルスに給餌している様子。ピーナッツ型水槽は交互に使用する。 |
サイエンス(2019年8月号) |
エサは液体状をしていて、水を清潔に保つために数々の工夫や試行錯誤がされているようです。スポイトを使った人手による給餌ではコストがかかることが目に見えていますが、最適なやりかたを探るための過程なのでしょう。
|
この引用中に、従来の餌の主体が「アブラツノザメと呼ぶサメの卵の粉末」という箇所があります。なぜこのような "特殊な" 餌なのかと言うと、2010年に完全養殖に成功するまでの過程で数々の試行錯誤の結果、この餌が最適となったからです。しかし量産のためには別の餌を探す必要がある。それはまだ完全には見つかっていないようです。
ただし、ウナギの完全養殖に使う餌の種類と配合方法は "国家レベルの機密事項" だと、どこかで読んだ記憶があります。オープンにできない話も多いのだと想像します。
|
初めの方で引用した朝日新聞(2019.7.27 夕刊)の記事から計算すると、天然シラスウナギ1匹の最新の価格は概算で440円程度でした。それと比べて、人工シラスウナギは現状で10倍以上の価格ということになります。
また「日本全体で養殖のために必要なシラスウナギの量は年間で1億匹ともいわれる」とありますが、日経BP社「未来コトハジメ」のサイトによると、2006年から2018年のシラスウナギの池入量(養殖池に投入した重量)の平均は21.2トンだそうです。これを20トンとしてシラスウナギ1匹を0.2gとすると、1億匹という計算になります。「ウナギ種苗量産研究センター」で "量産" できるのは年間数千匹と書かれているので、必要量からすると1万分の1以下ということになります。
根幹は「コスト」でしょう。天然シラスウナギの価格に対抗できるコストで人工シラスウナギの量産が可能になったとすると、全国の企業が「商用・完全養殖」に向けた投資をするはずであり、生産量はグッと増えると考えられます。しかし、コストダウンのために大量生産を狙って、例えば水槽を大型化しようとしてもそう簡単ではないようです。
|
製造業と違って生き物が相手の量産は、その試行錯誤のプロセスも長い時間がかかることが分かります。
高次捕食者としてのウナギ
仮にウナギの商用・完全養殖が可能になったとします。そうするとシラスウナギの漁獲量が減少し、天然ウナギの絶滅が回避できそうに見えます。しかしさらに問題があって、それは天然ウナギが生涯の大半を過ごす河川の環境です。つまりこの数十年で国内の河川には堰やダムなどの構造物が増え、ウナギがこのような構造物を超えられず、生育環境が減少していると考えられるのです。この減少がシラスウナギの漁獲量の激減の一因になっていると推測されています。
つまり、ウナギを守るためには天然シラスウナギの漁獲量を減らすと同時に、ウナギの生育環境を守る必要があります。この生育環境について日経サイエンスのルポの最後に気になる話が書いてありました。ウナギは河川の生態系における「高次捕食者」という話です。
|
No.126-127「捕食者なき世界」で書いたように、生態系ピラミッドの頂点や上位にいる捕食者が絶滅すると、生態系のバランスがくずれ、それはピラミッドの土台を支える多くの生物の絶滅を引き起こしかねません。ウナギの絶滅を回避するということは、単にウナギだけの問題ではなく、河川の生態系全体の問題でもあるようです。
 補記1:農薬がウナギの生育環境を狭める  |
本文の最後の方で天然シラスウナギの漁獲量の激減の理由について、
シラスウナギの乱獲 | |
ウナギの生育環境の減少(河川の堰やダムなどの構造物の増加) |
の2つの理由を挙げました。この「ウナギの生育環境」についてですが、日本経済新聞に農薬の影響によるウナギの減少の記事が掲載されました。島根県の宍道湖の天然ウナギの話ですが、それを紹介したいと思います。
|
記事にある「ネオニコチノイド系の農薬」の特長は
昆虫に対して選択的に強い毒性を発揮する。 | |
植物体への浸透移行性をもち、葉や茎、実だけでなく、花粉や蜜にまで移行する。それが長期間(数ヶ月)残存する。 | |
人を含む哺乳類や鳥類、爬虫類には影響がない(とされている)。 |
数年前から世界各地で起こっているミツバチの大量死は「ネオニコチノイド系の農薬」が原因だとの疑いをもたれているのですが、②の性質があるからなのですね。養蜂や、蜂に受粉を依存している農業にとっては死活問題です。EUはとっくに規制をしているし、禁止も始まっているようです。この記事のポイントは、ミツバチだけでなくウナギやワカサギも、というところです。
これは宍道湖だけでなく、日本の河川のどこでも起こり得る話だと思います。このブログ記事の本文の最後に「ウナギは高次捕食者」と書きました。高次捕食者のウナギは、昆虫類(ミジンコのような節足動物を含む)だけでなく、小魚やミミズもエサとします。だから、かろうじて絶滅を免れているということでしょう。この話で思い出すのは日本の朱鷺の絶滅です。その原因の一つは、農薬の影響で朱鷺の生息域でエサになる魚類や昆虫がいなくなったから、と言われています。それと同じパターンです。
農薬は、守るべき植物(上の記事では稲)に対する害虫を選択的に死滅させるというのならまだしも、「ネオニコチノイド系の農薬」のように「すべての昆虫の神経系に作用する」のでは環境への影響が深刻になります。環境全体へのアセスメントなしに農薬を開発して認可するのでは何が起きるかわからないという、見本のような話だと思いました。
(2019.11.18)
補記2:完全養殖ウナギの試食会 |
鹿児島市の医薬品開発受託会社である(株)新日本科学は、数年前からウナギの完全養殖に取り組んでいて、先日、養殖したウナギの試食会が開催されました。そのニュースを引用します。
|
(2023.2.1)
補記3:完全養殖のコスト削減 |
2024年7月4日、水産庁の水産研究教育機構がウナギの完全養殖の最新状況を発表しました。発表の最大のポイントはコストです。日本経済新聞の記事を引用します。
ウナギ稚魚、人工的に量産 水産庁が新技術、コスト低減 天然資源に依存していたニホンウナギの稚魚を人工的に大量生産する技術を、水産庁の研究機関が4日発表した。人工稚魚の生産コストは2016年度時点で1匹4万円以上していたのに対し、生産効率を高めて1800円まで下げた。今後、都道府県や民間企業へ技術を普及し、量産化を目指す。 水産庁の研究機関、水産研究・教育機構(横浜市)を中心とする研究グループが大量生産システムを構築した。成熟させた母ウナギから毎週200万粒程度の受精卵を安定的に採取することに成功。水槽で幼生のウナギ(レプトセファルス)をふ化させ、シラスウナギと呼ばれる稚魚の大きさまで成長させる。 幼生の期間は、死亡リスクが高い。遺伝的に早く成長する稚魚を選抜し、鶏卵や脱脂粉乳など身近な原料で育てることにも成功した。独自開発した餌は特許出願中だ。専用の自動給餌装置や大型の量産用の水槽も開発。安定生産と効率化を進めコストを下げた。 日本の食卓に上がるウナギは天然の稚魚を採捕し、養殖場で育てたもの。資源は減少しており、現在天然稚魚は1匹500~600円ほどで取引される。同機構の風藤行紀シラスウナギ生産部長は「人工稚魚で1匹1000円を切ることを目標にしている」と話す。 水産庁増殖推進部研究指導課の長谷川裕康課長は「商業化にむけた道筋がみえてきた」と期待する。この技術を養殖に関心のある自治体や企業に提供し、制度面も含めて環境を整える。ウナギは生態に謎が多く、人工稚魚の大量生産は養殖業界で最難関と位置づけられていた。 日本経済新聞(2024.7.5) |
記事に「遺伝的に早く成長する稚魚を選抜し」とあるところに注目したいと思います。天然と養殖の最大の違いは、養殖は品種改良が可能ということです。水産庁はこれも利用してコストを下げたようです。
一匹1800円ということは、天然物の現在の市場価格の3倍程度ということになりますが、天然物の漁獲量がさらに激減することも十分考えられます。もし天然物が一匹1000円を越えるというような事態になれば、"水産庁ウナギ" の競争力はかなり出てくることになります。
さらに、この日経の記事にはありませんが朝日新聞によると、"水産庁ウナギ" は現状でも年間4~5万匹の生産が可能なようです。国内のウナギの消費量は約1億匹なので、もし仮に全ての稚魚が成魚になったとすれば、年間消費量の半分を現状でもまかなえることになります。
商用・完全養殖にかなり近づいてきたようです。
(2024.7.5)
2019-09-07 07:34
nice!(0)
No.249 - 同位体比分析の威力 [技術]
No.239「ヨークの首なしグラディエーター」で書いた話の続きです。No.239 では、イギリスのヨークで発掘された古代ローマ時代の剣闘士の遺体について、
ことを書きました。ある遺体の出身地はヨークから5000キロも離れた中近東地域らしいと ・・・・・・。この分析には "安定同位体分析" という技術が使われました(No.239の「補記」参照)。最近、これと類似の話が新聞に載っていました。まずその記事を引用したいと思いますが、分析の対象は剣闘士の歯ではなく "ヤギの毛" です。
NTTグループは情報通信のインフラ企業集団であり、NTTはそのトップに位置する持ち株会社です。そして日本でも有数の研究所をもっています。そのNTT研究所が高級毛素材であるカシミアの原産地推定をするのは少々奇妙に聞こえますが、"レーザー技術" という1点で関わりがあるということでしょう。レーザーは、NTTグループの命とも言える光通信を実現するための重要技術です。この新聞記事に書かれていることをまとめると、
となりますが、これと No.239 の
という話を比べると、分析対象となったカシミヤヤギと古代ローマ時代の剣闘士には2000年の年月の隔たりがあるものの、やっていることは同じと言えるでしょう。
そこで、今回はこの記事を機会に "安定同位体分析" について再度、調べてみたいと思います。No.239 の「補記」の詳細化です。
安定同位体
自然界に存在する原子には、同じ原子でも「質量数」が違うものが存在し、これらを「同位体」と呼びます(=アイソトープ)。質量数とは「陽子の数」と「中性子の数」の合計ですが、原子の種類は陽子の数(=原子番号)で決まるので、同位体は中性子の数が違うということになります(このあたりは高校化学の基礎)。
同位体には「放射性同位体」と「安定同位体」があります。たとえば原子番号6、質量数14の炭素14(146C)は放射性同位体で、放射線の1種である "ベータ線" を放出して窒素14(147N)に変化します(=ベータ崩壊)。
この炭素14のベータ崩壊の半減期(半数の原子が変化するまでの時間)は5730年です。地球上では宇宙線の影響で常に新しい炭素14が供給されているので、生物の炭素14の存在比率は炭素1兆個につき1個程度と、ほぼ一定です。しかし生物が死ぬと炭素14の取り込みが止まり、体内の炭素14はベータ崩壊で次第に減っていきます。このことを利用して動植物の遺骸の年代測定が行われることはよく知られています。
一方、「安定同位体」は他の原子に変化することはなく、自然界で安定して存在します。炭素で言うと、炭素12(12C)と炭素13(13C)が安定同位体で、地球上での存在比率は約 99:1 です。
安定同位体の化学的性質は同じですが、質量数が違うため重さが微妙に違います。このため安定同位体の存在比は、その存在箇所によって違ってくる。これが各種の分析を可能にする要因です。
安定同位体は質量が違うことを利用して、試料中の同位体の比率が計測できます。典型的な方法は、試料を燃焼ないしは熱分解してガスにし、イオン化して(=電荷を持たせて)磁場の中に通します。すると質量の違いによってイオンの軌跡の "曲がりかた" が違ってきて、同位体が分別できます。
記事にあるNTTの方法は、それとは違ってレーザ光を利用するものです。安定同位体は特定の波長の光を吸収しますが、質量数の違いによって吸収する波長が微妙に違います。また同位体の量によって光の吸収量が変わる。つまり波長が違うレーザ光を照射することにより、安定同位体の存在比が測定できます。NTTとしてはこの技術をアッピールしたいというのが、カシミヤヤギの新聞記事の背景にあるのでしょう。
炭素同位体:12C と 13C
炭素(原子番号6)の安定同位体、12C と 13C の地球上の平均の存在比は、98.9%:1.1%であり、それが二酸化炭素になった 12CO2 と 13CO2の存在比も同じです。二酸化炭素は植物の生育に必須の分子であり、これを利用して安定同位体分析を行います。
植物の特徴は光合成を行うことですが、光合成は「光化学反応(=明反応)」と「カルビン回路(=暗反応)」で行われます。まず光化学反応で水(H2O)と光から、酸素(O2)と化学エネルギー物質が作り出されます。次にカルビン回路で化学エネルギー物質と二酸化炭素(CO2)から炭素数3の化合物(グリセルアルデヒド3-リン酸)が合成されます。この化合物は葉緑体の中でデンプンに変換され蓄積されます。このタイプの光合成は「C3型光合成」と呼ばれていて、多くの植物がこのタイプです。C3の名前は、光合成の過程で作られる炭素化合物が炭素数3のものであることによります。C3型光合成を行う植物が「C3植物」です。
一方、これとは違う「C4型光合成」があります。これは光化学反応とカルビン回路に加えて "CO2取り込み・蓄積回路" を持つ光合成です。このタイプの光合成では、CO2が炭素数4の化合物(オキサロ酢酸)として取り込まれ、蓄積されます。この炭素数4の化合物からCO2が再生成されてカルビン回路に送り込まれ、最終的にデンプンとして蓄えられます。つまり植物内には "CO2 のストック" がたくさんあることになります。このタイプの植物を「C4植物」と呼んでいます。
一般に植物は、高温や乾燥の環境下では気孔を閉じがちにならざるを得ず、そのため CO2 を集めにくくなりますが、C4植物は CO2 の蓄積・濃縮が可能なため、光合成の効率が高い。C4植物は高温・乾燥・低 CO2 といった、植物としては過酷な環境に適応したものと考えられています。
人間と直接関係が深い代表的なC4植物は、イネ科のトウモロコシ、サトウキビ、アワ、ヒエ、キビ、モロコシなどです。ちなみに、同じイネ科のコメと小麦はC3植物です。一般に、同じ科でもC3植物とC4植物が混じっています。
なお、C3/C4以外に「CAM型光合成」を行う植物があります。CAMとはベンケイソウ型有機酸代謝(Crassulacean Acid Metabolism)の略で、砂漠などの水分が慢性的に少なく昼夜の温度差が大きい環境に適応しています。CO2の蓄積・濃縮をすることはC4植物と同じですが、CAM植物は夜に気孔をあけて CO2 を取り込み、昼間は完全に気孔を閉じて水分の損失を防ぎます。サボテン科やベンケイソウ科にCAM型植物があります。人間に関係の深いCAM型植物はパイナップル(パイナップル科)です。
安定同位体分析で普通使われるのは、C3植物とC4植物の炭素同位体の相違です。12CO2 と 13CO2 を比較すると、12CO2の方が軽いため、光合成の過程で植物が取り込みやすい。そのため、CO2 取り込み能力が高いC4植物の方がより多くの 13CO2 を取り込むことになり、13C の同位体比が高くなります。
このことを利用して、たとえば純粋なハチミツかどうかの判定が可能です。ハチミツの主成分はブドウ糖と果糖ですが、これは樹木や草の花の蔗糖(砂糖の主成分)を蜂がブドウ糖と果糖に分解したものです。蜂が蜜を集める花はC3植物なので、ハチミツのブドウ糖と果糖は「C3植物由来」ということになります。
一方、転化糖と呼ばれるものがあって、これはサトウキビから作られる蔗糖を人工的にブドウ糖と果糖に分解したものです。サトウキビはC4植物なので、転化糖のブドウ糖と果糖は「C4植物由来」です。つまりハチミツに転化糖を混ぜると 12C と 13C の同位体比が違ってくる。これを利用してハチミツに混ぜものが無いかどうかを鑑定できます。株式会社地球科学研究所のホームページによると「C4由来の糖類が7%以上混入すると検出可能」だそうです。高い精度で判定が可能なことがわかります。
昆虫や鳥、魚、草食動物は、摂取する植物によって体内の炭素同位体比が違ってきます。さらに肉食動物も、餌となる草食動物の炭素同位体比に影響されます。つまり、炭素同位体比は食性の判断の一助になります。ただし食性の推定については炭素同位体比に加えて、次の窒素同位体比も使われます。
窒素同位体:14N と 15N
窒素(原子番号7)の安定同位体は、窒素14(147N)と窒素15(157N)があり、その地球上での存在比は 99.636%:0.364% です。この存在比は大気中でも土壌中でも同じです。
窒素は植物や動物をはじめ生物にとっては必須の元素ですが、食物連鎖に従って生物中の窒素15(15N)が "濃縮される" ことが知られています。たとえば、土壌 → 植物 → 草食動物 → 肉食動物という食物連鎖の過程において 15N の割合が高まっていく。つまり、窒素同位体の存在比を調べることにより、前項の炭素同位体の存在比とを合わせて生物の食性が推定できることになります。
さらに窒素同位体を使って有機栽培かどうかの判断もできます。つまり化学肥料に含まれる窒素原子(N)の "原料" は大気中の窒素分子なので、その窒素同位体の組成は土壌と同じです。しかし有機栽培で使われる肥料は 15N が多い枯れた植物や動物の糞から作られるので、有機栽培の畑の 15N は化学肥料を使った土壌よりも多くなります。このため、有機栽培の野菜や穀物も 15N の割合が高くなり、判定ができます。
水素同位体:1H と 2H
酸素同位体:16O と 18O
水素(原子番号1)と酸素(原子番号8)の安定同位体は、地球上の水(H2O)の同位体分析で使われます。水素の安定同位体は1H と 2H(= 重水素。Dとも表記される)であり重水素の存在比は0.015%程度です。また、酸素の安定同位体は 166O と 18 6O で、18O の存在比は0.2%程度です。17O も安定同位体ですが、存在比が少なく同位体分析に使われないので割愛します。
自然界に存在する水のほとんどは 1H216O で、これを便宜上 "軽い水" と呼びます。しかし自然界には 2H1H16O や 1H218O も存在し、これらを "重い水" と呼びます。軽い水と重い水の化学的性質は同じですが、重さが違うので物理的性質が違ってきます。つまり、軽い水ほど早く気化し、重い水ほど早く凝固します。
地球が太陽から受ける熱は赤道付近が最大で、北極・南極付近が最小です。一方、宇宙空間に逃げる熱は赤道付近も北極・南極付近もあまり変わりません。このままでは赤道付近がどんどん熱くなるように思えますが、そうはなりません。それは赤道付近から高緯度に熱を輸送する地球規模の大気の循環があるからです。赤道付近で水が蒸発すると気化熱を奪いますが、その蒸発する水は軽い水が多くなります。その水蒸気が雲となって大気の循環で高緯度に移動し、液化して雨を降らせる。その時に凝固熱が放出されます。この大気の循環で熱が輸送されますが、結果として赤道付近には重い水が多く残ることになります。つまり、地球規模で言うと緯度が高いほど軽い水が増えることになります。
同様のことが、海からの水蒸気が雲となって陸地に移動し、平地や山に雨を降らせるときにも起こります(下図)。つまり雨が降るときには、より重い水から早く液化します。従って内陸に行くほど(海岸から離れるほど)軽い水が増えることになり、また高度が上がるほど軽い水が増えることになります。
次の図は日本列島の河川水、地下水(浅層)の酸素安定同位体(18O)の比率を調べた図です。数字は「軽い水に対する重い水の比率が世界標準からどれだけズレているか」を示した数値です。単位はパーミル(千分率)で、たとえば -10 は、-10/1000 = - 1% を示します。つまり「-10」の意味は、
標準比率からのズレ =
マイナス(標準比率 × 0.01)
ということです。これを見ると日本列島も緯度が高くなるほど重い水が減り、また内陸に行くほど重い水が減ることが分かります。
上に引用した2つの図は日本醸造協会誌に掲載された論文からのものですが、なぜ醸造協会誌にこのような論文が載るかというと、安定同位体分析で日本酒の産地が推定できるからです。
日本酒は水が命と言われますが、この水は普通、蔵元の地元の地下水です。分析によると「地元の河川水・地下水の酸素安定同位体比と、醸造された日本酒の酸素安定同位体比」の間には、かなりクリアな相関関係がみられるとのことです。もちろん同じ酸素安定同位体比をもつ地域は複数あるので産地の完全な特定はできませんが、少なくともその産地で作られたもではないということは分析できるわけです。
このような河川の水や地下水は、その土地で育った植物や動物の水素・酸素安定同位体比に影響を与えます。つまりコメなどの産地判定にも活用できることになります。
ここまでくると、最初に引用したNTTのカシミヤの産地推定の記事につながります。カシミヤヤギの産地は中国の北西部の各地方、ネパール、モンゴル、イランなどに限られます。これらの地方は特有の水素・酸素安定同位体比があるはずで、それがカシミヤヤギの毛に影響します。また記事によるとNTTは炭素同位体も分析したようで、それはカシミヤヤギの食性に関係しています。窒素同位体の話が記事にありませんが、それはカシミヤヤギの産地推定には有効ではなかったということでしょう。
具体的にどうやって分析したかですが、NTTのホームページによると、まずカシミヤ毛の産地分析の専門家がいて、その人は顕微鏡でカシミヤ毛を見て産地を推定するそうです。それで推定したカシミヤ毛の産地ごとに安定同位体分析をすると、明白な差異が見られた。つまり安定同位体分析によって産地が推定できることが分かった ・・・・・・ というのがNTTの説明です。どこまでの詳細分析が可能なのか、たとえば中国の内モンゴル自治区のカシミヤとモンゴルのカシミヤの区別はつくのか、などは不明ですが、とにかく人の経験とノウハウではなく、サイエンスの力で産地推定ができるということは進歩でしょう。
なぜ、ここまでの分析するのでしょうか。我々が知っているのは、カシミヤは高級品であり、まがいものが多いということです(カシミヤに羊毛を混ぜるなど)。カシミヤと称して流通している量は生産量の4倍、という話もあるくらいです。これは常識的ですが、さらに記事から想像できるのは「カシミヤといっても産地によって品質に違いがある」ということです。従って原料の価格にも違いがあるのではと思います。また、たとえ品質・価格に差がなくても、原産地が証明できることは流通経路も明確になり、大きな意味での品質保証と安定供給に寄与するということでしょう。
ストロンチウムの安定同位体
今までの水素(H)、酸素(O)、炭素(C)、窒素(N)は生命体の維持に不可欠な元素であり、安定同位体分析では「4大元素」と呼ばれていますが、それ以外にも分析に使われる元素があります。その例がストロンチウム(Sr:原子番号38)です。
ストロンチウム(38Sr)は土壌中に含まれますが、安定同位体として 84Sr(平均存在比:0.56%) 86Sr(9.86%) 87Sr(7.0%) 88Sr(82.58%) の4種があります。この4種の比率は地球上における地質のできかたによって相違することが知られています。特に「87Sr/86Sr 比」は鉱物や岩石によって0.7~4.0までの値をとります。
土壌中のストロンチウム比はその土地の地質によって違い、これがその土地で育った生物のストロンチウム比に影響します。このことから、生物がどの地域で育ったかを推定できます。
以上のような地質の分析については、硫黄(16S)の同位体分析も活用されているようです。
同位体分析の威力
安定同位体の存在比は、地理的な存在場所や植物の種類によって違ってきます。そのため、食品や動植物の原産地の分析だけでなく、考古学や地球科学、環境科学でも安定同位体分析が使われています。特に4大元素(H, O, C, N)はどこにでも大量にあるだけに応用範囲が広い。
その応用の一つを No.221「なぜ痩せられないのか」に書いたのですが、水素と酸素の安定同位体分析を使って日常生活をしているヒトのエネルギー消費量の精密測定ができます。これは人工的に作った "2重標識水(2H218O)" を被験者に飲ませ、活動後の唾液(ないしは尿)の同位体分析をするものです。2Hは水分(呼吸中の水蒸気や尿、汗など)として体から排出されますが、18Oは水分として排出されると同時に、呼吸中の二酸化炭素(C18O2)としても排出されます。そのため 2H よりも 18O の方が "減りかた" が早い。この差の同位体分析で二酸化炭素の排出量が計算でき、そこから酸素消費量が求まる。それでエネルギー消費量が算出できるというわけです。非常に巧妙な方法です。
我々素人はふつう安定同位体分析に関係することはないのですが、この技術は今や世界で一般的に使われているようです。だからこそ、古代ローマの剣闘士の遺体の分析にも、カシミヤヤギの分析にも使われる。これはひとえに精密な測定が低コストで可能になったという、分析技術の発達によるのでしょう。
こういった分析技術に関連して思い出すことがあります。冒頭に引用した NTT の記事はレーザー光の吸収を利用した同位体分析でしたが、別の方法は同位体の質量の差を利用するものでした。これは「質量分析」の一つの技術ですが、質量分析でノーベル賞を受賞した日本人がいます。島津製作所の田中耕一氏です(2002年のノーベル化学賞を受賞)。田中氏はタンパク質の質量分析の第一人者です。これはタンパク質の同定や構造の解明に必須の技術で、医学や製薬、生命科学の発展の大きな支えになっています。
我々は田中氏がノーベル賞を受賞したとき、一企業のサラリーマン(博士でもない)であることに驚いたのですが、もっと注目すべきはノーベル賞委員会が、一見 "地味な" タンパク質の質量分析技術の開発者に賞を与えたことです。この技術が生命科学の発展に与えるインパクトの大きさからの判断でしょう。
超精密な分子・原子の測定技術が科学や学問の発展に大きく寄与する。それは同位体分析も同じだと思いました。
日本経済新聞に、同位体比分析によってサケの回遊ルートを分析する話が載っていたので、その記事を引用します。サケは身近な魚ですが、海のどこを泳いで日本の河川に戻ってくるのかが今まで分かっていなかったそうです。
窒素は質量数14(14N)が大部分(99.6%)ですが、安定同位体として質量数15の窒素(15N)が存在します(0.4%)。この比率、15N / 14N が窒素の同位体比です。
海中のプランクトンの同位体比は、記事にあるように生物の活動が活発かどうか、海が浅いか深いかによって変わってきます。研究チームはまず、北太平洋の広範囲で動物性プランクトンを採取し、プランクトンのタンパク質の中のフェニルアラニン(アミノ酸の一種)の同位体比を測定し、北太平洋の「窒素同位体比地図」を作成しました。これとサケの脊椎骨のフェニルアラニンの分析を付き合わせて回遊ルートを調べたわけです。
さらに記事にはサケ以外の魚の話もありました。脊椎動物の内耳には耳石と呼ばれる炭酸カルシウムでできた組織があります。魚類の耳石は年輪のような同心円状になっていて、1日に1本が形成されます。
記事では、マイワシの耳石を分析することで、回遊ルートを分析する話がありました。耳石の酸素同位体を分析すると、泳いでいた海域の水温と塩分濃度がわかるそうです。「魚の生きた環境を1日単位で読みとることも可能だ」(京都大学 石村豊穂准教授)とありました。日本経済新聞の記事にあった図を以下に引用します。
さらに記事にウナギの話もありました。No.267「ウナギの商用・完全養殖」に書いたように、ニホンウナギの産卵場は赤道に近いマリアナ海溝の付近にあり、そこで生まれた稚魚が成長しながら日本の河川に遡上してくるまでのルートは解明されています。しかし日本の河川で育ったウナギの成魚がどういうルートで産卵場までいくのかは謎です。また、養殖場でシラスウナギから成魚にしたウナギを放流したとき、それがマリアナ海溝の産卵場までたどりついているのかも不明です。
記事では東京大学の白井厚太朗准教授の研究の成果として、ウナギの耳石の酸素同位体比と泳ぐ場所の水温の関係を見い出したとありました。
ウナギはサケやマイワシと同じく日本人にはなじみの魚ですが、資源量(シラスウナギの漁獲量)が減少し、完全養殖はコスト面で商用化がまだ困難な状況です(No.267)。ウナギの生育環境の水温データは完全養殖の技術開発にも役立ちそうです。
歯のエナメル質を分析することで、剣闘士の出身地や食物が推定できる |
ことを書きました。ある遺体の出身地はヨークから5000キロも離れた中近東地域らしいと ・・・・・・。この分析には "安定同位体分析" という技術が使われました(No.239の「補記」参照)。最近、これと類似の話が新聞に載っていました。まずその記事を引用したいと思いますが、分析の対象は剣闘士の歯ではなく "ヤギの毛" です。
|
カシミヤヤギ
(livestockpedia.com) |
カシミヤヤギの毛の同位体分析で、ヤギが生息していた地域が推定できる |
となりますが、これと No.239 の
剣闘士の歯の同位体分析で、剣闘士が生まれ育った地域が推定できる |
という話を比べると、分析対象となったカシミヤヤギと古代ローマ時代の剣闘士には2000年の年月の隔たりがあるものの、やっていることは同じと言えるでしょう。
そこで、今回はこの記事を機会に "安定同位体分析" について再度、調べてみたいと思います。No.239 の「補記」の詳細化です。
安定同位体
自然界に存在する原子には、同じ原子でも「質量数」が違うものが存在し、これらを「同位体」と呼びます(=アイソトープ)。質量数とは「陽子の数」と「中性子の数」の合計ですが、原子の種類は陽子の数(=原子番号)で決まるので、同位体は中性子の数が違うということになります(このあたりは高校化学の基礎)。
同位体には「放射性同位体」と「安定同位体」があります。たとえば原子番号6、質量数14の炭素14(146C)は放射性同位体で、放射線の1種である "ベータ線" を放出して窒素14(147N)に変化します(=ベータ崩壊)。
この炭素14のベータ崩壊の半減期(半数の原子が変化するまでの時間)は5730年です。地球上では宇宙線の影響で常に新しい炭素14が供給されているので、生物の炭素14の存在比率は炭素1兆個につき1個程度と、ほぼ一定です。しかし生物が死ぬと炭素14の取り込みが止まり、体内の炭素14はベータ崩壊で次第に減っていきます。このことを利用して動植物の遺骸の年代測定が行われることはよく知られています。
一方、「安定同位体」は他の原子に変化することはなく、自然界で安定して存在します。炭素で言うと、炭素12(12C)と炭素13(13C)が安定同位体で、地球上での存在比率は約 99:1 です。
安定同位体の化学的性質は同じですが、質量数が違うため重さが微妙に違います。このため安定同位体の存在比は、その存在箇所によって違ってくる。これが各種の分析を可能にする要因です。
安定同位体は質量が違うことを利用して、試料中の同位体の比率が計測できます。典型的な方法は、試料を燃焼ないしは熱分解してガスにし、イオン化して(=電荷を持たせて)磁場の中に通します。すると質量の違いによってイオンの軌跡の "曲がりかた" が違ってきて、同位体が分別できます。
記事にあるNTTの方法は、それとは違ってレーザ光を利用するものです。安定同位体は特定の波長の光を吸収しますが、質量数の違いによって吸収する波長が微妙に違います。また同位体の量によって光の吸収量が変わる。つまり波長が違うレーザ光を照射することにより、安定同位体の存在比が測定できます。NTTとしてはこの技術をアッピールしたいというのが、カシミヤヤギの新聞記事の背景にあるのでしょう。
NTTのレーザーを使う同位体分析装置。机上に設置できる小型の装置である。YouTubeより。
|
炭素同位体:12C と 13C
炭素(原子番号6)の安定同位体、12C と 13C の地球上の平均の存在比は、98.9%:1.1%であり、それが二酸化炭素になった 12CO2 と 13CO2の存在比も同じです。二酸化炭素は植物の生育に必須の分子であり、これを利用して安定同位体分析を行います。
植物の特徴は光合成を行うことですが、光合成は「光化学反応(=明反応)」と「カルビン回路(=暗反応)」で行われます。まず光化学反応で水(H2O)と光から、酸素(O2)と化学エネルギー物質が作り出されます。次にカルビン回路で化学エネルギー物質と二酸化炭素(CO2)から炭素数3の化合物(グリセルアルデヒド3-リン酸)が合成されます。この化合物は葉緑体の中でデンプンに変換され蓄積されます。このタイプの光合成は「C3型光合成」と呼ばれていて、多くの植物がこのタイプです。C3の名前は、光合成の過程で作られる炭素化合物が炭素数3のものであることによります。C3型光合成を行う植物が「C3植物」です。
一方、これとは違う「C4型光合成」があります。これは光化学反応とカルビン回路に加えて "CO2取り込み・蓄積回路" を持つ光合成です。このタイプの光合成では、CO2が炭素数4の化合物(オキサロ酢酸)として取り込まれ、蓄積されます。この炭素数4の化合物からCO2が再生成されてカルビン回路に送り込まれ、最終的にデンプンとして蓄えられます。つまり植物内には "CO2 のストック" がたくさんあることになります。このタイプの植物を「C4植物」と呼んでいます。
一般に植物は、高温や乾燥の環境下では気孔を閉じがちにならざるを得ず、そのため CO2 を集めにくくなりますが、C4植物は CO2 の蓄積・濃縮が可能なため、光合成の効率が高い。C4植物は高温・乾燥・低 CO2 といった、植物としては過酷な環境に適応したものと考えられています。
人間と直接関係が深い代表的なC4植物は、イネ科のトウモロコシ、サトウキビ、アワ、ヒエ、キビ、モロコシなどです。ちなみに、同じイネ科のコメと小麦はC3植物です。一般に、同じ科でもC3植物とC4植物が混じっています。
なお、C3/C4以外に「CAM型光合成」を行う植物があります。CAMとはベンケイソウ型有機酸代謝(Crassulacean Acid Metabolism)の略で、砂漠などの水分が慢性的に少なく昼夜の温度差が大きい環境に適応しています。CO2の蓄積・濃縮をすることはC4植物と同じですが、CAM植物は夜に気孔をあけて CO2 を取り込み、昼間は完全に気孔を閉じて水分の損失を防ぎます。サボテン科やベンケイソウ科にCAM型植物があります。人間に関係の深いCAM型植物はパイナップル(パイナップル科)です。
安定同位体分析で普通使われるのは、C3植物とC4植物の炭素同位体の相違です。12CO2 と 13CO2 を比較すると、12CO2の方が軽いため、光合成の過程で植物が取り込みやすい。そのため、CO2 取り込み能力が高いC4植物の方がより多くの 13CO2 を取り込むことになり、13C の同位体比が高くなります。
このことを利用して、たとえば純粋なハチミツかどうかの判定が可能です。ハチミツの主成分はブドウ糖と果糖ですが、これは樹木や草の花の蔗糖(砂糖の主成分)を蜂がブドウ糖と果糖に分解したものです。蜂が蜜を集める花はC3植物なので、ハチミツのブドウ糖と果糖は「C3植物由来」ということになります。
一方、転化糖と呼ばれるものがあって、これはサトウキビから作られる蔗糖を人工的にブドウ糖と果糖に分解したものです。サトウキビはC4植物なので、転化糖のブドウ糖と果糖は「C4植物由来」です。つまりハチミツに転化糖を混ぜると 12C と 13C の同位体比が違ってくる。これを利用してハチミツに混ぜものが無いかどうかを鑑定できます。株式会社地球科学研究所のホームページによると「C4由来の糖類が7%以上混入すると検出可能」だそうです。高い精度で判定が可能なことがわかります。
昆虫や鳥、魚、草食動物は、摂取する植物によって体内の炭素同位体比が違ってきます。さらに肉食動物も、餌となる草食動物の炭素同位体比に影響されます。つまり、炭素同位体比は食性の判断の一助になります。ただし食性の推定については炭素同位体比に加えて、次の窒素同位体比も使われます。
窒素同位体:14N と 15N
窒素(原子番号7)の安定同位体は、窒素14(147N)と窒素15(157N)があり、その地球上での存在比は 99.636%:0.364% です。この存在比は大気中でも土壌中でも同じです。
窒素は植物や動物をはじめ生物にとっては必須の元素ですが、食物連鎖に従って生物中の窒素15(15N)が "濃縮される" ことが知られています。たとえば、土壌 → 植物 → 草食動物 → 肉食動物という食物連鎖の過程において 15N の割合が高まっていく。つまり、窒素同位体の存在比を調べることにより、前項の炭素同位体の存在比とを合わせて生物の食性が推定できることになります。
さらに窒素同位体を使って有機栽培かどうかの判断もできます。つまり化学肥料に含まれる窒素原子(N)の "原料" は大気中の窒素分子なので、その窒素同位体の組成は土壌と同じです。しかし有機栽培で使われる肥料は 15N が多い枯れた植物や動物の糞から作られるので、有機栽培の畑の 15N は化学肥料を使った土壌よりも多くなります。このため、有機栽培の野菜や穀物も 15N の割合が高くなり、判定ができます。
水素同位体:1H と 2H
酸素同位体:16O と 18O
水素(原子番号1)と酸素(原子番号8)の安定同位体は、地球上の水(H2O)の同位体分析で使われます。水素の安定同位体は1H と 2H(= 重水素。Dとも表記される)であり重水素の存在比は0.015%程度です。また、酸素の安定同位体は 166O と 18 6O で、18O の存在比は0.2%程度です。17O も安定同位体ですが、存在比が少なく同位体分析に使われないので割愛します。
自然界に存在する水のほとんどは 1H216O で、これを便宜上 "軽い水" と呼びます。しかし自然界には 2H1H16O や 1H218O も存在し、これらを "重い水" と呼びます。軽い水と重い水の化学的性質は同じですが、重さが違うので物理的性質が違ってきます。つまり、軽い水ほど早く気化し、重い水ほど早く凝固します。
地球が太陽から受ける熱は赤道付近が最大で、北極・南極付近が最小です。一方、宇宙空間に逃げる熱は赤道付近も北極・南極付近もあまり変わりません。このままでは赤道付近がどんどん熱くなるように思えますが、そうはなりません。それは赤道付近から高緯度に熱を輸送する地球規模の大気の循環があるからです。赤道付近で水が蒸発すると気化熱を奪いますが、その蒸発する水は軽い水が多くなります。その水蒸気が雲となって大気の循環で高緯度に移動し、液化して雨を降らせる。その時に凝固熱が放出されます。この大気の循環で熱が輸送されますが、結果として赤道付近には重い水が多く残ることになります。つまり、地球規模で言うと緯度が高いほど軽い水が増えることになります。
同様のことが、海からの水蒸気が雲となって陸地に移動し、平地や山に雨を降らせるときにも起こります(下図)。つまり雨が降るときには、より重い水から早く液化します。従って内陸に行くほど(海岸から離れるほど)軽い水が増えることになり、また高度が上がるほど軽い水が増えることになります。
降水による安定同位体比の変化
海からの水蒸気が陸地で降水をもたらすとき、まず重い水から液化する。また雲が山にぶつかって高度が上がるにつれて軽い水が降る。このため海岸から離れるほど、また高度が上がるほど軽い水が増え、重い水が減る。
(日本醸造協会誌 第110巻 第2号 2015 より)
|
次の図は日本列島の河川水、地下水(浅層)の酸素安定同位体(18O)の比率を調べた図です。数字は「軽い水に対する重い水の比率が世界標準からどれだけズレているか」を示した数値です。単位はパーミル(千分率)で、たとえば -10 は、-10/1000 = - 1% を示します。つまり「-10」の意味は、
標準比率からのズレ =
マイナス(標準比率 × 0.01)
ということです。これを見ると日本列島も緯度が高くなるほど重い水が減り、また内陸に行くほど重い水が減ることが分かります。
全国の河川水・浅部地下水の酸素同位体比
酸素18の比率を示した図である。緯度が高くなるにつれて酸素18の比率が低下する(マイナスが大きくなる)。また内陸に行くにつれても低下し、軽い水が多くなる。
(日本醸造協会誌 第110巻 第2号 2015 より)
|
上に引用した2つの図は日本醸造協会誌に掲載された論文からのものですが、なぜ醸造協会誌にこのような論文が載るかというと、安定同位体分析で日本酒の産地が推定できるからです。
日本酒は水が命と言われますが、この水は普通、蔵元の地元の地下水です。分析によると「地元の河川水・地下水の酸素安定同位体比と、醸造された日本酒の酸素安定同位体比」の間には、かなりクリアな相関関係がみられるとのことです。もちろん同じ酸素安定同位体比をもつ地域は複数あるので産地の完全な特定はできませんが、少なくともその産地で作られたもではないということは分析できるわけです。
このような河川の水や地下水は、その土地で育った植物や動物の水素・酸素安定同位体比に影響を与えます。つまりコメなどの産地判定にも活用できることになります。
ここまでくると、最初に引用したNTTのカシミヤの産地推定の記事につながります。カシミヤヤギの産地は中国の北西部の各地方、ネパール、モンゴル、イランなどに限られます。これらの地方は特有の水素・酸素安定同位体比があるはずで、それがカシミヤヤギの毛に影響します。また記事によるとNTTは炭素同位体も分析したようで、それはカシミヤヤギの食性に関係しています。窒素同位体の話が記事にありませんが、それはカシミヤヤギの産地推定には有効ではなかったということでしょう。
具体的にどうやって分析したかですが、NTTのホームページによると、まずカシミヤ毛の産地分析の専門家がいて、その人は顕微鏡でカシミヤ毛を見て産地を推定するそうです。それで推定したカシミヤ毛の産地ごとに安定同位体分析をすると、明白な差異が見られた。つまり安定同位体分析によって産地が推定できることが分かった ・・・・・・ というのがNTTの説明です。どこまでの詳細分析が可能なのか、たとえば中国の内モンゴル自治区のカシミヤとモンゴルのカシミヤの区別はつくのか、などは不明ですが、とにかく人の経験とノウハウではなく、サイエンスの力で産地推定ができるということは進歩でしょう。
なぜ、ここまでの分析するのでしょうか。我々が知っているのは、カシミヤは高級品であり、まがいものが多いということです(カシミヤに羊毛を混ぜるなど)。カシミヤと称して流通している量は生産量の4倍、という話もあるくらいです。これは常識的ですが、さらに記事から想像できるのは「カシミヤといっても産地によって品質に違いがある」ということです。従って原料の価格にも違いがあるのではと思います。また、たとえ品質・価格に差がなくても、原産地が証明できることは流通経路も明確になり、大きな意味での品質保証と安定供給に寄与するということでしょう。
ストロンチウムの安定同位体
今までの水素(H)、酸素(O)、炭素(C)、窒素(N)は生命体の維持に不可欠な元素であり、安定同位体分析では「4大元素」と呼ばれていますが、それ以外にも分析に使われる元素があります。その例がストロンチウム(Sr:原子番号38)です。
ストロンチウム(38Sr)は土壌中に含まれますが、安定同位体として 84Sr(平均存在比:0.56%) 86Sr(9.86%) 87Sr(7.0%) 88Sr(82.58%) の4種があります。この4種の比率は地球上における地質のできかたによって相違することが知られています。特に「87Sr/86Sr 比」は鉱物や岩石によって0.7~4.0までの値をとります。
土壌中のストロンチウム比はその土地の地質によって違い、これがその土地で育った生物のストロンチウム比に影響します。このことから、生物がどの地域で育ったかを推定できます。
以上のような地質の分析については、硫黄(16S)の同位体分析も活用されているようです。
同位体分析の威力
安定同位体の存在比は、地理的な存在場所や植物の種類によって違ってきます。そのため、食品や動植物の原産地の分析だけでなく、考古学や地球科学、環境科学でも安定同位体分析が使われています。特に4大元素(H, O, C, N)はどこにでも大量にあるだけに応用範囲が広い。
その応用の一つを No.221「なぜ痩せられないのか」に書いたのですが、水素と酸素の安定同位体分析を使って日常生活をしているヒトのエネルギー消費量の精密測定ができます。これは人工的に作った "2重標識水(2H218O)" を被験者に飲ませ、活動後の唾液(ないしは尿)の同位体分析をするものです。2Hは水分(呼吸中の水蒸気や尿、汗など)として体から排出されますが、18Oは水分として排出されると同時に、呼吸中の二酸化炭素(C18O2)としても排出されます。そのため 2H よりも 18O の方が "減りかた" が早い。この差の同位体分析で二酸化炭素の排出量が計算でき、そこから酸素消費量が求まる。それでエネルギー消費量が算出できるというわけです。非常に巧妙な方法です。
我々素人はふつう安定同位体分析に関係することはないのですが、この技術は今や世界で一般的に使われているようです。だからこそ、古代ローマの剣闘士の遺体の分析にも、カシミヤヤギの分析にも使われる。これはひとえに精密な測定が低コストで可能になったという、分析技術の発達によるのでしょう。
こういった分析技術に関連して思い出すことがあります。冒頭に引用した NTT の記事はレーザー光の吸収を利用した同位体分析でしたが、別の方法は同位体の質量の差を利用するものでした。これは「質量分析」の一つの技術ですが、質量分析でノーベル賞を受賞した日本人がいます。島津製作所の田中耕一氏です(2002年のノーベル化学賞を受賞)。田中氏はタンパク質の質量分析の第一人者です。これはタンパク質の同定や構造の解明に必須の技術で、医学や製薬、生命科学の発展の大きな支えになっています。
我々は田中氏がノーベル賞を受賞したとき、一企業のサラリーマン(博士でもない)であることに驚いたのですが、もっと注目すべきはノーベル賞委員会が、一見 "地味な" タンパク質の質量分析技術の開発者に賞を与えたことです。この技術が生命科学の発展に与えるインパクトの大きさからの判断でしょう。
超精密な分子・原子の測定技術が科学や学問の発展に大きく寄与する。それは同位体分析も同じだと思いました。
 補記 : 魚の回遊ルート分析  |
日本経済新聞に、同位体比分析によってサケの回遊ルートを分析する話が載っていたので、その記事を引用します。サケは身近な魚ですが、海のどこを泳いで日本の河川に戻ってくるのかが今まで分かっていなかったそうです。
|
窒素は質量数14(14N)が大部分(99.6%)ですが、安定同位体として質量数15の窒素(15N)が存在します(0.4%)。この比率、15N / 14N が窒素の同位体比です。
海中のプランクトンの同位体比は、記事にあるように生物の活動が活発かどうか、海が浅いか深いかによって変わってきます。研究チームはまず、北太平洋の広範囲で動物性プランクトンを採取し、プランクトンのタンパク質の中のフェニルアラニン(アミノ酸の一種)の同位体比を測定し、北太平洋の「窒素同位体比地図」を作成しました。これとサケの脊椎骨のフェニルアラニンの分析を付き合わせて回遊ルートを調べたわけです。
北太平洋の窒素同位体比地図。ベーリング海の東部大陸棚で窒素15の比率が最も高くなる。海洋研究開発機構(JAMSTEC)のサイトより。 |
さらに記事にはサケ以外の魚の話もありました。脊椎動物の内耳には耳石と呼ばれる炭酸カルシウムでできた組織があります。魚類の耳石は年輪のような同心円状になっていて、1日に1本が形成されます。
記事では、マイワシの耳石を分析することで、回遊ルートを分析する話がありました。耳石の酸素同位体を分析すると、泳いでいた海域の水温と塩分濃度がわかるそうです。「魚の生きた環境を1日単位で読みとることも可能だ」(京都大学 石村豊穂准教授)とありました。日本経済新聞の記事にあった図を以下に引用します。
日本経済新聞(2020.5.17)より |
さらに記事にウナギの話もありました。No.267「ウナギの商用・完全養殖」に書いたように、ニホンウナギの産卵場は赤道に近いマリアナ海溝の付近にあり、そこで生まれた稚魚が成長しながら日本の河川に遡上してくるまでのルートは解明されています。しかし日本の河川で育ったウナギの成魚がどういうルートで産卵場までいくのかは謎です。また、養殖場でシラスウナギから成魚にしたウナギを放流したとき、それがマリアナ海溝の産卵場までたどりついているのかも不明です。
記事では東京大学の白井厚太朗准教授の研究の成果として、ウナギの耳石の酸素同位体比と泳ぐ場所の水温の関係を見い出したとありました。
ウナギはサケやマイワシと同じく日本人にはなじみの魚ですが、資源量(シラスウナギの漁獲量)が減少し、完全養殖はコスト面で商用化がまだ困難な状況です(No.267)。ウナギの生育環境の水温データは完全養殖の技術開発にも役立ちそうです。
(2020.5.30)
2019-01-05 12:19
nice!(0)
No.237 - フランスのAI立国宣言 [技術]
No.233/234/235 で、国立情報学研究所の新井紀子教授の著書「AI vs. 教科書が読めない子どもたち」(東洋経済報社 2018.2)の内容を紹介し、感想を書きました。その新井教授ですが、最近の新聞のコラムでフランスの "AI立国宣言" について書いていました。AIと国家戦略の関係を考える上での興味深い内容だったので、それを紹介しようと思います。コラムの見出しは、
です。
パリでのシンポジウム
2018年3月29日、フランス政府はパリで世界の人工知能(AI)分野の有識者を集めて意見交換会とシンポジウムを開催しました。新井教授もこの会に招かれました。
新井教授は、フランスもやっとAIの国家戦略に乗り出したが遅きに失したのでは、と思っていたそうです。ところがパリに行ってみて実際は違ったというのがこのコラムの主旨です。
引用に出てくるキャシー・オニールはハーバード大学で数学の博士号をとった数学者です。かつては投資会社でデータ・サイエンティストとして働いたこともありますが、現在は企業が使用するアルゴリズムに含まれる偏見を特定・是正するコンサルティング会社の会長を務めています。新井教授があげている本の原題は「Weapons of Math Destruction - How Big Data Increases Inequality and Threatens Democracy」で、Weapons of Mass Destruction(大量破壊兵器)とMath(数学)を引っかけた題名です。Weapons of Math Destruction を直訳すると「数学破壊兵器」ですが、意味としてはコラムにあるように "破壊兵器としての数学" です。この本の日本語訳は新井教授のコラムのあとに「あなたを支配し、社会を破壊する、AI・ビッグデータの罠」(インターシフト社。2018.6.18)として出版されました。
フェイスブックやディープマインドの責任者だけでなく、キャシー・オニール博士のような方を呼ぶこと自体、フランス政府のスタンスを表しています。
新井教授が指摘するように、現在のAI技術を牽引している大きな動機が「無償サービスの効率化」であることは大切な視点だと思います。グーグルやフェイスブックのような「無償サービス企業」は、AIに絶対に取り組むべきニーズがあり、AIに多大な投資をする切実な理由があります。一つだけ例をあげると、グーグルのストリート・ビューから写り込んでいる個人情報(人の顔、クルマのナンバー、家の表札など)を抹消するために、それを人手に頼っていたのではコストがかかり過ぎます。完全自動で個人情報を消す必要がある。そのためには画像の認識技術が必須で、これは物体認識というAIの重要領域です。
また「無償サービス企業」が社会的責任を果たすためにますます重要になるのが、反社会的内容(犯罪、名誉毀損に相当するような中傷・誹謗、児童ポルノ、著作権侵害 ・・・・・・)のサイト、記事、投稿、写真、動画などの自動判定とブロックや削除(ないしは警告)でしょう。さらに、フェイク・ニュース(偽ニュース)の自動判定も重要になってくるはずです。こういった判定のためには、画像認識だけでなく高度な自然言語処理が必要です。しかもそれを100以上の言語でやる必要がある。無償サービス企業が機械翻訳に取り組むのも理由があるのです。このあたりをおろそかにしていると、政府と社会によって足元をすくわれかねません。
無料サービスを人手でコストをかけてやっていたのでは話にならないのでAI技術で自動化する。そして広告で稼ぐ。彼らのビジネスモデルの根幹にかかわっています。ちなみにアマゾンも「無料サービス企業」の一つと考えると理解しやすいと思います。もちろんモノやデジタル・コンテンツには対価を払う必要がありますが、アマゾンは「買うことに付帯するコスト負担・労力負担を限りなくゼロしようとしている」会社です。
フランス・パリでの意見交換会では、その巨大無償サービス企業側からの発言(フェイスブックのAI研究を統括するヤン・ルカン。フランス出身)と、それに対するマクロン大統領の反論がありました。
このフェイスブックに反論したマクロン大統領の発言に、フランスのAI立国を目指すための戦略が透けて見えます。AIというグローバル・ゲームは、実質的にはアメリカの巨大IT企業(と中国)が牽引していますが、アメリカと中国に対抗するためにゲームのルールを変えようとしているのです。
コラムにある数学者のセドリック・ビラニは、今回のフランスのAI戦略の中心人物ですが、彼は数学のノーベル賞と言われる「フィールズ賞」を受賞した人です。世界トップクラスの数学者が国の政策立案の重要人物なのです。
また「EU一般データ保護規則」は GDPR(General Data Protection Regulation)と呼ばれるもので、新井教授のコラムが新聞に載ったすぐあと、2018年5月25日より施行されました。これは欧州経済域(EEA。EU加盟28ヶ国+ノルウェー、アイスランド、リヒテンシュタイン)で発生する個人データの管理と移転に関する規則です。個人が企業に対して個人データを消すように求められる権利(=忘れられる権利)をはじめ、さまざまな規則がありますが、重大なのは「個人データをEEA域外に移転することを原則禁止する」という部分です。GDPRの違反者には最高で2000万ユーロ(約26億円)か全世界売上げの4%のうちのいずれか高い方という巨額の制裁金が科せられます。
GDPRはEU(EEA)が米国の巨大IT企業と戦うことを宣言したものと考えられます。グーグル、フェイスブック、アマゾンは「巨大個人情報ビジネス」であるという視点が重要です。グーグル、フェイスブック、アマゾンのアカウントにログインして何らかの情報のやりとりをすると、その全情報は個人情報としてグーグル、フェイスブック、アマゾンに蓄えられます。フェイスブックやその配下のインスタグラムは、個人情報収集装置そのものだと言えます。彼らはその収集した個人情報を自らにビジネスに生かしています。まさにマクロン大統領が言うようにデータの寡占状態になっている。その一端が露呈したのが、フェイスブックの8700万人の個人データが英国の政治コンサルタント会社に売り渡され、それが流出して米大統領選挙に使われた事件(2018年3月に発覚)です。
GDPRのような規則はフランスだけで施行しても意味が薄いわけです。欧州全体=EUで実施するからこそ意味があり、EUという共同体の存在意義が現れていると思います。ちなみにイギリスはEUを脱退するそうですが、脱退してもGDPRには追従していくようです。何となくEUの "いいとこ取り" をしているようにみえます。
上の引用の中に「アルゴリズムによる判断によって引き起こされ得る深刻な人権侵害」とあります。人権侵害の仮想的な例を作ってみると、学生が就職活動で企業に提出するエントリー・シートですが、最近はAIを使ってまず第1次のスクリーニングする企業があると言います。もしその企業が「特定地域の住人は犯罪を犯す確率が高い」というデータ分析結果を持っていたとして、それを学生の選別に反映したとしたらどうでしょうか。それは "いわれのない差別" をしていることになります。
もちろんこのような単純な例はまずないでしょう。しかし本質的にこれに類することが頻発していくのではないか。その一つの理由は、世の中には「相関関係と因果関係の混同」が蔓延しているからです。No.223「因果関係を見極める」で紹介したのですが、伊藤公一朗氏(シカゴ大学助教授)はその著書『データ分析の力 因果関係に迫る思考法』で、
と書いているのでした。AIは数学的に言うと統計と確率のジャンルであり、ビッグデータの中から "相関関係" を見つけ出すのは大得意です。しかしだからといって "因果関係" があるとは言えない。ビッグデータの収集とAI技術の進展に伴って "怪しい因果関係" が世の中に溢れ、それが無分別な人たちに誤って利用され(あるいは意図的に誤って利用され)、新たな差別を生み出すことは十分に考えられます。しかも、なぜそういう結論になったのか、人間サイドでは(簡単には)わからない。
さらに相関関係をうんぬんすうる以前に、そもそもデータが誤っているというケースがあります。データの捏造、ないしは歪曲もありうる。また、各種の推定を行うためのアルゴリズムが不完全なこともあるでしょう。まさにデータとアルゴリズムのオープン性が必要になるのです。要するにフランスは、以上のようことを念頭におきつつ、AIに取り組む国家の姿勢として、
などを掲げ、それに共鳴する人材と投資を呼び込もうとしているわけです。それは新井教授のコラムにあるように、自国を優位に導くための「錦の御旗」なのだろうけれど、AIと共存する時代における重要な視点であることは確かです。英国のディープマインド社がパリに研究拠点を置くことに決めたとコラムにあります。No.174「ディープマインド」に書いたように、
わけですが、そういうスタンスの企業にとってマクロン大統領の方針は親和性があると見えました。
AIと国家戦略
フランスを離れて各国のAI戦略みてみると、まず新井教授のコラムに「アメリカと中国でAIがブーム」とあるように、中国の動向に注目する必要があります。中国の習近平政権は「中国を2030年にはAIで世界のリーダーにする」との目標を掲げ、政府投資をAI研究にそそぎ込んでいます。
中国は世界一の人口を抱えていて、中国のIT企業(検索、SNS、ネットショッピング、・・・・・・)も巨大化しています。そこにはアメリカの巨大IT産業と同様のAIに対する強いニーズがあります。
それに加えて中国は「中国共産党の独裁政権」であることがポイントで、これがAIの発展に有利に働くと考えられます。その理由ですが、まず、中国政府はインターネット上を飛び交う情報を監視し、検閲し、政府の意に沿わない情報を遮断しています。これを人手でやるには限界があるし、モレも当然出てくる。ここにAI技術を使うと検閲をより完全なものにすることができるでしょう。中国政府はフランスのマクロン大統領が掲げる「錦の御旗」とは全く逆の意味で、AIに対する "強くて切実なニーズ" があると考えられます。
また、独裁政権ということは政府の強権で個人情報を含むビッグデータを収集できるということに他なりません。そのビッグデータをAI研究に活用できる。人権を重視する民主主義の国はあり得ないようなことができるはずです。データは21世紀の石油だと言われています。AIはどこで発展するかというと、ビッグデータがあるところ、ビッグデータが収集できるところで発展するというのが素直な見方でしょう。その点で、中国は優位なポジションにあると見えます。
ただしその一方で、将来的にAIで代替できる労働者の絶対数が最も多いのも中国だと考えられます。AIで労働を代替したとき、AIではできない仕事に労働者をどう転換していくのか、それは必ずしも簡単ではないと思います。フェイスブックのヤン・ルカンが言うような「昔からそうだった、AIも問題ない」との楽観論は甘すぎると思います。中国政府も将来的には難しい舵取りを迫られそうです。
中国以外の国をみると、ドイツは新井教授のコラムにあるように「インダストリー 4.0」で、製造業を基軸に据えてAIとIoTを推進するという戦略を明確化しました(2011年)。
カナダは、そもそも現在のAIブームに火をつけた国で、トロント大学の「深層学習」の成功が今のAIの発展の端緒となりました(ヤン・ルカンも火をつけた一人です)。現在もカナダ政府はAI研究のメッカとなるべく数々の施策をうっています。
イスラエルは従来からハイテク産業の集積地で、AIのベンチャーも多く育っています。自動車で物体認識をする画像処理チップを作っている MobileEye の製品は、日本を含む世界の自動車会社が採用しています。
このような状況で、日本はどういう方向に行くのか、何を基軸に据えたAI戦略を展開するのか、そこが問題です。
日本のAI国家戦略は ?
新井教授のコラムのサブタイトルは「何のための人工知能か 日本も示せ」でした。つまりどういう国家戦略で日本はAIを推進するのかを示せということですが、これはどのように考えるべきでしょうか。
"ユニコーン企業" という言葉があります。アメリカで始まった言い方ですが、企業としての評価額が10億ドル以上(約1200億円以上)の非上場企業を言います。ユニコーンとは一角獣のことですが、一角獣のように非常にまれで、かつ利益をもたらすという意味でしょう。
2017年11月20日付の日本経済新聞(デジタル版)によると、日本において推定企業価値が100億円を越える非上場のベンチャー企業(= NEXTユニコーン)は22社あり、そのトップはプリファード・ネットワークスの2326億円とあります。2位はメルカリの1479億円で、アメリカ基準の10億ドル(約1200億円)を越えているユニコーン企業はこの2社だけです。ちなみにメルカリは2018年6月19日に東京証券取引所マザーズに上場したので「非上場」ではなくなりました(上場の初値は時価総額で6760億円)。
ユニコーン企業で企業価値最大のプリファード・ネットワークスはAI技術の開発会社で、ちょうど英国のディープマインドに似ています。もちろん日経新聞があげている22社はIT関連企業が多いので、メルカリを含めて何らかの形でAI技術を使っているはずです。しかし22社のうちで唯一、AI技術だけに特化しているのがプリファード・ネットワークスなのです。
プリファード・ネットワークスは西川徹氏と岡野原大輔氏が東京大学在学中に中心となって起業した会社です。数々の日米の大手企業が出資していますが、特にトヨタが100億円以上も出資しており、またファナックも出資して提携関係にありあます。トヨタと言えば世界最大規模の製造業であり、ファナックは工作機械で日本トップの会社です。また自動車産業と工作機械は世界的にみて日本の有力産業です。つまりプリファード・ネットワークスは世界トップクラスのモノづくり会社・産業と深い関係にあるのです。
これは日本のAIの重要な方向を示唆していると思います。つまり、モノづくりのためのAI(モノそのものに組み込まれるAIや、モノづくりを支援するAI)という方向性です。新井教授は、
と述べているのでした。無償サービスの効率化のためには「100回のうち99回正しいAI」で十分だが、モノづくりのためには「100回に1回のAIの間違いをどのようにカバーするか」という視点が必須になります。
中国は国をあげてAIに邁進していますが、もう一つの国家戦略は製造業の革新です(習近平政権の "中国製造2025")。中国は生産量では世界トップの製造分野がいくつかありますが、その質や裾野の広がり、人材の面ではアメリカや日本、ドイツに劣っていると、中国政府自らが認識してます。それを挽回しようとするのが "中国製造2025" です。ということは、日本にとっては中国の先を行く革新、という視点も重要です。
「何のためのAIか示せ」という新井教授の問いに対する有力な答えが「モノづくりのためのAI」という風に思いました。
仏のAI立国宣言 何のための人工知能か 日本も示せ (朝日新聞 2018年4月18日) |
です。
パリでのシンポジウム
2018年3月29日、フランス政府はパリで世界の人工知能(AI)分野の有識者を集めて意見交換会とシンポジウムを開催しました。新井教授もこの会に招かれました。
|
フランスのAI戦略を発表するマクロン大統領
(site : www.reuters.com)
|
新井教授は、フランスもやっとAIの国家戦略に乗り出したが遅きに失したのでは、と思っていたそうです。ところがパリに行ってみて実際は違ったというのがこのコラムの主旨です。
|
引用に出てくるキャシー・オニールはハーバード大学で数学の博士号をとった数学者です。かつては投資会社でデータ・サイエンティストとして働いたこともありますが、現在は企業が使用するアルゴリズムに含まれる偏見を特定・是正するコンサルティング会社の会長を務めています。新井教授があげている本の原題は「Weapons of Math Destruction - How Big Data Increases Inequality and Threatens Democracy」で、Weapons of Mass Destruction(大量破壊兵器)とMath(数学)を引っかけた題名です。Weapons of Math Destruction を直訳すると「数学破壊兵器」ですが、意味としてはコラムにあるように "破壊兵器としての数学" です。この本の日本語訳は新井教授のコラムのあとに「あなたを支配し、社会を破壊する、AI・ビッグデータの罠」(インターシフト社。2018.6.18)として出版されました。
フェイスブックやディープマインドの責任者だけでなく、キャシー・オニール博士のような方を呼ぶこと自体、フランス政府のスタンスを表しています。
|
新井教授が指摘するように、現在のAI技術を牽引している大きな動機が「無償サービスの効率化」であることは大切な視点だと思います。グーグルやフェイスブックのような「無償サービス企業」は、AIに絶対に取り組むべきニーズがあり、AIに多大な投資をする切実な理由があります。一つだけ例をあげると、グーグルのストリート・ビューから写り込んでいる個人情報(人の顔、クルマのナンバー、家の表札など)を抹消するために、それを人手に頼っていたのではコストがかかり過ぎます。完全自動で個人情報を消す必要がある。そのためには画像の認識技術が必須で、これは物体認識というAIの重要領域です。
また「無償サービス企業」が社会的責任を果たすためにますます重要になるのが、反社会的内容(犯罪、名誉毀損に相当するような中傷・誹謗、児童ポルノ、著作権侵害 ・・・・・・)のサイト、記事、投稿、写真、動画などの自動判定とブロックや削除(ないしは警告)でしょう。さらに、フェイク・ニュース(偽ニュース)の自動判定も重要になってくるはずです。こういった判定のためには、画像認識だけでなく高度な自然言語処理が必要です。しかもそれを100以上の言語でやる必要がある。無償サービス企業が機械翻訳に取り組むのも理由があるのです。このあたりをおろそかにしていると、政府と社会によって足元をすくわれかねません。
無料サービスを人手でコストをかけてやっていたのでは話にならないのでAI技術で自動化する。そして広告で稼ぐ。彼らのビジネスモデルの根幹にかかわっています。ちなみにアマゾンも「無料サービス企業」の一つと考えると理解しやすいと思います。もちろんモノやデジタル・コンテンツには対価を払う必要がありますが、アマゾンは「買うことに付帯するコスト負担・労力負担を限りなくゼロしようとしている」会社です。
フランス・パリでの意見交換会では、その巨大無償サービス企業側からの発言(フェイスブックのAI研究を統括するヤン・ルカン。フランス出身)と、それに対するマクロン大統領の反論がありました。
|
このフェイスブックに反論したマクロン大統領の発言に、フランスのAI立国を目指すための戦略が透けて見えます。AIというグローバル・ゲームは、実質的にはアメリカの巨大IT企業(と中国)が牽引していますが、アメリカと中国に対抗するためにゲームのルールを変えようとしているのです。
|
コラムにある数学者のセドリック・ビラニは、今回のフランスのAI戦略の中心人物ですが、彼は数学のノーベル賞と言われる「フィールズ賞」を受賞した人です。世界トップクラスの数学者が国の政策立案の重要人物なのです。
また「EU一般データ保護規則」は GDPR(General Data Protection Regulation)と呼ばれるもので、新井教授のコラムが新聞に載ったすぐあと、2018年5月25日より施行されました。これは欧州経済域(EEA。EU加盟28ヶ国+ノルウェー、アイスランド、リヒテンシュタイン)で発生する個人データの管理と移転に関する規則です。個人が企業に対して個人データを消すように求められる権利(=忘れられる権利)をはじめ、さまざまな規則がありますが、重大なのは「個人データをEEA域外に移転することを原則禁止する」という部分です。GDPRの違反者には最高で2000万ユーロ(約26億円)か全世界売上げの4%のうちのいずれか高い方という巨額の制裁金が科せられます。
GDPRはEU(EEA)が米国の巨大IT企業と戦うことを宣言したものと考えられます。グーグル、フェイスブック、アマゾンは「巨大個人情報ビジネス」であるという視点が重要です。グーグル、フェイスブック、アマゾンのアカウントにログインして何らかの情報のやりとりをすると、その全情報は個人情報としてグーグル、フェイスブック、アマゾンに蓄えられます。フェイスブックやその配下のインスタグラムは、個人情報収集装置そのものだと言えます。彼らはその収集した個人情報を自らにビジネスに生かしています。まさにマクロン大統領が言うようにデータの寡占状態になっている。その一端が露呈したのが、フェイスブックの8700万人の個人データが英国の政治コンサルタント会社に売り渡され、それが流出して米大統領選挙に使われた事件(2018年3月に発覚)です。
GDPRのような規則はフランスだけで施行しても意味が薄いわけです。欧州全体=EUで実施するからこそ意味があり、EUという共同体の存在意義が現れていると思います。ちなみにイギリスはEUを脱退するそうですが、脱退してもGDPRには追従していくようです。何となくEUの "いいとこ取り" をしているようにみえます。
上の引用の中に「アルゴリズムによる判断によって引き起こされ得る深刻な人権侵害」とあります。人権侵害の仮想的な例を作ってみると、学生が就職活動で企業に提出するエントリー・シートですが、最近はAIを使ってまず第1次のスクリーニングする企業があると言います。もしその企業が「特定地域の住人は犯罪を犯す確率が高い」というデータ分析結果を持っていたとして、それを学生の選別に反映したとしたらどうでしょうか。それは "いわれのない差別" をしていることになります。
もちろんこのような単純な例はまずないでしょう。しかし本質的にこれに類することが頻発していくのではないか。その一つの理由は、世の中には「相関関係と因果関係の混同」が蔓延しているからです。No.223「因果関係を見極める」で紹介したのですが、伊藤公一朗氏(シカゴ大学助教授)はその著書『データ分析の力 因果関係に迫る思考法』で、
ニュースや新聞を見てみると相関関係と因果関係を混同させた怪しい分析結果は世の中に溢れています。 |
と書いているのでした。AIは数学的に言うと統計と確率のジャンルであり、ビッグデータの中から "相関関係" を見つけ出すのは大得意です。しかしだからといって "因果関係" があるとは言えない。ビッグデータの収集とAI技術の進展に伴って "怪しい因果関係" が世の中に溢れ、それが無分別な人たちに誤って利用され(あるいは意図的に誤って利用され)、新たな差別を生み出すことは十分に考えられます。しかも、なぜそういう結論になったのか、人間サイドでは(簡単には)わからない。
さらに相関関係をうんぬんすうる以前に、そもそもデータが誤っているというケースがあります。データの捏造、ないしは歪曲もありうる。また、各種の推定を行うためのアルゴリズムが不完全なこともあるでしょう。まさにデータとアルゴリズムのオープン性が必要になるのです。要するにフランスは、以上のようことを念頭におきつつ、AIに取り組む国家の姿勢として、
・ | 情報とデータの独占禁止 | ||
・ | アルゴリズムの透明性の担保 | ||
・ | ダイバーシティ(多様性) | ||
・ | 人権と民主主義に貢献するAI |
などを掲げ、それに共鳴する人材と投資を呼び込もうとしているわけです。それは新井教授のコラムにあるように、自国を優位に導くための「錦の御旗」なのだろうけれど、AIと共存する時代における重要な視点であることは確かです。英国のディープマインド社がパリに研究拠点を置くことに決めたとコラムにあります。No.174「ディープマインド」に書いたように、
グーグルに買収されるにあたって、ディープマインド社はグーグルに対し「AI倫理委員会」の設立を要求した |
わけですが、そういうスタンスの企業にとってマクロン大統領の方針は親和性があると見えました。
AIと国家戦略
フランスを離れて各国のAI戦略みてみると、まず新井教授のコラムに「アメリカと中国でAIがブーム」とあるように、中国の動向に注目する必要があります。中国の習近平政権は「中国を2030年にはAIで世界のリーダーにする」との目標を掲げ、政府投資をAI研究にそそぎ込んでいます。
中国は世界一の人口を抱えていて、中国のIT企業(検索、SNS、ネットショッピング、・・・・・・)も巨大化しています。そこにはアメリカの巨大IT産業と同様のAIに対する強いニーズがあります。
それに加えて中国は「中国共産党の独裁政権」であることがポイントで、これがAIの発展に有利に働くと考えられます。その理由ですが、まず、中国政府はインターネット上を飛び交う情報を監視し、検閲し、政府の意に沿わない情報を遮断しています。これを人手でやるには限界があるし、モレも当然出てくる。ここにAI技術を使うと検閲をより完全なものにすることができるでしょう。中国政府はフランスのマクロン大統領が掲げる「錦の御旗」とは全く逆の意味で、AIに対する "強くて切実なニーズ" があると考えられます。
また、独裁政権ということは政府の強権で個人情報を含むビッグデータを収集できるということに他なりません。そのビッグデータをAI研究に活用できる。人権を重視する民主主義の国はあり得ないようなことができるはずです。データは21世紀の石油だと言われています。AIはどこで発展するかというと、ビッグデータがあるところ、ビッグデータが収集できるところで発展するというのが素直な見方でしょう。その点で、中国は優位なポジションにあると見えます。
ただしその一方で、将来的にAIで代替できる労働者の絶対数が最も多いのも中国だと考えられます。AIで労働を代替したとき、AIではできない仕事に労働者をどう転換していくのか、それは必ずしも簡単ではないと思います。フェイスブックのヤン・ルカンが言うような「昔からそうだった、AIも問題ない」との楽観論は甘すぎると思います。中国政府も将来的には難しい舵取りを迫られそうです。
中国以外の国をみると、ドイツは新井教授のコラムにあるように「インダストリー 4.0」で、製造業を基軸に据えてAIとIoTを推進するという戦略を明確化しました(2011年)。
カナダは、そもそも現在のAIブームに火をつけた国で、トロント大学の「深層学習」の成功が今のAIの発展の端緒となりました(ヤン・ルカンも火をつけた一人です)。現在もカナダ政府はAI研究のメッカとなるべく数々の施策をうっています。
イスラエルは従来からハイテク産業の集積地で、AIのベンチャーも多く育っています。自動車で物体認識をする画像処理チップを作っている MobileEye の製品は、日本を含む世界の自動車会社が採用しています。
このような状況で、日本はどういう方向に行くのか、何を基軸に据えたAI戦略を展開するのか、そこが問題です。
日本のAI国家戦略は ?
新井教授のコラムのサブタイトルは「何のための人工知能か 日本も示せ」でした。つまりどういう国家戦略で日本はAIを推進するのかを示せということですが、これはどのように考えるべきでしょうか。
"ユニコーン企業" という言葉があります。アメリカで始まった言い方ですが、企業としての評価額が10億ドル以上(約1200億円以上)の非上場企業を言います。ユニコーンとは一角獣のことですが、一角獣のように非常にまれで、かつ利益をもたらすという意味でしょう。
2017年11月20日付の日本経済新聞(デジタル版)によると、日本において推定企業価値が100億円を越える非上場のベンチャー企業(= NEXTユニコーン)は22社あり、そのトップはプリファード・ネットワークスの2326億円とあります。2位はメルカリの1479億円で、アメリカ基準の10億ドル(約1200億円)を越えているユニコーン企業はこの2社だけです。ちなみにメルカリは2018年6月19日に東京証券取引所マザーズに上場したので「非上場」ではなくなりました(上場の初値は時価総額で6760億円)。
ユニコーン企業で企業価値最大のプリファード・ネットワークスはAI技術の開発会社で、ちょうど英国のディープマインドに似ています。もちろん日経新聞があげている22社はIT関連企業が多いので、メルカリを含めて何らかの形でAI技術を使っているはずです。しかし22社のうちで唯一、AI技術だけに特化しているのがプリファード・ネットワークスなのです。
プリファード・ネットワークスは西川徹氏と岡野原大輔氏が東京大学在学中に中心となって起業した会社です。数々の日米の大手企業が出資していますが、特にトヨタが100億円以上も出資しており、またファナックも出資して提携関係にありあます。トヨタと言えば世界最大規模の製造業であり、ファナックは工作機械で日本トップの会社です。また自動車産業と工作機械は世界的にみて日本の有力産業です。つまりプリファード・ネットワークスは世界トップクラスのモノづくり会社・産業と深い関係にあるのです。
これは日本のAIの重要な方向を示唆していると思います。つまり、モノづくりのためのAI(モノそのものに組み込まれるAIや、モノづくりを支援するAI)という方向性です。新井教授は、
日本はモノづくりの国である。99%の精度を「100回のうち99回正しい」ではなく「100回に1回間違える」と認識すべき国だ。 |
と述べているのでした。無償サービスの効率化のためには「100回のうち99回正しいAI」で十分だが、モノづくりのためには「100回に1回のAIの間違いをどのようにカバーするか」という視点が必須になります。
中国は国をあげてAIに邁進していますが、もう一つの国家戦略は製造業の革新です(習近平政権の "中国製造2025")。中国は生産量では世界トップの製造分野がいくつかありますが、その質や裾野の広がり、人材の面ではアメリカや日本、ドイツに劣っていると、中国政府自らが認識してます。それを挽回しようとするのが "中国製造2025" です。ということは、日本にとっては中国の先を行く革新、という視点も重要です。
「何のためのAIか示せ」という新井教授の問いに対する有力な答えが「モノづくりのためのAI」という風に思いました。
2018-07-20 22:14
nice!(1)
No.233 - AI vs. 教科書が読めない子どもたち [技術]
今回は No.175「半沢直樹は機械化できる」と No.196「東ロボにみるAIの可能性と限界」の続きです。
No.175 で、オックスフォード大学の研究者、カール・フレイとマイケル・オズボーンの両博士が2013年9月に発表した「雇用の未来:私たちの仕事はどこまでコンピュータに奪われるか?(The Future of Employment : How Susceptible are Jobs to Computerization ?)」という論文の内容を紹介しました。この論文は、「現存する職種の47%がAIに奪われる」として日本のメディアでもたびたび紹介されたものです。それに関連して、国立情報学研究所の新井紀子教授が「半沢直樹の仕事は人工知能(AI)で代替できる」と2013年に予想した話を書きました。半沢直樹は銀行のローン・オフィサー(貸付けの妥当性を判断する業務)であり、銀行に蓄積された過去の貸付けデータをもとにAI技術を使って機械的に行うことが可能だというものです。
No.196「東ロボにみるAIの可能性と限界」ではその新井教授が主導した「ロボットは東大に入れるか(略称:東ロボ)」プロジェクトの成果を紹介しました。これは大学入試(具体的にはセンター試験の模試)を題材にAIで何ができて何ができないのかを明らかにした貴重なプロジェクトです。
その新井教授が最近「AI vs. 教科書が読めない子どもたち」(東洋経済報社 2018.2)という本を出版されました(以下「本書」)。AIの強力さと弱点を「東ロボ」を例に実証的に説明し、AIが社会に浸透していく中で我々は何をすべきかを示した良い本だと思うので、その内容の一部を紹介したいと思います。
そもそも新井教授が「東ロボ」プロジェクトを始めるきっかけになったのは、人間の仕事がAIに奪われていくという危機感でした。実は、新井教授はオックスフォード大学の論文以前に、人間の仕事の半分がAIやコンピュータに奪われるという予測を発表していました。2010年に出版した「コンピュータが仕事を奪う」(日本経済新聞社。2010)です。ところが日本では誰もこの警告を真に受けませんでした。
偏差値 57.1 の成績をとった東ロボくん
東ロボの成果については、No.196「東ロボにみるAIの可能性と限界」に紹介したのですが、復習のために本書から引用します。
ちなみに偏差値57.1だった「2016年度進研模試 総合学力マーク模試・6月」において東ロボくんの得意・不得意を偏差値でみると、得意科目は世界史Bの66.3、数学IAの57.8、数学IIBの55.5などです。一方不得意科目は英語(筆記)の50.5、国語の49.7です。
偏差値 57.1が何を意味するかですが、これは全受験生の上位20%に東ロボくんが入ったということです。逆に言うと全受験生の80%は東ロボくんより成績が下だったわけです。
もちろんこの程度では東大には入学はできません。東大の偏差値は77以上であり、入学できるのは全受験生の0.4%以下です。新井教授は、このまま東ロボくんを成長させたとしても「偏差値60は運がよければ達成可能かもしれないが、偏差値65は不可能」と言っています。なぜ不可能なのか、その説明が本書の一つの目的だと言ってもいいでしょう。
とはいえ、東ロボくんがMARCHや関関同立の一部学科に入学可能というのは重大な事実です。AIの技術は急速に進歩していて、生活のあらゆる側面に入り込みつつあります。我々はそういう時代に生きているという認識がまず必要です。
以下、東ロボくんの得意科目(世界史、数学)と不得意科目(英語)について、どうやって問題を解いているのか、その一端を本書から紹介します。
東ロボくん:世界史の攻略法
世界史のセンター入試の7割程度は正誤判定問題、ないしは正誤判定に帰着できる問題です。たとえば次のような出題です。
分析の結果、正誤判定問題においては多くの場合で問題文の条件は無視できることが分かりました。上の問題でいうと「(カロリング朝フランク王国が建国された)8世紀」の部分です。つまりこの問題の場合、選択肢の①②③は条件を無視して正誤判定が可能であり、④だけで「8世紀」という条件が必要になります。そこで東ロボくんはまず、条件を無視して正誤を判定します。どうやっているかが以下です。
たとえば「②カール大帝は、マジャール人を撃退した。」が正しいか誤っているかですが、まずこの文を回答とするような質問文を作り出します。たとえば「②カール大帝は、○○○を撃退した。この○○○は何か」という質問文です。
次にオントロジーを利用します。情報科学で言うオントロジーとは「概念体系」であり、さまざまな概念と概念の関係性を表したものです。たとえば「ハールーン・アッラシードは人名である」「ハールーン・アッラシードはカリフの一人である」「マジャール人は民族である」などです。「死んだ人はそれ以降の事項を起こせない」というのもオントロジーです。
世界史攻略のためのオントロジーが手作りで作成されました。そのオントロジーを用いると先ほどの質問文は「②カール大帝は、この民族を撃退した。この民族とは何か」と書き換えられます。この質問のように、単語で答える質問を "ファクトイド" と言います。実はファクトイド型の質問に答えて一躍有名になった人工知能があります。IBMのワトソンです。
ワトソンは2011年に、アメリカのテレビのクイズ番組「ジェパディ!」で人間のチャンピオンに勝って大きな話題になったコンピュータ・システムです。この「ジェパディ!」で出題される問題がファクトイドなのです。本書にその例があります。
この質問の "this" が何かを答えるのが「ジェパディ!」です。ワトソンでやっているのは基本的には人間がやるのと同じような「情報検索」です。人間ならこの質問に答えるにはどうするか。検索語を慎重に選んで「モーツァルト 最後 交響曲」で Google検索をすると、トップに出るのは Wikipedia の「交響曲第41番(モーツァルト)」の項です(2018.6.1 現在)。その「概要」のところは「本作はローマ神話の最高神ユーピテルにちなんで『ジュピター』(ドイツ語ではユーピター)のニックネームを持つが、・・・・・・」という文章で始まります。これで正解が「ジュピター」だ分かります。もちろん「ジュピター」が惑星の名前でもあることを知っているのが前提です。
もっと一般的には、検索でヒットしたテキストに、検索につかった単語がどのように現れるかを調べます。複数の単語がテキストにどのように現れるかを「共起」といい、共起関係を使って文にあたりをつけ、その文に含まれる「惑星」のカテゴリの単語を調べます。
ワトソンは問題文を単語に分解し、構文解析をし、検索にかけるべき重要な単語を判断します。また「ジュピターは惑星である」というようなオントロジーを備えているので質問に回答できるというわけです。
東ロボくんが「②カール大帝は、この民族を撃退した。この民族とは何か」という質問に答えるのも、基本的にワトソンと同じです。その結果、答として最も高いスコア、3.2 を獲得したのは「アヴァール人」でした。一方、もともとの問題文にあった「マジャール人」のスコアは 1.1 であり、その差は 2.1 です。この結果、東ロボくんは「②カール大帝は、マジャール人を撃退した。」を誤文と判定しました。
この差の 2.1 が正誤判定をするに十分に大きな数値なのかどうか、それは世界史の過去問を機械学習して決めました。つまり過去問のスコアを東ロボくんに計算させ、正解(正か誤のどちらか)と照らし合わせて、どの程度のスコア差が正誤判定になりうるかを学習したわけです。このようなやり方で、東ロボくんの世界史の偏差値は 66.5 までになりました。
以上の「世界史の攻略法」でポイントになっているのは、世界史の模試で出題できる歴史上の事実が限定されていること、つまり高校3年までに学習する範囲に限られることです。従ってオントロジーも手作りで作成できます。しかし、世界史の全知識が対象だったり、「ジェパディ!」のようにさまざまなジャンルの問題が出題される場合には、手作りでは難しい。従って、Wikipedia の全情報から文脈を解析してオントロジーを自動的に作るというような技術が必要になります。
ともかくセンター模試の世界史の結果から分かるのは、限定された情報の範囲の問題に対する回答は、データを蓄積した上での情報検索や統計処理で好成績をあげられることです。
東ロボくん:数学の攻略法
一方、世界史と並んで好成績あげた数学は、世界史とは全く対照的な方法がとられました。それは「数学の問題を自然言語処理で数式に "直訳" し、数式処理で問題を解く」という方法です。具体的な方法は専門的になるので本書には書いてありませんが、統計的・確率的にやるのではなく、論理だけで回答するということです。
数学では東大模試(理系)で6問中4問に完答し、偏差値77.2という驚異的な成績をあげました。大学入試の最難関は東大の理科3類ですが、ここを突破する鍵は数学の成績です。理3を受けるような受験生は、他の科目では大した差がつきません。数学で差がつきます。6問中4問に完答というのは、数学だけでいうと理3突破ラインです。これを数式処理でやったというのは東ロボくんの大きなブレークスルーであり、世界的に誇れる成果でしょう。
要するに、正確で限定的な語彙からなる問題文であれば、現在主流の統計的な自然言語処理ではなく、論理的な自然言語処理と数式処理で解けるということです。従って東ロボくんが「論理」を使って解くのは数学と物理の一部だけです。
ただし数学が理3突破ラインだといっても、東ロボくんが理3に合格できるわけではありません。それは不得意科目があるからです。その代表が英語です。
英語攻略法:150億文を暗記させても・・・・・・
英語の攻略法も、世界史と同じ統計的手法です。つまり大量の英語の例文を暗記させて、その情報検索と統計処理で回答するわけです。2016年の模試の際には、500億単語からなる16億文を暗記させたといいます。英語の文法(=論理)は一切使いません。この統計的やりかたで語順整序問題(問題に示されている数個の単語を正しい順に並べて文の穴を埋める問題)は100%の正解が出るまでになりました。
しかし東ロボくんがつまづいたのは、複文(会話文)の穴埋め問題、会話文完成問題でした。その例が本書にあります。
もちろん正解は④ですが、東ロボくんは②を選んでしまいました。2016年の会話文完成問題の正解率は4割を切ったそうです。
仮にこの問題が日本語の訳文で出題されたら、中学生や小学生(高学年)でも正解できるでしょう。子どもでもできる常識推論の問題だからです。これがセンター模試に出題されるのは "問題文が英語で書かれている" からであり、その英語が正しく理解できているかをテストしているわけです。英語さえ理解できれば、あとは子どもでも可能な推論になる。ところが東ロボくんにとってはその常識推論が難しいのです。
常識をコンピュータに教えればいいのではと思われるかもしれません。靴には紐がある、紐はほどける、紐は結ぶ、といった常識です。しかし中学生レベルの常識でも膨大にあります。新井教授は、
と書いています。AIの研究でよくぶつかる「常識の壁」です。自然な会話の流れというのは、会話のバックにある常識を前提としています。また、発言によって引き起こされる "常識的な" 人の感情を前提としています。その常識や感情をコンピュータに教え込むのが難しい。だからこそ東ロボくんは、膨大な英語の例文を集めて情報検索と統計処理で問題を解く方針にしたのです。
東ロボくんに教えた例文は、最終的には150億文になったそうです。それでも会話文完成の4択問題の正答率を画期的には上げられなかったと本書にあります。では、もっとたくさんの例文を集めたらどうか。それは新井教授によると「ビッグデータ幻想」だと言います。
東ロボくんがセンター入試をどのように解いているのかの説明はこの程度にして、以下は社会に広まるAIの強力さと限界についてです。
社会に広まるAI
現代社会にはAI技術が広く使われ出しています。その例を本書から紹介しますと、まず顧客と企業の接点となるコールセンターです。上の "ファクトイド" のところで説明した IBM のワトソンもコールセンターに使われています。
ワトソンに限らす、コールセンターにAI技術を導入する場合は基本的に同じやりかたです。そこで使われている技術は、音声認識(声のテキスト化)、テキストの形態素分析(単語への分解)、構文解析、機械学習を使った情報検索などです。コールセンターは企業にとって顧客との接点となる重要な部門であり、的確な回答をしたり、問い合わせが終わるまでの時間を短縮することが企業にとっての大きな価値となります。
コールセンターにAI技術が有効な理由は、東ロボくんが世界史の模試を得意としているのと同じです。銀行のコールセンターで扱われる情報は「銀行が個人向けに提供している商品・サービスに関する情報」に限られます。それは多岐に渡っていて複雑でしょうが、とにかく枠組みが限定されていて、そこで使われる言葉や概念も限定できる。そこがポイントだと思います。
とは言え、クイズに答えていたワトソンが銀行のコールセンターで使われるということは、AI技術の汎用性を示しています。
AI技術が使われている別の例は、機械学習とディープラーニング(深層学習)を使った画像認識です。画像に写っている物体を検知し、それが何かを判別します。これは自動運転の "眼" に当たる部分や、CT画像からの病気の診断、監視カメラによる不審者検知、工場における不良品検出などに応用が広がっています。なぜ画像の認識がうまくいくのか。本書では2つの要因があげられています。
人間が外界から受け取る情報の大部分は眼からといいますが、画像認識は機械が(コンピュータが)眼を持ったことに相当します。No.175「半沢直樹は機械化できる」の「補記2」にアマゾンのレジなし店舗(Amazon GO)の話を書きましたが、レジ係りを不要にしたのは画像認識技術です。まさに "AIが仕事を奪う" そのものです。しかし本書には、画像認識が本質的に抱えている問題点も指摘されています。
このような "落とし穴" は、よくあるAIの解説では指摘されないことだと思います。
AIの限界:AIとは数学のことである
社会に急速に浸透しつつあるAIですが、AIにはできないことや限界があります。この限界はコンピュータの性能が足りないからではありません。本書にその象徴的な話が出てきます。
もの凄い速度のコンピュータが登場したら、あるいは量子コンピュータが登場したら、人間の知性と同等の(あるいはそれを上回る)AIができるということではないのです。AIの限界は計算機のスピードの問題ではありません。なぜ限界があるのか。人間の知性と同等のAIはなぜできないのか。本書の説明を簡潔に一言で言うと、その理由は、
となるでしょう。数学に帰着できる問題はAIで解ける。数学の問題は最終的には計算問題になり、その計算をやるのがコンピュータ(=計算機)です。従って、数学の言葉で表現できない問題はAIでも解けない。
数学の言葉とは「論理」と「確率」と「統計」です。「論理」とは、たとえば「A=B で B=C なら A=C である」という三段論法に始まって、こうだからこうなるという体系のすべてです。方程式、関数、幾何学、行列、微積分など、高校3年までに習う数学の大部分は「論理」の範疇です。
「確率」は、必ずそうなるのではなくランダムに発生する事象、不確実性をもって発生する事象を表現する数学の言葉です。
一方、世の中にみられる事象は、確実に起こるのでもなくと、かといってランダムに起こるのでもないことが多数あります。こういった現実を観測して得られたデータを説明する数学の言葉が「統計」です。
数学の言葉は「論理」と「確率」と「統計」の3つであり、それしかありません。先ほどの東ロボくんのセンター入試でいうと、世界史の正誤問題と英会話の穴埋め問題は「統計」「確率」で解き、数学は「論理」でアプローチしていることになります。
「論理」「確率」「統計」の言葉で表現できないものは数学になじまず、従ってAI技術の適用ができなくなる。その例としてはまず、問題の枠組み(=フレーム)がはっきりしないものがあります。問題を考える範囲やスコープが曖昧なものや、解くときの条件が不明だったりするものです。それが曖昧だったり不明だと、解くために考慮すべきことが膨大に広がってしまい、現実には解けなくなります。いわゆる、AIにおける「フレーム問題」です。
東ロボくんが世界史が得意という理由はここにあります。入試の世界史は、基本的には、学習指導要領、指導要領に沿って作られた教科書、教科書の理解を助けるための参考書という情報から作問できるものに限られます。これらの考えうるすべの情報をコンピュータに入れることも可能です。つまり「枠組み」がはっきりしている。従って上で例をあげた正誤判定だけでなく、たとえば次のような東大の2次試験の問題(模試)にも東ロボくんは回答できます。
大変に "難しそうな" 問題ですが、東ロボくんは大丈夫です。最初の引用にあったように、このような東大の2次の論述問題で東ロボくんは偏差値61.8を獲得しました。
これと真逆なのが「英語の会話文完成」問題です。会話文完成に必要なのは、自然な会話の流れを判定するために高校3年生であれば誰もがもっているであろう「常識」です。これは範囲が極めて曖昧であり、常識を書き出していくと膨大になります。「英語の会話文完成」がAIにとって難しい理由がここにあります。
数学でできないことはAIでもできないのですが、数学でできないことの一つに「意味」の記述があります。意味が重要になるものは言葉です。発話には意図があり、発話に応じることは意味の理解があるわけです。
意味を記述できる数学の言葉はありません。もちろん分野を限定すれば可能でしょう。東ロボくんは東大の2次試験・数学で偏差値 76.2 という驚異的な成績をあげましたが、それは問題文をその意味まで含めて「論理」という数学の言葉で記述できたからでしょう。しかしそのやりかたを一般の言葉にまで広げることはできない。言葉の意味を記述しているが辞書であるように、自然言語の意味は自然言語でしか記述できないのです。
本書にはIBMのワトソンがみずほ銀行のコールセンターに導入され、また東大の医科学研究所にも導入されて病気の診断に使われていることが紹介されています。まったく違った業種に同じコンピュータシステムが導入できるということは、ワトソンは「意味」を関知せずに「統計」と「確率」を駆使した情報検索で動いているからです。
自然言語処理は、自動翻訳システムや質問応答システムを作るときに必須です。しかし、AIに文法などの言葉のルールを教えて論理的な推論で言語を扱う研究は、ことごとく失敗に終わりました。だからこそ「統計」「確率」で自然言語処理を行うのが主流になったのです。
毎年バンクーバーで開催されるTED(Technology Entertainment Design)という会議があります。「広める価値のあるアイデア」を世界中から集めてプレゼンテーションが行われます。5日間ぶっ通しのチケットは150万円ですが、発売と同時に売り切れるそうです。新井教授は 2017年4月のTEDに招かれて講演したのですが、同じセッションに、代表的な質問応答システムである Siri の開発者であるトム・グルーバーがいました。
以上のことからすると「人間の知性と同等ベルのAI = 真の意味でのAI」はまず無理なことがわかります。なぜかというと、まず人間の知能の原理が解明されていないからです。
科学者は科学の限界に謙虚でなければなりません。それを新井教授は次のように言っています。
AI技術によって人間の仕事がなくなる
AIは以上のように限界があります。しかしその一方でAIは極めて強力な技術であり、東ロボくんはセンター模試で全受験生の80%より上にランクされるほどの実力を持ちました。オックスフォード大学「雇用の未来」では広範囲(約半分)の仕事がAI技術で置き換えられると想定しています(No.175「半沢直樹は機械化できる」参照)。
考えてみると「新しい発明や技術の登場で仕事がなくなる」のは今に始まったことではありません。むしろ人類の歴史はその繰り返しでした。新井教授も指摘しているのですが「便利になる」ということを突き詰めて考えると、それは「労働を置き換える」ということです。そして新技術は人類全体としては恩恵が多く、新技術の登場以前よりも社会がより豊かになってきました。そのことから「AI技術で無くなる仕事があったとしても、人類全体としてはそれを乗り越えてより豊かな世界を築いていけるに違いない」という楽観論があります。
しかし、そうとも言えないのです。その理由は2つあって、1つはAI技術で無くなると想定される仕事が極めて広範囲であることです。従来の新技術は特定の仕事が無くなるタイプでした。たとえば自動車が発明されて御者が無用になるといった ・・・・・・。それと比較してAI技術では全仕事の半数が無くなる(だろう)と予想されているのです。
2番目の理由ですが、AI技術でより豊かな世界になるためには「AIではできない仕事」や「AIで無くなる仕事に代わって新たに発生する仕事」に人が適応できることが必要ですが、そこに疑問があるからです。AIが不得意な仕事とは、コミュニケーション能力や読解力や常識が必要な仕事であり、加えて人間らしい柔軟な判断が必要な仕事です。
その大切な読解力が危機的な状況にあると、新井教授が明らかにしています。新井教授は東ロボくんのプロジェクトと並行して、中高生を対象にしたリーティング・スキル・テストを実施しました。その衝撃的な結果を次回に紹介します。
本書「AI vs.教科書が読めない子どもたち」の前半(AIについて)の感想ですが、No.196「東ロボにみるAIの可能性と限界」にも書いたように、
ことに好感しました。大学入試という限定した範囲だけれども、入試は人の知的な営みの成果を示す重要なシーンです。それをテーマにして実験をした結果をもとに論が展開されている。世の中には根拠も示さず「AIが人間の脳を越える」などと吹聴する論説がよくありますが、それらとは一線を画した本です。科学の基本的な方法論にのっとって書かれた本、そこに価値があると思いました。
2020年7月16日に行われた第91期棋聖戦5番勝負の第4局で、藤井聡太7段が渡辺明3冠を破り、史上最年少(17歳11ヶ月)のタイトル・ホルダーとなりました。藤井棋聖は7月21日にメディア各社のインタビューに応じましたが、将棋のAIソフトについて語った部分があったので、それを紹介します。
本文中で新井教授は「AIの弱点は意味がわからないこと」と言っていましたが、藤井棋聖の言葉を借りると人間の強みは「理由づけができる」ことであり、これは「意味の理解」と同じことでしょう。藤井棋聖の将棋AIについての発言はシンプルで、あたりまえといえばその通りですが、史上最年少のタイトル・ホルダーとなった人の発言は、やはり重みがあると思いました。
No.175 で、オックスフォード大学の研究者、カール・フレイとマイケル・オズボーンの両博士が2013年9月に発表した「雇用の未来:私たちの仕事はどこまでコンピュータに奪われるか?(The Future of Employment : How Susceptible are Jobs to Computerization ?)」という論文の内容を紹介しました。この論文は、「現存する職種の47%がAIに奪われる」として日本のメディアでもたびたび紹介されたものです。それに関連して、国立情報学研究所の新井紀子教授が「半沢直樹の仕事は人工知能(AI)で代替できる」と2013年に予想した話を書きました。半沢直樹は銀行のローン・オフィサー(貸付けの妥当性を判断する業務)であり、銀行に蓄積された過去の貸付けデータをもとにAI技術を使って機械的に行うことが可能だというものです。
No.196「東ロボにみるAIの可能性と限界」ではその新井教授が主導した「ロボットは東大に入れるか(略称:東ロボ)」プロジェクトの成果を紹介しました。これは大学入試(具体的にはセンター試験の模試)を題材にAIで何ができて何ができないのかを明らかにした貴重なプロジェクトです。
|
そもそも新井教授が「東ロボ」プロジェクトを始めるきっかけになったのは、人間の仕事がAIに奪われていくという危機感でした。実は、新井教授はオックスフォード大学の論文以前に、人間の仕事の半分がAIやコンピュータに奪われるという予測を発表していました。2010年に出版した「コンピュータが仕事を奪う」(日本経済新聞社。2010)です。ところが日本では誰もこの警告を真に受けませんでした。
|
偏差値 57.1 の成績をとった東ロボくん
国立情報学研究所ニュース(NII Today)No.60(2013.6)。特集「ロボットは東大に入れるか」の表紙
|
東ロボの成果については、No.196「東ロボにみるAIの可能性と限界」に紹介したのですが、復習のために本書から引用します。
|
ちなみに偏差値57.1だった「2016年度進研模試 総合学力マーク模試・6月」において東ロボくんの得意・不得意を偏差値でみると、得意科目は世界史Bの66.3、数学IAの57.8、数学IIBの55.5などです。一方不得意科目は英語(筆記)の50.5、国語の49.7です。
大学入試センター模試(2016)の成績
ベネッセコーポレーション「進研模試」
ベネッセコーポレーション「進研模試」
(カッコ内は2015年の成績)
得点 | 全国平均 | 偏差値 | |
英語(筆記) | 95(80) | 92.9 | 50.5(48.4) |
英語(リスニング) | 14(16) | 26.3 | 36.2(40.5) |
国語(現代文+古文) | 96(90) | 96.8 | 49.7(45.1) |
数学 I A | 70(75) | 54.4 | 57.8(64.0) |
数学Ⅱ B | 59(77) | 46.5 | 55.5(65.8) |
世界史 B | 77(76) | 44.8 | 66.3(66.5) |
日本史 B | 52(55) | 47.3 | 52.9(54.8) |
物理 | 62(42) | 45.8 | 59.0(46.5) |
合計(950点満点) | 525(511) | 437.8 | 57.1(57.8) |
偏差値 57.1が何を意味するかですが、これは全受験生の上位20%に東ロボくんが入ったということです。逆に言うと全受験生の80%は東ロボくんより成績が下だったわけです。
もちろんこの程度では東大には入学はできません。東大の偏差値は77以上であり、入学できるのは全受験生の0.4%以下です。新井教授は、このまま東ロボくんを成長させたとしても「偏差値60は運がよければ達成可能かもしれないが、偏差値65は不可能」と言っています。なぜ不可能なのか、その説明が本書の一つの目的だと言ってもいいでしょう。
とはいえ、東ロボくんがMARCHや関関同立の一部学科に入学可能というのは重大な事実です。AIの技術は急速に進歩していて、生活のあらゆる側面に入り込みつつあります。我々はそういう時代に生きているという認識がまず必要です。
以下、東ロボくんの得意科目(世界史、数学)と不得意科目(英語)について、どうやって問題を解いているのか、その一端を本書から紹介します。
東ロボくん:世界史の攻略法
世界史のセンター入試の7割程度は正誤判定問題、ないしは正誤判定に帰着できる問題です。たとえば次のような出題です。
|
分析の結果、正誤判定問題においては多くの場合で問題文の条件は無視できることが分かりました。上の問題でいうと「(カロリング朝フランク王国が建国された)8世紀」の部分です。つまりこの問題の場合、選択肢の①②③は条件を無視して正誤判定が可能であり、④だけで「8世紀」という条件が必要になります。そこで東ロボくんはまず、条件を無視して正誤を判定します。どうやっているかが以下です。
たとえば「②カール大帝は、マジャール人を撃退した。」が正しいか誤っているかですが、まずこの文を回答とするような質問文を作り出します。たとえば「②カール大帝は、○○○を撃退した。この○○○は何か」という質問文です。
次にオントロジーを利用します。情報科学で言うオントロジーとは「概念体系」であり、さまざまな概念と概念の関係性を表したものです。たとえば「ハールーン・アッラシードは人名である」「ハールーン・アッラシードはカリフの一人である」「マジャール人は民族である」などです。「死んだ人はそれ以降の事項を起こせない」というのもオントロジーです。
世界史攻略のためのオントロジーが手作りで作成されました。そのオントロジーを用いると先ほどの質問文は「②カール大帝は、この民族を撃退した。この民族とは何か」と書き換えられます。この質問のように、単語で答える質問を "ファクトイド" と言います。実はファクトイド型の質問に答えて一躍有名になった人工知能があります。IBMのワトソンです。
ワトソンは2011年に、アメリカのテレビのクイズ番組「ジェパディ!」で人間のチャンピオンに勝って大きな話題になったコンピュータ・システムです。この「ジェパディ!」で出題される問題がファクトイドなのです。本書にその例があります。
|
この質問の "this" が何かを答えるのが「ジェパディ!」です。ワトソンでやっているのは基本的には人間がやるのと同じような「情報検索」です。人間ならこの質問に答えるにはどうするか。検索語を慎重に選んで「モーツァルト 最後 交響曲」で Google検索をすると、トップに出るのは Wikipedia の「交響曲第41番(モーツァルト)」の項です(2018.6.1 現在)。その「概要」のところは「本作はローマ神話の最高神ユーピテルにちなんで『ジュピター』(ドイツ語ではユーピター)のニックネームを持つが、・・・・・・」という文章で始まります。これで正解が「ジュピター」だ分かります。もちろん「ジュピター」が惑星の名前でもあることを知っているのが前提です。
もっと一般的には、検索でヒットしたテキストに、検索につかった単語がどのように現れるかを調べます。複数の単語がテキストにどのように現れるかを「共起」といい、共起関係を使って文にあたりをつけ、その文に含まれる「惑星」のカテゴリの単語を調べます。
ワトソンは問題文を単語に分解し、構文解析をし、検索にかけるべき重要な単語を判断します。また「ジュピターは惑星である」というようなオントロジーを備えているので質問に回答できるというわけです。
東ロボくんが「②カール大帝は、この民族を撃退した。この民族とは何か」という質問に答えるのも、基本的にワトソンと同じです。その結果、答として最も高いスコア、3.2 を獲得したのは「アヴァール人」でした。一方、もともとの問題文にあった「マジャール人」のスコアは 1.1 であり、その差は 2.1 です。この結果、東ロボくんは「②カール大帝は、マジャール人を撃退した。」を誤文と判定しました。
この差の 2.1 が正誤判定をするに十分に大きな数値なのかどうか、それは世界史の過去問を機械学習して決めました。つまり過去問のスコアを東ロボくんに計算させ、正解(正か誤のどちらか)と照らし合わせて、どの程度のスコア差が正誤判定になりうるかを学習したわけです。このようなやり方で、東ロボくんの世界史の偏差値は 66.5 までになりました。
以上の「世界史の攻略法」でポイントになっているのは、世界史の模試で出題できる歴史上の事実が限定されていること、つまり高校3年までに学習する範囲に限られることです。従ってオントロジーも手作りで作成できます。しかし、世界史の全知識が対象だったり、「ジェパディ!」のようにさまざまなジャンルの問題が出題される場合には、手作りでは難しい。従って、Wikipedia の全情報から文脈を解析してオントロジーを自動的に作るというような技術が必要になります。
ともかくセンター模試の世界史の結果から分かるのは、限定された情報の範囲の問題に対する回答は、データを蓄積した上での情報検索や統計処理で好成績をあげられることです。
東ロボくん:数学の攻略法
一方、世界史と並んで好成績あげた数学は、世界史とは全く対照的な方法がとられました。それは「数学の問題を自然言語処理で数式に "直訳" し、数式処理で問題を解く」という方法です。具体的な方法は専門的になるので本書には書いてありませんが、統計的・確率的にやるのではなく、論理だけで回答するということです。
数学では東大模試(理系)で6問中4問に完答し、偏差値77.2という驚異的な成績をあげました。大学入試の最難関は東大の理科3類ですが、ここを突破する鍵は数学の成績です。理3を受けるような受験生は、他の科目では大した差がつきません。数学で差がつきます。6問中4問に完答というのは、数学だけでいうと理3突破ラインです。これを数式処理でやったというのは東ロボくんの大きなブレークスルーであり、世界的に誇れる成果でしょう。
要するに、正確で限定的な語彙からなる問題文であれば、現在主流の統計的な自然言語処理ではなく、論理的な自然言語処理と数式処理で解けるということです。従って東ロボくんが「論理」を使って解くのは数学と物理の一部だけです。
ただし数学が理3突破ラインだといっても、東ロボくんが理3に合格できるわけではありません。それは不得意科目があるからです。その代表が英語です。
英語攻略法:150億文を暗記させても・・・・・・
英語の攻略法も、世界史と同じ統計的手法です。つまり大量の英語の例文を暗記させて、その情報検索と統計処理で回答するわけです。2016年の模試の際には、500億単語からなる16億文を暗記させたといいます。英語の文法(=論理)は一切使いません。この統計的やりかたで語順整序問題(問題に示されている数個の単語を正しい順に並べて文の穴を埋める問題)は100%の正解が出るまでになりました。
しかし東ロボくんがつまづいたのは、複文(会話文)の穴埋め問題、会話文完成問題でした。その例が本書にあります。
|
もちろん正解は④ですが、東ロボくんは②を選んでしまいました。2016年の会話文完成問題の正解率は4割を切ったそうです。
仮にこの問題が日本語の訳文で出題されたら、中学生や小学生(高学年)でも正解できるでしょう。子どもでもできる常識推論の問題だからです。これがセンター模試に出題されるのは "問題文が英語で書かれている" からであり、その英語が正しく理解できているかをテストしているわけです。英語さえ理解できれば、あとは子どもでも可能な推論になる。ところが東ロボくんにとってはその常識推論が難しいのです。
常識をコンピュータに教えればいいのではと思われるかもしれません。靴には紐がある、紐はほどける、紐は結ぶ、といった常識です。しかし中学生レベルの常識でも膨大にあります。新井教授は、
|
と書いています。AIの研究でよくぶつかる「常識の壁」です。自然な会話の流れというのは、会話のバックにある常識を前提としています。また、発言によって引き起こされる "常識的な" 人の感情を前提としています。その常識や感情をコンピュータに教え込むのが難しい。だからこそ東ロボくんは、膨大な英語の例文を集めて情報検索と統計処理で問題を解く方針にしたのです。
東ロボくんに教えた例文は、最終的には150億文になったそうです。それでも会話文完成の4択問題の正答率を画期的には上げられなかったと本書にあります。では、もっとたくさんの例文を集めたらどうか。それは新井教授によると「ビッグデータ幻想」だと言います。
|
東ロボくんがセンター入試をどのように解いているのかの説明はこの程度にして、以下は社会に広まるAIの強力さと限界についてです。
社会に広まるAI
現代社会にはAI技術が広く使われ出しています。その例を本書から紹介しますと、まず顧客と企業の接点となるコールセンターです。上の "ファクトイド" のところで説明した IBM のワトソンもコールセンターに使われています。
|
ワトソンに限らす、コールセンターにAI技術を導入する場合は基本的に同じやりかたです。そこで使われている技術は、音声認識(声のテキスト化)、テキストの形態素分析(単語への分解)、構文解析、機械学習を使った情報検索などです。コールセンターは企業にとって顧客との接点となる重要な部門であり、的確な回答をしたり、問い合わせが終わるまでの時間を短縮することが企業にとっての大きな価値となります。
コールセンターにAI技術が有効な理由は、東ロボくんが世界史の模試を得意としているのと同じです。銀行のコールセンターで扱われる情報は「銀行が個人向けに提供している商品・サービスに関する情報」に限られます。それは多岐に渡っていて複雑でしょうが、とにかく枠組みが限定されていて、そこで使われる言葉や概念も限定できる。そこがポイントだと思います。
とは言え、クイズに答えていたワトソンが銀行のコールセンターで使われるということは、AI技術の汎用性を示しています。
AI技術が使われている別の例は、機械学習とディープラーニング(深層学習)を使った画像認識です。画像に写っている物体を検知し、それが何かを判別します。これは自動運転の "眼" に当たる部分や、CT画像からの病気の診断、監視カメラによる不審者検知、工場における不良品検出などに応用が広がっています。なぜ画像の認識がうまくいくのか。本書では2つの要因があげられています。
◆ | 画像は、部分の単純な和が全体という、コンピュータが処理しやすい性質がある。 | ||
◆ | たとえば画像にイチゴが写っていたとすると、画像を拡大・縮小・回転・移動させてもイチゴである。この性質を利用して機械学習における教師データを「水増し」できる。 |
人間が外界から受け取る情報の大部分は眼からといいますが、画像認識は機械が(コンピュータが)眼を持ったことに相当します。No.175「半沢直樹は機械化できる」の「補記2」にアマゾンのレジなし店舗(Amazon GO)の話を書きましたが、レジ係りを不要にしたのは画像認識技術です。まさに "AIが仕事を奪う" そのものです。しかし本書には、画像認識が本質的に抱えている問題点も指摘されています。
◆ | ハードウェア(画像センサーとコンピュータなど)が向上し、より精密が画像が扱えるようになったとき、機械学習の教師データを全部作り直す(=全データについて精密な画像を用意する)必要がある。 | ||
◆ | 画像認識の仕組みの細部を理解すると、画像認識ソフトを「だます」画像を作れる。つまり、どんな画像でも画像認識ソフトがイチゴだと判断するように細工できる。この細工は人間の目には分からない。このような悪意による改竄を防ぐのは本質的に難しい。 |
このような "落とし穴" は、よくあるAIの解説では指摘されないことだと思います。
AIの限界:AIとは数学のことである
社会に急速に浸透しつつあるAIですが、AIにはできないことや限界があります。この限界はコンピュータの性能が足りないからではありません。本書にその象徴的な話が出てきます。
|
もの凄い速度のコンピュータが登場したら、あるいは量子コンピュータが登場したら、人間の知性と同等の(あるいはそれを上回る)AIができるということではないのです。AIの限界は計算機のスピードの問題ではありません。なぜ限界があるのか。人間の知性と同等のAIはなぜできないのか。本書の説明を簡潔に一言で言うと、その理由は、
◆ | AIとは数学のことだから、または、 | ||
◆ | AIは徹頭徹尾、数学でできているから |
となるでしょう。数学に帰着できる問題はAIで解ける。数学の問題は最終的には計算問題になり、その計算をやるのがコンピュータ(=計算機)です。従って、数学の言葉で表現できない問題はAIでも解けない。
数学の言葉とは「論理」と「確率」と「統計」です。「論理」とは、たとえば「A=B で B=C なら A=C である」という三段論法に始まって、こうだからこうなるという体系のすべてです。方程式、関数、幾何学、行列、微積分など、高校3年までに習う数学の大部分は「論理」の範疇です。
「確率」は、必ずそうなるのではなくランダムに発生する事象、不確実性をもって発生する事象を表現する数学の言葉です。
一方、世の中にみられる事象は、確実に起こるのでもなくと、かといってランダムに起こるのでもないことが多数あります。こういった現実を観測して得られたデータを説明する数学の言葉が「統計」です。
数学の言葉は「論理」と「確率」と「統計」の3つであり、それしかありません。先ほどの東ロボくんのセンター入試でいうと、世界史の正誤問題と英会話の穴埋め問題は「統計」「確率」で解き、数学は「論理」でアプローチしていることになります。
「論理」「確率」「統計」の言葉で表現できないものは数学になじまず、従ってAI技術の適用ができなくなる。その例としてはまず、問題の枠組み(=フレーム)がはっきりしないものがあります。問題を考える範囲やスコープが曖昧なものや、解くときの条件が不明だったりするものです。それが曖昧だったり不明だと、解くために考慮すべきことが膨大に広がってしまい、現実には解けなくなります。いわゆる、AIにおける「フレーム問題」です。
ちなみに、フレーム(問題の枠組み)が厳格に決まっているのがゲームです。厳格に決まっているという条件があれば、囲碁のような複雑極まりないゲームでもAI技術を使ったコンピュータ囲碁プログラムが人間を凌駕できるのです(No.180-181「アルファ碁の着手決定ロジック」参照)。 |
東ロボくんが世界史が得意という理由はここにあります。入試の世界史は、基本的には、学習指導要領、指導要領に沿って作られた教科書、教科書の理解を助けるための参考書という情報から作問できるものに限られます。これらの考えうるすべの情報をコンピュータに入れることも可能です。つまり「枠組み」がはっきりしている。従って上で例をあげた正誤判定だけでなく、たとえば次のような東大の2次試験の問題(模試)にも東ロボくんは回答できます。
|
大変に "難しそうな" 問題ですが、東ロボくんは大丈夫です。最初の引用にあったように、このような東大の2次の論述問題で東ロボくんは偏差値61.8を獲得しました。
これと真逆なのが「英語の会話文完成」問題です。会話文完成に必要なのは、自然な会話の流れを判定するために高校3年生であれば誰もがもっているであろう「常識」です。これは範囲が極めて曖昧であり、常識を書き出していくと膨大になります。「英語の会話文完成」がAIにとって難しい理由がここにあります。
数学でできないことはAIでもできないのですが、数学でできないことの一つに「意味」の記述があります。意味が重要になるものは言葉です。発話には意図があり、発話に応じることは意味の理解があるわけです。
|
意味を記述できる数学の言葉はありません。もちろん分野を限定すれば可能でしょう。東ロボくんは東大の2次試験・数学で偏差値 76.2 という驚異的な成績をあげましたが、それは問題文をその意味まで含めて「論理」という数学の言葉で記述できたからでしょう。しかしそのやりかたを一般の言葉にまで広げることはできない。言葉の意味を記述しているが辞書であるように、自然言語の意味は自然言語でしか記述できないのです。
本書にはIBMのワトソンがみずほ銀行のコールセンターに導入され、また東大の医科学研究所にも導入されて病気の診断に使われていることが紹介されています。まったく違った業種に同じコンピュータシステムが導入できるということは、ワトソンは「意味」を関知せずに「統計」と「確率」を駆使した情報検索で動いているからです。
自然言語処理は、自動翻訳システムや質問応答システムを作るときに必須です。しかし、AIに文法などの言葉のルールを教えて論理的な推論で言語を扱う研究は、ことごとく失敗に終わりました。だからこそ「統計」「確率」で自然言語処理を行うのが主流になったのです。
余談ですが、このブログで以前にマイクロソフトやグーグルの機械翻訳チームの話を紹介しました(No.173「インフルエンザの流行はGoogleが予測する」参照)。
|
毎年バンクーバーで開催されるTED(Technology Entertainment Design)という会議があります。「広める価値のあるアイデア」を世界中から集めてプレゼンテーションが行われます。5日間ぶっ通しのチケットは150万円ですが、発売と同時に売り切れるそうです。新井教授は 2017年4月のTEDに招かれて講演したのですが、同じセッションに、代表的な質問応答システムである Siri の開発者であるトム・グルーバーがいました。
|
以上のことからすると「人間の知性と同等ベルのAI = 真の意味でのAI」はまず無理なことがわかります。なぜかというと、まず人間の知能の原理が解明されていないからです。
|
|
科学者は科学の限界に謙虚でなければなりません。それを新井教授は次のように言っています。
|
AI技術によって人間の仕事がなくなる
AIは以上のように限界があります。しかしその一方でAIは極めて強力な技術であり、東ロボくんはセンター模試で全受験生の80%より上にランクされるほどの実力を持ちました。オックスフォード大学「雇用の未来」では広範囲(約半分)の仕事がAI技術で置き換えられると想定しています(No.175「半沢直樹は機械化できる」参照)。
考えてみると「新しい発明や技術の登場で仕事がなくなる」のは今に始まったことではありません。むしろ人類の歴史はその繰り返しでした。新井教授も指摘しているのですが「便利になる」ということを突き詰めて考えると、それは「労働を置き換える」ということです。そして新技術は人類全体としては恩恵が多く、新技術の登場以前よりも社会がより豊かになってきました。そのことから「AI技術で無くなる仕事があったとしても、人類全体としてはそれを乗り越えてより豊かな世界を築いていけるに違いない」という楽観論があります。
しかし、そうとも言えないのです。その理由は2つあって、1つはAI技術で無くなると想定される仕事が極めて広範囲であることです。従来の新技術は特定の仕事が無くなるタイプでした。たとえば自動車が発明されて御者が無用になるといった ・・・・・・。それと比較してAI技術では全仕事の半数が無くなる(だろう)と予想されているのです。
2番目の理由ですが、AI技術でより豊かな世界になるためには「AIではできない仕事」や「AIで無くなる仕事に代わって新たに発生する仕事」に人が適応できることが必要ですが、そこに疑問があるからです。AIが不得意な仕事とは、コミュニケーション能力や読解力や常識が必要な仕事であり、加えて人間らしい柔軟な判断が必要な仕事です。
|
その大切な読解力が危機的な状況にあると、新井教授が明らかにしています。新井教授は東ロボくんのプロジェクトと並行して、中高生を対象にしたリーティング・スキル・テストを実施しました。その衝撃的な結果を次回に紹介します。
本書「AI vs.教科書が読めない子どもたち」の前半(AIについて)の感想ですが、No.196「東ロボにみるAIの可能性と限界」にも書いたように、
大学入試(模試)という極めて具体的なチャレンジを通して判明したAIの強みと限界が実証的に書かれている |
ことに好感しました。大学入試という限定した範囲だけれども、入試は人の知的な営みの成果を示す重要なシーンです。それをテーマにして実験をした結果をもとに論が展開されている。世の中には根拠も示さず「AIが人間の脳を越える」などと吹聴する論説がよくありますが、それらとは一線を画した本です。科学の基本的な方法論にのっとって書かれた本、そこに価値があると思いました。
(次回に続く)
 補記:藤井聡太棋聖  |
2020年7月16日に行われた第91期棋聖戦5番勝負の第4局で、藤井聡太7段が渡辺明3冠を破り、史上最年少(17歳11ヶ月)のタイトル・ホルダーとなりました。藤井棋聖は7月21日にメディア各社のインタビューに応じましたが、将棋のAIソフトについて語った部分があったので、それを紹介します。
|
本文中で新井教授は「AIの弱点は意味がわからないこと」と言っていましたが、藤井棋聖の言葉を借りると人間の強みは「理由づけができる」ことであり、これは「意味の理解」と同じことでしょう。藤井棋聖の将棋AIについての発言はシンプルで、あたりまえといえばその通りですが、史上最年少のタイトル・ホルダーとなった人の発言は、やはり重みがあると思いました。
(2020.7.27)
2018-06-01 19:29
nice!(1)
No.197 - 囲碁とAI:趙治勲 名誉名人の意見 [技術]
2016年3月、韓国のイ・セドル九段とディープマインド社の「アルファ碁」の5番勝負がソウル市内で行われ、アルファ碁の4勝1敗となりました。イ・セドル九段は世界のトップクラスの棋士です。コンピュータはその棋士に "勝った" ことになります。この5番勝負とアルファ碁については次の三つの記事に書きました。
その8ヶ月後の2016年11月に、今度は日本最強の囲碁プログラム、DeepZenGoと趙治勲名誉名人の3番勝負(第2回 囲碁電王戦)が開催され、趙名誉名人の2勝1敗となりました(11/19, 11/20, 11/23の3戦)。"人間側" の勝利に終わったわけですが、日本の囲碁プログラムが互先でプロ棋士に勝ったのは初めてです。第1回 囲碁電王戦(2014)ではプロ2人とアマ名人相手に1勝もできなかったことを考えると、格段の進歩だと言えます。
以上の、アルファ碁 対 イ・セドル九段、DeepZenGo 対 趙名誉名人の棋戦を、趙名誉名人本人が振り返ったコラム記事が新聞に掲載されました。実際に囲碁プログラムと互先で戦ったトップ棋士の意見として貴重なものです。また大変に興味深い内容だったので、以下にそれを紹介したいと思います。
なお、DeepZenGo の前身は日本の有名な囲碁プログラム、"Zen" です(市販されている)。それに深層学習を取り入れた強化版が DeepZenGo です。以下、Zen と DeepZenGo を区別せずに "Zen" と書きます。趙名誉名人の記事もそうなっています。Zen の開発者は尾島陽児氏と加藤英樹氏(開発チーム代表)で、強化版の開発にあたっては深層学習の権威である松尾豊・東大准教授の研究室が協力しました。
イ・セドル九段 対 アルファ碁
まず趙さんはアルファ碁とイ・セドル九段の対局にふれ、その数ヶ月前に欧州チャンピオンに勝ったときと比べて、アルファ碁が急速に強くなったことを説明します。
ここで趙さんが強調しているのは「アルファ碁は短期間で急激に強くなった」ということです。20年・200年・2000年という数字が出てきますが、これは趙さん独特の表現でしょう。なおアルファ碁と欧州王者との対戦は2015年10月、イ・セドル九段との対戦は2016年3月なので、その間は4~5ヶ月あります。趙さんが「2ヶ月間で」と書いているのは勘違いだと思います。
そのイ・セドル九段とアルファ碁の対局(5回戦)ですが、第1局、第2局と、イ・セドル九段はアルファ碁に連敗を喫してしまいます。この戦いを趙さんは次のように解説しています。
第1局と第2局の敗戦をふまえ、イ・セドル九段は第3局で対局の方針を変えたと趙さんは言います。
3連敗したあとの第4局で、イ・セドル九段は妙手を放って勝ちます。
続く第5局はアルファ碁の勝ちに終わり、結局4勝1敗でアルファ碁が勝利しました。この棋戦全体を、趙さんは次のように振り返っています。
イ・セドル九段の敗戦の理由
趙治勲名誉名人といえば、歴代最多のタイトル獲得(74回)を誇り、第25世本因坊でもあるトップ棋士です。その趙さんが考えるイ・セドル九段の敗戦の理由は、
という極めて人間的なものです。「セドルが平常心で打てば、力量はアルファ碁に勝っていた」と趙さんが書いているのは(対戦当時のアルファ碁では)その通りなのでしょう。
逆にアルファ碁は、平常心というか、"心" はないので常に "平常" だったと言うべきです。趙さんも書いているように、人間なら「逆転して有利になった」と思った瞬間、浮き足立って逆に悪い手を打ってしまうことがあるのですが、そういうこともない。動揺、焦り、浮き足立つ、疲れ、うっかり、 ・・・・・・ そういうものに一切関係がありません。
アルファ碁を甘くみていたとの趙さんの見解ですが、しかしこれはやむをえないとも言えます。「欧州王者を下した時のアルファ碁を見るかぎり、アルファ碁は弱かった(趙さん)」のだから・・・・・・。No.181「アルファ碁の着手決定ロジック(2)」に書いたように、アルファ碁を開発したディープマインド社が英雑誌「Nature」に投稿した論文によると、欧州王者を下した時のアルファ碁の棋力はプロ五段相当です。イ・セドル九段に比べると断然弱い。従って趙さん自身も「周囲にはセドルが100%間違いなく勝つと断言していた」わけです。イ・セドル九段も、またイ・セドル九段の周囲も、おそらくそう思っていたでしょう。
しかしアルファ碁は急速に強くなった。その詳細は明らかではありませんが、自己対戦を繰り返して強化学習をさらにやったのかも知れないし、ハードウェアを増強してより深く読めるようになったのかも知れない。そのどうであれ、ここでわかることは「急速に強くなることがある。それがAI」ということです。人間の天才が20年かかる進歩(趙さんの表現)を数ヶ月で成し遂げることもあり得る。
趙さんによるとアルファ碁には弱点もあって、それは「最後の詰めが甘い」ことです。趙さんは「イ・セドル九段と対戦した時のアルファ碁には勝つ自信がある、その後に欠点を克服したと聞くが、どこまで強くなっているのか試したい」と書いています。
「どこまで強くなっているのか試したい」とあるように、趙さんはアルファ碁と対戦してみたいと公言していました。その対局は実現していませんが、日本製の囲碁AI、Zen との対戦が実現する運びになりました。
趙治勲名誉名人 対 Zen
イ・セドル九段とアルファ碁との対戦の8ヶ月後の2016年11月、日本最強の囲碁プログラム Zen と趙さんの対局が実現することになりました。冒頭に書いたように、深層学習で強化した Zen(正式名:DeepZenGo)です。なお、以下の引用の 《第1局》 《第2局》 《第3局》 は記事に付け加えたものです。
趙治勲名誉名人は Zen との対戦の経験をふまえて、AIの棋力について、次のように書いています。
AIによって囲碁は発展する
趙治勲名誉名人はコラムのまとめとして、AIによって囲碁界は発展するだろという主旨の見解を述べています。
このくだりで趙さんは、トーナメントプロ、レッスンプロ、アマチュアのそれぞれで、"AIの使い方" や "AIに対する向き合い方" があることを述べています。AI技術を使うと囲碁のアマチュアに対する完全個別指導がいつでも行える環境を作れる可能性があるわけです。これは囲碁人口を増やすことにつながります。
趙さんの "自信" の背景にあるのは、囲碁がとてつもなく奥深いものだという絶対の確信でしょう。この奥深さは、次のように表現されています。
井山裕太 六冠の意見
趙治勲名誉名人に続いて、井山裕太 六冠(六冠は2017.1 現在)の意見も付け加えておきたいと思います。井山さんは囲碁プログラムと互先で戦った経験はありませんが、2017年3月に DeepZenGo と戦う予定があります。また言うまでもなく現代日本の最強の棋士であり、その方が AI をどういう風に見ているかは重要でしょう。
ちなみにこの朝日新聞の記事の中で井山 六冠は、「アルファ碁は、うわさレベルではさらに強く、とてつもないレベルに達していると聞きます」と発言しています。まさにその通りのようで、2016年末から 2017年初頭にかけて "新アルファ碁" が 囲碁対局サイトの「東洋囲碁」と「野狐囲碁」に登場し、トッププロと対戦して60連勝しました。井山 六冠もその中の一人だとされます。
これはもちろん早碁ですが、持ち時間が十分ある碁ではどうなのでしょうか。それでも「ものすごく強いだろう」という大方の推測です。日本棋院は所属の棋士に全60局の棋譜を配布するとありました。"新アルファ碁" は日本だけでなく中国、韓国の棋士によって徹底的に研究されるでしょう。"新アルファ碁" とトッププロとの本格対局も予定されているようなので、注視したいと思います。
AIの "大局感"
これ以降は趙治勲名誉名人と井山裕太 六冠の意見についての感想です。
趙治勲名誉名人と井山裕太 六冠の意見に共通することは、二人とも AI囲碁にポジティブなことです。それは、囲碁のプロフェッショナルとして、
という意欲・意識だと思います。では AI のどこが強いのか。二人の意見を総合してその強さを一言でいうと「大局感」だと思います。
などをまとめると「大局感に優れている」ということだと思うのです。我々は普通、コンピュータの得意なところは細部の緻密な計算やヨミだと考えます。全体を見渡してマクロ的・直感的にものごとを把握するのは苦手だと考えるのが普通です。しかし囲碁の AI は逆です。全体を俯瞰する大局感の方が優れていて、細部に関しては「最後の詰めが甘い(趙)」とか「部分的には最善ではない(井山)」のです。
その理由を考えてみると、次のようだと想像できます。DeepZenGo も基本的にアルファ碁のロジックにのっとっているそうなので(日経ITpro 2016.11.09 の記事による)No.180-181「アルファ碁の着手決定ロジック」に沿って考えてみます。
アルファ碁の基本ロジックは「モンテカルロ木検索 - Monte Carlo Tree Search : MCTS」です。MCTSでは局面の勝率を判定しながら、有力な候補手を次々と木探索するのですが、局面の勝率を推定するのに使われるのが「ロールアウト(=プレイアウト)」です。ロールアウトとは、とにかく一定のロジックに従って終局までプレーしてみて勝ち負けを判定し、それを多数繰り返えし、その勝率を局面の勝率とするというものです。
No.180-181で書いたように、アルファ碁は独自の rollout policy でロールアウトをします。しかしそれだけではありません。policy network と value network という2つの多層ニューラルネットワーク(Deep Neural Network。DNN)をもっています。その働きは次の通りです。
というものです。そしてアルファ碁の勝率判定は rollout policy を使ったロールアウトによる勝率判定と、value networkによる勝率判定ををミックスして行われています。
結局のところ「アルファ碁の勝率判定はロールアウトによる」と言えるでしょう。ロールアウトは「とにかく終局まで打ってみたらどうなるか」というシミュレーションです。これを候補手(合法手)について、手の有力度合いに従って繰り返し、勝率の高い手を選ぶ。
つまり、常に白紙の状態で、終局までを見据えて(=最後までヨセて)最適な手を選んでいるのがアルファ碁です。一切の "こだわり" がない。これが「自然体」とか「真っ白なキャンバスに自由にデッサンしているよう」という趙名誉名人の感想や、「部分的に最善でなくても全体では遅れていない、むしろリードしている」という井山 六冠の発言につながり、それが大局感に優れていると見えるのだと思います。
AI は意味を説明できるか
趙名誉名人の新聞コラムの中に、AI によって囲碁の裾野が広がるという主旨の発言がありました。つまり「AI によって一人一人に合わせた教え方や、かゆいところに届く指導ができる。アマチュアが強くなり裾野が広がる」との主旨です。これは果たしてどこまで正しいのでしょうか。
もちろん、アマチュアを指導する囲碁の先生が、AI を参考にしながら指導するのは可能であり、大いに役立つと思います。しかし AI だけがアマチュアを指導する(=AI指導碁)というのは、どうなのでしょう。
"AIの先生" が打つべき候補手を数手示し、それぞれの勝率を示すのはいつでも可能です。しかし、たとえば候補手① の勝率は 60%、候補手② の勝率は 50%としたとき、①が 10%だけ勝る理由を AI は説明できるのでしょうか。「②は相手の厚みに近寄り過ぎていて攻められる恐れがある、①のように控えるのが正しい」というようにです。また逆に「形勢が悪いので、思い切って相手の厚みに近寄ってでも模様を張る①が正解」という風にです。結論だけを言われても、人は納得はできないのです。
"捨て石" に関して言うと、趙名誉名人は、AI は捨て石がうまいと語っています。これは井山 六冠の「部分的に最善でなくても全体ではリードしている」という発言とも関係しているのでしょう。では、なぜその場面で石を捨てるのがいいのか、石を助けずに別の場所に打つのがより勝率をあげるのか、AI は説明できるでしょうか。「捨てたと見える石も完全に死んだわけではなく、あとあとの進行でこういう風に有効に生かせるから」というような、"捨てる理由" を説明できるかという問題です。
もちろん中には説明できるケースもあるでしょう。No.180-181「アルファ碁の着手決定ロジック」でもわかるように、シチョウに取られないようにするとか、ナカデで死なないようにするとか、ダメヅマリを回避するとか、そういった理由は説明できそうです。しかしこれらはアマチュアの囲碁初級者でも分かる理由です。かつ、局所的・部分的な打ち手に関する理由です。AI が得意なのは局所的・部分的ではなく、大局的な最善手を打つことでした(趙、井山両氏による)。その大局的な最善手について、そう打つ理由を AI は説明できるでしょうか。
このあたり、現代のAIの本質的な問題点がありそうです。「なぜだか分からないし、理由はさだかではないが、結構正しい」のが AI の出す回答だということがよくある。囲碁のプロなら AIが打つ手の意味を即座に解説できたとしても、AI 自身は分かっていない。逆に言うと、意味を無視して膨大なデータを統計的に処理するからこそ、AIの有効性や可能性があると言えるのでしょう。
もちろん囲碁に限っていうと、AI のヨミ筋はコンピュータに蓄えられているので、そのヨミ筋の解析から打ち手の理由や意味を解説できるようになるかもしれません。ただしこれは機械学習では無理でしょう。「ある局面における次の一手とその意味」を蓄積したビッグデータが存在しないからです。「ある局面と次の一手」というデータは膨大にあるけれども・・・・・・。従って人間が教え込む必要があるのですが、かなりの難作業ではないでしょうか。
アルファ碁が打った手の意味を真に解説できるのは、開発会社のディープマインド社の社員ではなく、アルファ碁の棋譜を詳しく研究したプロ棋士だと確信します。
ここで思い出すのは、前回の No.196「東ロボにみるAIの可能性と限界」で引用した、国立情報学研究所の新井教授("ロボットは東大に入れるか" プロジェクトのリーダ)の発言です。新井教授は中高生向けに講演するとき次のように話すそうです。
人間は普通、暗黙であれ意識的であれ、意味・意図・理由を持って(込めて)行動します。だからこそ、良い結果の経験を蓄積したり、逆に悪い結果から反省をして進歩するわけです。無意味に(意味も分からずに)行動していたのでは進歩がありません。
囲碁とAIというテーマで見えてくるもの、それはやはり「機械学習によるAI」の驚くべき可能性と、その裏にある課題、ないしは限界だと思いました。
ディープマインド | |||
アルファ碁の着手決定ロジック(1) | |||
アルファ碁の着手決定ロジック(2) |
その8ヶ月後の2016年11月に、今度は日本最強の囲碁プログラム、DeepZenGoと趙治勲名誉名人の3番勝負(第2回 囲碁電王戦)が開催され、趙名誉名人の2勝1敗となりました(11/19, 11/20, 11/23の3戦)。"人間側" の勝利に終わったわけですが、日本の囲碁プログラムが互先でプロ棋士に勝ったのは初めてです。第1回 囲碁電王戦(2014)ではプロ2人とアマ名人相手に1勝もできなかったことを考えると、格段の進歩だと言えます。
以上の、アルファ碁 対 イ・セドル九段、DeepZenGo 対 趙名誉名人の棋戦を、趙名誉名人本人が振り返ったコラム記事が新聞に掲載されました。実際に囲碁プログラムと互先で戦ったトップ棋士の意見として貴重なものです。また大変に興味深い内容だったので、以下にそれを紹介したいと思います。
なお、DeepZenGo の前身は日本の有名な囲碁プログラム、"Zen" です(市販されている)。それに深層学習を取り入れた強化版が DeepZenGo です。以下、Zen と DeepZenGo を区別せずに "Zen" と書きます。趙名誉名人の記事もそうなっています。Zen の開発者は尾島陽児氏と加藤英樹氏(開発チーム代表)で、強化版の開発にあたっては深層学習の権威である松尾豊・東大准教授の研究室が協力しました。
イ・セドル九段 対 アルファ碁
まず趙さんはアルファ碁とイ・セドル九段の対局にふれ、その数ヶ月前に欧州チャンピオンに勝ったときと比べて、アルファ碁が急速に強くなったことを説明します。
|
ここで趙さんが強調しているのは「アルファ碁は短期間で急激に強くなった」ということです。20年・200年・2000年という数字が出てきますが、これは趙さん独特の表現でしょう。なおアルファ碁と欧州王者との対戦は2015年10月、イ・セドル九段との対戦は2016年3月なので、その間は4~5ヶ月あります。趙さんが「2ヶ月間で」と書いているのは勘違いだと思います。
そのイ・セドル九段とアルファ碁の対局(5回戦)ですが、第1局、第2局と、イ・セドル九段はアルファ碁に連敗を喫してしまいます。この戦いを趙さんは次のように解説しています。
|
第1局と第2局の敗戦をふまえ、イ・セドル九段は第3局で対局の方針を変えたと趙さんは言います。
|
3連敗したあとの第4局で、イ・セドル九段は妙手を放って勝ちます。
|
続く第5局はアルファ碁の勝ちに終わり、結局4勝1敗でアルファ碁が勝利しました。この棋戦全体を、趙さんは次のように振り返っています。
|
イ・セドル九段の敗戦の理由
趙治勲名誉名人といえば、歴代最多のタイトル獲得(74回)を誇り、第25世本因坊でもあるトップ棋士です。その趙さんが考えるイ・セドル九段の敗戦の理由は、
アルファ碁を甘く見ていために、動揺し、平常心を失った |
という極めて人間的なものです。「セドルが平常心で打てば、力量はアルファ碁に勝っていた」と趙さんが書いているのは(対戦当時のアルファ碁では)その通りなのでしょう。
逆にアルファ碁は、平常心というか、"心" はないので常に "平常" だったと言うべきです。趙さんも書いているように、人間なら「逆転して有利になった」と思った瞬間、浮き足立って逆に悪い手を打ってしまうことがあるのですが、そういうこともない。動揺、焦り、浮き足立つ、疲れ、うっかり、 ・・・・・・ そういうものに一切関係がありません。
アルファ碁を甘くみていたとの趙さんの見解ですが、しかしこれはやむをえないとも言えます。「欧州王者を下した時のアルファ碁を見るかぎり、アルファ碁は弱かった(趙さん)」のだから・・・・・・。No.181「アルファ碁の着手決定ロジック(2)」に書いたように、アルファ碁を開発したディープマインド社が英雑誌「Nature」に投稿した論文によると、欧州王者を下した時のアルファ碁の棋力はプロ五段相当です。イ・セドル九段に比べると断然弱い。従って趙さん自身も「周囲にはセドルが100%間違いなく勝つと断言していた」わけです。イ・セドル九段も、またイ・セドル九段の周囲も、おそらくそう思っていたでしょう。
しかしアルファ碁は急速に強くなった。その詳細は明らかではありませんが、自己対戦を繰り返して強化学習をさらにやったのかも知れないし、ハードウェアを増強してより深く読めるようになったのかも知れない。そのどうであれ、ここでわかることは「急速に強くなることがある。それがAI」ということです。人間の天才が20年かかる進歩(趙さんの表現)を数ヶ月で成し遂げることもあり得る。
趙さんによるとアルファ碁には弱点もあって、それは「最後の詰めが甘い」ことです。趙さんは「イ・セドル九段と対戦した時のアルファ碁には勝つ自信がある、その後に欠点を克服したと聞くが、どこまで強くなっているのか試したい」と書いています。
「どこまで強くなっているのか試したい」とあるように、趙さんはアルファ碁と対戦してみたいと公言していました。その対局は実現していませんが、日本製の囲碁AI、Zen との対戦が実現する運びになりました。
趙治勲名誉名人 対 Zen
イ・セドル九段とアルファ碁との対戦の8ヶ月後の2016年11月、日本最強の囲碁プログラム Zen と趙さんの対局が実現することになりました。冒頭に書いたように、深層学習で強化した Zen(正式名:DeepZenGo)です。なお、以下の引用の 《第1局》 《第2局》 《第3局》 は記事に付け加えたものです。
電王戦第3局(2016.11.23)の趙治勲名誉名人(右)と開発チームの加藤英樹代表
(site: newswitch.jp)
|
|
趙治勲名誉名人は Zen との対戦の経験をふまえて、AIの棋力について、次のように書いています。
|
AIによって囲碁は発展する
趙治勲名誉名人はコラムのまとめとして、AIによって囲碁界は発展するだろという主旨の見解を述べています。
|
このくだりで趙さんは、トーナメントプロ、レッスンプロ、アマチュアのそれぞれで、"AIの使い方" や "AIに対する向き合い方" があることを述べています。AI技術を使うと囲碁のアマチュアに対する完全個別指導がいつでも行える環境を作れる可能性があるわけです。これは囲碁人口を増やすことにつながります。
趙さんの "自信" の背景にあるのは、囲碁がとてつもなく奥深いものだという絶対の確信でしょう。この奥深さは、次のように表現されています。
|
井山裕太 六冠の意見
趙治勲名誉名人に続いて、井山裕太 六冠(六冠は2017.1 現在)の意見も付け加えておきたいと思います。井山さんは囲碁プログラムと互先で戦った経験はありませんが、2017年3月に DeepZenGo と戦う予定があります。また言うまでもなく現代日本の最強の棋士であり、その方が AI をどういう風に見ているかは重要でしょう。
|
|
ちなみにこの朝日新聞の記事の中で井山 六冠は、「アルファ碁は、うわさレベルではさらに強く、とてつもないレベルに達していると聞きます」と発言しています。まさにその通りのようで、2016年末から 2017年初頭にかけて "新アルファ碁" が 囲碁対局サイトの「東洋囲碁」と「野狐囲碁」に登場し、トッププロと対戦して60連勝しました。井山 六冠もその中の一人だとされます。
これはもちろん早碁ですが、持ち時間が十分ある碁ではどうなのでしょうか。それでも「ものすごく強いだろう」という大方の推測です。日本棋院は所属の棋士に全60局の棋譜を配布するとありました。"新アルファ碁" は日本だけでなく中国、韓国の棋士によって徹底的に研究されるでしょう。"新アルファ碁" とトッププロとの本格対局も予定されているようなので、注視したいと思います。
AIの "大局感"
これ以降は趙治勲名誉名人と井山裕太 六冠の意見についての感想です。
趙治勲名誉名人と井山裕太 六冠の意見に共通することは、二人とも AI囲碁にポジティブなことです。それは、囲碁のプロフェッショナルとして、
・ | 強い相手と対戦してみたい | ||
・ | 囲碁の神様がいるなら、それを感じてみたい | ||
・ | そのことによって自らも進歩したい |
という意欲・意識だと思います。では AI のどこが強いのか。二人の意見を総合してその強さを一言でいうと「大局感」だと思います。
・ | AIの序盤の布石は素晴らしい(趙)。 | ||
・ | Zen もアルファ碁同様、石の捨て方がうまい(趙)。 | ||
・ | 部分的に最善でなくても全体では遅れていない、むしろリードしている(井山)。 |
などをまとめると「大局感に優れている」ということだと思うのです。我々は普通、コンピュータの得意なところは細部の緻密な計算やヨミだと考えます。全体を見渡してマクロ的・直感的にものごとを把握するのは苦手だと考えるのが普通です。しかし囲碁の AI は逆です。全体を俯瞰する大局感の方が優れていて、細部に関しては「最後の詰めが甘い(趙)」とか「部分的には最善ではない(井山)」のです。
その理由を考えてみると、次のようだと想像できます。DeepZenGo も基本的にアルファ碁のロジックにのっとっているそうなので(日経ITpro 2016.11.09 の記事による)No.180-181「アルファ碁の着手決定ロジック」に沿って考えてみます。
アルファ碁の基本ロジックは「モンテカルロ木検索 - Monte Carlo Tree Search : MCTS」です。MCTSでは局面の勝率を判定しながら、有力な候補手を次々と木探索するのですが、局面の勝率を推定するのに使われるのが「ロールアウト(=プレイアウト)」です。ロールアウトとは、とにかく一定のロジックに従って終局までプレーしてみて勝ち負けを判定し、それを多数繰り返えし、その勝率を局面の勝率とするというものです。
No.180-181で書いたように、アルファ碁は独自の rollout policy でロールアウトをします。しかしそれだけではありません。policy network と value network という2つの多層ニューラルネットワーク(Deep Neural Network。DNN)をもっています。その働きは次の通りです。
◆ | policy network 囲碁のルール上許されるすべての手について、次に打つ手としての有力度合いを数値(確率分布)で示すDNN。 | ||
◆ | value network 局面の勝率を推定するDNN。膨大な局面のサンプルをもとに policy network を使ってロールアウトした事前シミュレーションに基づいて作成される。 |
というものです。そしてアルファ碁の勝率判定は rollout policy を使ったロールアウトによる勝率判定と、value networkによる勝率判定ををミックスして行われています。
結局のところ「アルファ碁の勝率判定はロールアウトによる」と言えるでしょう。ロールアウトは「とにかく終局まで打ってみたらどうなるか」というシミュレーションです。これを候補手(合法手)について、手の有力度合いに従って繰り返し、勝率の高い手を選ぶ。
つまり、常に白紙の状態で、終局までを見据えて(=最後までヨセて)最適な手を選んでいるのがアルファ碁です。一切の "こだわり" がない。これが「自然体」とか「真っ白なキャンバスに自由にデッサンしているよう」という趙名誉名人の感想や、「部分的に最善でなくても全体では遅れていない、むしろリードしている」という井山 六冠の発言につながり、それが大局感に優れていると見えるのだと思います。
AI は意味を説明できるか
趙名誉名人の新聞コラムの中に、AI によって囲碁の裾野が広がるという主旨の発言がありました。つまり「AI によって一人一人に合わせた教え方や、かゆいところに届く指導ができる。アマチュアが強くなり裾野が広がる」との主旨です。これは果たしてどこまで正しいのでしょうか。
もちろん、アマチュアを指導する囲碁の先生が、AI を参考にしながら指導するのは可能であり、大いに役立つと思います。しかし AI だけがアマチュアを指導する(=AI指導碁)というのは、どうなのでしょう。
"AIの先生" が打つべき候補手を数手示し、それぞれの勝率を示すのはいつでも可能です。しかし、たとえば候補手① の勝率は 60%、候補手② の勝率は 50%としたとき、①が 10%だけ勝る理由を AI は説明できるのでしょうか。「②は相手の厚みに近寄り過ぎていて攻められる恐れがある、①のように控えるのが正しい」というようにです。また逆に「形勢が悪いので、思い切って相手の厚みに近寄ってでも模様を張る①が正解」という風にです。結論だけを言われても、人は納得はできないのです。
"捨て石" に関して言うと、趙名誉名人は、AI は捨て石がうまいと語っています。これは井山 六冠の「部分的に最善でなくても全体ではリードしている」という発言とも関係しているのでしょう。では、なぜその場面で石を捨てるのがいいのか、石を助けずに別の場所に打つのがより勝率をあげるのか、AI は説明できるでしょうか。「捨てたと見える石も完全に死んだわけではなく、あとあとの進行でこういう風に有効に生かせるから」というような、"捨てる理由" を説明できるかという問題です。
もちろん中には説明できるケースもあるでしょう。No.180-181「アルファ碁の着手決定ロジック」でもわかるように、シチョウに取られないようにするとか、ナカデで死なないようにするとか、ダメヅマリを回避するとか、そういった理由は説明できそうです。しかしこれらはアマチュアの囲碁初級者でも分かる理由です。かつ、局所的・部分的な打ち手に関する理由です。AI が得意なのは局所的・部分的ではなく、大局的な最善手を打つことでした(趙、井山両氏による)。その大局的な最善手について、そう打つ理由を AI は説明できるでしょうか。
このあたり、現代のAIの本質的な問題点がありそうです。「なぜだか分からないし、理由はさだかではないが、結構正しい」のが AI の出す回答だということがよくある。囲碁のプロなら AIが打つ手の意味を即座に解説できたとしても、AI 自身は分かっていない。逆に言うと、意味を無視して膨大なデータを統計的に処理するからこそ、AIの有効性や可能性があると言えるのでしょう。
もちろん囲碁に限っていうと、AI のヨミ筋はコンピュータに蓄えられているので、そのヨミ筋の解析から打ち手の理由や意味を解説できるようになるかもしれません。ただしこれは機械学習では無理でしょう。「ある局面における次の一手とその意味」を蓄積したビッグデータが存在しないからです。「ある局面と次の一手」というデータは膨大にあるけれども・・・・・・。従って人間が教え込む必要があるのですが、かなりの難作業ではないでしょうか。
アルファ碁が打った手の意味を真に解説できるのは、開発会社のディープマインド社の社員ではなく、アルファ碁の棋譜を詳しく研究したプロ棋士だと確信します。
ここで思い出すのは、前回の No.196「東ロボにみるAIの可能性と限界」で引用した、国立情報学研究所の新井教授("ロボットは東大に入れるか" プロジェクトのリーダ)の発言です。新井教授は中高生向けに講演するとき次のように話すそうです。
|
人間は普通、暗黙であれ意識的であれ、意味・意図・理由を持って(込めて)行動します。だからこそ、良い結果の経験を蓄積したり、逆に悪い結果から反省をして進歩するわけです。無意味に(意味も分からずに)行動していたのでは進歩がありません。
囲碁とAIというテーマで見えてくるもの、それはやはり「機械学習によるAI」の驚くべき可能性と、その裏にある課題、ないしは限界だと思いました。
No.196 - 東ロボにみるAIの可能性と限界 [技術]
No.175「半沢直樹は機械化できる」で、国立情報学研究所の新井紀子教授をリーダとする「ロボットは東大に入れるか」プロジェクト(略称 "東ロボくん")の話を書きました。東ロボくんの内容ではなく、プロジェクトのネーミングの話です。つまり、
の2点です。
「ロボットは東大に入れるか」プロジェクトは2011年に開始され、2013年からは模擬試験を受験しています。2016年11月14日、今年の成果発表会が開催されました。以下はその内容です。
東大は無理、MARCH・関関同立は合格可能
まず、新井教授が朝日新聞デジタルに寄稿した文章から引用します。
この合格可能性判定は、ベネッセコーポレーションの「進研模試」(大学入試センター試験模試)で行われました。東ロボくんの5教科8科目の成績は525点であり(950点満点。全国平均:437.8)、偏差値は57.1でした。
やはり東大合格は無理、今のAI技術では、というのが新井教授の所感です。しかし「MARCH・関関同立」なら合格可能性80%以上というのは、それはそれですごいことではないでしょうか。ちなみに、全国の大学を対象とした東ロボくんの合格可能性は以下の通りでした。
どの大学のどの学部が合格可能なのか、個別の発表はありませんでしたが、「MARCH・関関同立」については学部・学科の平均として、ないしは一部の学部・学科が80%ラインに入っているということでしょう。また国公立大学でも、23大学の30学部・53学科で合格可能性80%以上と判定されていることも注目すべきです。この結果で、プロジェクトの当初目標が達成されたと新井教授は言います。
6年目に「MARCH・関関同立に合格」という目標は達成されたようです。これは "よくやった" とも言えるし、逆に言うと、アッと驚くようなブレイク・スルーは無かったとも言えます。ディープマインド社の "アルファ碁" は世界トップクラスの棋士を破ってAI研究者たちをアッと言わせたのですが(No.174「ディープマインド」、No.180-182「アルファ碁の着手決定ロジック」)、そういうわけにはいかなかった。これはもちろん、碁と違って大学入試には多種の科目があり、科目ごとにAIの適用技術が違うからでしょう。大学入試は総合的な知力の勝負です。特に難関国立大学はそうです。
従って東ロボくんが東大や「MARCH・関関同立」に入れる・入れないということより、科目に得手・不得手があって、そこが明らかになったことにこそ、「東ロボくん」というプロジェクトの意義がありそうです。その、科目別成績は次のようです。
東ロボくんの科目別成績
昨年と比較すると、科目合計の偏差値で 0.7 ポイント下がっていますが、全体的には昨年同様の成績と言えるでしょう。上がった科目もあり、下がったものもあります。
得意科目をみると、世界史の66.3という偏差値が光っています。世界史は、教科書やインターネットなどから歴史記述や文献を大量に集め、それをもとに回答するという「従来からの得意分野」のようです。不得意科目は、英語、特にリスニングです。なぜ不得意かについては新井教授の解説があるので、それをあとで紹介します。
とにかく、東大に合格するためには最低でも100点満点で80点以上は必須ということなので、東ロボくんは "東大合格にはほど遠い" ということが分かります。
また東ロボくんは、東大の2次試験模試も受験しました。その成績が次です。
センター模試とは違って世界史が全国平均をわずかに上回る程度の成績です。これは「問題の趣旨を理解できなかったり、時代や地域を取り違えたりして取りこぼした」そうです(毎日新聞デジタル。2016.11.14による)。
一方、数学(理系)は偏差値76.2という立派な成績、というより凄い成績です。この数学の数字だけをみると、全国で最難関の東大理Ⅲに合格できそうです。東大理Ⅲに合格する人の数学の偏差値は70代後半から80越えのあたりだと言います。しかも東大理Ⅲの受験生で差が付くのは数学です。そこをAIは突破した。
しかし、理Ⅲを含め東大は "一芸" で入れるような大学ではありません。そこが難しいところです。数学だけでは東大理Ⅲクラスだが、受験科目全体ではMARCH・関関同立レベルであるところが、AIという技術を象徴していると思います。
センター模試に成績にもどりますと、全体的に昨年と似た成績であり、1年間の "猛勉強" の成果は(試験結果で見る限りでは)あまりなかったと言えるでしょう。この結果を踏まえて新井教授は以下のように語っています。
要は、東大は断念ということです。しかし新井教授の話にあるように、東ロボくんの目的は「AIの可能性と限界」を明らかにすることでした。AIの可能性というのは「AIの威力」と言ってもいいと思います。全く問題文の「意味」を把握していない東ロボくんが、MARCH・関関同立に合格できる。このAI技術の威力はすごいと思います。逆にいうと、問題文の意味を把握している(はずの)受験生がMARCH・関関同立に合格するのはどういう意義があるのだろう、と考えてしまうわけです。要するにMARCH・関関同立の受験問題を解くというレベルにとどまっている限り、人間の(その部分の)能力はAIに代替されるだろうということです。これはひとつの警鐘です。
それでは逆に、東ロボくんで見えた「AIの限界」とはどういうことでしょうか。ここが核心です。
AIの限界
東ロボくんで見えてきた「AIの限界」について、新井教授は日経産業新聞に大変分かりやすい解説を寄稿していました。それを紹介したいと思います。
まず新井教授が持ち出すキーワードは、ネットワーク社会でしばしば見られる現象を示す「ロングテール」という、ちょっと意外な用語です。
アマゾン・ドッド・コムは、もともと書籍の販売から始まりました。街の書店だと、1年に数冊しか売れない本を置くのはビジネスの効率を下げるので限界があります。しかし地価の安いところに巨大な物流倉庫を作り、本を在庫してネットで販売すれば、ほとんど売れない本でも利益が出る。アマゾンが創造したビジネスモデルです。結果として「あまり売れない多数の本 = ロングテール」に光が当たるわけで、本に関して言えばこれが本来の文化のありかたでしょう。ちなみに、iTunes Music Store ではすべての曲が一度はダウンロードされたという話を以前に聞いたことがありますが、同類の現象です。この "ロングテール" が入試問題とどういう関係があるのでしょうか。
半数以上の問題は分類できない問題であると分析されています。分類できないとは、同一傾向の問題が他にないか、あったとしてもわずかなので、分類を始めるとキリがないということでしょう。つまり半数以上の入試問題はロングテールを構成しているわけです。
この説明でロングテールの意味が明確になるとともに、東ロボくんがなぜリスニングが不得意か(他の教科と比べて)が理解できます。リスニングの問題というのは、実は「リスニングもある常識推論の問題」なのですね。だから、毎年新しい "ジャンル" の問題が作れる。高校3年生の常識の範囲に限っても、ほとんど無尽蔵に新しいジャンルの問題を出せるわけです。デコレーションケーキの作り方、ダンスパーティーへの誘い方、ハンバーガー店での注文の仕方の3つには何の関連性もないのだから・・・・・・。リスニングの問題というのは問題の本質を分析すると、リスニングというジャンルでは括れない、一つ一つがそれぞれ違う "ロングテールの典型" ということです。そして東ロボくんはロングテールに弱い。
ちなみに、会話文(複文)の完成問題は、たとえば次のようなものです(これは今まで引用してきた日経産業新聞に新井教授が寄稿した記事ではありません)。
これが単なる英文解釈でないことは明らかでしょう。それぞれの発話の意図を理解し、会話として自然な人間の感情の流れを答える問題です(正解は④)。
AIの限界の一つは「無尽蔵にある状況への対応」です。少なくとも現代のAI技術では、そこに限界がある。今のAI技術の主流を極く簡単に言うと「問題に関連するビッグデータを収集し、統計手法で答えを導く」というものだからです。
従って、たとえば世界史の論述問題は東ロボくんの得意分野になります(今回の東大模試では "取りこぼした" ようですが)。高校3年生がアクセスしうる世界史の情報には限度があり、かつ高校3年生に出題してよい世界史の知識レベルや事実の数にも限度があるからです。従って、例をあげると「732年、フランク王国の軍はトゥールとポアティエの間で侵攻してきたウマイヤ朝のイスラム軍を破りました。この戦いの結果がその後の西ヨーロッパに与えた影響を、政治と経済の観点から200字以内で述べなさい」というような論述問題は得意なはずです(全く仮想の問題です)。
しかし統計手法には限界があるというのが新井教授の主旨です。英語の単文の「穴埋め問題」や「語順を正しくする問題」を、ビッグデータをもとに90%以上の正解率で解くため、東ロボくんは500億の単文を収集したわけです。インターネットの発達があったからこそ出来たことでしょう。例文(単文)をネットから自動収集できる。しかし、この手法を会話文を完成させる問題には適用できません。適用するには500億の "複文の会話サンプル" が必要であり、その収集は現実的に不可能だからです。実現のためには全く違うアプローチのAI技術を開発する必要があるが、その技術開発のコストは、それがもたらす成果に全く見合わないと考えられます。新井教授の結論は次のとおりです。
東ロボくんの意義
新井教授の解説を読んで、AIのプロジェクトに大学入試の模試を選んだ理由がわかりました。試験問題は基本的に一度きりなのですね。全く同じ問題は出ない。もちろん科目によっては過去問に類似しているケースもあるでしょう。しかし問題作成者は、まず自分の知識に照らして過去にないはずの問題を複数個作成し、次に手分けして本当に過去に出題されていないのかを徹底的に検証すると思います。特定の受験生に有利にならないようにするためです。この検証でOKとなった問題だけが出題される。一度きりの問題が出るテストが、毎年決まった時期に行われ、成績の履歴がトレースできるのは大学入試の模試しかない。だから東ロボくんなのです。
ちょっと話を広げますと、我々は人生やビジネスにおいてさまざまな "問題" に答えを出し、意志決定する必要が出てきます。もちろん同じ(ないしは類似の)問題も多いのですが、中には1回きりという場合もあります。類似の問題であっても、シチュエーションが違うという意味で初めての問題もある。そして大事なことは、人生においてもビジネスおいても、重要な問題ほど1回きりの問題なのです。経験のない状況で答えを見つける必要がある。それが人生であり、社会です。
東ロボくんの模試で分かったことは、東ロボくんの目的である「AIの可能性と限界を明らかにする」ということの意義です。
AIについては "アバウトな" 言説が充満しています。2030年には人間の頭脳を越えるとか、人間を越えることは絶対に無理だとか、いろいろあります。しかしそれらはどれも実証的データにもとづく推定ではありません。No.175「半沢直樹は機械化できる」で紹介したオックスフォード大学の「雇用の未来」も、あくまでAI専門家の「AIに置き換えられる仕事、置き換えられない仕事」という "意見" の集約です。それらに反して東ロボくんは、数年をかけて、入試問題という範囲ではあるが、実際にAIのプログラムを開発し、その可能性と限界を明白な成績とともに検討してきたわけです。
その可能性と限界ですが、一般的にはAIの可能性(威力)について目にする事が多いと思います。このブログでも、
などがそうでした。従来ありえなかった推論をコンピュータがやってしまう。これらの特徴は、いずれもビックデータの解析をもとにした推論だということです。碁の世界チャンピオンに勝ったアルファ碁も、アマチュア高段者が打った16万局の囲碁データを出発点にしています。これらの例だけでなく、現代のAI研究の主流はビックデータの解析による推論です。
一方で我々はAIの限界の具体例を目にすることは少ないというか、ほとんど無いといってもいいでしょう。しかし東ロボくんは、数年かけて丹念に、AIの可能性とともに限界をも明らかにしてきました。
新井教授が日経産業新聞への寄稿で、英語の文章完成問題における単文と複文の大きな溝を述べていました。単文のビッグデータは何とか得られるが、複文では実質上無理である。論理上可能であってもコストの視点で無理という話でした。ビックデータが得られないか、実用上リーズナブルなコストで得られる見込みのない問題は、現代主流のAI技術では無力なのです。こういった実証的研究の大切さを示したこと、それが東ロボくんというプロジェクトの意義でしょう。
意味を理解すること
AIに使われているのは、コンピュータ・サイエンスを含む、広い意味での数学です。東ロボくんのプロジェクト・リーダである新井教授も数学者です。
数学を割り切って分類すると「論理」と「統計」の二つでしょう。「統計」と「統計以外のすべて」と言った方がいいかも知れません。ビックデータをもとにした推論は統計のジャンルであり、現代の主流の(華々しい成果を出している)AIは統計に偏っています。
一方、人間の行動はそれだけではありません。論理の部分も重要視します。問題の意味を理解し、原則はこうだからとか、そもそもの目的はこうだからとか、こういう理由だからこうするとか、意図を込めて意志決定したり、行動したりします。新井教授は中高校生向けの講演のとき、最後は次のように締めくくるそうです。
この最後の「みなさん」から始まる一行を確信をもって中高生に言える。これが『ロボットは東大に入れるか』の大きな成果だと思いました。
3つの余談
プロジェクトの目的とは無関係ですが、東ロボくんで分かったことは、「MARCH・関関同立」に入学する学力と東大に入る学力には大きな差があり、その差は連続的変化ではなく不連続な落差だということです。なぜなら、東ロボくんが東京大学に入学できる日は、現在のAI技術だと永遠に来ないのだから・・・・・・。AIと人間の学力を同じ土俵で比較はできない思いつつも、「80%の確率で合格」と「永遠に合格できない」との差は決定的だと思いました。そこで思ったのは、東大と「MARCH・関関同立」の間にある大学です。おそらく京大は「落差の東大側」でしょう。では、たとえば早稲田と慶応はどうか。落差のMARCH側なのか東大側なのか。もちろん学部によるでしょうが、ちょっと気になりました。
2つ目の余談は、今回の成果発表会に、デンソーが開発した "解答代筆ロボット" である「東ロボ手くん」が登場したことです。ボールペンで筆記ができるロボットアームです。No.176 「将棋電王戦が暗示するロボット産業の未来」に書いたように、デンソーは将棋電王戦のために「電王手さん」という "代指しロボット" を開発しています。そしてこのロボットは「人間の手と指の微妙な動きを完全に模擬できるロボットを開発するという、デンソーの大きな企業目標の一つとして位置づけられているのかも」と書きました。今回の「東ロボ手くん」もその一環でしょう。ここまで来たら、次には囲碁電王戦のために "代打ちロボット" を是非開発してもらいたい。碁石は丸みがあるので難しそうですが、デンソーの技術力をもってすれば可能でしょう。日本の "3大AIチャレンジ"(東ロボくん、将棋電王戦、囲碁電王戦)のすべてに参戦してこそ、デンソーのロボット技術の優秀性が証明されるはずです。特に囲碁は欧米、中国、韓国に広まっているので、"代打ちロボット" が活躍できる場はグローバルです。デンソーはあとには引けないはずです。
3つ目の余談です。日経産業新聞への寄稿文で新井教授は「東ロボくん」を「東ロボ」と "呼び捨て" にしています。これはおそらく「自分の身内は呼び捨てにする」という、日本語の慣習に忠実に書いているのでしょう。これでちょっと思い出しました。私は新井教授の講演を一回だけ聞いたことがあるのですが、彼女は講演に熱が入ってくると「東ロボ」とも言わずに「うちの子」と、母親的雰囲気の言い方になってしまうのですね。「呼び捨て」なり「うちの子」なり、新井教授がプロジェクトに賭けた意気込みを感じました。
本文中に東ロボくんが挑戦した英語のリスニングの問題が出てきます。その問題が新井教授の著書「ロボットは東大に入れるか」(イースト・プレス。2014)にあります。それを紹介します。
このリスニングでは、父親の誕生日ために息子が母親とバースデー・ケーキを手作りする場面が英語で流されます。デコレーション・ケーキにブルーベリーを飾るやり方について息子が母に尋ね、母が答えます「クリームとクリームの間にブルーベリーをひとつずつ置いてちょうだい」。
この英語の会話のリスニングは、東ロボくんは完璧でした。東ロボくんは英語のリスニングが得意なのです。音声認識の最先端の研究は、たとえば新宿駅の雑踏でスマホでしゃべった音声の中から本人のものだけを聞き分けたり、またオーケストラの中からヴィオラの音だけを取り出すといったものです。雑音や余計な音が全くないセンター入試など、東ロボくんにとっては朝飯前なのです。
しかし設問は「できあがったケーキはどれか、4つのイラストから選びなさい」というものでした。これが東ロボくんは全くできなかった。
言うまでもなく正解は ② なのですが、考えてみると不思議なイラストです。「ブルーベリーがのったデコレーション・ケーキ」など、受験生は言うに及ばす、ほどんどの日本人は見たことがないはずです。ブルーベリーがどういうものか知っている受験生は多いとは思いますが、食べた記憶がある人は少数ではないでしょうか。そのブルーベリーは直径が1cm程度ですが、そうするとこのイラストのケーキの直径は12cm程度になります。デコレーション・ケーキとしては小さすぎる。父親の誕生日のためとしては不思議な大きさです。
しかしそんなことは人間の受験生にとっては関係ないのです。極端にはブルーベリーとクリームの意味を知らなくてもよい。「ケーキ」が分かりさえすれば、ケーキの上に2種類のモノが交互に並んでいるイラストを答えればよいのです。要するに、英語のリスニングができたとしたら人間の受験生はまず間違いなく正解する問題です。
しかし東ロボくにとっては難しいというより、無理です。「ロボットは東大に入れるか」の本には、国立情報学研究所の画像認識の専門家の「絶対に無理だね」との発言がありました。画像認識の主流はたくさんの教師画像を集めてコンピュータに学習させるというものですが、そもそもブルーベリーがのったケーキなど人間も見たことがないのです。さらに、画像認識で研究が進んでいるのは「写真画像の認識」です。イラストは人間が恣意的に描くものであり、同じモノを描いたとしてもバラツキが大きすぎます。写真画像の認識より圧倒的に難しい。ということは、東ロボくんが漫画を読むのはまず出来ないことにもなります。
まるで東ロボくんの弱点を知っている人が作ったかのような問題ですが、もちろん、センター試験の英語のリスニングにケーキを作る場面が出るのはこれ1回きりです。そして類似の問題は無限に考えられる。つまり、イラストを選ぶ形で出される英語のリスニングの問題は、東ロボくんは今後とも正解出来ないことになるのです。
◆ | プロジェクトの存在感を出すために、是非とも "東大" にしたかったのだろう(本来なら "ロボットは大学に入れるか" でいいはず)。 | ||
◆ | 新井教授は「ロボットは東大に入れない」と思っているのではないか。その証拠にプロジェクト名称が疑問形になっている。 |
の2点です。
「ロボットは東大に入れるか」プロジェクトは2011年に開始され、2013年からは模擬試験を受験しています。2016年11月14日、今年の成果発表会が開催されました。以下はその内容です。
国立情報学研究所ニュース(NII Today)No.60(2013.6)。特集「ロボットは東大に入れるか」の表紙
|
東大は無理、MARCH・関関同立は合格可能
まず、新井教授が朝日新聞デジタルに寄稿した文章から引用します。
|
この合格可能性判定は、ベネッセコーポレーションの「進研模試」(大学入試センター試験模試)で行われました。東ロボくんの5教科8科目の成績は525点であり(950点満点。全国平均:437.8)、偏差値は57.1でした。
やはり東大合格は無理、今のAI技術では、というのが新井教授の所感です。しかし「MARCH・関関同立」なら合格可能性80%以上というのは、それはそれですごいことではないでしょうか。ちなみに、全国の大学を対象とした東ロボくんの合格可能性は以下の通りでした。
調査対象 | 合格可能性80%以上 | |||||
大学 | 学部 | 学科 | 大学 | 学部 | 学科 | |
国公立 | 172 | 576 | 2096 | 23 | 30 | 53 |
私立 | 584 | 1753 | 4309 | 512 | 1343 | 2993 |
計 | 756 | 2329 | 6405 | 535 | 1373 | 3046 |
(site : pc.watch.impress.co.jp より)
どの大学のどの学部が合格可能なのか、個別の発表はありませんでしたが、「MARCH・関関同立」については学部・学科の平均として、ないしは一部の学部・学科が80%ラインに入っているということでしょう。また国公立大学でも、23大学の30学部・53学科で合格可能性80%以上と判定されていることも注目すべきです。この結果で、プロジェクトの当初目標が達成されたと新井教授は言います。
|
「東ロボくん」2016年成果報告会のポスター
|
従って東ロボくんが東大や「MARCH・関関同立」に入れる・入れないということより、科目に得手・不得手があって、そこが明らかになったことにこそ、「東ロボくん」というプロジェクトの意義がありそうです。その、科目別成績は次のようです。
東ロボくんの科目別成績
大学入試センター模試の成績
ベネッセコーポレーション「進研模試」
ベネッセコーポレーション「進研模試」
(カッコ内は昨年の成績)
得点 | 全国平均 | 偏差値 | |
英語(筆記) | 95(80) | 92.9 | 50.5(48.4) |
英語(リスニング) | 14(16) | 26.3 | 36.2(40.5) |
国語(現代文+古文) | 96(90) | 96.8 | 49.7(45.1) |
数学 I A | 70(75) | 54.4 | 57.8(64.0) |
数学Ⅱ B | 59(77) | 46.5 | 55.5(65.8) |
世界史 B | 77(76) | 44.8 | 66.3(66.5) |
日本史 B | 52(55) | 47.3 | 52.9(54.8) |
物理 | 62(42) | 45.8 | 59.0(46.5) |
合計(950点満点) | 525(511) | 437.8 | 57.1(57.8) |
朝日新聞(2016.11.15)
昨年と比較すると、科目合計の偏差値で 0.7 ポイント下がっていますが、全体的には昨年同様の成績と言えるでしょう。上がった科目もあり、下がったものもあります。
得意科目をみると、世界史の66.3という偏差値が光っています。世界史は、教科書やインターネットなどから歴史記述や文献を大量に集め、それをもとに回答するという「従来からの得意分野」のようです。不得意科目は、英語、特にリスニングです。なぜ不得意かについては新井教授の解説があるので、それをあとで紹介します。
とにかく、東大に合格するためには最低でも100点満点で80点以上は必須ということなので、東ロボくんは "東大合格にはほど遠い" ということが分かります。
また東ロボくんは、東大の2次試験模試も受験しました。その成績が次です。
東大2次試験向け模試
代々木ゼミナール・論述式
代々木ゼミナール・論述式
得点 | 全国平均 | 偏差値 | |
世界史 | 16 | 14.5 | 51.8 |
数学(文系) | 46 | 19.9 | 68.1 |
数学(理系) | 80 | 30.8 | 76.2 |
朝日新聞(2016.11.15)
センター模試とは違って世界史が全国平均をわずかに上回る程度の成績です。これは「問題の趣旨を理解できなかったり、時代や地域を取り違えたりして取りこぼした」そうです(毎日新聞デジタル。2016.11.14による)。
一方、数学(理系)は偏差値76.2という立派な成績、というより凄い成績です。この数学の数字だけをみると、全国で最難関の東大理Ⅲに合格できそうです。東大理Ⅲに合格する人の数学の偏差値は70代後半から80越えのあたりだと言います。しかも東大理Ⅲの受験生で差が付くのは数学です。そこをAIは突破した。
しかし、理Ⅲを含め東大は "一芸" で入れるような大学ではありません。そこが難しいところです。数学だけでは東大理Ⅲクラスだが、受験科目全体ではMARCH・関関同立レベルであるところが、AIという技術を象徴していると思います。
センター模試に成績にもどりますと、全体的に昨年と似た成績であり、1年間の "猛勉強" の成果は(試験結果で見る限りでは)あまりなかったと言えるでしょう。この結果を踏まえて新井教授は以下のように語っています。
|
要は、東大は断念ということです。しかし新井教授の話にあるように、東ロボくんの目的は「AIの可能性と限界」を明らかにすることでした。AIの可能性というのは「AIの威力」と言ってもいいと思います。全く問題文の「意味」を把握していない東ロボくんが、MARCH・関関同立に合格できる。このAI技術の威力はすごいと思います。逆にいうと、問題文の意味を把握している(はずの)受験生がMARCH・関関同立に合格するのはどういう意義があるのだろう、と考えてしまうわけです。要するにMARCH・関関同立の受験問題を解くというレベルにとどまっている限り、人間の(その部分の)能力はAIに代替されるだろうということです。これはひとつの警鐘です。
それでは逆に、東ロボくんで見えた「AIの限界」とはどういうことでしょうか。ここが核心です。
AIの限界
東ロボくんで見えてきた「AIの限界」について、新井教授は日経産業新聞に大変分かりやすい解説を寄稿していました。それを紹介したいと思います。
|
「東ロボくん」2016年成果報告会で、新井紀子教授(2016.11.14 一橋講堂)
(www.itmedia.co.jp)
|
アマゾン・ドッド・コムは、もともと書籍の販売から始まりました。街の書店だと、1年に数冊しか売れない本を置くのはビジネスの効率を下げるので限界があります。しかし地価の安いところに巨大な物流倉庫を作り、本を在庫してネットで販売すれば、ほとんど売れない本でも利益が出る。アマゾンが創造したビジネスモデルです。結果として「あまり売れない多数の本 = ロングテール」に光が当たるわけで、本に関して言えばこれが本来の文化のありかたでしょう。ちなみに、iTunes Music Store ではすべての曲が一度はダウンロードされたという話を以前に聞いたことがありますが、同類の現象です。この "ロングテール" が入試問題とどういう関係があるのでしょうか。
|
半数以上の問題は分類できない問題であると分析されています。分類できないとは、同一傾向の問題が他にないか、あったとしてもわずかなので、分類を始めるとキリがないということでしょう。つまり半数以上の入試問題はロングテールを構成しているわけです。
|
この説明でロングテールの意味が明確になるとともに、東ロボくんがなぜリスニングが不得意か(他の教科と比べて)が理解できます。リスニングの問題というのは、実は「リスニングもある常識推論の問題」なのですね。だから、毎年新しい "ジャンル" の問題が作れる。高校3年生の常識の範囲に限っても、ほとんど無尽蔵に新しいジャンルの問題を出せるわけです。デコレーションケーキの作り方、ダンスパーティーへの誘い方、ハンバーガー店での注文の仕方の3つには何の関連性もないのだから・・・・・・。リスニングの問題というのは問題の本質を分析すると、リスニングというジャンルでは括れない、一つ一つがそれぞれ違う "ロングテールの典型" ということです。そして東ロボくんはロングテールに弱い。
|
ちなみに、会話文(複文)の完成問題は、たとえば次のようなものです(これは今まで引用してきた日経産業新聞に新井教授が寄稿した記事ではありません)。
|
これが単なる英文解釈でないことは明らかでしょう。それぞれの発話の意図を理解し、会話として自然な人間の感情の流れを答える問題です(正解は④)。
AIの限界の一つは「無尽蔵にある状況への対応」です。少なくとも現代のAI技術では、そこに限界がある。今のAI技術の主流を極く簡単に言うと「問題に関連するビッグデータを収集し、統計手法で答えを導く」というものだからです。
従って、たとえば世界史の論述問題は東ロボくんの得意分野になります(今回の東大模試では "取りこぼした" ようですが)。高校3年生がアクセスしうる世界史の情報には限度があり、かつ高校3年生に出題してよい世界史の知識レベルや事実の数にも限度があるからです。従って、例をあげると「732年、フランク王国の軍はトゥールとポアティエの間で侵攻してきたウマイヤ朝のイスラム軍を破りました。この戦いの結果がその後の西ヨーロッパに与えた影響を、政治と経済の観点から200字以内で述べなさい」というような論述問題は得意なはずです(全く仮想の問題です)。
しかし統計手法には限界があるというのが新井教授の主旨です。英語の単文の「穴埋め問題」や「語順を正しくする問題」を、ビッグデータをもとに90%以上の正解率で解くため、東ロボくんは500億の単文を収集したわけです。インターネットの発達があったからこそ出来たことでしょう。例文(単文)をネットから自動収集できる。しかし、この手法を会話文を完成させる問題には適用できません。適用するには500億の "複文の会話サンプル" が必要であり、その収集は現実的に不可能だからです。実現のためには全く違うアプローチのAI技術を開発する必要があるが、その技術開発のコストは、それがもたらす成果に全く見合わないと考えられます。新井教授の結論は次のとおりです。
|
東ロボくんの意義
新井教授の解説を読んで、AIのプロジェクトに大学入試の模試を選んだ理由がわかりました。試験問題は基本的に一度きりなのですね。全く同じ問題は出ない。もちろん科目によっては過去問に類似しているケースもあるでしょう。しかし問題作成者は、まず自分の知識に照らして過去にないはずの問題を複数個作成し、次に手分けして本当に過去に出題されていないのかを徹底的に検証すると思います。特定の受験生に有利にならないようにするためです。この検証でOKとなった問題だけが出題される。一度きりの問題が出るテストが、毎年決まった時期に行われ、成績の履歴がトレースできるのは大学入試の模試しかない。だから東ロボくんなのです。
ちょっと話を広げますと、我々は人生やビジネスにおいてさまざまな "問題" に答えを出し、意志決定する必要が出てきます。もちろん同じ(ないしは類似の)問題も多いのですが、中には1回きりという場合もあります。類似の問題であっても、シチュエーションが違うという意味で初めての問題もある。そして大事なことは、人生においてもビジネスおいても、重要な問題ほど1回きりの問題なのです。経験のない状況で答えを見つける必要がある。それが人生であり、社会です。
東ロボくんの模試で分かったことは、東ロボくんの目的である「AIの可能性と限界を明らかにする」ということの意義です。
AIについては "アバウトな" 言説が充満しています。2030年には人間の頭脳を越えるとか、人間を越えることは絶対に無理だとか、いろいろあります。しかしそれらはどれも実証的データにもとづく推定ではありません。No.175「半沢直樹は機械化できる」で紹介したオックスフォード大学の「雇用の未来」も、あくまでAI専門家の「AIに置き換えられる仕事、置き換えられない仕事」という "意見" の集約です。それらに反して東ロボくんは、数年をかけて、入試問題という範囲ではあるが、実際にAIのプログラムを開発し、その可能性と限界を明白な成績とともに検討してきたわけです。
その可能性と限界ですが、一般的にはAIの可能性(威力)について目にする事が多いと思います。このブログでも、
データの見えざる手(2) | |||
インフルエンザの流行はGoogleが予測する | |||
アルファ碁の着手決定ロジック(1) | |||
アルファ碁の着手決定ロジック(2) |
などがそうでした。従来ありえなかった推論をコンピュータがやってしまう。これらの特徴は、いずれもビックデータの解析をもとにした推論だということです。碁の世界チャンピオンに勝ったアルファ碁も、アマチュア高段者が打った16万局の囲碁データを出発点にしています。これらの例だけでなく、現代のAI研究の主流はビックデータの解析による推論です。
一方で我々はAIの限界の具体例を目にすることは少ないというか、ほとんど無いといってもいいでしょう。しかし東ロボくんは、数年かけて丹念に、AIの可能性とともに限界をも明らかにしてきました。
新井教授が日経産業新聞への寄稿で、英語の文章完成問題における単文と複文の大きな溝を述べていました。単文のビッグデータは何とか得られるが、複文では実質上無理である。論理上可能であってもコストの視点で無理という話でした。ビックデータが得られないか、実用上リーズナブルなコストで得られる見込みのない問題は、現代主流のAI技術では無力なのです。こういった実証的研究の大切さを示したこと、それが東ロボくんというプロジェクトの意義でしょう。
意味を理解すること
AIに使われているのは、コンピュータ・サイエンスを含む、広い意味での数学です。東ロボくんのプロジェクト・リーダである新井教授も数学者です。
数学を割り切って分類すると「論理」と「統計」の二つでしょう。「統計」と「統計以外のすべて」と言った方がいいかも知れません。ビックデータをもとにした推論は統計のジャンルであり、現代の主流の(華々しい成果を出している)AIは統計に偏っています。
一方、人間の行動はそれだけではありません。論理の部分も重要視します。問題の意味を理解し、原則はこうだからとか、そもそもの目的はこうだからとか、こういう理由だからこうするとか、意図を込めて意志決定したり、行動したりします。新井教授は中高校生向けの講演のとき、最後は次のように締めくくるそうです。
|
この最後の「みなさん」から始まる一行を確信をもって中高生に言える。これが『ロボットは東大に入れるか』の大きな成果だと思いました。
3つの余談
プロジェクトの目的とは無関係ですが、東ロボくんで分かったことは、「MARCH・関関同立」に入学する学力と東大に入る学力には大きな差があり、その差は連続的変化ではなく不連続な落差だということです。なぜなら、東ロボくんが東京大学に入学できる日は、現在のAI技術だと永遠に来ないのだから・・・・・・。AIと人間の学力を同じ土俵で比較はできない思いつつも、「80%の確率で合格」と「永遠に合格できない」との差は決定的だと思いました。そこで思ったのは、東大と「MARCH・関関同立」の間にある大学です。おそらく京大は「落差の東大側」でしょう。では、たとえば早稲田と慶応はどうか。落差のMARCH側なのか東大側なのか。もちろん学部によるでしょうが、ちょっと気になりました。
デンソーが開発した、解答代筆ロボットアーム「東ロボ手くん」
(www.itmedia.co.jp)
|
3つ目の余談です。日経産業新聞への寄稿文で新井教授は「東ロボくん」を「東ロボ」と "呼び捨て" にしています。これはおそらく「自分の身内は呼び捨てにする」という、日本語の慣習に忠実に書いているのでしょう。これでちょっと思い出しました。私は新井教授の講演を一回だけ聞いたことがあるのですが、彼女は講演に熱が入ってくると「東ロボ」とも言わずに「うちの子」と、母親的雰囲気の言い方になってしまうのですね。「呼び捨て」なり「うちの子」なり、新井教授がプロジェクトに賭けた意気込みを感じました。
 補記  |
本文中に東ロボくんが挑戦した英語のリスニングの問題が出てきます。その問題が新井教授の著書「ロボットは東大に入れるか」(イースト・プレス。2014)にあります。それを紹介します。
このリスニングでは、父親の誕生日ために息子が母親とバースデー・ケーキを手作りする場面が英語で流されます。デコレーション・ケーキにブルーベリーを飾るやり方について息子が母に尋ね、母が答えます「クリームとクリームの間にブルーベリーをひとつずつ置いてちょうだい」。
この英語の会話のリスニングは、東ロボくんは完璧でした。東ロボくんは英語のリスニングが得意なのです。音声認識の最先端の研究は、たとえば新宿駅の雑踏でスマホでしゃべった音声の中から本人のものだけを聞き分けたり、またオーケストラの中からヴィオラの音だけを取り出すといったものです。雑音や余計な音が全くないセンター入試など、東ロボくんにとっては朝飯前なのです。
しかし設問は「できあがったケーキはどれか、4つのイラストから選びなさい」というものでした。これが東ロボくんは全くできなかった。
新井紀子「ロボットは東大に入れるか」
(イースト・プレス。2014)より
(イースト・プレス。2014)より
言うまでもなく正解は ② なのですが、考えてみると不思議なイラストです。「ブルーベリーがのったデコレーション・ケーキ」など、受験生は言うに及ばす、ほどんどの日本人は見たことがないはずです。ブルーベリーがどういうものか知っている受験生は多いとは思いますが、食べた記憶がある人は少数ではないでしょうか。そのブルーベリーは直径が1cm程度ですが、そうするとこのイラストのケーキの直径は12cm程度になります。デコレーション・ケーキとしては小さすぎる。父親の誕生日のためとしては不思議な大きさです。
しかしそんなことは人間の受験生にとっては関係ないのです。極端にはブルーベリーとクリームの意味を知らなくてもよい。「ケーキ」が分かりさえすれば、ケーキの上に2種類のモノが交互に並んでいるイラストを答えればよいのです。要するに、英語のリスニングができたとしたら人間の受験生はまず間違いなく正解する問題です。
しかし東ロボくにとっては難しいというより、無理です。「ロボットは東大に入れるか」の本には、国立情報学研究所の画像認識の専門家の「絶対に無理だね」との発言がありました。画像認識の主流はたくさんの教師画像を集めてコンピュータに学習させるというものですが、そもそもブルーベリーがのったケーキなど人間も見たことがないのです。さらに、画像認識で研究が進んでいるのは「写真画像の認識」です。イラストは人間が恣意的に描くものであり、同じモノを描いたとしてもバラツキが大きすぎます。写真画像の認識より圧倒的に難しい。ということは、東ロボくんが漫画を読むのはまず出来ないことにもなります。
まるで東ロボくんの弱点を知っている人が作ったかのような問題ですが、もちろん、センター試験の英語のリスニングにケーキを作る場面が出るのはこれ1回きりです。そして類似の問題は無限に考えられる。つまり、イラストを選ぶ形で出される英語のリスニングの問題は、東ロボくんは今後とも正解出来ないことになるのです。
No.189 - 孫正義氏に潰された日本発のパソコン [技術]
No.175「半沢直樹は機械化できる」の補記(2016.9.18)に書いたのですが、みずほ銀行とソフトバンクは 2016年9月15日、AI(人工知能)技術を使った個人向け融資の新会社設立を発表しました。そのソフトバンクとAIについては、AI技術を使ったロボット「ペッパー」のことも No.159「AIBOは最後のモルモットか」で書きました。
二つの記事でソフトバンク・グループの孫正義社長の発言や人物評価に簡単にふれたのですが、今回は、その孫正義氏に関することを書きます。最近、ソフトバンク・グループが英国・ARM(アーム)社を買収した件です。以前に強く思ったことがあって、この買収でそれを思い出したからです。
ソフトバンクが英国・ARM(アーム)社を買収
ソフトバンク・グループの孫正義社長は、2016年7月18日にロンドンで記者会見をし、英国・ケンブリッジにあるARM社を240億ポンド(約3兆3000億円)で買収すると発表しました。ソフトバンクがボーダフォン日本法人を買収した金額は1兆7820億円、米国の電話会社・スプリントの買収は1兆8000億円ですから、それらを大きく上回り、もちろん日本企業の買収案件では史上最大です。
ARM(アーム)は、コンピュータ、パソコン、スマートフォンなどの心臓部である「マイクロ・プロセッサー」を設計する会社です。
現代のマイクロ・プロセッサーの有名メーカーはインテルで、Windowsが搭載されているパソコンにはインテル製、ないしはそれと互換性のある(=代替可能な)マイクロ・プロセッサーが組み込まれています( "インテル、はいってる" )。
ARMがインテルほど一般に有名でないのは、ARMはマイクロ・プロセッサー(= 半導体チップ)そのものを製造する会社ではなく、マイクロ・プロセッサーの "設計仕様" と、その仕様に基づいて作られた "設計データ" を開発している会社だからです(専門用語で "アーキテクチャ" と "IPコア")。マイクロ・プロセッサーの開発会社はARMから "設計データ" を購入し、それに自社の設計データも付加して、そのデータをもとにマイクロ・プロセッサーを製造します。製造は自社の工場で行うか、ないしは台湾などの製造専門会社に委託するわけです。
ARMの "設計データ" の大きな特長は、それをもとに作られたマイクロ・プロセッサーの電力消費量が少ないことです。そこがARMのノウハウであり、技術力です。この特質があるため、現在の世界のスマートフォンの90%以上は、ARM仕様の(=ARMの "設計仕様" か "設計データ" を使った)半導体チップになっています。Androidのスマートフォンのみならず、アップルもARMから設計仕様を購入しています。
ちなみに、日本最速のスーパー・コンピュータ "京" の後継機種である "ポスト京" を計画している富士通は、そのプロセッサーとして「スパコン拡張版のARM仕様」の採用を発表しました(2016.6.20)。富士通が出した拡張要求に ARM社が同意したことがポイントのようです。ARMはスパコンにも乗り出すということです。そしてスパコンで磨いた技術をもとに、現在はインテルなどが席巻している「業務用サーバ機」という巨大なコンピュータ市場を狙うのでしょう。
ところで、ARMという会社の名前は元々、
Acorn RISC Machine
の略称でした。今は Advanced RISC Machine の略とされているようですが、元々は Acorn RISC Machine だった。この英単語の意味は以下の通りです。
ここでなぜ "Acorn(=ドングリ)" なのかというと、ARM社の前身が「エイコーン・コンピュータ(Acorn Computers)」という、英国のケンブリッジに設立された会社だったからです。
エイコーン・コンピュータ
エイコーン・コンピュータは、1978年に設立されたコンピュータ会社です。Acornと命名したのは、そこから芽が出て大きな木に成長するという意味だとか、また電話帳で Apple より前に記載されるようにだとか言われています。余談ですが、そのAppleという名前はスティーヴ・ジョブズが働いたこともあるゲーム会社・Atariより電話帳で前に来るようにしたという説があります。
エイコーン・コンピュータが大きく伸びたのは、1980年代から1990年代前半にかけて、イギリスの教育用コンピュータ(当時のマイコン。今のパソコン)の市場を独占したからです。
イギリスの公共放送のBBCは、これからの時代におけるコンピュータの重要性に気づき、コンピュータ教育を推進するため、BBC Computer Literacy Project を1980年に開始しました。この一環で "BBC Micro" というマイコンを開発することになりました。このときイギリス政府は、開発企業を英国企業にするようにという強い指導を行ったのです。いろいろと経緯があって、最終的に選ばれたのはエイコーン・コンピュータでした。その "BBC Micro" は1982年に発売されました。ちなみに、公共放送が教育に関与するのは日本と似ています。
1980年代、イギリス政府は全国の学校にコンピュータを導入する補助金をばらまき、また教師の訓練やコンピュータ関連プロジェクトにも補助金を出しました。このとき最も売れたのが "国策コンピュータ" の "BBC Micro" とその後継機種だったわけです。当然、エイコーン・コンピュータの売り上げは伸び、会社は発展を遂げます。そして1980年代の半ばにエイコーン・コンピュータ社内で始まったのが、全く新しい設計思想(=RISC)のマイクロ・プロセッサーを開発する "ARMプロジェクト" だった。だから "Acorn RISC Machine" なのです。そのARMプロセッサーを搭載した BBC Micro の後継機種は英国の学校にも導入されました。
エイコーン・コンピュータはその後、いくつかの会社に分割されましたが、マイクロ・プロセッサー部門は ARM社として生き残り、現代のスマートフォンで世界を席巻するまでになりました。
以上の経緯を振り返ってみると、ソフトバンク・グループが買収した ARM は、英国政府と公共放送の施策に従って開発された「英国発の学校用コンピュータ」にルーツがあると言っていいわけです。もちろん現代のARMは、当時のマイクロ・プロセッサーからすると技術的に比べられないほど進化を遂げています。あくまでルーツをだどるとそこに行き着くという意味です。
1990年代半ばより、マイクロソフトのWindowsがメジャーになり、それに従って、マイクロ・プロセッサーとしてはインテル製品が普及しました。インテル(とアップル)のプロセッサーが、パソコン用として世界を制覇したわけです。
しかしARMは "英国発" の技術として生き残り、生き残っただけではなく特定分野(スマートフォン)では世界を席巻するまでになりました。その源流はと言うと、政府肝入りの教育用コンピュータだったのです。
ここで話は日本に飛ぶのですが、実は日本においても、日本発のコンピュータの基本ソフト(OS)とパソコンが、日本の教育現場に大量導入されてもおかしくない時期があったのです。そのコンピュータ基本ソフトが、坂村健・東大教授の TRON(トロン)です。
TRONプロジェクト
TRONはコンピュータの基本ソフト(OS:Operating System)です。コンピュータの作りを簡略化して言うと、まずハードウェアがあり、その中核がマイクロ・プロセッサーです。そのマイクロ・プロセッサーで動作するのが基本ソフト(OS)であり、基本ソフトの上で動作するのが各種のアプリ(アプリケーション・プログラム)です。現代のパソコンの基本ソフト(OS)の代表的なものは、マイクロソフト社の Windows や、アップル社の iOS です。
その意味で、TRON(= OS)は ARM とは位置づけが違います。ARMはマイクロ・プロセッサー(=ハードウェア)の設計仕様だからです。しかし TRON も ARM も、コンピュータの動作を基礎で支える基本的な技術であることには変わりません。むしろパソコンやスマートフォンを考えると、一般利用者から見た使い勝手はマイクロ・プロセッサーよりも基本ソフト(OS)に強く影響されます。そのためパソコンメーカーは、基本ソフト(OS)の仕様に合うようにパソコンのハードウェア全体を設計し、販売しています。
TRONプロジェクトではまず、機械に組み込まれたマイクロ・プロセッサーでの使用を前提とした ITRON( I は Industry )が開発されました。TRONは The Real-time Operating system Nucleus であり、Real-timeというところに「機器組み込み用」という本来の狙いが現れています。さらにTRONプロジェクトでは、一般の個人が家庭や学校、職場で使うパソコン用に BTRON( B は Business )が開発されました。以下はその BTRON の話です。
BTRON
BTRON プロジェクトを主導したのは、坂村教授と松下電器産業(現、パナソニック)であり、1985年に開発がスタートしました。BTRONを開発し、その仕様に合ったパソコンを開発しようとしたのです。BTRONは次第に知名度を高め、賛同するパソコン・メーカーも増えてきました。そしてこの開発と平行して、全国の学校にパソコンを設置する話が持ち上がったのです。イギリスから数年遅れということになります。
以下、日経産業新聞に連載された坂村教授の「仕事人秘録」から引用します。下線は原文にはありません。
教育用パソコンの標準OSにBTRON、という動きに対して、当時はマイクロソフトのOS、MS-DOSをかつぐ勢力があり、それで成功していた会社もあったというのがポイントです。このことが、その後の "異様な" 展開を引き起こすのです。
潰された BTRON
1980年代後半というと、日本の経済力が飛躍的に伸びた絶頂期であり、バブル景気とも言われた時期です。アメリカとの貿易摩擦もいろいろと起った。そういう時代背景での出来事です。
無料の(今で言う "オープン・ソース" の)基本ソフト(OS)を "国を越えて" 使っても、それは貿易ではないので貿易摩擦を生むはずがありません。唯一、BTRONが広まると困るのは「既存の有料のパソコン用OSやそのアプリでビジネスを展開している日米の人たち」であることは明白なわけです。そして実際その通りだったことは、坂村教授が「後に思いがけない事実が明らかになる」と書いているように、後で判明します。
現在のソフトバンク・グループは「情報通信業」であり、数々の事業を手がけていますが、元はというとソフトウェアの卸(=流通業)や出版をする会社でした。上の引用にあるような米国のソフトを輸入販売する立場から言うと、そのソフトはマイクロソフトやアップルのOSで動くように作られたものです。従って、日本で BTRON ベースのパソコンが広まるのは、孫氏のビジネスにとってはまずいわけです。だから "トロン潰し" に動いた。
この事件が坂村教授に「不愉快な思い」をさせただけならどうということはないのですが、それよりも坂村教授が一つ前の引用で語っているように、日本の情報通信産業に与えたダメージが大きかったわけです。
しかし、トロンが無くなったわけではありません。坂村教授の述懐を続けます。
孫正義氏の "TRON 潰し"
坂村教授が言っているように、孫正義氏の "TRON 潰し" は「孫正義 起業の若き獅子」(大下英治著。講談社。1999)に書かれています。
当時、孫正義氏は情報産業や学界に"TRON反対" を説いて回るのですが、コンピュータ教育開発センター(CEC)は1988年1月にBTRONを教育用パソコンの標準OSとすることを決めます。一発逆転を狙った孫正義氏は1989年に入ってまもなく、ソニー会長の盛田昭夫氏に依頼し、通産省の高官とじかに話をしようとします。そのあたりの記述です。
(以下の引用では、漢数字を数字にしました。また段落を再構成しました。下線は原文にはありません)。
坂村教授がアメリカ通商代表部に面会したとき、通商代表部側は「どこからの申請とは言えないが、米国の企業に不利との訴えがあれば、まず制裁候補に挙げる」と答えました。誰が TRON をアメリカ企業に不利だと申請したのか、大下英治氏の本には書いていません。しかしその申請者は、ソフトの流通業をやっていたソフトバンク=孫氏だと推測させるような書き方がされています。つまり、
の2点です。孫氏の「いいアイデア」とは何か、本には書かれていませんが、その後の経緯から推測できます。また坂村教授は、長野県の山小屋での休暇中に衛星放送テレビの報道で貿易障壁報告を知りました。つまり坂村教授にとってUSTRの貿易障壁に TRON があげられることは、全くの "寝耳に水" だったわけです。事前に何らかの噂でもあったのなら、TRONプロジェクトのリーダーの耳に入らないはずがない。
しかし孫氏は明らかに報告が出るのを注視していました。注視していたからこそ、報道以前に知り得たのです。わざわざ注視していた理由は一つしかないと思われます。
英国と日本の落差
孫氏の "TRON潰し" の行動は、別に悪いことではないと思います。孫氏のような「政治的な動き」も駆使して自社ビジネスに有利な状況を作ろうとすることは、大企業なら多かれ少なかれやっているし、米国企業だとロビイストを使った "正式の" 手段になっています。
そもそもソフトバンクの過去からの企業行動を見ていると、独自技術をゼロから育てるつもりはなく、技術は買ってくればよいという考えのようです。ましてや、日本発の技術を育てようとは思わないし、そこに価値を見い出したりはしない。
そのような企業のトップとして孫氏は「TRON潰しは、我ながらよくやった」と、今でも思っているはずです。孫氏が坂村教授に語った「若気の至り」は、あくまで社交辞令であって、そんなことは心の中では全く思っていないでしょう。TRONプロジェクトのリーダに会った以上、そうとでも言うしかなかったのだと思います。
それよりも、日本の "BTRON事件" で思うのは、このブログの最初に書いた英国と比較です。つまり、日英の官庁とマスメディアの、あまりにも大きい落差です。英国政府とマスメディア(BBC)は、断固として英国発の技術を使ったコンピュータを全国の学校にばらまく。それは(今から思うと)最終的には Windowsパソコンに置き変わることになったとしても、その中からARMのような世界を席巻する技術が生まれる。
片や日本の官僚は、ソフト流通業のトップといっしょになって日本発のコンピュータを潰しにかかる。通産省(当時)の機械情報産業局というと、日本の情報産業を育成する立場の組織です。その官僚が日本発の技術をつぶしていたのでは "日本国の官僚組織" とは言えないでしょう。まるでアメリカ商務省の出先機関です。それに輪をかけて、日本のマスメディアは貿易摩擦をおもしろおかしく書き立て、火に油を注ぐ。結果として起こった火災は、日本発のパソコンを壊滅に導いた・・・・・・。
最初に「ソフトバンク・グループの ARM 社買収で、以前に強く思ったことを思い出した」と書いたは、ARM(英国)とTRON(日本)の対比であり、日英の官庁の落差でした。
この対比において、日英の官庁の落差に加えてもう一つ重要なことがあります。官僚がTRON潰しに邁進したにもかかわらず、TRONは機器組み込み用のITRONとして生き残ったという事実です。ARMほどではないにしても・・・・・・。それは坂村教授というより、TRONを支えた日本の多数の技術者の功績のはずです。
新しいものを生みだそうという努力には敬意を払いたい、それが英国の ARM であっても日本の TRON であっても・・・・・・。そういう風に思いました。
記事の最初に書いたソフトバンクグループの ARM社買収について、朝日新聞の大鹿記者が内情を書いていました。興味ある内容だったので、その前半3分の2ほどを紹介します。記事全体の見出しは「3.3兆円で買収した千里眼」です。「千里眼」の意味は以下の引用の最後に出てきます。まず、孫正義社長が買収を切り出した場面です。
記事では続いて、この10年間の孫社長の動きが紹介されています。ボーダフォン日本法人を買収した直後から、アーム社買収の構想を練り始めたようです。
2006年にソフトバンクがボーダフォンの日本法人を買収して間もないころ、アームのシガース氏は孫氏と東京で携帯電話について語り合った、とあります。このころ、スマートフォンはありません。iPhoneの米国発売は2007年、日本発売は2008年です。アームとソフトバンクを引きあわせたもの、それは日本の携帯電話だったわけです。日本の高度に発達した携帯電話のチップとして、省電力性能に優れたアーム仕様のチップが広まった。アームと日本のかかわり合いを示すエピソードです。
続く記事では、ソフトバンクがアームを買収した理由が出てきます。
「アームは1990年、英コンピュータ会社から独立した12人のエンジニアが創業した」という表現には注意が必要です。アーム仕様を最初に開発したのは、このブログ記事に書いたように "エイコーン・コンピュータ" です。アーム(ARM)の "A" は、もともとエイコーン(Acorn = ドングリ)の "A" だった。そのエイコーンの半導体回路設計部門が独立してアーム社になった。アーム仕様はベンチャー企業が独自に開発したのではありません。そのアームのルーツをたどると英国の学校用コンピュータに行き着くことは、このブログ記事に書いた通りです。
シガース氏がアームとソフトバンクの相乗効果は全くないと即答したのは、全くその通りだと思います。相乗効果が無いからこそ、独占禁止法に触れることなく買収できたのでしょう。インテルがアームを買収するのは無理というものです。
しかし記事にあるように、孫氏が「千里眼」を獲得するためにアームを買収したというのはどうでしょうか。確かにそういう面もあるでしょうが、「千里眼」のために3.3兆円というのはいかにも高すぎる。3.3兆円の裏には冷徹な計算があるはずです。
アームのビジネスモデルは、チップの設計仕様(アーキテクチャ)や回路設計データ(コア)を半導体メーカーに供与し、半導体が売れるたびに製品価格の何%かを収入として得るというものです。これは特許ビジネスと同じです。しかもアームのコアは、情報産業で言う "プラットフォーム" の一種です。いったんプラットフォームを握ると、そのビジネスは長期に続く可能性が高い。パソコン・スマホのOS(マイクロソフト、アップル、グーグル)、パソコンのCPU(インテル)がそうです。プラットフォームを乗り換えるには "コスト" がかかるのです。
プラットフォームを握り、日銭を稼ぐ。それがアームのビジネスモデルです。つまり安定的な売り上げが見込める。この点は、ソフトバンクが過去に買収したボーダフォン日本(その前身はJ-Phone)、スプリントという携帯電話のビジネスと似ています。激しい競争はあるものの安定している。1年後に売り上げが30%ダウンなどどいう状況は、まず考えられません。しかもアームは設計に特化しているため、営業利益率が40%という高収益企業です。孫社長は今後のソフトバンクグループの成長戦略を描くために、そこに魅力を感じたのだろうと思いました。
2024年に入ってソフトバンググループは「AI革命」に投資をシフトすることを明確にし、その中核会社として ARM を位置づけました。
「アームを軸に人工知能(AI)戦略を進めていく方針」と書かれているのは、AI向け半導体の開発を、ARM で行う計画を言っています。
これだけを見ると ARM を買収したのは AI革命を見据えた孫氏の "慧眼" のように思えてしまいますが、実は、4年前には ARM をエヌビディアに売却することで合意していたのですね。
「無事に取引を完了させるまでの道のりは険しそうだ」「この巨額買収が成立するかどうかは流動的だ」と記事にあるように、この売却は各国の規制当局の承認が得られず、2022年になってソフトバンクグループは売却を断念しました。そして 2023年に ARM を NASDAQ に上場し、今日に至ります。
孫氏にとって ARM は、「中核企業・虎の子」と「売却の対象」の間を極端に揺れ動いているようです。
二つの記事でソフトバンク・グループの孫正義社長の発言や人物評価に簡単にふれたのですが、今回は、その孫正義氏に関することを書きます。最近、ソフトバンク・グループが英国・ARM(アーム)社を買収した件です。以前に強く思ったことがあって、この買収でそれを思い出したからです。
ソフトバンクが英国・ARM(アーム)社を買収
ソフトバンク・グループの孫正義社長は、2016年7月18日にロンドンで記者会見をし、英国・ケンブリッジにあるARM社を240億ポンド(約3兆3000億円)で買収すると発表しました。ソフトバンクがボーダフォン日本法人を買収した金額は1兆7820億円、米国の電話会社・スプリントの買収は1兆8000億円ですから、それらを大きく上回り、もちろん日本企業の買収案件では史上最大です。
ARM(アーム)は、コンピュータ、パソコン、スマートフォンなどの心臓部である「マイクロ・プロセッサー」を設計する会社です。
コンピュータで演算や情報処理を行う半導体チップがマイクロ・プロセッサー(Micro Processor)であり、MPU(Micro Processing Unit)とか、CPU(Central Processing Unit)とも呼ばれます。以下「マイクロ・プロセッサー」ないしは単に「プロセッサー」と書きます。 |
現代のマイクロ・プロセッサーの有名メーカーはインテルで、Windowsが搭載されているパソコンにはインテル製、ないしはそれと互換性のある(=代替可能な)マイクロ・プロセッサーが組み込まれています( "インテル、はいってる" )。
ARMがインテルほど一般に有名でないのは、ARMはマイクロ・プロセッサー(= 半導体チップ)そのものを製造する会社ではなく、マイクロ・プロセッサーの "設計仕様" と、その仕様に基づいて作られた "設計データ" を開発している会社だからです(専門用語で "アーキテクチャ" と "IPコア")。マイクロ・プロセッサーの開発会社はARMから "設計データ" を購入し、それに自社の設計データも付加して、そのデータをもとにマイクロ・プロセッサーを製造します。製造は自社の工場で行うか、ないしは台湾などの製造専門会社に委託するわけです。
ARMの "設計データ" の大きな特長は、それをもとに作られたマイクロ・プロセッサーの電力消費量が少ないことです。そこがARMのノウハウであり、技術力です。この特質があるため、現在の世界のスマートフォンの90%以上は、ARM仕様の(=ARMの "設計仕様" か "設計データ" を使った)半導体チップになっています。Androidのスマートフォンのみならず、アップルもARMから設計仕様を購入しています。
ちなみに、日本最速のスーパー・コンピュータ "京" の後継機種である "ポスト京" を計画している富士通は、そのプロセッサーとして「スパコン拡張版のARM仕様」の採用を発表しました(2016.6.20)。富士通が出した拡張要求に ARM社が同意したことがポイントのようです。ARMはスパコンにも乗り出すということです。そしてスパコンで磨いた技術をもとに、現在はインテルなどが席巻している「業務用サーバ機」という巨大なコンピュータ市場を狙うのでしょう。
ヒューレット・パッカード(HP)のプリンタに搭載された、ARM仕様のマイクロ・プロセッサー。半導体チップの製造メーカ・STマイクロエレクトロニクスのロゴとARMのロゴが見える(画像はWikipediaより)。
|
ところで、ARMという会社の名前は元々、
Acorn RISC Machine
の略称でした。今は Advanced RISC Machine の略とされているようですが、元々は Acorn RISC Machine だった。この英単語の意味は以下の通りです。
Acorn
|
ここでなぜ "Acorn(=ドングリ)" なのかというと、ARM社の前身が「エイコーン・コンピュータ(Acorn Computers)」という、英国のケンブリッジに設立された会社だったからです。
エイコーン・コンピュータ
エイコーン・コンピュータは、1978年に設立されたコンピュータ会社です。Acornと命名したのは、そこから芽が出て大きな木に成長するという意味だとか、また電話帳で Apple より前に記載されるようにだとか言われています。余談ですが、そのAppleという名前はスティーヴ・ジョブズが働いたこともあるゲーム会社・Atariより電話帳で前に来るようにしたという説があります。
エイコーン・コンピュータが大きく伸びたのは、1980年代から1990年代前半にかけて、イギリスの教育用コンピュータ(当時のマイコン。今のパソコン)の市場を独占したからです。
BBC Micro(1982~1986)。画像はWikipediaより
|
1980年代、イギリス政府は全国の学校にコンピュータを導入する補助金をばらまき、また教師の訓練やコンピュータ関連プロジェクトにも補助金を出しました。このとき最も売れたのが "国策コンピュータ" の "BBC Micro" とその後継機種だったわけです。当然、エイコーン・コンピュータの売り上げは伸び、会社は発展を遂げます。そして1980年代の半ばにエイコーン・コンピュータ社内で始まったのが、全く新しい設計思想(=RISC)のマイクロ・プロセッサーを開発する "ARMプロジェクト" だった。だから "Acorn RISC Machine" なのです。そのARMプロセッサーを搭載した BBC Micro の後継機種は英国の学校にも導入されました。
BBC Microの後継機種である, Acorn Archemedes(1987)。ARM仕様のマイクロプロセッサーが搭載されている。下位機種はBBC Archemedesのブランドで学校に導入された(画像はWikipediaより)
|
以上の経緯を振り返ってみると、ソフトバンク・グループが買収した ARM は、英国政府と公共放送の施策に従って開発された「英国発の学校用コンピュータ」にルーツがあると言っていいわけです。もちろん現代のARMは、当時のマイクロ・プロセッサーからすると技術的に比べられないほど進化を遂げています。あくまでルーツをだどるとそこに行き着くという意味です。
1990年代半ばより、マイクロソフトのWindowsがメジャーになり、それに従って、マイクロ・プロセッサーとしてはインテル製品が普及しました。インテル(とアップル)のプロセッサーが、パソコン用として世界を制覇したわけです。
しかしARMは "英国発" の技術として生き残り、生き残っただけではなく特定分野(スマートフォン)では世界を席巻するまでになりました。その源流はと言うと、政府肝入りの教育用コンピュータだったのです。
ここで話は日本に飛ぶのですが、実は日本においても、日本発のコンピュータの基本ソフト(OS)とパソコンが、日本の教育現場に大量導入されてもおかしくない時期があったのです。そのコンピュータ基本ソフトが、坂村健・東大教授の TRON(トロン)です。
TRONプロジェクト
TRONはコンピュータの基本ソフト(OS:Operating System)です。コンピュータの作りを簡略化して言うと、まずハードウェアがあり、その中核がマイクロ・プロセッサーです。そのマイクロ・プロセッサーで動作するのが基本ソフト(OS)であり、基本ソフトの上で動作するのが各種のアプリ(アプリケーション・プログラム)です。現代のパソコンの基本ソフト(OS)の代表的なものは、マイクロソフト社の Windows や、アップル社の iOS です。
その意味で、TRON(= OS)は ARM とは位置づけが違います。ARMはマイクロ・プロセッサー(=ハードウェア)の設計仕様だからです。しかし TRON も ARM も、コンピュータの動作を基礎で支える基本的な技術であることには変わりません。むしろパソコンやスマートフォンを考えると、一般利用者から見た使い勝手はマイクロ・プロセッサーよりも基本ソフト(OS)に強く影響されます。そのためパソコンメーカーは、基本ソフト(OS)の仕様に合うようにパソコンのハードウェア全体を設計し、販売しています。
なお、TRONプロジェクトでは各種の技術が開発されていて、中には "TRONチップ" のようなマイクロ・プロセッサーそのものもありますが、以下の記述での TRON は基本ソフト(OS)としての TRON に話を絞ります。 |
TRONプロジェクトではまず、機械に組み込まれたマイクロ・プロセッサーでの使用を前提とした ITRON( I は Industry )が開発されました。TRONは The Real-time Operating system Nucleus であり、Real-timeというところに「機器組み込み用」という本来の狙いが現れています。さらにTRONプロジェクトでは、一般の個人が家庭や学校、職場で使うパソコン用に BTRON( B は Business )が開発されました。以下はその BTRON の話です。
BTRON
BTRON プロジェクトを主導したのは、坂村教授と松下電器産業(現、パナソニック)であり、1985年に開発がスタートしました。BTRONを開発し、その仕様に合ったパソコンを開発しようとしたのです。BTRONは次第に知名度を高め、賛同するパソコン・メーカーも増えてきました。そしてこの開発と平行して、全国の学校にパソコンを設置する話が持ち上がったのです。イギリスから数年遅れということになります。
以下、日経産業新聞に連載された坂村教授の「仕事人秘録」から引用します。下線は原文にはありません。
|
教育用パソコンの標準OSにBTRON、という動きに対して、当時はマイクロソフトのOS、MS-DOSをかつぐ勢力があり、それで成功していた会社もあったというのがポイントです。このことが、その後の "異様な" 展開を引き起こすのです。
潰された BTRON
|
1980年代後半というと、日本の経済力が飛躍的に伸びた絶頂期であり、バブル景気とも言われた時期です。アメリカとの貿易摩擦もいろいろと起った。そういう時代背景での出来事です。
|
無料の(今で言う "オープン・ソース" の)基本ソフト(OS)を "国を越えて" 使っても、それは貿易ではないので貿易摩擦を生むはずがありません。唯一、BTRONが広まると困るのは「既存の有料のパソコン用OSやそのアプリでビジネスを展開している日米の人たち」であることは明白なわけです。そして実際その通りだったことは、坂村教授が「後に思いがけない事実が明らかになる」と書いているように、後で判明します。
|
現在のソフトバンク・グループは「情報通信業」であり、数々の事業を手がけていますが、元はというとソフトウェアの卸(=流通業)や出版をする会社でした。上の引用にあるような米国のソフトを輸入販売する立場から言うと、そのソフトはマイクロソフトやアップルのOSで動くように作られたものです。従って、日本で BTRON ベースのパソコンが広まるのは、孫氏のビジネスにとってはまずいわけです。だから "トロン潰し" に動いた。
この事件が坂村教授に「不愉快な思い」をさせただけならどうということはないのですが、それよりも坂村教授が一つ前の引用で語っているように、日本の情報通信産業に与えたダメージが大きかったわけです。
しかし、トロンが無くなったわけではありません。坂村教授の述懐を続けます。
|
孫正義氏の "TRON 潰し"
「孫正義 起業の若き獅子」
大下英治著 (講談社。1999) |
当時、孫正義氏は情報産業や学界に"TRON反対" を説いて回るのですが、コンピュータ教育開発センター(CEC)は1988年1月にBTRONを教育用パソコンの標準OSとすることを決めます。一発逆転を狙った孫正義氏は1989年に入ってまもなく、ソニー会長の盛田昭夫氏に依頼し、通産省の高官とじかに話をしようとします。そのあたりの記述です。
(以下の引用では、漢数字を数字にしました。また段落を再構成しました。下線は原文にはありません)。
|
坂村教授がアメリカ通商代表部に面会したとき、通商代表部側は「どこからの申請とは言えないが、米国の企業に不利との訴えがあれば、まず制裁候補に挙げる」と答えました。誰が TRON をアメリカ企業に不利だと申請したのか、大下英治氏の本には書いていません。しかしその申請者は、ソフトの流通業をやっていたソフトバンク=孫氏だと推測させるような書き方がされています。つまり、
・ | 「僕にいいアイデアがあります」と、孫氏が語ったこと | ||
・ | 貿易障壁報告の内容を、報道される前に知っていたこと |
の2点です。孫氏の「いいアイデア」とは何か、本には書かれていませんが、その後の経緯から推測できます。また坂村教授は、長野県の山小屋での休暇中に衛星放送テレビの報道で貿易障壁報告を知りました。つまり坂村教授にとってUSTRの貿易障壁に TRON があげられることは、全くの "寝耳に水" だったわけです。事前に何らかの噂でもあったのなら、TRONプロジェクトのリーダーの耳に入らないはずがない。
しかし孫氏は明らかに報告が出るのを注視していました。注視していたからこそ、報道以前に知り得たのです。わざわざ注視していた理由は一つしかないと思われます。
英国と日本の落差
孫氏の "TRON潰し" の行動は、別に悪いことではないと思います。孫氏のような「政治的な動き」も駆使して自社ビジネスに有利な状況を作ろうとすることは、大企業なら多かれ少なかれやっているし、米国企業だとロビイストを使った "正式の" 手段になっています。
そもそもソフトバンクの過去からの企業行動を見ていると、独自技術をゼロから育てるつもりはなく、技術は買ってくればよいという考えのようです。ましてや、日本発の技術を育てようとは思わないし、そこに価値を見い出したりはしない。
そのような企業のトップとして孫氏は「TRON潰しは、我ながらよくやった」と、今でも思っているはずです。孫氏が坂村教授に語った「若気の至り」は、あくまで社交辞令であって、そんなことは心の中では全く思っていないでしょう。TRONプロジェクトのリーダに会った以上、そうとでも言うしかなかったのだと思います。
それよりも、日本の "BTRON事件" で思うのは、このブログの最初に書いた英国と比較です。つまり、日英の官庁とマスメディアの、あまりにも大きい落差です。英国政府とマスメディア(BBC)は、断固として英国発の技術を使ったコンピュータを全国の学校にばらまく。それは(今から思うと)最終的には Windowsパソコンに置き変わることになったとしても、その中からARMのような世界を席巻する技術が生まれる。
片や日本の官僚は、ソフト流通業のトップといっしょになって日本発のコンピュータを潰しにかかる。通産省(当時)の機械情報産業局というと、日本の情報産業を育成する立場の組織です。その官僚が日本発の技術をつぶしていたのでは "日本国の官僚組織" とは言えないでしょう。まるでアメリカ商務省の出先機関です。それに輪をかけて、日本のマスメディアは貿易摩擦をおもしろおかしく書き立て、火に油を注ぐ。結果として起こった火災は、日本発のパソコンを壊滅に導いた・・・・・・。
最初に「ソフトバンク・グループの ARM 社買収で、以前に強く思ったことを思い出した」と書いたは、ARM(英国)とTRON(日本)の対比であり、日英の官庁の落差でした。
この対比において、日英の官庁の落差に加えてもう一つ重要なことがあります。官僚がTRON潰しに邁進したにもかかわらず、TRONは機器組み込み用のITRONとして生き残ったという事実です。ARMほどではないにしても・・・・・・。それは坂村教授というより、TRONを支えた日本の多数の技術者の功績のはずです。
新しいものを生みだそうという努力には敬意を払いたい、それが英国の ARM であっても日本の TRON であっても・・・・・・。そういう風に思いました。
 補記1:ソフトバンクの ARM 買収  |
記事の最初に書いたソフトバンクグループの ARM社買収について、朝日新聞の大鹿記者が内情を書いていました。興味ある内容だったので、その前半3分の2ほどを紹介します。記事全体の見出しは「3.3兆円で買収した千里眼」です。「千里眼」の意味は以下の引用の最後に出てきます。まず、孫正義社長が買収を切り出した場面です。
|
記事では続いて、この10年間の孫社長の動きが紹介されています。ボーダフォン日本法人を買収した直後から、アーム社買収の構想を練り始めたようです。
|
2006年にソフトバンクがボーダフォンの日本法人を買収して間もないころ、アームのシガース氏は孫氏と東京で携帯電話について語り合った、とあります。このころ、スマートフォンはありません。iPhoneの米国発売は2007年、日本発売は2008年です。アームとソフトバンクを引きあわせたもの、それは日本の携帯電話だったわけです。日本の高度に発達した携帯電話のチップとして、省電力性能に優れたアーム仕様のチップが広まった。アームと日本のかかわり合いを示すエピソードです。
続く記事では、ソフトバンクがアームを買収した理由が出てきます。
|
「アームは1990年、英コンピュータ会社から独立した12人のエンジニアが創業した」という表現には注意が必要です。アーム仕様を最初に開発したのは、このブログ記事に書いたように "エイコーン・コンピュータ" です。アーム(ARM)の "A" は、もともとエイコーン(Acorn = ドングリ)の "A" だった。そのエイコーンの半導体回路設計部門が独立してアーム社になった。アーム仕様はベンチャー企業が独自に開発したのではありません。そのアームのルーツをたどると英国の学校用コンピュータに行き着くことは、このブログ記事に書いた通りです。
シガース氏がアームとソフトバンクの相乗効果は全くないと即答したのは、全くその通りだと思います。相乗効果が無いからこそ、独占禁止法に触れることなく買収できたのでしょう。インテルがアームを買収するのは無理というものです。
しかし記事にあるように、孫氏が「千里眼」を獲得するためにアームを買収したというのはどうでしょうか。確かにそういう面もあるでしょうが、「千里眼」のために3.3兆円というのはいかにも高すぎる。3.3兆円の裏には冷徹な計算があるはずです。
アームのビジネスモデルは、チップの設計仕様(アーキテクチャ)や回路設計データ(コア)を半導体メーカーに供与し、半導体が売れるたびに製品価格の何%かを収入として得るというものです。これは特許ビジネスと同じです。しかもアームのコアは、情報産業で言う "プラットフォーム" の一種です。いったんプラットフォームを握ると、そのビジネスは長期に続く可能性が高い。パソコン・スマホのOS(マイクロソフト、アップル、グーグル)、パソコンのCPU(インテル)がそうです。プラットフォームを乗り換えるには "コスト" がかかるのです。
プラットフォームを握り、日銭を稼ぐ。それがアームのビジネスモデルです。つまり安定的な売り上げが見込める。この点は、ソフトバンクが過去に買収したボーダフォン日本(その前身はJ-Phone)、スプリントという携帯電話のビジネスと似ています。激しい競争はあるものの安定している。1年後に売り上げが30%ダウンなどどいう状況は、まず考えられません。しかもアームは設計に特化しているため、営業利益率が40%という高収益企業です。孫社長は今後のソフトバンクグループの成長戦略を描くために、そこに魅力を感じたのだろうと思いました。
(2016.11.7)
補記2:ソフトバンクの ARM 売却合意 |
2024年に入ってソフトバンググループは「AI革命」に投資をシフトすることを明確にし、その中核会社として ARM を位置づけました。
「本当の中核企業だ」。孫氏はアームを軸に人工知能(AI)戦略を進めていく方針を強調した。アームは半導体の開発に必要な回路設計図を提供するのが主力事業だ。マイクロソフトやグーグルなど世界のテック大手が独自のAI半導体の開発を進める中、各社がアームの技術を利用する構図に優位性があるとみている。 財務上もアームの存在感は高まっている。SBGの株主価値が合計34兆円と過去最高で推移する中、アームが全体の55%を占める。SBGは16年にアームを約3兆円で買収したうえで、23年9月に上場させ、足元で時価総額は約27兆円に膨らんでいる。上場後もSBGはなお株式の約9割を握る。 日本経済新聞・電子版(2024年6月21日) |
「アームを軸に人工知能(AI)戦略を進めていく方針」と書かれているのは、AI向け半導体の開発を、ARM で行う計画を言っています。
ソフトバンクグループ(SBG)の孫正義会長兼社長が掲げる「AI(人工知能)革命」が動き出す。AI向け半導体の開発・製造を皮切りに、データセンターやロボット、発電事業にも事業を拡大する計画だ。投資額は最大で10兆円規模となる見通し。米マイクロソフトやグーグルもAI分野に巨額の投資をしており、世界の大手が成長分野に一斉に参入する構図となる。 AI向け半導体開発については、SBGが約9割の株式を持つ英半導体設計大手アーム内に新部門を立ち上げる案を軸に検討を進めている。アームは半導体の開発に必要な回路設計図をエヌビディアなどに提供しており、特にスマートフォン向けは世界シェアの9割超を握るプレーヤーだ。数千億円規模が見込まれる当初の開発資金はアームの自己資金とSBGの支援でまかない、大量生産の体制が確立した後は開発部門をアームから切り出し、SBG傘下に置くことを検討する。 日本経済新聞・電子版(2024年5月12日) |
これだけを見ると ARM を買収したのは AI革命を見据えた孫氏の "慧眼" のように思えてしまいますが、実は、4年前には ARM をエヌビディアに売却することで合意していたのですね。
ソフトバンクG、半導体アームをエヌビディアに売却へ ソフトバンクグループが半導体設計の英アームを米エヌビディアに売却すると発表した。売却額は最大400億ドル(約4兆2000億円)。アームを2016年に約3兆3000億円で買収してから4年。ソフトバンクGは価値を1兆円近く増やした格好だが、無事に取引を完了させるまでの道のりは険しそうだ。 「インテルやクアルコムのようなシナジー(相乗効果)がすぐ見える会社が買いに来るというのは独占禁止法上成り立たない」 16年7月、ソフトバンクGがアームを買収すると発表した直後の決算説明会。孫正義会長兼社長はこう語り、シナジーが直接的に見えないからこそ「無風状態で買いに行けた」と強調した。 それから4年、ソフトバンクGがアームの売却先に選んだのはシナジーが見えやすいエヌビディアだった。コンピューター内で映像を描画する半導体「GPU」を手がける企業として1993年に創業したエヌビディア。大量の同じ処理を並列に実行できるGPUの特性を生かして2015年ごろからAI(人工知能)の学習や推論での利用を促進したことが功を奏し、売上高も株価も上昇。20年7月には時価総額で米インテルを抜き、米国の半導体メーカーとして首位に立った。9月14日時点の時価総額は3176億ドル(約33兆3500億円)に達する。 「アームとともにAI時代の最高峰のコンピューティング企業となる」。エヌビディアのジェンスン・ファンCEO(最高経営責任者)は日本時間14日に開いた電話会見でこう意気込んだ。 アームは、半導体に形成するCPU(中央演算処理装置)などの回路の設計図や、プログラムから見たCPUの仕様(「命令セットアーキテクチャー」と呼ばれる)を半導体メーカーにライセンス提供する企業。スマホや家電などの心臓部の半導体のほとんどがアームのCPU仕様を採用していることで知られる。エヌビディアも任天堂の主力ゲーム機「ニンテンドースイッチ」に供給する半導体や自動車向け半導体にアームのCPUを採用している。 理化学研究所と富士通が開発したスーパーコンピューター「富岳」の半導体がアームの仕様を採用するなど、家電からスパコンまでのあらゆる半導体に広がるアームのCPU。AIの処理を得意とするエヌビディアのGPUとの連携を強化することで、クラウドからロボットや家電までの広範囲にわたってエヌビディアの半導体を提供するチャンスが生まれる。エヌビディアはアームのライセンス提供の事業に自社のGPUを加える相乗効果もあると説明している。 アームの顧客はエヌビディアの競合 ただし、この巨額買収が成立するかどうかは流動的だ。アームの顧客である米クアルコムや韓国のサムスン電子など半導体メーカーにとって、エヌビディアは競合企業に当たるからだ。かつて孫社長が語っていたように、各国の規制当局の承認を得られるかが焦点となる。ファンCEOは会見で「アームの中立性を維持する」と強調し、「ライセンス事業はこれまでとまったく変わらない」と話したが、競合メーカーがそのまま受け入れるとは考えにくい。 エヌビディアとソフトバンクGは今回の取引には「英国、中国、EU(欧州連合)、米国を含む規制当局の承認が必要」とし、取引の完了まで18カ月間かかるとの見通しを示している。半導体業界の大型M&A(合併・買収)は国家間の安全保障面での思惑が影響し、承認が得られないケースも多い。 日本経済新聞・電子版(2020年9月13日) |
「無事に取引を完了させるまでの道のりは険しそうだ」「この巨額買収が成立するかどうかは流動的だ」と記事にあるように、この売却は各国の規制当局の承認が得られず、2022年になってソフトバンクグループは売却を断念しました。そして 2023年に ARM を NASDAQ に上場し、今日に至ります。
孫氏にとって ARM は、「中核企業・虎の子」と「売却の対象」の間を極端に揺れ動いているようです。
(2024.6.26)
No.188 - リチウムイオン電池からの撤退 [技術]
今までの記事で、リチウムイオン電池について2回、書きました。
の二つです。No.39はリチウムイオン電池を最初に作り出した旭化成の吉野氏の発明物語、No.110はそのリチウムイオン電池の製品化(量産化)に世界で初めて成功した、ソニーの西氏の話でした。
そのソニーですが、リチウムイオン電池から撤退することを先日発表しました。その新聞記事を振り返りながら、感想を書いてみたいと思います。No.110にも書いたのですが、ソニーのリチウムイオン電池ビジネスの事業方針はブレ続けました。要約すると次の通りです。
この詳しい経緯は、No.110「リチウムイオン電池とモルモット精神」に書きました。こういった事業方針の "ブレ" が過去にあり、そして今回の発表となったことをまず押さえておくべきだと思います。
(site : www.sony.co.jp)
撤退の発表、村田製作所への事業売却
2016年7月28日、ソニーはリチウムイオン電池から撤退を発表しました。それを報じた日本経済新聞の記事から引用します。以下、アンダーラインは原文にはありません。
高性能2次電池の重要性は誰もが理解できるわけです。スマホや電気自動車は言うに及ばず、ロボットやドローンが21世紀に真に普及するかどうかの重要な鍵は "電池" です。ソニーの経営陣も存続させるかどうか迷ったでしょう。しかし存続するためには投資をしなければならないが、その投資は "非中核事業" と位置づけてしまった以上、優先度の観点から難しいということだと思います。「関連記事11面に」とあるように、日本経済新聞の11面に解説記事がありました。
記事の中に「パソコン向けの電池で過熱・発火の問題が発生して」とあるのは、2006年のことです。ソニー製リチウムイオン電池の不具合により、米国を含むパソコンメーカが回収を余儀なくされまた。
リチウムイオン電池の過熱・発火事故というと、ソニーの事業売却の発表があった1ヶ月後の 2016年9月2日、韓国サムスン電子は、Galaxy Note7の回収を発表しました。グループ会社であるサムスンSDIが製造したリチウムイオン電池の発火事故が報告されたからです。対象となる台数は全世界で250万台といいます。ソニーの撤退の理由の一つとして「サムスンSDIなど韓国勢との競争が激化して」と日経の記事にあったのですが、ほかならぬそのサムスンSDIが問題を起こしたわけです。
振り返ってみると、2016年1月にも パナソニック製の一部の電池に、最悪の場合は発火の危険性があることが判明し、東芝のノートパソコンなどの該当機種が回収されました。ソニーの2006年の事故以来、消費者向け製品の回収事件はこれだけでなく、もっとあったと記憶しています。
リチウムイオン電池の安全性については、当初からの課題だったわけです。No.39「リチウムイオン電池とノーベル賞」の「補記4」に、ソニーで世界初の製品化を主導した西氏が「開発をためらった」という話を書きましたが、それはつまり安全性に懸念があったからです。ソニーが1991年に最初に製品化してから既に25年が経過しました。25年もたってまだ安全性の問題が解決できないのかと思ってしまいますが、この25年の間、リチウムイオン電池に求められ続けたのはコンパクト化・大容量化・低コスト化です。これらの市場の要求と安全性の両立が非常に難しいようです。この課題を根本的に解決するのが、日本経済新聞の記事にある「全固体電池」です。
「全固体電池」とは、電池の電解質に固体を使う電池です。リチウムイオン電池は、正極、負極、正極と負極の間の電解質、正極と負極を分離するセパレータから構成されていますが、現在の電池は電解質に有機溶媒液を使っています。このため液漏れのリスクがあり、最悪の場合は過熱から発火事故につながったりします。この電解質を固体(たとえばリチウムイオンを伝導できるセラミックス)で置き換えるのが全固体電池です。現在、各社が開発を競っていて、試作品も作られています。
とにかく、村田製作所への事業譲渡は決まりました。村田製作所に果たして成算はあるのかどうか。上の引用における「生産技術」と「全固体電池」がキーワードのようです。これについて日本経済新聞・京都支社の太田記者が、村田製作所の立場から解説を書いていました(村田製作所は京都が本社です)。
村田製作所の経営陣の判断を日経の記事から要約すると、以下のようになるでしょう。
の2点です。この村田製作所の経営陣の判断が正しいかどうかは分かりませんが、リチウムイオン電池を研究中という村田製作所にとっては、一気にエネルギービジネスに進出するチャンスと見えたのでしょう。村田製作所はまだ電池の生産ラインさえ持っていない段階です。
しかし「全固体電池」は世界的にみても試作レベルであり、量産技術が確立しているわけではありません。現在のリチウムイオン電池より安全性で上回ったとしても、大容量・コンパクト・コストのすべてで上回わらないと製品化はできないわけで、これは並大抵ではないと思います。従って、少なくとも現在のリチウムイオン電池が韓国勢と競争できるレベルになるのが必須条件でしょう。村田製作所の経営陣は、これが可能だと判断したと考えられます。
技術評論家の見方
ソニーが電池事業を村田製作所に売却する発表を受けて、技術評論家の志村幸雄氏がコラムを書いていました。以下にコラムの感想とともに引用します。アンダーラインは原文にはありません。
ソニーは1991年、リチウムイオン電池を世界で初めて製品化(量産技術を確立)しました。しかし、このブログの最初に書いたように、その後のソニーの電池ビジネスの方針はブレ続けたわけです。2012年末から2013年にかけて(現・平井社長の時代)は、一度、電池ビジネスの売却を検討しています。志村氏が言うように「長らく市場で先導的な役割を果たしてきた」のかどうか、それは疑問でしょう。志村氏のコラムを続けます。
志村氏の指摘は、ソニーの電池事業の売却の要因は「技術力の低下」ではないかということであり、その象徴が「米アップル社の iPhone 最新機種への採用を逸した」ことだというわけです。この iPhone 最新機種とは、2016年9月8日に発表された iPhone7 /7 Plusのことでしょう。
志村氏が「リチウムイオン電池は伸びしろのある技術領域」というのは全くのその通りだと思います。上に書いたように、ソニーもパナソニックもサムスンSDIも問題を起こしている。それだけ難しい技術領域であり、逆にいうと未開拓技術がある領域なのです。
一方、志村氏が「ソニーは今回の決定にあたって、リチウムイオン電池の市場性を過小評価してはいなかったか」と書いているのは、ハズレていると思います。リチウムイオン電池の市場性は誰もが理解できるからです。ドローンをとってみても、積載重量を増やして長時間の飛行を可能にするには、電池の大容量化(かつコンパクト化)が必須です。ドローンが真に21世紀の大産業になるかどうかは、電池にかかっているわけで、これは素人でも理解できます。
そもそも "経営判断" というのは、
のどちらかです。「誰もが将来性を疑っている分野から撤退」したり、「誰もが成長分野と思っている事業に経営資源を投入」するのは、どの企業でもやっている "普通の事業の進め方" であって、経営判断と言うには "おこがましい" わけです。
ソニーの「リチウムイオン電池からの撤退」が正しい経営判断かどうかは分かりませんが、少なくとも "経営判断" と言うに値することは確かでしょう。「誰もが成長領域だと思っているが、あえて撤退する」のだから・・・・・・。志村氏のコラムは次のように結ばれています。
以降は、ソニーのリチウムイオン電池からの撤退についての感想です。
継続発展の難しさ
ソニーの電池ビジネス売却のニュースを読んで思うのは、新事業を創出し、かつそれを発展させることの難しさです。No.110「リチウムイオン電池とモルモット精神」に書いたように、いわゆる「モルモット精神」を発揮して世界で初めてリチウムイオン電池の量産技術を確立したのがソニーでした。しかし、そうして新事業を創出したあとの第2ステップが問題です。
第2ステップで必要なのは、参入してくる企業とのグローバルな競争に勝つことと、次世代技術への開発投資です。競争を勝ち抜くためにはコスト優位性が必須であり、そこでは生産技術や生産管理が大きなポイントになります。しかしこの領域は、新事業を創出するマインドや人材とは必ずしも同じではない。
またコスト優位性を確立できたとして、そこで得た利益を次世代技術の研究開発に投資する必要がありますが、「今成功しているのに、あえてリスクをとる必要があるのか」という意見が上層部から出てきます。
ソニーでリチウムイオン電池の製品化をした西氏によると、ソニーが角型リチウムイオン電池(携帯電話やノートPC用)に出遅れたのは「丸型で儲かっているのだから、あえてリスクをとる必要はない」という、当時の事業部長の反対だそうです(No.110「リチウムイオン電池とモルモット精神」の「補記1」参照)。リスクを恐れて保身に走る上層部の "不作為" がビジネスの足を引っ張るわけです。丸型・角型の件は、リチウムイオン電池の歴史全体からすると小さな件かもしれませんが、一つの典型例だと考えられます。
第2ステップでも成功するには、第1ステップ以上のハードルがある。そういうことを思いました。
ブレ続けた経営方針
最初に書いたように、ソニーのリチウムイオン電池ビジネスについての経営方針はブレ続けたわけです。自動車用電池については、1990年代に日産自動車のEVに電池を供給しながら、そこから撤退し、2000年代後半に再参入を表明したもののそれを実現させず、2012~2013年には電池ビジネス全体の売却を検討し、それを撤回する、といったブレようです。志村氏のコラムに「腰の引けた対応」とありましたが、それは今に始まったことではなく "歴史" があるのです。
こうなると、優秀な人材の継続的な確保は困難でしょう。たとえば自動車用電池に参入するときには、モバイル用電池の世界初の製品化を行った優秀な人材を投入したはずです。自動車メーカの安全に対する要求はモバイル用とは比較にならないぐらい厳しいからです。しかしそのビジネスから撤退してしまう・・・・・・。中核となっていた技術者は「やってられない」と思ったでしょう。2012~2013年に撤退の検討をしたときには、もうこれで終わりと、多くの志がある技術者が思ったはずです。競合他社に移籍した人も多いのではないか。転職のオファーは国内外を含め、いくらでもあったでしょう。ソニーでリチウムイオンをやってるのだから。
リチウムイオン電池のような "奥深い" 技術領域については、志のある優秀な研究者、技術者、人材の継続的な確保が必須だと思います。それには、電池を会社のコア事業と位置づける一貫した経営方針が大前提となるはすです。
"世界初" から撤退する意味
技術評論家の志村氏が指摘しているように、ソニーは「自らが作り出した世界初の製品」について、撤退や中断の判断をしています。
の3つです。AI型ロボット(AIBO)については、No.159「AIBOは最後のモルモットか」、No183「ソニーの失われた10年」に書いた通りです。2006年に撤退し、2016年に再参入を発表しました。
この3つとも、ソニーが初めて製品化したのみならず、「誰もが今後伸びるだろう、重要だろうと思える領域」であるのが特徴です。もちろん、先ほど書いたように「伸びる領域だが、経営資源をコアビジネスに集中させるために撤退・中断する」という意志決定はありうるわけです。
ここで不思議なのは、有機ELテレビの表示装置である「有機ELディスプレイ(パネル)」です。
ソニーという会社は「映像と音響に関するビジネスをコアだと位置づけていて、そこからは撤退しない会社」だと思っていました。テレビ、ウォークマン、ビデオ、デジタル・カメラ、画像センサー、放送局用の映像装置、ゲーム機、映画などです。最新の製品でいうと、VR(仮想現実)機器もそうでしょう。「映像と音響」はソニーの "祖業" ともいえるもので、だからコアなのです。この定義からすると、AI型ロボット(AIBO)とリチウムイオン電池は「コア領域ではない」と言えないこともない。
しかし有機ELディスプレイは違います。それはソニーにとってコアのはずです。かつてソニーはブラウン管の時代にトリニトロンを発明し、かつ、平面トリニトロンまで開発・実用化しました。この大成功が、逆に液晶ディスプレイに出遅れることになったわけですが、それを取り戻すべく、液晶の次と位置づけたのが有機ELディスプレイだったはずです。ソニーは2007年12月に11インチの「有機ELテレビ」を世界で初めて商品化しました。しかしなぜか中断してしまった(最終的には、パナソニックとともに有機ELディスプレイの事業をジャパンディスプレイに事業統合。2015年にJOLED - ジェイオーレッド - が設立された)。
困ってしまった日本の有機EL材料メーカ(出光興産など)や製造装置メーカ(キヤノントッキなど)は、韓国メーカとの提携を進め、現在、有機ELディスプレイはLG電子(テレビ向け)とサムスン電子(スマホ向け)の独壇場です。
リチウムイオン電池からの撤退を報じた日経新聞に「画像センサーなどに集中する」とありました。「映像の入り口」が画像センサー(イメージセンサー)です。では「映像の出口」であるディスプレイはどうなのか。それはコア事業ではないのか。もちろん液晶テレビの建て直しに資源集中するためなどの経営判断なのでしょうが、不可解感は否めません。
人のやらないことをやるのが "ソニー・スピリット" だとすると、リチウムイオン電池、AIBO、有機ELディスプレイには、それを開発した技術者の "誇り" と "思い" が込められているはずです。自分たちこそ "ソニー・スピリット" の体現者だという・・・・・・。その世界初のビジネスからの撤退は、当然、人材の流出を招くでしょう。No.55「ウォークマン(2)」で引用しましたが、元ソニーの辻野晃一郎氏(VAIO開発責任者)は「未踏の領域に足を踏み入れて全く新しいものを生みだそうというソニーのスピリット」を踏まえて、次のように語っています。
VAIOは斬新な機能をもったパソコンだったのは確かですが、パソコンそのものは世界初でも何でもありません。パソコンの開発責任者でさえこうなのだから、世界初の製品(リチウムイオン電池、AIBO、TVに使える中大型の有機ELディスプレイ)を作り出した技術者は、辻野氏のような思いが人一倍強いのではないでしょうか。撤退することは、"ソニーという生き方" をしてきた、その人たちの存在理由を否定することになるでしょう。
ソニー・スピリット
リチウムイオン電池の話に戻ります。紹介した志村氏のコラムの最後に、ソニーは世に言う「モルモット企業」から「日和見企業」に転じたと、手厳しいことが書いてありました。
ソニーが、当時発明されたばかりのリチウムイオン電池の製品化に乗り出したのは1987年です(No.39「リチウムイオン電池とノーベル賞」の「補記4」参照)。2017年3月に村田製作所への事業譲渡が完了するとしたら、ソニーのリチウムイオン電池事業の生命は30年だった、ということになります。
もし今後、仮にです。村田製作所がリチウムイオン電池を黒字転換させ、かつ、次世代電池(全固体電池)でも成功をおさめるなら、巨視的に長いスパンで見て「ソニーはモルモットの役割だった」と言えるでしょう。しかし、それでもいいから "人のやらないことをやれ" というのが、ソニー創業者である井深大氏の教えでした。それを改めて思い返しました。
2017年1月5日から8日の日程で、米・ラスベガスでCES(セス)が開催されました。ここでソニーの平井社長は有機ELテレビへの再参入を発表しました。ブラビア A1E シリーズで、画面は 77/65/55型の3種類(4K)です。ユニークなのは「画面そのものから音を出す」機能があることです。有機ELだからこそできた、とありました。もちろん有機ELディスプレイ(パネル)は他社から調達するそうです。
このブログ記事で「ソニーは映像と音響に関するビジネスからは撤退しない会社と思っていたが、有機ELディスプレイからは撤退してしまった」との主旨を書きました。確かに有機ELディスプレイからは撤退したのですが、有機ELテレビのビジネスは中断しただけであり、撤退はせずに再参入したということでしょう。
しかも新しい有機ELテレビは「映像と音響を一体化させた」製品であり、スピーカーなしでちゃんとステレオ・サウンドが出る。いかにもソニーらしいし、誰もやらないことをやるというソニー・スピリットの発揮に見えます。有機ELテレビに再参入ということより、未踏の世界に挑戦した(している)ことの方が大切でしょう。これからのソニーに期待したいと思います。
このブログの本文に、村田製作所がソニーのリチウム電池事業を買収することを書きました。買収は2017年4月に完了する見込みです。一方、2017年2月3日付の日本経済新聞に、サムスン電子が村田製作所とリチウム電池の調達交渉中とありました。これには本文にも書いた Galaxy Note7 の発火事故が関係しています。日経新聞の記事を以下に引用します。
村田製作所のリチウム電池事業の買収と、Galaxy Note7 の発火事故の経緯を時間を追って書くと以下のようになります。
もし仮に、サムスン電子が村田製作所からリチウムイオン電池を調達することになると、村田製作所は大手供給先を確保することになります。これは赤字続きだった旧ソニーのリチウムイオン電池事業を立て直す上で大きなプラス要因になるでしょう。ソニーはアップルの最新スマホの受注を逃したわけであり(本文参照)、それ挽回する商談です。サムスンとの取引で利益が出るかどうかは分かりません。サムスンは厳しい品質基準を突きつけてくるはずだし、競争相手が韓国・香港企業では価格的にも厳しいでしょう。しかし一般に生産規模の拡大はリチウムイオン電池の部材調達コストを下げるので、事業全体としてはプラスになることは間違いないと思います。
こういう言い方は不謹慎かもしれませんが、村田製作所がソニーのリチウムイオン電池事業を買収した直後に起こったサムソン製品の発火問題は、結果として村田製作所にとってラッキーだったと言うしかないでしょう。しかも、発火事故の当事者の一つであるアンプレックス・テクノロジーは TDK の子会社であり、その TDK は電子部品事業において村田製作所の最大のライバルメーカーなのです。またサムスン電子にとって「ソニーからリチウムイオン電池を調達するのはハードルが高いが、村田製作所からだとやりやすい」ということが当然考えられるでしょう。
急激に技術が進歩していくエレクトロニクス業界においては何が起きるか分からない例として、日経新聞の記事を読みました。
村田制作所によるソニーの電池事業の買収は、少々遅れて2017年9月1日に完了し
ました。
リチウムイオン電池とノーベル賞 | |||
リチウムイオン電池とモルモット精神 |
の二つです。No.39はリチウムイオン電池を最初に作り出した旭化成の吉野氏の発明物語、No.110はそのリチウムイオン電池の製品化(量産化)に世界で初めて成功した、ソニーの西氏の話でした。
そのソニーですが、リチウムイオン電池から撤退することを先日発表しました。その新聞記事を振り返りながら、感想を書いてみたいと思います。No.110にも書いたのですが、ソニーのリチウムイオン電池ビジネスの事業方針はブレ続けました。要約すると次の通りです。
◆ | 盛田社長・岩間社長・大賀社長時代(1971-1995)
| |||||
◆ | 出井社長時代(1995-2000)
| |||||
◆ | 安藤・中鉢・ストリンガー社長時代(2000-2012)
| |||||
◆ | 平井社長時代(2012-)
|
この詳しい経緯は、No.110「リチウムイオン電池とモルモット精神」に書きました。こういった事業方針の "ブレ" が過去にあり、そして今回の発表となったことをまず押さえておくべきだと思います。
(site : www.sony.co.jp)
撤退の発表、村田製作所への事業売却
2016年7月28日、ソニーはリチウムイオン電池から撤退を発表しました。それを報じた日本経済新聞の記事から引用します。以下、アンダーラインは原文にはありません。
(日本経済新聞 1面記事) |
高性能2次電池の重要性は誰もが理解できるわけです。スマホや電気自動車は言うに及ばず、ロボットやドローンが21世紀に真に普及するかどうかの重要な鍵は "電池" です。ソニーの経営陣も存続させるかどうか迷ったでしょう。しかし存続するためには投資をしなければならないが、その投資は "非中核事業" と位置づけてしまった以上、優先度の観点から難しいということだと思います。「関連記事11面に」とあるように、日本経済新聞の11面に解説記事がありました。
(日本経済新聞 11面記事) |
記事の中に「パソコン向けの電池で過熱・発火の問題が発生して」とあるのは、2006年のことです。ソニー製リチウムイオン電池の不具合により、米国を含むパソコンメーカが回収を余儀なくされまた。
リチウムイオン電池の過熱・発火事故というと、ソニーの事業売却の発表があった1ヶ月後の 2016年9月2日、韓国サムスン電子は、Galaxy Note7の回収を発表しました。グループ会社であるサムスンSDIが製造したリチウムイオン電池の発火事故が報告されたからです。対象となる台数は全世界で250万台といいます。ソニーの撤退の理由の一つとして「サムスンSDIなど韓国勢との競争が激化して」と日経の記事にあったのですが、ほかならぬそのサムスンSDIが問題を起こしたわけです。
振り返ってみると、2016年1月にも パナソニック製の一部の電池に、最悪の場合は発火の危険性があることが判明し、東芝のノートパソコンなどの該当機種が回収されました。ソニーの2006年の事故以来、消費者向け製品の回収事件はこれだけでなく、もっとあったと記憶しています。
リチウムイオン電池の安全性については、当初からの課題だったわけです。No.39「リチウムイオン電池とノーベル賞」の「補記4」に、ソニーで世界初の製品化を主導した西氏が「開発をためらった」という話を書きましたが、それはつまり安全性に懸念があったからです。ソニーが1991年に最初に製品化してから既に25年が経過しました。25年もたってまだ安全性の問題が解決できないのかと思ってしまいますが、この25年の間、リチウムイオン電池に求められ続けたのはコンパクト化・大容量化・低コスト化です。これらの市場の要求と安全性の両立が非常に難しいようです。この課題を根本的に解決するのが、日本経済新聞の記事にある「全固体電池」です。
「全固体電池」とは、電池の電解質に固体を使う電池です。リチウムイオン電池は、正極、負極、正極と負極の間の電解質、正極と負極を分離するセパレータから構成されていますが、現在の電池は電解質に有機溶媒液を使っています。このため液漏れのリスクがあり、最悪の場合は過熱から発火事故につながったりします。この電解質を固体(たとえばリチウムイオンを伝導できるセラミックス)で置き換えるのが全固体電池です。現在、各社が開発を競っていて、試作品も作られています。
とにかく、村田製作所への事業譲渡は決まりました。村田製作所に果たして成算はあるのかどうか。上の引用における「生産技術」と「全固体電池」がキーワードのようです。これについて日本経済新聞・京都支社の太田記者が、村田製作所の立場から解説を書いていました(村田製作所は京都が本社です)。
|
村田製作所の経営陣の判断を日経の記事から要約すると、以下のようになるでしょう。
◆ | 村田製作所の生産技術と生産管理のノウハウをもってすると、現在のソニーのリチウムイオン電池事業は黒字化できる。 | ||
◆ | ソニーの「全固体電池」の研究は優れている。村田製作所が持つセラミックコンデンサの積層技術とを合わせて、次世代の「全固体電池」を新事業に育てられる。 |
の2点です。この村田製作所の経営陣の判断が正しいかどうかは分かりませんが、リチウムイオン電池を研究中という村田製作所にとっては、一気にエネルギービジネスに進出するチャンスと見えたのでしょう。村田製作所はまだ電池の生産ラインさえ持っていない段階です。
しかし「全固体電池」は世界的にみても試作レベルであり、量産技術が確立しているわけではありません。現在のリチウムイオン電池より安全性で上回ったとしても、大容量・コンパクト・コストのすべてで上回わらないと製品化はできないわけで、これは並大抵ではないと思います。従って、少なくとも現在のリチウムイオン電池が韓国勢と競争できるレベルになるのが必須条件でしょう。村田製作所の経営陣は、これが可能だと判断したと考えられます。
技術評論家の見方
ソニーが電池事業を村田製作所に売却する発表を受けて、技術評論家の志村幸雄氏がコラムを書いていました。以下にコラムの感想とともに引用します。アンダーラインは原文にはありません。
|
ソニーは1991年、リチウムイオン電池を世界で初めて製品化(量産技術を確立)しました。しかし、このブログの最初に書いたように、その後のソニーの電池ビジネスの方針はブレ続けたわけです。2012年末から2013年にかけて(現・平井社長の時代)は、一度、電池ビジネスの売却を検討しています。志村氏が言うように「長らく市場で先導的な役割を果たしてきた」のかどうか、それは疑問でしょう。志村氏のコラムを続けます。
|
志村氏の指摘は、ソニーの電池事業の売却の要因は「技術力の低下」ではないかということであり、その象徴が「米アップル社の iPhone 最新機種への採用を逸した」ことだというわけです。この iPhone 最新機種とは、2016年9月8日に発表された iPhone7 /7 Plusのことでしょう。
|
志村氏が「リチウムイオン電池は伸びしろのある技術領域」というのは全くのその通りだと思います。上に書いたように、ソニーもパナソニックもサムスンSDIも問題を起こしている。それだけ難しい技術領域であり、逆にいうと未開拓技術がある領域なのです。
一方、志村氏が「ソニーは今回の決定にあたって、リチウムイオン電池の市場性を過小評価してはいなかったか」と書いているのは、ハズレていると思います。リチウムイオン電池の市場性は誰もが理解できるからです。ドローンをとってみても、積載重量を増やして長時間の飛行を可能にするには、電池の大容量化(かつコンパクト化)が必須です。ドローンが真に21世紀の大産業になるかどうかは、電池にかかっているわけで、これは素人でも理解できます。
そもそも "経営判断" というのは、
◆ | 誰しも将来性を疑っている分野ではあるが、事業の成長を見越して経営資源を投入する | ||
◆ | 誰しも成長領域だと思っているが、経営資源を別領域に集中させるために、あえて撤退する |
のどちらかです。「誰もが将来性を疑っている分野から撤退」したり、「誰もが成長分野と思っている事業に経営資源を投入」するのは、どの企業でもやっている "普通の事業の進め方" であって、経営判断と言うには "おこがましい" わけです。
ソニーの「リチウムイオン電池からの撤退」が正しい経営判断かどうかは分かりませんが、少なくとも "経営判断" と言うに値することは確かでしょう。「誰もが成長領域だと思っているが、あえて撤退する」のだから・・・・・・。志村氏のコラムは次のように結ばれています。
|
以降は、ソニーのリチウムイオン電池からの撤退についての感想です。
継続発展の難しさ
ソニーの電池ビジネス売却のニュースを読んで思うのは、新事業を創出し、かつそれを発展させることの難しさです。No.110「リチウムイオン電池とモルモット精神」に書いたように、いわゆる「モルモット精神」を発揮して世界で初めてリチウムイオン電池の量産技術を確立したのがソニーでした。しかし、そうして新事業を創出したあとの第2ステップが問題です。
第2ステップで必要なのは、参入してくる企業とのグローバルな競争に勝つことと、次世代技術への開発投資です。競争を勝ち抜くためにはコスト優位性が必須であり、そこでは生産技術や生産管理が大きなポイントになります。しかしこの領域は、新事業を創出するマインドや人材とは必ずしも同じではない。
またコスト優位性を確立できたとして、そこで得た利益を次世代技術の研究開発に投資する必要がありますが、「今成功しているのに、あえてリスクをとる必要があるのか」という意見が上層部から出てきます。
ソニーでリチウムイオン電池の製品化をした西氏によると、ソニーが角型リチウムイオン電池(携帯電話やノートPC用)に出遅れたのは「丸型で儲かっているのだから、あえてリスクをとる必要はない」という、当時の事業部長の反対だそうです(No.110「リチウムイオン電池とモルモット精神」の「補記1」参照)。リスクを恐れて保身に走る上層部の "不作為" がビジネスの足を引っ張るわけです。丸型・角型の件は、リチウムイオン電池の歴史全体からすると小さな件かもしれませんが、一つの典型例だと考えられます。
第2ステップでも成功するには、第1ステップ以上のハードルがある。そういうことを思いました。
ブレ続けた経営方針
最初に書いたように、ソニーのリチウムイオン電池ビジネスについての経営方針はブレ続けたわけです。自動車用電池については、1990年代に日産自動車のEVに電池を供給しながら、そこから撤退し、2000年代後半に再参入を表明したもののそれを実現させず、2012~2013年には電池ビジネス全体の売却を検討し、それを撤回する、といったブレようです。志村氏のコラムに「腰の引けた対応」とありましたが、それは今に始まったことではなく "歴史" があるのです。
こうなると、優秀な人材の継続的な確保は困難でしょう。たとえば自動車用電池に参入するときには、モバイル用電池の世界初の製品化を行った優秀な人材を投入したはずです。自動車メーカの安全に対する要求はモバイル用とは比較にならないぐらい厳しいからです。しかしそのビジネスから撤退してしまう・・・・・・。中核となっていた技術者は「やってられない」と思ったでしょう。2012~2013年に撤退の検討をしたときには、もうこれで終わりと、多くの志がある技術者が思ったはずです。競合他社に移籍した人も多いのではないか。転職のオファーは国内外を含め、いくらでもあったでしょう。ソニーでリチウムイオンをやってるのだから。
リチウムイオン電池のような "奥深い" 技術領域については、志のある優秀な研究者、技術者、人材の継続的な確保が必須だと思います。それには、電池を会社のコア事業と位置づける一貫した経営方針が大前提となるはすです。
"世界初" から撤退する意味
技術評論家の志村氏が指摘しているように、ソニーは「自らが作り出した世界初の製品」について、撤退や中断の判断をしています。
・ | AI型ロボット(AIBO) | ||
・ | 有機ELテレビ | ||
・ | リチウムイオン電池 |
の3つです。AI型ロボット(AIBO)については、No.159「AIBOは最後のモルモットか」、No183「ソニーの失われた10年」に書いた通りです。2006年に撤退し、2016年に再参入を発表しました。
この3つとも、ソニーが初めて製品化したのみならず、「誰もが今後伸びるだろう、重要だろうと思える領域」であるのが特徴です。もちろん、先ほど書いたように「伸びる領域だが、経営資源をコアビジネスに集中させるために撤退・中断する」という意志決定はありうるわけです。
ここで不思議なのは、有機ELテレビの表示装置である「有機ELディスプレイ(パネル)」です。
ソニーという会社は「映像と音響に関するビジネスをコアだと位置づけていて、そこからは撤退しない会社」だと思っていました。テレビ、ウォークマン、ビデオ、デジタル・カメラ、画像センサー、放送局用の映像装置、ゲーム機、映画などです。最新の製品でいうと、VR(仮想現実)機器もそうでしょう。「映像と音響」はソニーの "祖業" ともいえるもので、だからコアなのです。この定義からすると、AI型ロボット(AIBO)とリチウムイオン電池は「コア領域ではない」と言えないこともない。
ソニーの11型有機ELテレビ XEL-1。2007年12月発売。2010年1月生産終了。
(site : www.sony.co.jp)
|
困ってしまった日本の有機EL材料メーカ(出光興産など)や製造装置メーカ(キヤノントッキなど)は、韓国メーカとの提携を進め、現在、有機ELディスプレイはLG電子(テレビ向け)とサムスン電子(スマホ向け)の独壇場です。
リチウムイオン電池からの撤退を報じた日経新聞に「画像センサーなどに集中する」とありました。「映像の入り口」が画像センサー(イメージセンサー)です。では「映像の出口」であるディスプレイはどうなのか。それはコア事業ではないのか。もちろん液晶テレビの建て直しに資源集中するためなどの経営判断なのでしょうが、不可解感は否めません。
人のやらないことをやるのが "ソニー・スピリット" だとすると、リチウムイオン電池、AIBO、有機ELディスプレイには、それを開発した技術者の "誇り" と "思い" が込められているはずです。自分たちこそ "ソニー・スピリット" の体現者だという・・・・・・。その世界初のビジネスからの撤退は、当然、人材の流出を招くでしょう。No.55「ウォークマン(2)」で引用しましたが、元ソニーの辻野晃一郎氏(VAIO開発責任者)は「未踏の領域に足を踏み入れて全く新しいものを生みだそうというソニーのスピリット」を踏まえて、次のように語っています。
|
VAIOは斬新な機能をもったパソコンだったのは確かですが、パソコンそのものは世界初でも何でもありません。パソコンの開発責任者でさえこうなのだから、世界初の製品(リチウムイオン電池、AIBO、TVに使える中大型の有機ELディスプレイ)を作り出した技術者は、辻野氏のような思いが人一倍強いのではないでしょうか。撤退することは、"ソニーという生き方" をしてきた、その人たちの存在理由を否定することになるでしょう。
ソニー・スピリット
リチウムイオン電池の話に戻ります。紹介した志村氏のコラムの最後に、ソニーは世に言う「モルモット企業」から「日和見企業」に転じたと、手厳しいことが書いてありました。
ソニーが、当時発明されたばかりのリチウムイオン電池の製品化に乗り出したのは1987年です(No.39「リチウムイオン電池とノーベル賞」の「補記4」参照)。2017年3月に村田製作所への事業譲渡が完了するとしたら、ソニーのリチウムイオン電池事業の生命は30年だった、ということになります。
もし今後、仮にです。村田製作所がリチウムイオン電池を黒字転換させ、かつ、次世代電池(全固体電池)でも成功をおさめるなら、巨視的に長いスパンで見て「ソニーはモルモットの役割だった」と言えるでしょう。しかし、それでもいいから "人のやらないことをやれ" というのが、ソニー創業者である井深大氏の教えでした。それを改めて思い返しました。
 補記1  |
SONY AE1シリーズと平井CEO
- CES 2017 にて - (site : www.phileweb.com) |
このブログ記事で「ソニーは映像と音響に関するビジネスからは撤退しない会社と思っていたが、有機ELディスプレイからは撤退してしまった」との主旨を書きました。確かに有機ELディスプレイからは撤退したのですが、有機ELテレビのビジネスは中断しただけであり、撤退はせずに再参入したということでしょう。
しかも新しい有機ELテレビは「映像と音響を一体化させた」製品であり、スピーカーなしでちゃんとステレオ・サウンドが出る。いかにもソニーらしいし、誰もやらないことをやるというソニー・スピリットの発揮に見えます。有機ELテレビに再参入ということより、未踏の世界に挑戦した(している)ことの方が大切でしょう。これからのソニーに期待したいと思います。
(2017.1.6)
 補記2  |
このブログの本文に、村田製作所がソニーのリチウム電池事業を買収することを書きました。買収は2017年4月に完了する見込みです。一方、2017年2月3日付の日本経済新聞に、サムスン電子が村田製作所とリチウム電池の調達交渉中とありました。これには本文にも書いた Galaxy Note7 の発火事故が関係しています。日経新聞の記事を以下に引用します。
|
村田製作所のリチウム電池事業の買収と、Galaxy Note7 の発火事故の経緯を時間を追って書くと以下のようになります。
◆ | 2016年7月28日 ソニーはリチウムイオン電池事業を村田製作所に売却すると発表。 | ||
◆ | 2016年8月19日 サムスン電子がGalaxy Note7 を発売。その直後から発火事故が相次いだ。 | ||
◆ | 2016年9月2日 サムスン電子が Galaxy Note7 の全世界での出荷と販売を停止。販売済みの250万台を回収へ。それまでの発火事後は35件と報告された。 | ||
◆ | 2017年1月23日 サムスン電子は発火事故の原因がバッテリーにあったと最終的に発表。バッテリーの供給会社はサムスンSDIとアンプレックス・テクノロジー(Amperex Technology Limited = ATL。香港)であるが、それぞれ別の原因であるとされた(報告で供給会社の名称は伏せられていた)。なお、アンプレックス・テクノロジーは日本のTDKが2005年に買収しており、TDKの子会社である。 | ||
◆ | 2017年2月3日 日本経済新聞が「サムスン電子が村田製作所とリチウム電池の調達を交渉」と報道。 |
もし仮に、サムスン電子が村田製作所からリチウムイオン電池を調達することになると、村田製作所は大手供給先を確保することになります。これは赤字続きだった旧ソニーのリチウムイオン電池事業を立て直す上で大きなプラス要因になるでしょう。ソニーはアップルの最新スマホの受注を逃したわけであり(本文参照)、それ挽回する商談です。サムスンとの取引で利益が出るかどうかは分かりません。サムスンは厳しい品質基準を突きつけてくるはずだし、競争相手が韓国・香港企業では価格的にも厳しいでしょう。しかし一般に生産規模の拡大はリチウムイオン電池の部材調達コストを下げるので、事業全体としてはプラスになることは間違いないと思います。
こういう言い方は不謹慎かもしれませんが、村田製作所がソニーのリチウムイオン電池事業を買収した直後に起こったサムソン製品の発火問題は、結果として村田製作所にとってラッキーだったと言うしかないでしょう。しかも、発火事故の当事者の一つであるアンプレックス・テクノロジーは TDK の子会社であり、その TDK は電子部品事業において村田製作所の最大のライバルメーカーなのです。またサムスン電子にとって「ソニーからリチウムイオン電池を調達するのはハードルが高いが、村田製作所からだとやりやすい」ということが当然考えられるでしょう。
急激に技術が進歩していくエレクトロニクス業界においては何が起きるか分からない例として、日経新聞の記事を読みました。
(2017.2.7)
 補記3  |
村田制作所によるソニーの電池事業の買収は、少々遅れて2017年9月1日に完了し
ました。
|
(2017.9.3)
No.183 - ソニーの失われた10年 [技術]
No.159「AIBOは最後のモルモットか」の続きです。最近何回か書いた人工知能(AI)に関する記事の継続という意味もあります。
(No.166、No.173、No.174、No.175、
No.176、No.180、No.181にAI関連記事)
ソニーのAIBOは販売が終了(2006年)してから10年になりますが、最近のAIBOの様子を取材した記事が朝日新聞に掲載されました。「あのとき それから」という連載に「AIBOの誕生(1999年)と現在」が取り上げられたのです(2016.6.1 夕刊)。興味深い記事だったので、まずそれから紹介したいと思います。
AIBOの誕生(1999年)と現在
記事に出てくる「ロボット工学三原則」とは、アメリカの有名なSF作家、アイザック・アシモフ(1920-1992)が自作の小説で唱えた原則で、以下の通りです。
ロボット工学三原則
「工学」という言葉が入っているように、これは人間がロボットを設計・開発するときに守るべき原則、という意味です。アイボ版のロボット工学三原則は、このオリジナルのパロディになっています。「服従するだけの存在ではなく、楽しいパートナーに」という開発者の考え方がよく現れています。
ロボット工学三原則・AIBO版
少々横道にそれますが、アイザック・アシモフが「ロボット工学三原則」を初めて提示したのは、短編小説集「我はロボット」("I, Robot" 1950)でした。この小説の題名を企業名にした会社があります。ロボット掃除機、ルンバで有名な iRobot社です(iRobot社のCEOのコリン・アングル氏による。「家電Watch」2010年10月7日)。アイボの開発者もそうですが、ロボット・ビジネスを目指す技術者が、大SF作家・アシモフに敬意を表するのは当然なのです。
ルンバが発売されたのは、アイボ発売の3年後の2002年です。アイボとルンバは目的が全く違いますが「家庭内を動きまわるロボット」という一点においては同じです。改良型モデルから自己充電機能が搭載されたのも、よく似ています(アイボ:2002年にオプションソフト→2003年のERS-7に標準搭載。ルンバ:2004年)。
アイボは累計約15万体売れたのですが、事業としては成功しませんでした。そして2006年、経営難のソニーは アイボ から撤退してしまいます。
アイボは「命があるかのようにふるまう世界初のエンターテインメントロボット」ですが、その命に老年期はなく "死" もないように設計されています。ペットロスにならなくて済むと安心していた所有者は、ソニーのアイボからの撤退で不安になったはずです。さらに2014年にはアイボの修理サポートが終了しました。家族として大切にする所有者は不安に駆られたわけです。このような中、アイボの修理をやっている「ア・ファン」という会社の話が記事に出てきます。
この引用の中に「お年寄り」が2回出てきます。アイボの所有者の中で「お年寄り」は少数派だとは思いますが、このようなお年寄りがいること自体、アイボの開発者の狙いは完全に成功したということでしょう。高齢化社会の進展で「介護ロボット」とか「見守りロボット」という話題はよくありますが、それを越えた「人に寄り添うロボット」としてのアイボは、まさに先進的・独創的だったと言わざるを得ません。一見、実用性に乏しそうなものが、人にとっては最も大切なものである・・・・・・。人間社会ではよくあることです。新聞記事の引用を続けます。
アイボの現状をレポートする記事だと思っていると、急に日本文化論になってきました。おそらくそれが、記事を書いた朝日新聞の白石氏の狙いだったのでしょう。
No.21「鯨と人間(2)日本・仙崎・金子みすゞ」で書いたように、日本では数々の「動物供養」の習わしがあります。また「無生物供養」もいろいろあって、有名なのは「針供養」ですが、その他、「鏡」「鋏」「印章」「人形」なども供養されます。日本文化において人間・動物・無生物は一連のつながりの中にあるわけで、動物と無生物の間というイメージを持ちやすいアイボが供養されるのは、むしろ当然と言えるでしょう。誕生・治療・入院・献体・供養という一連のコンセプトの中にアイボは存在しています。さらに記事の最後の文章です。
水上勉氏の文章を読むと「日本文化論」を通り越して「アイボ哲学」の領域に達しているかのようです。水上氏の表現は独特ですが、それは作家としての感性なのでしょう。
現在(2016.7)のソニー社長の平井一夫氏は「"感動" をもたらす商品を生み出すのがソニーの使命だ」と語っています。アイボに関していうと、"アイボ哲学" を語る水上勉氏、アイボを修理して老人介護施設へ連れていったおばあさん、アイボ供養を企画して実行した人たちに、アイボが "感動" を与えたことは間違いありません。"感動" という表現がそぐわないなら、"人の心に残る強い印象" と言い換えてもよいでしょう。アイボはまさに平井社長の言う「ソニーの使命」を体現する製品だった。
またそれ以前に「人のやらないことをやる」という "ソニー・スピリット" を象徴する製品であったわけです。ソニーという企業のアイデンティティーが、目に見える形になり、しかも動いていたのがアイボだった。アイボをやめるというのはどういうことかと言うと「確かにアップルの iPod / iPhone には負けた(現在はともかく当初は)。だけど俺たちにはアイボがある、と言えなくなる」ということです。
さらに重要なのは、アイボ = AIBO は Artificial Intelligence roBOt であり(1999年当時の)最新のAI(人工知能)技術を取り入れた製品だったことです。AIの技術は21世紀社会のあらゆるところに取り入れられようとしている重要技術で、もちろんソニーにとっても必須の技術です。それを応用したロボットは21世紀の大産業になるはずです。AIの技術は、そこに注力するかしないかという経営判断をする事項ではありません。AIの技術に注力することは、ソニーのようなエレクトロニクス企業にとって "MUST" なのです。
2006年にソニーの経営者は「アイボからの撤退」を決めたわけですが、まさに経営トップが愚鈍だと会社が大きなダメージをこうむるわけであり、その典型のような話です。
しかしダメージからは回復しなければならない。そのために現在のソニー経営陣が打った(一つの)手が、米国のコジタイ社との提携です。
コジタイ社との提携
2016年5月18日、ソニーは米国のコジタイ社(カリフォルニア州 オレンジ・カウンティ)との提携(資本参加)を発表しました。コジタイとは、アルファベットのスペルで Cogitai であり、COGnition(認知)、Information Technology(情報技術)、Artificial Intelligence(人工知能)からとられています。
この会社の共同設立者は、ピーター・ストーン(President)、マーク・リング(CEO)、サティンダー・シン・バベイジャ(CTO)の3人ですが、いずれもAIの中の「深層学習」や「強化学習」の権威です。その意味では、英国のディープマインド社(No.174 参照)と似ています。
それに加えてコジタイは「継続学習」の技術開発を進めています。継続学習とは「AIが永続的に学習する」という意味ですが、この技術を核として、
の実現を目指しています。日経産業新聞(2016.5.19)によると、たとえばカメラに応用すると、次のようなことができるとあります。
ソニーがコジタイに出資する契機になったのは、ソニー・コンピュータ・サイエンス研究所の北野宏明社長と、コジタイのストーン社長の長年に渡る親交だったようです。北野社長は「ロボカップ」の提唱者ですが、ストーン社長はロボカップに創設時から参画していて、現在はロボカップの副会長です。彼は次のように述べています。
なるほどと思いますね。考えてみるとアイボは、1999年当時のAI技術をもとに、現在のコジタイ社が注力している「継続学習」を世界で初めて実現した商品だったのではないでしょうか。コジタイ社の社長がアイボのファンというのは自然なことでしょう。さらにコジタイへの出資について、日経新聞の中藤記者は次のように書いていました。
ロボット復活につながるとは断言していないと、"思わせぶりな書き方" がしてありますが、アイボのファンであるAIの権威(ストーン社長)、ロボカップの創設者(北野社長)、「継続学習」や「好奇心」というキーワード、これだけのお膳立てが揃ったそのあとで、ロボットを復活させないということは考えにくいわけです。
ロボット復活へ
事実、この記事の翌月の経営説明会(2016年6月29日)で、ソニーはロボットビジネスへの再参入を宣言しました。
おそらく日経新聞の中藤記者は、ソニーのロボット復活の情報を知っていて、2016年5月19日の記事を書いたのだと思います。
ちょっと余談になりますが、平井社長が宣言した「新ロボット」は、どのようなものになるのでしょうか。それはアイボのようなペット型とは限りません。人型かもしれないし、両方かもしれません。平井社長は「育てる喜び」と言っているので、少なくともペット型は発売されるような気がします。いずれにせよ、この10年の技術進歩を反映して、人にとって有益な機能がアイボよりは断然多いものになるでしょう。
アイボのようなペット型が発売されるとしても、今後の発展を見込んでハードウェアもソフトウェアも新規に設計されると思います。しかしペット型の新ロボットは、アイボからデータを移行することによって、飼い主との生活で生まれた性格・気質を引き継げるのではないでしょうか。つまり、アイボの「復活」ないしは「よみがえり」が可能になる・・・・・・。本物のペットでは絶対にありえないことです。そして人々は、ソニーがソフトバンクの Pepper に15年も先行していたことを思い出す・・・・・・。そういう風に予想するのですが、果たしてどういう製品になるのか、注視したいと思います。
ソニー・コンピュータ・サイエンス研究所の北野宏明社長が創設した "ロボカップ" ですが、2016年の世界大会はドイツのライプチヒで開催されました(2016.6.30 - 7.4)。ロボカップ国際委員会は「共通のハードウェアを使い、家庭内で求められる動きの巧拙を競うロボット競技」を2017年の大会から導入することを決めています。それに使う標準機を選ぶ審査が、2016年の世界大会で行われました。最終的に勝ち残ったのはソフトバングの Pepper とトヨタ自動車の家庭用ロボット HSR(Human Support Robot)です。もちろんソフトバンクもトヨタも、世界中のアプリ開発者を引き寄せて、自社のロボットが家庭用の標準機になることを狙っているわけです。ソニーがアイボから撤退してから10年の間にロボット業界のプレーヤーも様変わりしました。しかし平井社長がロボットビジネスの再開を表明したからには、ロボカップにも参加するのでしょう。
まさに日経新聞の中藤記者が言う「この10年を取り戻す取り組み」、つまりソニーの失われた10年を取り返すチャレンジが始まったということだと思います。
ソニーは2017年11月1日、新型のロボット・aiboを発表しました。発売開始は2018年1月11日で、あくまで "1" にこだわったタイムスケジュールになっています(11月11日に発表する手もあったと思いますが)。
記者発表の内容をみると、2006年に生産終了した旧型 AIBO より格段に進化したようです。6軸ジャイロセンサー、人感センサーなどの各種センサー類の装備をはじめ、22軸のアクチュエータを備えて柔軟な動きができるボディになっている(22個のモータ内蔵と同等)。また飼い主とのコミュニケーションの能力やAIによる学習能力も進歩しました。もちろんスマホと連携でき、クラウドともつながります。
一方、10年のブランクを象徴することもあります。たとえば新しく搭載されたSLAM(Simultaneous Localization And Mapping。"スラム")の技術です。これは移動しながら撮影した画像を重ね合わせることによって環境の3次元マップを徐々に作っていくと同時に、その3次元マップを利用して自分の位置を特定するという技術です。この技術を家庭用機器に搭載したのは iRobot社のロボット掃除機・ルンバが最初で、確か2~3年前のことだったと思います。つまり、SLAMについては「人のやらないことをやる」というわけにはいかなかった。
とはいえ、注目に値する技術もあります。たとえば記者発表で「集合知」と称されていた機能です。つまり、飼い主との生活で学習した aibo のデータをクラウドに集約し、aibo 同士で "学び合う" という機能です。クラウド上に仮想的な aibo社会を作るわけで、これは人間の学習過程に近い。
この手の技術は産業用ロボットの学習に大いに役立つと考えられます。記者発表で「将来的には、製造・物流などB2Bに向けた事業展開も検討」とありましたが、このような技術を応用した事業展開ということでしょう。とにかく、aibo という名前が示している「AI+ロボティックス」が21世紀の大産業になることは間違いないわけで、ソニーは(再び)スタートラインに立ったということだと思います。今後の事業展開を注視したいと思います。
戌年の2018年1月11日に新型の aibo(犬型)が発売開始されました。この日の新聞に元ソニーの土井利忠氏に取材した記事が載っていたので紹介します。
この10年で何が起こったかと言うと、旧型アイボでロボカップに参加していたフランス人が本国でアルデバラン・ロボティックス社を設立し、それをソフトバンクが買収してペッパーを発売した、これが一番象徴的な出来事です(No.159「AIBOは最後のモルモットか」の「補記」参照)。
何回か書きましたが、21世紀の大産業を一つだけ挙げよと言われたなら「人工知能技術を搭載したロボット」でしょう。もちろんロボットとはヒト型だけでなく、自動運転車や自動飛行ドローン、介護用ロボット、産業用ロボット、建設・土木・農業用自動機械などを含みます。その「人工知能技術を搭載したロボット」の極めて先駆的な製品が先代のアイボだった。それを、先の見えない愚鈍なトップが殺してしまった。経営とは恐ろしいものだと思います。
朝日新聞の別の記事によると、新型アイボは2015年夏から有志が空き時間で試作機の開発を始めたようです。これをソニー用語で「机の下開発」と言うそうです。それから2年で発表、2年半で発売にこぎつけた。このソニーの潜在技術力は相当なものだと思います。記事でソニーの元アイボ担当幹部は「開発を続けていたら2年後(=2008年)には今のアイボと同じモノができた」と発言していますが、本当っぽく聞こえます。新型の aibo は10年遅れで世に出たというわけです。
新型アイボの部品点数は約4000点だそうです。デジカメの約2倍ですが、デジカメより圧倒的に可動部が多い。AI(人工知能)技術や個性をもって成長するところが注目されていますが、実は小さな胴体の中に多数の部品を詰め込んだ極めて複雑な機械なのです。課題はその量産技術と品質保証でしょう。「世界の誰もやったことのない技術開発」が今後必要だと推測します。そのチャレンジも生産拠点(岡崎市の幸田工場)で始まったようです。
(No.166、No.173、No.174、No.175、
No.176、No.180、No.181にAI関連記事)
ソニーのAIBOは販売が終了(2006年)してから10年になりますが、最近のAIBOの様子を取材した記事が朝日新聞に掲載されました。「あのとき それから」という連載に「AIBOの誕生(1999年)と現在」が取り上げられたのです(2016.6.1 夕刊)。興味深い記事だったので、まずそれから紹介したいと思います。
AIBOの誕生(1999年)と現在
|
記事に出てくる「ロボット工学三原則」とは、アメリカの有名なSF作家、アイザック・アシモフ(1920-1992)が自作の小説で唱えた原則で、以下の通りです。
ロボット工学三原則
ロボットは人間に危害を加えてはならない。また、その危険を看過することによって、人間に危害を及ぼしてはならない。 | |||
ロボットは人間に与えられた命令に服従しなければならない。ただし、与えられた命令が、第1条に反する場合は、この限りではない。 | |||
ロボットは、前掲第1条および第2条に反するおそれのない限り、自己を守らなければならない。 |
「工学」という言葉が入っているように、これは人間がロボットを設計・開発するときに守るべき原則、という意味です。アイボ版のロボット工学三原則は、このオリジナルのパロディになっています。「服従するだけの存在ではなく、楽しいパートナーに」という開発者の考え方がよく現れています。
ロボット工学三原則・AIBO版
ロボットは人間に危害を加えてはならない。自分に危害を加えようとする人間から逃げることは許されるが、反撃してはいけない。 | |||
ロボットは原則として人間に対して注意と愛情を向けるが、ときに反抗的な態度をとることも許される。 | |||
ロボットは原則として人間の愚痴を辛抱強く聞くが、ときには憎まれ口を利くことも許される。 (site : www.sony.jp)
|
少々横道にそれますが、アイザック・アシモフが「ロボット工学三原則」を初めて提示したのは、短編小説集「我はロボット」("I, Robot" 1950)でした。この小説の題名を企業名にした会社があります。ロボット掃除機、ルンバで有名な iRobot社です(iRobot社のCEOのコリン・アングル氏による。「家電Watch」2010年10月7日)。アイボの開発者もそうですが、ロボット・ビジネスを目指す技術者が、大SF作家・アシモフに敬意を表するのは当然なのです。
ルンバが発売されたのは、アイボ発売の3年後の2002年です。アイボとルンバは目的が全く違いますが「家庭内を動きまわるロボット」という一点においては同じです。改良型モデルから自己充電機能が搭載されたのも、よく似ています(アイボ:2002年にオプションソフト→2003年のERS-7に標準搭載。ルンバ:2004年)。
アイボは累計約15万体売れたのですが、事業としては成功しませんでした。そして2006年、経営難のソニーは アイボ から撤退してしまいます。
記事には書いていないのですが「事業としては成功しなかった」ことをちょっと分析してみますと、アイボの開発につぎ込まれたお金は約250億円という話を読んだ記憶があります。仮に、プロモーションや販促費用まですべて含めて300億円とします。約15万体の総売上げを約300億円とします。アイボの製造原価を50%とすると、約150億円の累積損失を抱えていたことになります。あくまでザッとした見積もりですが、数字のオーダーは間違っていないでしょう。 約150億円の累積損失(2006年時点、推測)をどう見るかです。ソニーらしい独創的な製品であること、将来の重要技術である人工知能(AI)を備えたロボットであることを考えると "安い投資" であり、むしろお釣りがくると思うのですが、当時のソニーの経営陣の判断は正反対だったようです。 その一方で、ソニーのテレビ事業は2004年度から2013年度まで、10年連続の営業赤字でした。1500億円規模のロスを出した年もあった(2011年度)。10年間の赤字の累計は約8000億円にもなるそうです。それでもソニーはテレビ事業をやめなかった。人とソニーを繋ぐ接点だからでしょう。そして2014年度に黒字転換を果たした。 テレビに比べるとアイボの赤字は、桁が2つ違う、わずかなものだということに注意すべきでしょう。 |
埼玉県和光市にて、白石明彦氏撮影(2000年)。記事には書いていないが、白石氏の自宅だと推測される。
(www.asahi.com)
|
AIBOをめぐる動き
ソニーが6本足で動く昆虫型ロボットを試作 | |
ビーグル犬のような「ERS-110」発売 | |
子ライオンのような「ERS-210」発売 | |
クマイヌのような「ERS-300」シリーズ(「ラッチ」と「マカロン」)発売。宇宙探査ロボットのような「ERS-220」発売 | |
パグ犬のような「ERS-31L」発売 | |
ロボット技術の集大成となる「ERS-7」発売 | |
生産終了 | |
「ア・ファン」が修理開始 | |
ソニーの修理サポート終了 | |
3回のアイボ葬。国立科学博物館が重要科学技術史資料(未来技術遺産)に登録 |
朝日新聞(2016.6.1 夕刊)より
アイボは「命があるかのようにふるまう世界初のエンターテインメントロボット」ですが、その命に老年期はなく "死" もないように設計されています。ペットロスにならなくて済むと安心していた所有者は、ソニーのアイボからの撤退で不安になったはずです。さらに2014年にはアイボの修理サポートが終了しました。家族として大切にする所有者は不安に駆られたわけです。このような中、アイボの修理をやっている「ア・ファン」という会社の話が記事に出てきます。
|
この引用の中に「お年寄り」が2回出てきます。アイボの所有者の中で「お年寄り」は少数派だとは思いますが、このようなお年寄りがいること自体、アイボの開発者の狙いは完全に成功したということでしょう。高齢化社会の進展で「介護ロボット」とか「見守りロボット」という話題はよくありますが、それを越えた「人に寄り添うロボット」としてのアイボは、まさに先進的・独創的だったと言わざるを得ません。一見、実用性に乏しそうなものが、人にとっては最も大切なものである・・・・・・。人間社会ではよくあることです。新聞記事の引用を続けます。
|
アイボの現状をレポートする記事だと思っていると、急に日本文化論になってきました。おそらくそれが、記事を書いた朝日新聞の白石氏の狙いだったのでしょう。
No.21「鯨と人間(2)日本・仙崎・金子みすゞ」で書いたように、日本では数々の「動物供養」の習わしがあります。また「無生物供養」もいろいろあって、有名なのは「針供養」ですが、その他、「鏡」「鋏」「印章」「人形」なども供養されます。日本文化において人間・動物・無生物は一連のつながりの中にあるわけで、動物と無生物の間というイメージを持ちやすいアイボが供養されるのは、むしろ当然と言えるでしょう。誕生・治療・入院・献体・供養という一連のコンセプトの中にアイボは存在しています。さらに記事の最後の文章です。
|
水上勉氏の文章を読むと「日本文化論」を通り越して「アイボ哲学」の領域に達しているかのようです。水上氏の表現は独特ですが、それは作家としての感性なのでしょう。
現在(2016.7)のソニー社長の平井一夫氏は「"感動" をもたらす商品を生み出すのがソニーの使命だ」と語っています。アイボに関していうと、"アイボ哲学" を語る水上勉氏、アイボを修理して老人介護施設へ連れていったおばあさん、アイボ供養を企画して実行した人たちに、アイボが "感動" を与えたことは間違いありません。"感動" という表現がそぐわないなら、"人の心に残る強い印象" と言い換えてもよいでしょう。アイボはまさに平井社長の言う「ソニーの使命」を体現する製品だった。
またそれ以前に「人のやらないことをやる」という "ソニー・スピリット" を象徴する製品であったわけです。ソニーという企業のアイデンティティーが、目に見える形になり、しかも動いていたのがアイボだった。アイボをやめるというのはどういうことかと言うと「確かにアップルの iPod / iPhone には負けた(現在はともかく当初は)。だけど俺たちにはアイボがある、と言えなくなる」ということです。
さらに重要なのは、アイボ = AIBO は Artificial Intelligence roBOt であり(1999年当時の)最新のAI(人工知能)技術を取り入れた製品だったことです。AIの技術は21世紀社会のあらゆるところに取り入れられようとしている重要技術で、もちろんソニーにとっても必須の技術です。それを応用したロボットは21世紀の大産業になるはずです。AIの技術は、そこに注力するかしないかという経営判断をする事項ではありません。AIの技術に注力することは、ソニーのようなエレクトロニクス企業にとって "MUST" なのです。
2006年にソニーの経営者は「アイボからの撤退」を決めたわけですが、まさに経営トップが愚鈍だと会社が大きなダメージをこうむるわけであり、その典型のような話です。
AIBO ERS-7
AIBOの後期モデル(2003年9月)。無線LANを搭載し、自己充電機能がある。
|
しかしダメージからは回復しなければならない。そのために現在のソニー経営陣が打った(一つの)手が、米国のコジタイ社との提携です。
コジタイ社との提携
2016年5月18日、ソニーは米国のコジタイ社(カリフォルニア州 オレンジ・カウンティ)との提携(資本参加)を発表しました。コジタイとは、アルファベットのスペルで Cogitai であり、COGnition(認知)、Information Technology(情報技術)、Artificial Intelligence(人工知能)からとられています。
この会社の共同設立者は、ピーター・ストーン(President)、マーク・リング(CEO)、サティンダー・シン・バベイジャ(CTO)の3人ですが、いずれもAIの中の「深層学習」や「強化学習」の権威です。その意味では、英国のディープマインド社(No.174 参照)と似ています。
それに加えてコジタイは「継続学習」の技術開発を進めています。継続学習とは「AIが永続的に学習する」という意味ですが、この技術を核として、
AIが実社会とのインタラクションを通して、自律的・能動的に目標を設定し、その目標の達成を目指して学習していく = 自律的発達知能システム |
の実現を目指しています。日経産業新聞(2016.5.19)によると、たとえばカメラに応用すると、次のようなことができるとあります。
◆ | 従来のAI プロの写真の撮り方を学ぶ ↓ プロの撮り方に近づけるようにアシストする | ||
◆ | 次世代AI 利用者の撮り方のクセの変化を学ぶ ↓ 利用者の個性が出るような撮り方を提案する |
ソニーがコジタイに出資する契機になったのは、ソニー・コンピュータ・サイエンス研究所の北野宏明社長と、コジタイのストーン社長の長年に渡る親交だったようです。北野社長は「ロボカップ」の提唱者ですが、ストーン社長はロボカップに創設時から参画していて、現在はロボカップの副会長です。彼は次のように述べています。
|
なるほどと思いますね。考えてみるとアイボは、1999年当時のAI技術をもとに、現在のコジタイ社が注力している「継続学習」を世界で初めて実現した商品だったのではないでしょうか。コジタイ社の社長がアイボのファンというのは自然なことでしょう。さらにコジタイへの出資について、日経新聞の中藤記者は次のように書いていました。
|
ロボット復活につながるとは断言していないと、"思わせぶりな書き方" がしてありますが、アイボのファンであるAIの権威(ストーン社長)、ロボカップの創設者(北野社長)、「継続学習」や「好奇心」というキーワード、これだけのお膳立てが揃ったそのあとで、ロボットを復活させないということは考えにくいわけです。
ロボット復活へ
事実、この記事の翌月の経営説明会(2016年6月29日)で、ソニーはロボットビジネスへの再参入を宣言しました。
|
おそらく日経新聞の中藤記者は、ソニーのロボット復活の情報を知っていて、2016年5月19日の記事を書いたのだと思います。
ちょっと余談になりますが、平井社長が宣言した「新ロボット」は、どのようなものになるのでしょうか。それはアイボのようなペット型とは限りません。人型かもしれないし、両方かもしれません。平井社長は「育てる喜び」と言っているので、少なくともペット型は発売されるような気がします。いずれにせよ、この10年の技術進歩を反映して、人にとって有益な機能がアイボよりは断然多いものになるでしょう。
アイボのようなペット型が発売されるとしても、今後の発展を見込んでハードウェアもソフトウェアも新規に設計されると思います。しかしペット型の新ロボットは、アイボからデータを移行することによって、飼い主との生活で生まれた性格・気質を引き継げるのではないでしょうか。つまり、アイボの「復活」ないしは「よみがえり」が可能になる・・・・・・。本物のペットでは絶対にありえないことです。そして人々は、ソニーがソフトバンクの Pepper に15年も先行していたことを思い出す・・・・・・。そういう風に予想するのですが、果たしてどういう製品になるのか、注視したいと思います。
ソニー・コンピュータ・サイエンス研究所の北野宏明社長が創設した "ロボカップ" ですが、2016年の世界大会はドイツのライプチヒで開催されました(2016.6.30 - 7.4)。ロボカップ国際委員会は「共通のハードウェアを使い、家庭内で求められる動きの巧拙を競うロボット競技」を2017年の大会から導入することを決めています。それに使う標準機を選ぶ審査が、2016年の世界大会で行われました。最終的に勝ち残ったのはソフトバングの Pepper とトヨタ自動車の家庭用ロボット HSR(Human Support Robot)です。もちろんソフトバンクもトヨタも、世界中のアプリ開発者を引き寄せて、自社のロボットが家庭用の標準機になることを狙っているわけです。ソニーがアイボから撤退してから10年の間にロボット業界のプレーヤーも様変わりしました。しかし平井社長がロボットビジネスの再開を表明したからには、ロボカップにも参加するのでしょう。
|
まさに日経新聞の中藤記者が言う「この10年を取り戻す取り組み」、つまりソニーの失われた10年を取り返すチャレンジが始まったということだと思います。
 補記1  |
ソニーは2017年11月1日、新型のロボット・aiboを発表しました。発売開始は2018年1月11日で、あくまで "1" にこだわったタイムスケジュールになっています(11月11日に発表する手もあったと思いますが)。
記者発表の内容をみると、2006年に生産終了した旧型 AIBO より格段に進化したようです。6軸ジャイロセンサー、人感センサーなどの各種センサー類の装備をはじめ、22軸のアクチュエータを備えて柔軟な動きができるボディになっている(22個のモータ内蔵と同等)。また飼い主とのコミュニケーションの能力やAIによる学習能力も進歩しました。もちろんスマホと連携でき、クラウドともつながります。
一方、10年のブランクを象徴することもあります。たとえば新しく搭載されたSLAM(Simultaneous Localization And Mapping。"スラム")の技術です。これは移動しながら撮影した画像を重ね合わせることによって環境の3次元マップを徐々に作っていくと同時に、その3次元マップを利用して自分の位置を特定するという技術です。この技術を家庭用機器に搭載したのは iRobot社のロボット掃除機・ルンバが最初で、確か2~3年前のことだったと思います。つまり、SLAMについては「人のやらないことをやる」というわけにはいかなかった。
とはいえ、注目に値する技術もあります。たとえば記者発表で「集合知」と称されていた機能です。つまり、飼い主との生活で学習した aibo のデータをクラウドに集約し、aibo 同士で "学び合う" という機能です。クラウド上に仮想的な aibo社会を作るわけで、これは人間の学習過程に近い。
この手の技術は産業用ロボットの学習に大いに役立つと考えられます。記者発表で「将来的には、製造・物流などB2Bに向けた事業展開も検討」とありましたが、このような技術を応用した事業展開ということでしょう。とにかく、aibo という名前が示している「AI+ロボティックス」が21世紀の大産業になることは間違いないわけで、ソニーは(再び)スタートラインに立ったということだと思います。今後の事業展開を注視したいと思います。
(2017.11.3)
 補記2  |
戌年の2018年1月11日に新型の aibo(犬型)が発売開始されました。この日の新聞に元ソニーの土井利忠氏に取材した記事が載っていたので紹介します。
|
この10年で何が起こったかと言うと、旧型アイボでロボカップに参加していたフランス人が本国でアルデバラン・ロボティックス社を設立し、それをソフトバンクが買収してペッパーを発売した、これが一番象徴的な出来事です(No.159「AIBOは最後のモルモットか」の「補記」参照)。
何回か書きましたが、21世紀の大産業を一つだけ挙げよと言われたなら「人工知能技術を搭載したロボット」でしょう。もちろんロボットとはヒト型だけでなく、自動運転車や自動飛行ドローン、介護用ロボット、産業用ロボット、建設・土木・農業用自動機械などを含みます。その「人工知能技術を搭載したロボット」の極めて先駆的な製品が先代のアイボだった。それを、先の見えない愚鈍なトップが殺してしまった。経営とは恐ろしいものだと思います。
朝日新聞の別の記事によると、新型アイボは2015年夏から有志が空き時間で試作機の開発を始めたようです。これをソニー用語で「机の下開発」と言うそうです。それから2年で発表、2年半で発売にこぎつけた。このソニーの潜在技術力は相当なものだと思います。記事でソニーの元アイボ担当幹部は「開発を続けていたら2年後(=2008年)には今のアイボと同じモノができた」と発言していますが、本当っぽく聞こえます。新型の aibo は10年遅れで世に出たというわけです。
新型アイボの部品点数は約4000点だそうです。デジカメの約2倍ですが、デジカメより圧倒的に可動部が多い。AI(人工知能)技術や個性をもって成長するところが注目されていますが、実は小さな胴体の中に多数の部品を詰め込んだ極めて複雑な機械なのです。課題はその量産技術と品質保証でしょう。「世界の誰もやったことのない技術開発」が今後必要だと推測します。そのチャレンジも生産拠点(岡崎市の幸田工場)で始まったようです。
(2018.1.12)
No.181 - アルファ碁の着手決定ロジック(2) [技術]
(前回から続く)
前回の No.180「アルファ碁の着手決定ロジック(1)」の続きです。以下に出てくる policy network、SL policy network、RL policy network、ロールアウト、UCB については前回の説明を参照ください。
モンテカルロ木検索(MCTS)の一般論
モンテカルロ木検索(Monte Carlo Tree Search : MCTS)は、現代のコンピュータ囲碁プログラムのほとんどで使われている手法です。以下にMCTSの最も基本的なアルゴリズムを書きますが、もちろんこのような話はディープマインド社の研究報告には書かれていません。MCTSは既知のものとしてあります。しかしアルファ碁の検索はMCTSに則っているので、このアルゴリズムが分かると、アルファ碁の検索手法も理解できます。
余談ですが、モンテカルロという言葉は数学において「確率的なアルゴリズム」である場合に使われます。たとえば「モンテカルロ法で円周率を計算する」としたら、円周率は半径 1 の円の面積なので、0 以上 1 以下の実数の乱数を2つ発生させ、そのペアを平面上の座標値として原点からの距離を計算する。そして、距離が 1 以下かどうかを判定する。この計算を大量にやって 1 以下の個数の割合を計算すると、その割合の 4 倍が円周率ということになります。 余談の余談ですが、こういった問題は中高校生にプログラミングを教えるのには最適ではないかと思います。現代のパソコンは、この計算を1000万回繰り返すなど、わけなくできます(家庭用パソコンで1~2秒)。もちろん、1000万回繰り返しても精度は悪く(せいぜい小数点以下4桁程度)実用にはなりませんが、コンピュータの威力を実感するには最適だと思います。 |
以下、候補手のことを、木検索の「ノード」と呼びます。最初に、現在の盤面(白が打った直後の黒の手番とします)から黒の候補手のノードを展開します(下図)。これらノードに対して、UCB値が最大のノードを「木検索」でたどり、末端ノードに達したときロールアウトをします。その勝敗結果を、当該ノードから木検索を逆にたどって反映させます(=逆伝播)。UCB値は、逆伝播の結果で関係するものが再計算されます。
あるノードのロールアウト回数が閾値以上になったとき(下図では10回)、そのノード(下図ではNode-A)を「展開」し、次の候補手のノードを作ります。「展開」を行う閾値の設定によって、限られた時間でどこまで深く読むかが決まってきます。「展開」のあと、改めて最上位のノードから始まって最大UCBのノードをたどって末端ノードに到達します(下図ではNode-F)。そこでロールアウトを行い、結果を逆伝播させます。そしてUCB値を再計算します。UCBの計算式は、木が増殖していくことを考慮して、次のように再定義します。
候補手i のUCB | |||
候補手i 以下のノードのロールアウト数 | |||
候補手i 以下のノードのロールアウトによる勝ち数。候補手の色に依存。 | |||
候補手i の親ノードのNi | |||
定数(探検定数 と呼ばれることがある) |
白の候補手である Node-F からロールアウトを行って "白勝ち" の結果が出たので、木を逆にたどってその結果を反映させる(=逆伝播。赤矢印)。そして「逆伝播で修正した Node を親に持つ Node」の UCB を再計算する(黒矢印)。その結果、黒の候補手としては Node-A より Node-C の UCB が大きくなる。Node-A が有力そうだったが、その次の白番 Node-F で白の勝利数が増えたため Node-A の有力度合いが減った。 この時点で黒の候補手の勝率は明らかに Node-A が最大であるが、それだけにこだわっていたのでは隠れた好手を見逃す危険性がある。Root から UCB の最大値をたどって木検索をすると(青矢印)、次のロールアウトの対象は Node-C になる。つまり、まだロールアウトの回数が少ない Node-C もロールアウトすべきという判断になる。 UCB は Upper Confidence Bound(=信頼上限)で、手の有力度合いの上限値である。「教師なし機械学習」の理論で使われるもので、それをコンピュータ囲碁の木検索に応用した。ロールアウトに加えて UCB のアルゴリズムを採用することでコンピュータ囲碁は飛躍的に強くなった。その次の飛躍がディープマインド社による「深層学習+強化学習」の適用ということになる。 |
この図は黒白とも候補手が3つしかない単純化された状況です。従って閾値(=10)以上のロールアウト回数になった Node-A を展開するとき、次の白の3つの候補手はいずれも "ロールアウト経験済" で、そのデータを生かしたものとしました。しかし一般的には展開の段階で "ロールアウト未経験" の候補手が現れるわけで、そのような候補手は Ni がゼロであり、Node-Aの次の一手としては真っ先にロールアウトされることになります。
上の図で Node-F の次にロールアウトされるのは Node-C ということになります。上図のように少ないロールアウト総回数では、候補手のロールアウト回数が少ないことが有利になるからです。図で言うと、Node-A が有力そうで「開拓」してみたが、ひょっとしたら Node-C が宝の山かも知れないから「探検」しようというわけです。
このような「木検索」「ロールアウト」「逆伝播」「UCB再計算」「展開」を許容時間まで繰り返します。そして最終的に次の一手として、ロールアウト回数が最も多い手を選びます。勝率最大の手は "ロールアウト回数少ないから勝率が高い" かもしれないからです。これがモンテカルロ木検索(MCTS)です。
なお、以上に述べたUCBの計算式はあくまでコンピュータ囲碁に導入された当初のもので、最新のコンピュータ囲碁プログラムは独自の計算式を使っているようです。後で説明するようにアルファ碁も独自の式です。しかし「開拓項」と「探検項」を組み合わせ、バランスよく、かつ無駄を避けつつ有効な手を探索することは同じです。
現代のコンピュータ囲碁プログラムは MCTS をベースとし独自に改良を加えていますが、MCTSには大きな弱点があります。それは、
黒と白の "必然の応酬" が長く続き、結果は "ほどほど" のワカレになるか、仕掛けた方が少しの利得を得る。ただし必然の応酬を間違えると、間違えた方が多大な損失を被る |
というようなケースに弱いことです。MCTSはあくまで確率的に最善手に近づこうとするものです。最善手が明白に1つしかない状況が連続すると、MCTSは間違える率が高くなる。囲碁で言うと、死活の問題とか攻め合いとかコウ争いです。このあたりをどうカバーするかは、コンピュータ囲碁プログラムのノウハウです。
このMCTSの弱点について思い出すシーンがあります。No.174「ディープマインド」で書いたように、アルファ碁とイ・セドル九段の対戦の第4局は、アルファ碁の唯一の敗戦となりました。イ・セドル九段が放った白78(No.174参照)のあと、アルファ碁は「素人でもわかる損な手」を連発し、一挙に敗勢になってしまったのです。それまで世界最高クラスのプロ棋士と(少なくとも)互角に渡り合ってきたアルファ碁が、急に "狂った" か "暴走した" ように見えた。このあたりについてディープマインド社のデミス・ハサビスCEOは、あるインタビューで「モンテカルロ木検索の弱点が露呈した」という意味の発言をしていました。この発言の真意を推測すると、
イ・セドル九段の "白78" という手に対する正しい応手がいくつかの必然手の連続であるため、アルファ碁はそれを最後まで読み切れずに、敗勢になったと判断した |
のだと考えられます。従ってアルファ碁(黒番)は、全く別の「白が誤れば黒が得だが、白に正しく応じられれば黒が損をする手」を打った。これが悪手を連発することになった理由と考えられます。アルファ碁の手に対する白の正しい応手はアマチュアでも分かったので、いわば "ハッタリ" の手です。
しかしよくよく考えてみるとプロ棋士同士の戦いで、敗勢の時に「成功確率は低いが、成功すると大きな得になって優劣不明に持ち込める手」を打つことがあります。たとえば、相手の勢力範囲の中に深く打ち込んで活きようとするような手です。「さあ殺してください。殺せますか?」と開き直るような手です。そして、たとえプロ棋士と言えども応手を誤れば打ち込んだ石が活きてしまって形勢不明になったりする。こういう手を "勝負手" と言ったりします。
残念ながらアルファ碁は "ハッタリ" と "勝負手" の区別ができなかったようです。それは常に確率的な判断で勝敗を予測している現状のアルファ碁では致し方ないと思います。それより本質は「モンテカルロ木検索の弱点」です。これを解消するような手段を、ディープマインド社は今後繰り出してくるでしょう。そして弱点を解消した上でさらに、敗勢と判断したときの "ハッタリ" を防止する手も打ってくるのではないでしょうか。ディープマインド社には、デミス・ハサビスCEOをはじめ Go Player が多いようです。Go Player にとって許せないのは、勝負に負けることよりも素人にもわかる "ハッタリ" を打つ(="きたない" 棋譜を残してしまう)ことだろうから・・・・・・。それは対戦相手であるプロ棋士に対しても失礼です。
アルファ碁は以上のモンテカルロ木検索(MCTS)をロジックの根幹にしていますが、加えて value network というニューラルネットワークを構成し、それを勝率の判断に使っています。その説明が以下です。
value network
アルファ碁の基本的な考えかたは、
RL policy network によるロールアウトでモンテカルロ木検索を行う |
というものです。SL policy network は囲碁熟練者の着手を 57% の精度で予測でき、RL policy network は SL より強いので(前回の No.180 参照)、これができると最強のモンテカルロ木検索になりそうです。
しかし、このままではうまくいきません。それは処理時間の問題です。policy network の計算には3ミリ秒かかります。終局までロールアウトする手数を平均100手とすると、ロールアウトに最少でも300ミリ秒 = 0.3秒必要です(その他、木検索の時間が必要)。前回の No.180 で述べた値を採用して1手に費やせる "思考" 時間を72秒とすると、この時間で可能なロールアウトは240回ですが、この程度の回数では話になりません。少なくとも10万回といった、そういう回数が必要です。
そこで登場するのが value network です。value とは価値という意味ですが、ここでは盤面の(次の打ち手にとっての)価値、という意味であり、盤面の優劣というのがシンプルな言い方です。この優劣は「勝率」で表現します。つまり、
value network とは、"RL policy network を使ったロールアウト" による勝率判定を近似するニューラルネットワーク |
です。つまり「ロールアウトを代行する」ニューラルネットワークであり、この発想がユニークというか、その作り方を含めて、ディープマインド社の独自性を感じるところです。value network の計算時間は policy network と同じ3ミリ秒です。従って、近似の精度が高いという前提で、候補手から RL policy network によるロールアウトを例えば100回繰り返すより、value network は1万倍高速に計算できることになります(ロールアウトにおける終局までの手数を100とした場合。100×100で10,000)。
value network の構造は policy network とほぼ同じです。入力層と隠れ層1~13は、policy network の入力層と隠れ層1~12、および出力層とほぼ同じ構造をしています。ただし入力層には49番目のプレーンが追加されていて、それは石の色です。つまり黒番か白番かを勝率判定に使います。隠れ層14は256×1であり、出力層は1×1です。出力層は -1.0 ~ +1.0 の1個の実数値であり、入力層の勝率を表します(ゼロが互角)。
value network の訓練に使われたデータは、KGS Serverからダウンロードした約3000万の盤面データではなく、SL policy network で作り出された盤面(state)です。value network の場合、KGSのデータを訓練データとすると "過学習" になってしまったからです。つまり、訓練データでは非常に成績がいいが、訓練データ以外となると成績が悪くなる。同じ教材に学び過ぎて応用問題が解けないわけです。その理由ですが、3000万の盤面は約16万局のデータであり、同じ対戦の盤面データ同士には強い相関関係があるからです。しかも、同一対戦の勝ち負けはどちらかに固定される。相関関係のない盤面データは、16万局のデータからは16万しか取り出せません。しかし訓練すべきパラメータ(重み)の総数は388万もあります(前回参照。policy networkの値。value networkはもう少し多い)。16万という数では学習になりません。
そこで、1つの訓練データを作るために、まず1~450までの数からランダムに U を選びます。そしてSL policy network で第1手から第(U-1)手目までを打ち、第U手目は合法手をランダムに打ちます(!!)。その結果の盤面(state)を訓練用のデータとします。このデータを RL policy network でロールアウトを繰り返し、勝率を求めます。このstateと勝率の組が訓練データの一つとなります。これを合計3000万組作成し、それを教師として学習させたのが、value network です。この訓練データの作り方は非常にユニークであり、なぜそうするのかという理由は書いていないのですが(450 ??)、ディープマインド社の試行錯誤の積み重ねによるノウハウの蓄積を感じるところです。
ディープマインド社の研究報告には「value network を使った勝率推定は、RL policy network でロールアウトして勝敗を判定するより 15,000倍 速い」と書かれています(上で1万倍速い、と推定した値)。
ここまでの説明におけるニューラルネットワークについて復習すると、以下のようになります。このネットワークは隠れ層が多段階になっているディープ・ニューラルネットワーク(Deep Neural Network)なので、DNNと表記します。
policy network = 熟練者が打ちそうな手を予測
value network = 現在の盤面の優劣を判定
|
アルファ碁は囲碁プログラムに深層学習の技術を持ち込んだのですが、そのDNNは以上のように2段階になっています。この2つのDNN(policy networkを2つに分けると合計3つのDNN)を使い分けるのがアルファ碁です。
これらのDNNのうち、policy network は "自然な発想" に思えます。熟練者の打った手を機械学習し、さらには自己対戦で強化学習もやって「次に打つ手を決めるDNN」を作る。AIと囲碁に詳しい人なら容易に思い浮かぶ発想だと思います。もちろんディープマインド社独自の工夫やノウハウが詰め込まれているのですが、基本のアイデアそのものは自然です。
これに対して value network は、ちょっと思いつかない発想です。policy network とロールアウトを使って「盤面の勝率を計算するDNN」を作れるはずだ・・・・・・。このアイデアを発想し、かつ実用になるまで磨き込んだのがディープマインド社の大きなブレークスルーだと思います。
ただし、アルファ碁はこれらの DNN だけでなく従来手法のロールアウトも併用しています。それが以下の説明です。
rollout policy
value network は、まさにコンピュータ将棋でいう「評価関数」に相当します(コンピュータ将棋の評価関数については No.174「ディープマインド」参照)。囲碁で評価関数を作るのは困難と言われていたのですが、ディープマインド社はそれを覆したわけです。従って、木検索と value network を使ってコンピュータ囲碁プログラムが作れるはずですが、少々意外なことにアルファ碁はそうはなっていません。従来手法のロールアウトも併用しています。これはもちろん RL policy network を使うのではありません。それでは遅すぎます。ロールアウト専用の「ロールアウト・ポリシー」を使います。
アルファ碁のロールアウト・ポリシー(rollout policy。研究報告では fast rollout policy と書いてある)は次のようなものです。まず、自分が打つ手を、直前に相手が打った手(直前手)に応答する手と、そうではない手に大別します。そして手を以下のように詳細分類します。
① | アタリから逃げる手。1種。 | ||
② | 直前手の周り8箇所のどこかに打つ手。8種。 | ||
③ | ナカデを打つ手。8,192種。このパターンは手作り。 | ||
④ | 応答手 = 直前手の周辺12箇所に打つ手。12箇所とは、直前手の周辺8箇所プラス、直前手から上下左右に2つ離れた4箇所。12箇所の石の配置パターンと呼吸点の数で分類し、合計 32,207種。 | ||
⑤ | 非応答手 = 直前手には応答しない手。打つ手の周辺の3 X 3 領域を石の配置パターンと呼吸点の数で分類して、合計 69,338種。 |
つまり碁の着手を合計、109,746種に分類し、実際の対局でどの手が多く打たれたか回帰分析の手法で分析し、ロールアウト・ポリシーの計算式を求めます。もちろんロールアウト・ポリシーは高速演算が必須条件なので、ニューラルネットワークは使わず、通常の線形演算(マトリクス演算)で可能な回帰式です。
この回帰式を求めるのに使われた訓練データは(少々意外なことにKGS Go Serverではなく)Tygem の800万の盤面データです。「タイゼム(Tygem)」は韓国の東洋オンライン社が運営する有料の囲碁対局サイトで(無料もある)、日本では「東洋囲碁」です。利用者は東アジア(韓国、日本、中国)が中心です。
以上のように、ロールアウト・ポリシーは熟練者の実際の手を予測するもので、その意味では policy network と同じです。しかし予測の精度が違います。前に SL policy network の予測精度は 57.0% と書きましたが、ロールアウト・ポリシーの予測精度は 24.2% です。SL policy network よりかなり低いわけですが、これはもちろんロールアウトに使う目的だから「ランダムなロールアウトよりは格段にマシ」なわけです。しかも計算時間が policy network より圧倒的に速い。
ロールアウト・ポリシーの計算時間は 2マイクロ秒です。ということは、3ミリ秒の RL policy network より1500倍高速ということになります。研究報告には ロールアウト・ポリシーによるロールアウト(初手から始める)を1秒間に約1000回できるとあります。アルファ碁のメイン・コンピュータは 40 多重で計算可能です。つまり、1秒間に(少なくとも)4万回のロールアウトが可能ということになります。1回の平均思考時間を72秒と仮定すると、約300万回のロールアウトが可能なことになり、これは十分な数です。ちなみに多重処理について言うと、policy network / value network はサブのコンピュータで1個づつ(多重処理なしに)計算されます。1回の計算そのものが多重処理されるからです。
アルファ碁のモンテカルロ木検索(MCTS)
アルファ碁のMCTSのアルゴリズムは、上に述べた基本のMCTSと考え方は同じです。つまりUCB値の最大値をたどって木検索を行い、ロールアウト・ポリシーでロールアウトを行います。ただし次の点が基本のMCTSと違っています。
① | 候補手の勝率の判定に、ロールアウトによる勝率だけでなく、value network による勝率を加味する。 | ||
② | アルファ碁独自のUCB値の計算式を使う。ここに policy network による確率(囲碁熟練者がそこに打つ確率の推定値)を使う。 |
の2点です。まず①ですが、アルファ碁は検索が木の末端に到達するとまず、value network の計算を行います。実際にはニューラルネットワークの計算は、検索やロールアウトを行うメイン・コンピュータとは別のサブ・コンピュータで行っており、そこに計算の依頼だけを出します。木の末端が既に value network の計算依頼を出している場合(ないしは計算済の場合)はロールアウト・ポリシーによるロールアウトになりますが、value network の計算は3ミリ秒かかり、ロールアウト・ポリシーによるロールアウトの計算は最大でも1ミリ秒(1秒間に1000回)なので、この2つは一般的には平行して行われることになります。もちろん value network の計算は一つのノードにつき1回だけです。なお、ロールアウトの1ミリ秒というのは報告に書いてある最大値(初手からのロールアウト)なので、実際にはその数分の1だと考えられます。
同一の末端ノードを訪れる回数が閾値を越えるとノードを展開するのは、基本のMCTSと同じです。その閾値はpolicy network / value network の計算のための "待ち行列" の長さによって動的に変更します。早めに展開し過ぎてニューラルネットワークの計算が間に合わないのでは意味が無いからです。
ノードを展開するとき(=次の候補手をリストアップするとき)には、policy network を使って、その候補手の確率(=囲碁の熟練者がその候補手を打つ確率の推定)を計算してノードに記憶しておきます。この値はそのノードの UCB の計算に重要な役割を果たします。
ただし、話がややこしいのですが、policy network の計算を依頼してから終わるまでの間、別の暫定値で policy network の値の代用とするというロジックが研究報告に書かれています。これが ツリー・ポリシー(tree policy)と呼ばれるもので、このポリシーの作り方はロールアウト・ポリシーとほぼ同じです。ただし、打ち手の分類がロールアウト・ポリシーよりも詳しい(分類数が約1.5倍)。つまりロールアウト・ポリシーよりは計算時間がかかるが、熟練者が打つ手の予測はロールアウト・ポリシーよりは正確ということだと思います。このツリー・ポリシーの計算時間は研究報告には書いていないのですが、たとえば 3マイクロ秒だとすると policy network(計算時間=3ミリ秒)より1000倍速いことになります。正確さに欠けたとしても policy network の計算終了を待ってられない。暫定値でもよいからモンテカルロ木検索をどんどん進めた方がいい・・・・・・。このあたり、コンピュータ囲碁にニューラルネットワークを持ち込むということは、ニューラルネットワークの計算の遅さをいかにカバーするかが非常に大切なことがわかります。 とは言え、ここで感じる疑問は、ロールアウト・ポリシーとツリー・ポリシーという "似て非なるもの" がなぜあるのかです。ロールアウト・ポリシーをやめてツリー・ポリシーでロールアウトしてもよいはずです。論文を読む限りそれは十分可能で、一見、その方がよさそうな気がします。なぜ二つあるのか。推測なのですが、問題は処理時間ではと思います。ツリー・ポリシーの計算時間が3マイクロ秒だとするとロールアウト・ポリシー(計算時間=2マイクロ秒)の1.5倍であり、ということはツリー・ポリシーでロールアウトすると一定時間でロールアウトできる回数が3分の2になってしまいます。ツリー・ポリシーだとロールアウトの回数が稼げず、かえって弱くなってしまう・・・・・・。そういうことかと想像しました。逆に言うとロールアウト・ポリシーは "手を読む精度" と "計算時間" という二つのトレードオフのぎりぎりのところを狙って設計されているのではと感じました。想像ですが、最初にツリー・ポリシーが設計されてロールアウトにも使っていたが、よりロールアウト回数を稼ぐために簡略化した(従って速い)ロールアウト・ポリシーが作られたのではないでしょうか。ロールアウト・ポリシーを研究報告では fast rollout policy としてあるのは、そういう意味かと思いました。 |
②のアルファ碁独自のUCB値の計算式(UCBAlphaGo とします)は、次のような形をしています。次式は研究報告にある式を、本質を変えない範囲で簡略化しました。また記号を少し変えてあります。
上の式における Q(-1.0~1.0) は、研究報告で action value と書かれているもので、その時点までに判明している候補手の勝率を表します。つまり、勝率の高い項ほど「開拓」するようになります。なお、候補手の最大の Q が -0.8 以下になったとき(通常の意味での勝率が 10% を切ったとき)、アルファ碁は投了します。
λはアルファ碁のチューニングのためのパラメータで、0.0~1.0 の数字です。要するに value network の勝率推定とロールアウトによる勝率推定のどちらを重視するかです。研究報告では、この値を実戦では 0.5 にしたとあります。つまり、2つの勝率推定の平均値をとるということです。その理由は、各種のコンピュータ囲碁プログラムと対戦してみて、それが一番強かったからです。このあたり、いろいろと試行錯誤があったようです。
u(P)は「探検」に相当する項です。これは基本のMCTSの UCB の第2項と似ていて、考え方は同じです。ただし、大きな違いは P の存在です。これは、そのノードを生成したときに計算しておいた、policy network による候補手の確率値です(但し、先ほど書いたように、この値の計算が終わるまでは tree policy で代用します)。つまり熟練者が打ちそうな手ほど重視するということであり、これは非常に納得できます。
しかし全く意外なのは、この値が RL policy network ではなく SL policy network だということです。つまり、最強のはずの RL policy network は、対戦には全く使われていません。RL policy network は value network を作るために(対戦前に)使われるだけなのです。前に RL はコンピュータ囲碁プログラム(Pachi)と対戦して 85% の勝率だったが、SL は 11% の勝率だった、と書かれていました(前回の No.180 参照)。そんなに強い RL をなぜ使わないのか・・・・・・。これについて研究報告では次のように書かれています。
|
世界トップクラスの学術雑誌に載せる研究報告にしては、曖昧で意味が取りにくい文章です( beam ? )。さらに研究報告の次の文章では、SL policy network を使って作った value network でプレーしてみたが、それは RL policy network で作られた value network(対戦に使われたもの)より成績が悪かった、と書いてあります。
推測するに、RL policy network の出す確率は最良の手にピンポイントで集中する傾向にある。それに対して SL policy network の出す確率は「良さそうな手」に分散する傾向がある。これは人間の思考に近く、候補手を広く探索する目的で使うにはその方がよい。value network を作るときのロールアウトのように、policy network の出す確率だけに従って手を打つのなら、RL policy network がの方がよい、ということだと思います。
そう推察できるものの、何となく納得できない説明です。RL policy network は SL policy network より明らかに強い。つまり、最善手や次善手を指し示す確率が高いわけです。だとすると、UCBAlphaGo という MCTS の探索方向を決める超重要な値には RL policy network の値を採用してしかるべきです。上の引用の説明はそれだけ読むと「そうかも知れない」と思ってしまうのですが、論文全体としては矛盾しています。
引用に「たぶん(presumably)」と書いてあるように、ディープマインド社も UCBAlphaGo に SL policy network の値を採用した方が強くなることの明確な理由を説明できないのだろうと思います。このあたりディープマインド社もいろいろと試行錯誤し、対局を繰り返して現在のアルファ碁に到達したことがわかります。
以上は、UCBAlphaGo の u(P) の部分(探検項)についての議論ですが、やはりアルファ碁の着手決定ロジックの根幹は Q(action value)という勝率判定に関わる部分です。ここでは「rollout policy を使ったロールアウトによる勝率判定」と「value network による勝率判定」をミックスさせています。
rollout policy と value network にはそれぞれメリット・デメリットがあります。rollout policy のデメリットは、この policy がアマ高段の手を 24.2% の確率でしか予測できないことです。つまり「弱い打ち手」が最後まで打ってみて(=ヨセてみて)勝率を判定していることになる。これは勝率判定の誤差が大きくなると考えられます。しかし「現状の盤面そのものからロールアウトする」というメリットがある。
一方の value network は RL policy network という「極めて強い打ち手」を使って作られた勝率の予測システムです。最後まヨセてみたらどうなるかを正確に予測できるはずです。ただし、あくまでDNNを使った近似であって「現状の盤面から RL policy network を使ってロールアウトするのではない」ことがデメリットです。
この2つが相補って精度の高い勝率判定ができたことが、アルファ碁の成功原因だと考えられます。
研究報告では、その他、細かい検索のアルゴリズムやニューラルネットワークの学習の手法が多々書いてあるのですが、本質的なところは上の説明に尽きていると思うので省略します。
もう一度念を押しますが、研究報告に書かれているのは、韓国のイ・セドル 九段と戦う数ヶ月前の状況です。研究報告にあるグラフから読みとれるのは、その当時のアルファ碁の強さは KGS のレーティングで 5p(プロ五段)相当ということです。これとイ・セドル 九段は、相当な開きがあります。その後の数ヶ月の間、ディープマインド社は数々の強化をしたはずです。ロジックの見直しやチューニングはもちろんのこと、ロールアウト時間の短縮やニューラルネットワークの演算高速化もあったのではないでしょうか。計算性能は「読める手の数」に直結するので大変に重要です。以上のようなことを頭に置いておくべきでしょう。
以降は、ディープマインド社の研究報告を読んだ感想です。
感想:アルファ碁とは何か
No.174「ディープマインド」で書いたように、アルファ碁は AI研究の画期的な成果であり、それどころか、コンピュータの発展の歴史の転換点ともいえるものだと思います。その考えは変わらないのですが、研究報告を読むといろいろなことが見えてきます。
 囲碁の常識が盛り込まれている  |
個人的な一番の関心事は、アルファ碁がどこまで汎用的であり、どこまで囲碁ディペンドなのかという点でした。No.174「ディープマインド」で「Nature ダイジェスト 2016年3月号」より、次の説明を引用しました。
|
しかし研究報告を実際に読んでみると「汎用アルゴリズム」という言い方の印象がかなり変わりました。確かに policy network や value network に機械学習をさせたり強化学習をすのは汎用のアルゴリズムですが、アルファ碁全体をみるとそうとは言えない。もちろんゲームである以上、ゲームのルールや勝敗の決め方を教え込むのは必須です。しかし、それ以外に「囲碁の常識」がかなり含まれています。たとえば policy network / value network の入力層における「ダメヅマリ」を判別できるプレーンとか、シチョウに取る手、シチョウから逃れる手などです。また、rollout policy におけるナカデのパターン(8192種)です。この程度の常識は教え込まないと、とても強いプログラムは作れないのでしょう。
逆の観点からすると、現代のコンピュータ囲碁プログラムの強豪に比べるとアルファ碁は "囲碁の常識の入れ具合い" が少なく、それでもヨーロッパ・チャンピオン(プロ)に勝ったというところに価値があるのかもしれません。
そもそも policy network / value network の出発点は、アマチュア高段者が実際に対局した 2840万の盤面データであり、それは大袈裟に言うと囲碁2000年の歴史の結晶です。アルファ碁はそこから出発しています。囲碁を打つ際の人間の英知がなければ、アルファ碁はなり立たなかったわけで、そこは再認識しておくべきだと思います。
そして、このことがアルファ碁の "限界" にもなりうると思いました。典型的なのは(アルファ碁独自の)UCBの計算式に policy network を取り入れていることです(上の説明参照)。これはどういうことかと言うと「人間の熟練者が打ちそうな手ほど優先して深く読む」ということです。これはいかにもまっとうに見えるし、プロ棋士と戦って勝つためにはこれが最善なのかも知れません。しかし我々がコンピュータ囲碁プログラムに真に期待するのは、囲碁の熟練者が思いもつかない手、囲碁の歴史で培われてきた "常識" ではありえないような手、そういう手の中で「最善とは断言できないが、十分に成立する手」をコンピュータ囲碁プログラムが打つことなのです。それでこそコンピュータの意義だし、囲碁がいかに奥深いものかを再認識できることになるでしょう。人間のマネをし、人間より遙かに高速に、遙かに深く読める(しかも心理的な動揺や疲れなどが全くない)ことだけに頼って勝つというのでは、"おもしろくない" わけです。
このあたり、アルファ碁にはまだ幾多の改良の余地があると見えました。
 アマチュア高段者の打ち手を学習  |
アルファ碁の「畳み込みニューラルネットワーク」の訓練(=機械学習)に使われたデータがプロの棋譜ではなく、KGS Go Server で無料のオンライン囲碁対局を楽しんでいるアマチュア高段者(6d~9d)の棋譜(約16万)というのは意外でした。アルファ碁はプロ棋士に勝つ目的で開発されたものであり、2015年10月に樊麾(ファン・フイ)2段に5戦5勝の成績をあげました。樊麾2段はフランス在住ですが、中国棋院の2段です。アマチュア高段者が中国棋院のプロ2段に勝つことはありえません。つまりアルファ碁の機械学習はあくまで出発点であって、その後の強化学習(RL policy network)や value network、rollout policy に強さの秘密があると考えられます。
しかし、どうせなら初めからプロの棋譜を機械学習すればいいのでは、と思うわけです。なぜアマチュアの棋譜なのか。16万局程度のプロの棋譜が入手できなかったとも考えられますが、ふと思い当たることがあります。No.174「ディープマインド」で紹介した、日本のプロ棋士の方がアルファ碁の "戦いぶり"(対、イ・セドル 九段)を評して語った言葉です。
「 | いままでの感覚とはかけ離れたものがあった。弟子が打ったら、しかり飛ばすような」(王 銘琬 九段) | ||
「 | 空間や中央の感覚が人間と違う。懐が深い」(井山 裕太名人) |
この二人のプロ棋士が言う「感覚」とは、当然「プロの感覚」ということでしょう。アルファ碁は、無料のオンライン囲碁対局を楽しむアマチュア高段者の棋譜で訓練された。だからこそ「プロの感覚」とは違うものになったのではと、ふと思ったのです。そういう要素もあるのではないか。
しかも集められた約16万の棋譜の35.4%は置き碁の棋譜なのです。ディープマインド社の研究報告にそう書いてあります。アルファ碁は、プロの世界トップクラスと互先で(ハンディキャップなしに)戦って勝つという "野望" のもとに開発されたものです。訓練用のデータから置き碁の棋譜を除外することなど簡単にできるはずなのに、あえて置き碁を入れてある。置き碁の白(上手)は少々無理筋の手も打って、棋力の差で勝とうとするものです。普通の手ばかり打っていては、上手はハンディキャップ戦に勝てません。そういう手もアルファ碁の訓練データの中にあることになります。さらに言うと、rollout policy を作るために policy networkの訓練に使った KGS とは別の有料囲碁サイトの対局データを使っている。
ニューラルネットワークの訓練データの選び方については、ディープマインド社の緻密な戦略があるのではないかと思いました。あくまで想像ですが・・・・・・。
 AI研究とは試行錯誤  |
ディープマインド社の研究報告を読むと、AI研究というのは「試行錯誤の積み重ね」が非常に重要だと思いました。たとえば policy network を構成する「畳み込みニューラルネットワーク」ですが、なぜ隠れ層が12なのか、入力層が48プレーンなのはなぜなのか、説明はありません。おそらく数々の試行錯誤の上に、このようなアーキテクチャに落ち着いたのだと思います。
value network について言うと、訓練データの作り方が独特だということは上の説明だけでもよく分かります。1手だけ SL policy network を使わずに、あえて「合法手をランダムに打つ」のはなぜでしょうか。画像認識などのAI研究において、訓練データにランダムな "ノイズ" を加えることがあります。そうした方が入力データの少々の誤りやデータ間の偶然の一致に対しても判定がブレない "強い" ニューラルネットワークを構成できるからです。合法手をランダムに打つのはそれを連想させますが、囲碁の勝率判定をする value network の場合にはどのような具体的効果があるのでしょうか。数手の合法手をランダムに打ったらどうなるのか、なぜ1手なのか。これもいろいろと試した結果のように思えます。
盤面の優劣判定に value network とロールアウトを併用し、しかもλというチューニング・パラメタをいろいろと "振ってみた" のも試行錯誤です。おそらくディープマインド社は、value network だけの優劣判定で最強の囲碁プログラムを作りたかったのではないでしょうか。それでこそ、ニューラルネットワークの技術に長けたディープマインドです。それが出来たなら、研究報告のタイトルどおり「ディープ・ニューラルネットワークと木検索で囲碁を習得」したと言える。しかし想像ですが、そのような value network を開発できなかったのではと思います。他のコンピュータ囲碁プログラムで一般的なロールアウトを併用せざるを得なかった。従って「ディープ・ニューラルネットワークとモンテカルロ木検索で囲碁を習得」が、より正確です。ロールアウトを使ったということは、確率的アルゴリズムには違いないのだから。
実際の対局に "最強の" RL policy network を使わなかったのも、コンピュータ囲碁プログラムとの実戦を重ねて行きついた結論でしょう。実戦に使える RL policy network を開発しようとしたが、それが出来なかったとも考えられます。
もちろんAI研究だけでなく、科学の研究には試行錯誤がつきものです。特に生命科学や物理・工学系の学問ではそうです。このブログでいうと、No.39「リチウムイオン電池とノーベル賞」で書いたリチウムイオン電池の開発物語はまさにそうでした。しかし「囲碁をAIでプレーする」というのは、純粋に論理の世界です。そこに未知の生命現象とか、解明されていない物理現象とか、そういうものは一切からまない。それにもかかわらず試行錯誤の世界だとみえる。しかもその試行錯誤は、まだ途中段階のようです。そのあたりが印象的でした。
逆の見方から言うと、こういった試行錯誤を、発散しないように、常に正解につながりそうな道にガイドした研究リーダ(ディープマインドのデミス・ハサビスCEO)の存在は大きいと感じました。
 コンピュータ技術を結集  |
アルファ碁が、決して突然新しいものが生まれたのではないこともよく理解できました。それはコンピュータ囲碁の歴史を調べてみると分かります。基本となっているアルゴリズムは、まずロールアウト(プレイアウトと呼ばれることが多い)です。これは1993年にアメリカのブリューグマンが発表した論文が発端です。「次の手以降をランダムなプレイで最後まで打って勝敗を判定し、次の手の有効性を判断する」という、この驚くような発想が、現代のコンピュータ囲碁の原点となりました。次にモンテカルロ木検索(MCTS)ですが、これは2006年のフランスのクローンの論文が最初です。ここにおいて、ロールアウトと木検索をどういう風に組み合わせるかという、アルゴリズムの基本が確立しました。どの手をロールアウトするかの判断にUCB(Upper Confidence Bound)を使ったのもクローンです。
ディープマインドがやったのは、そこに深層強化学習を持ち込むことでした。まず機械学習によってアマ高段者が打ちそうな手を精度よく予測できるニューラル・ネットワークを作り(= policy network)、それとロールアウトを使って盤面の優劣を計算できる別のニューラル・ネットワークを作った(= value network)。ディープマインドの深層強化学習は確かに大きなブレークスルーですが、アルファ碁の全体の枠組みは、先人の発想した技術(ロールアウトとMCTS)にのっとっていることがよく分かります。
さらに付け加えると、アルファ碁の数々のチューニングや試行錯誤とその検証は、世に出ているコンピュータ囲碁プログラムとの対戦で行なわれています。アマチュア有段者並みに強いコンピュータ囲碁プログラムがあったからこそ、アルファ碁は開発できた。人間相手に検証するのではとても開発できなかったでしょう。人間相手に戦うのは最後の最後です。
もっと言うと、No.180「アルファ碁の着手決定ロジック(1)」に書いたように、RL policy networkの開発ではオープンソースのコンピュータ囲碁プログラム・Pachiとアルファ碁を対戦させて、RL のチューニングや検証がされました。"オープンソース" がキーワードです。つまりソースコードが公開されているので、Pachiをディープマインド社のコンピュータの中に取り込み、一部を修正して、アルファ碁と自動対戦を繰り返すようなことができるわけです。こういったあたりもアルファ碁の開発に役だったと考えられます。
「畳み込みニューラルネットワークによる深層学習」は、画像認識の分野で発達してきたものです。画像認識は手書き文字の認識にはじまって、自動運転にも応用されようとしています。要するに「人間の眼と、それに関係した脳の働きを模擬する技術」です。現代のAI研究で最もホットな分野と言っていいでしょう。
コンピュータのハードウェア技術も見逃せません。研究報告によると「分散型のアルファ碁」は、複数のコンピュータの複合体の超並列処理で実行され、そCPUの数は合計1202、GPUの数は176とあります。CPU(Central Processing Unit)は通常のパソコンなどの演算LSIであり、ここで全体の制御と、ロールアウトを含むモンテカルロ木検索が実行されます。
GPU(Graphics Processing Unit)はニューラルネットワークの演算を行う部分です。ここでなぜ "Graphics" が登場するのかと言うと、GPUはコンピュータで3次元の図形画像をリアルタイムに(たとえばマウスの動きに追従して)回転させたりするときに働く演算ユニットだからです。3次元図形は、コンピュータ内部では微小な表面3角形の集合として定義されています。その数は数10万とか数100万になることも多い。その微小3角形の内部を、視線の向き、光の方向、3角形の位置から計算したグラディエーションで塗る。これを全部の3角形に行うことで、いかにもなめらかに陰影がついた3次元画像が表示されるわけです。このすべての処理を1秒間に10回以上繰り返します(でないと、なめらかに動かない)。そのためのユニットがGPUです。
つまりGPUは、比較的単純な処理を、同時平行的に、大量に、超高速に行うために開発された画像処理用LSIです。それをニューラルネットワークの計算に応用した。特に、画像認識に使われる「畳み込みニューラルネットワーク」は GPU との相性がよい。この応用は何もディープマインドだけではないのですが、もしGPUの技術がなければ「コンピュータ囲碁プログラムにニューラルネットワークを持ち込む」のは "絵に書いた餅" に終わったに違いありません。コンピュータ・ゲームやコンピュータ・グラフィックスの世界で長年培われてきた技術によってアルファ碁が成立したことは確かです。
逆の視点から言うと、このようにコンピュータ技術を結集しているということは、アルファ碁の経験から新たなコンピュータ技術が生まれてもいいわけです。たとえば上に書いたGPUですが、GPUがあったからこそアルファ碁が "絵に書いた餅" ではなくなったことは確かでしょう。しかしそのGPUでもニューラルネットワークの計算は遅い。RL policy network の計算に3ミリ秒もかかるから、RL policy network によるロールアウトを近似する value network が作られたわけです(value network の説明参照)。value network による勝率の推定は、RL policy network によるロールアウトを繰り返して勝率推定するより 15,000倍速いと報告に書かれています。
そうであれば、今より10,000倍程度速く RL policy network が計算できたとすると、value network は不要になり(ないしは補助的なものになり)、それが「最強のコンピュータ囲碁」になると考えられます。10,000倍速くするには「アルファ碁が採用した規模の "畳み込みニューラルネットワーク" を演算できる専用LSI」を開発すれば可能なのではないでしょうか。10,000倍とまではいかなくても、1000倍速く計算可能な専用LSI・数10個の並列処理でいいのかもしれない。コンピュータ囲碁のためにそんなことをする会社はないと考えるの早計です。「畳み込みニューラルネットワーク」は、画像認識の中核的なアルゴリズムです。その画像認識が超重要技術になるのが自動運転です。そしてディープマインドの親会社のグーグルは(自動車会社ではないにもかかわらず)自動運転の研究を進めていることで有名です。ひょっとしたらグーグル・ディープマインドは、そういった専用ハードウェアの開発を始めているのかもしれません。そのときに必須になるのは「畳み込みニューラルネットワーク」の動作についての深い専門知識なのです。
憶測で話を進めることには意味がありませんが、要するにアルファ碁の開発が「単に囲碁の世界に閉じたものではない」ということを言いたいわけで、それは全く正しいと思います。
画期的だが、道は遠い
アルファ碁は画期的な技術であり、AI研究のターニングポイントを越えたと思います。しかしそこを越えてみると、その先はまだまだ長いと感じました。その先とは人の「知性」と呼ばれている領域に入ることです。
No.174「ディープマインド」で、ディープマインド社のAI技術が「Atari社のビデオゲームのプレーを学習した」ことを書きました。「コンピュータ画面に表示される得点を知ることによって、ゲームのルールや遊び方を学習した」わけです。現在、ディープマインドはグーグルの子会社ですが、グーグルが買収するきっかけとなったのは「最高経営責任者のラリー・ペイジ氏が、ある種の人間性の萌芽を思わせるAIの登場に感銘を受けた」ことのようです(No.174)。2016年5月末のNHKスペシャルで、将棋の羽生 善治さんがディープマインド社を訪問する様子が出てきましたが(デミス・ハサビスCEOと羽生さんがチェスをプレーしていました)、そこでもAtari社のビデオゲームの習得の様子が解説されていました。
この話と、研究報告の題名である「Mastering the game of Go」の "マスター" とは、意味がかなり違います。アルファ碁は、2840万のKGSの盤面データと、800万の東洋囲碁の盤面データ(いずれもアマチュア囲碁プレーヤの打ったデータ)から、囲碁の戦い方を学習したわけです。Atari社のゲームの場合のように「ゲームのルールや遊び方を学習した」とはとても言えない。その意味で「Nature ダイジェスト 2016年3月号」の記事(上に引用)にあった「Atari社のゲームの習得と囲碁の習得を同一視するような書き方」は間違いだし、少なくとも大きな誤解を招く言い方です。
画期的な成果だが、まだ道は遠い。そのことはディープマインドのCEOであるデミス・ハサビス氏が一番実感していることでしょう。どこかのインタビューで、彼はそういう発言をしていたと記憶しています。
人の知性のすばらしさ
実は、ディープマインド社の研究報告を読んで一番感じたのは、アルファ碁と対戦できるプロ棋士の「知力」の素晴らしさでした。ここまでやっているコンピュータ囲碁プログラムと「戦える」こと自体が驚きというのが率直な感想です。相手はプロセッサーを1400個近くも並列処理させる、超高速コンピュータです。その相手に勝てることもある(2016年3月のイ・セドル 九段の一勝)。
人間の知性や知力の奥深さはすごいし、その秘密を解明するにしても、まだまだ先は遠いと思いました。
欧米に囲碁を広める努力をしたのは・・・・・・
これからは余談です。このディープマインド社の研究報告を読んでみようという気になったのは、アルファ碁とイ・セドル 九段の対決がきっかけでした。その対局のネット解説(マイケル・レドモンド 九段)を見ていて思ったのですが、英語の囲碁用語には日本語がいろいろとあるのですね。aji(アジ、味)とかdamezumari(ダメ詰まり)とかです。普段、英語の囲碁用語に接する機会などないので、これは新しい発見でした。
ディープマインド社の研究報告にも、atari(アタリ、当たり)とか nakade(ナカデ、中手)とか dan(段)とか komi(コミ)とか、いろいろ出てきます。最も驚いたのは byoyomiです。「持ち時間を使い切ったら一手30秒の秒読み」と言うときの「秒読み」です。世界トップクラスのイギリスの科学誌「Nature」に byoyomi(= 日本語)が出てくるのです。日本語について言うと、No.174 にも書きましたが、そもそも英語で囲碁を示す Go(AlphaGo の Go)が「碁」の日本語発音です。
囲碁の発祥地は中国です。しかし、囲碁英語に日本語がたくさんあるという事実は、欧米に囲碁を広めたのは日本人棋士、ないしは日本で囲碁を学んだ欧米人だということを如実に示しています。欧米に囲碁が広まったのはその人たちの功績だった。日本のプロ棋士では、特に岩本薫・元本因坊です。
そうして広まってくると、欧米でも囲碁の深淵さが理解されるようになり、コンピュータ囲碁プログラムを開発する人が欧米に現れた。それがAI研究者のチャレンジ意欲をかき立て、そして英国・ロンドンでアルファ碁が誕生した・・・・・・。
◆ | 欧米に囲碁を広めた人たちの努力(日本人プロ棋士、欧米人を含む) ↓ | ||
◆ | 欧米で囲碁が普及 ↓ | ||
◆ | コンピュータ囲碁プログラムの出現(欧米で) ↓ | ||
◆ | AI研究者が囲碁に挑戦 ↓ | ||
◆ | ディープマインド社とアルファ碁の出現 |
というのは、一本の線で繋がっているのではないでしょうか。これは決して「風が吹いたら桶屋が儲かる」式の話ではなく、ロジカルな繋がりだと思うのです。
ディープマインド社はアルファ碁の開発で得られた知見を社会問題や産業分野に応用しようとしています。そのルーツをたどると、一つとして「日本のプロ棋士、ないしは日本で囲碁を学んだ人たちが、欧米に囲碁を普及させた努力」がある。そう考えられると思いました。
補記:AlphaGo Zero |
AlphaGo を開発した DeepMind は、2017年10月に AlphaGo Zero を発表しました。このシステムに組み込まれた知識は「囲碁のルール」でだけです。つまり、
人間の対局データ(棋譜)を使っていない | |
囲碁の常識(いわゆる "ドメイン知識")も使っていない |
システムです。にもかかわらず、AlphaGo 及びそれ以降に作られた改良版のすべてを凌駕する強さです。
本文中に、AlphaGo が高段者の棋譜やドメイン知識を利用していることを念頭に「画期的だが、道は遠い」と書きましたが、道は遠いどころか、ゴールは間近にあったわけで、「遠い」という推測は全くのハズレでした。このことの教訓は、
AI 技術の進歩は急激であり、いつなんどき驚くような技術が現れるかわからない
ということです。現状の技術内容だけから安易な判断は慎むべきだと思いました。
タグ:tree policy アルゴリズム 論文 AlphaGo Zero 解説 AlphaGo ディープマインド DeepMind nature ニューラルネットワーク policy network value network モンテカルロ木検索 Monte Carlo Tree Search MCTS rollout playout rollout policy ロールアウト 深層学習 強化学習 機械学習 畳み込みニューラルネットワーク KGS Tygem 確率的勾配降下法 Upper Confidence Bound UCB 画像認識 GPU イ・セドル デミス・ハサビス 羽生善治 自動運転 グーグル アルファ碁 仕組み
No.180 - アルファ碁の着手決定ロジック(1) [技術]
アルファ碁(AlphaGo)
No.174「ディープマインド」で、英国・ディープマインド社(DeepMind)のコンピュータ囲碁プログラム、アルファ碁が、世界最強レベルの囲碁棋士である韓国の李世乭(イ・セドル)九段に勝利した話を書きました(2016年3月。アルファ碁の4勝1敗)。
AlphaGo vs イ・セドル9段(右)第1局
(YouTube)
|
このアルファ碁に盛り込まれた技術について、No.174 では「Nature ダイジェスト 2016年3月号」に従って紹介しました。要約すると、ディープマインド社のやったことは、
◆ | 次に打つ手を選択して碁盤を読む能力をもったニューラルネットワークを、深層学習と強化学習によって作った。 | ||
◆ | このニューラルネットワークを、手筋のシミュレーションによって最良の手を選択する市販の囲碁プログラムの探索アプローチと組み合わせた。 |
となります。非常に簡単な説明ですが、そもそも「Nature ダイジェスト」の解説が簡素に書いてあるのです(それが "ダイジェスト" の意義です)。
もうちょっと詳しく言うとどういうことなのか、どこに技術のポイントがあるのか、大変気になったので「Nature 本誌」の記事を読んでみました。ディープマインド社が投稿した「ディープ・ニューラルネットワークと木検索で囲碁を習得した - Mastering the game of Go with deep neural network and tree search」(Nature 2016.1.28)という研究報告です。以下、この報告に書かれているアルファ碁の仕組みを分かりやすく書いてみたいと思います。以下の要約によって「Nature ダイジェスト」の説明を詳しく言うとどうなるのかが見えてくると思います。たとえば「次に打つ手を選択して碁盤を読む能力をもったニューラルネットワーク」というのは、実は「次に打つ手を選択するニューラルネットワーク」と「碁盤を読む能力をもったニューラルネットワーク」の二つあることも分かります。
前提
前提事項が2つあります。まず1点目ですが、「Nature」の研究報告(2016.1.28)が発表された時点で、イ・セドル 九段との対戦はまだ行われていません。アルファ碁は、2015年10月に囲碁の欧州チャンピオンに5戦5勝の成績をあげました。相手は樊麾二段(ファン・フイ。中国出身でフランス国籍。フランス在住。中国棋院二段)で、その成果を受けての報告です。おそらくディープマインド社はイ・セドル 九段との戦いまでの間に、アルファ碁のロジックの強化やチューニングを繰り返したと思います。囲碁のトップレベルの国は中国・韓国・日本であり、韓国のイ・セドル 九段は樊麾二段とは "格" が違います。イ・セドル 九段との戦いという、ディープマインド社にとっての(そして親会社のグーグルにとっての)晴れ舞台に向けて、アルファ碁の強化を繰り返したことが十分に想定できるのです。以下の研究報告の解説は2015年10月時点の技術内容と考えるべきであり、それ以降の強化は含まれないことに注意が必要です。
2番目は専門用語です。ディープマインド社が「Nature」に投稿したのは「囲碁を素材にしたニューラルネットワークや強化学習の研究報告」なので、専門用語や数式がいろいろ出てきます。しかしそういった用語や数式は、以下の要約では必要最小限にしました。さらに、研究報告の内容を順番に説明するのではなく、そこに書いてあることを、補足を交えて再構成しました。ニューラルネットワークや強化学習については、各種Webサイトに紹介やチュートリアルがあります。また多数の書籍も出版されているので、そちらを参照ください。
4つの技術
ディープマインド社の研究報告を読むと、アルファ碁は次の4つの技術の組み合わせで成り立っていることが分かります。
① | policy network | ||
② | value network | ||
③ | モンテカルロ木検索(Monte Carlo Tree Search : MCTS) | ||
④ | rollout policy |
このうち、①policy network、②value network はディープマインド社の独自技術です。一方、③モンテカルロ木検索と ④rollout policy は、現在、世に出ている多くのコンピュータ囲碁プログラムが採用しています。もちろん③④についてもディープマインド社独自の工夫や味付けがあるのですが、基本的なアイデアは既知のものです。「Nature ダイジェスト」に「ニューラルネットワークと既存の検索アプローチを組み合わせた」という意味のことが書かれていましたが、これは ①② と ③④ を組み合わせたことを言っています。「Nature ダイジェスト」の要約に①~④を対応させると次の通りです。
◆ | 次に打つ手を選択して(= policy network)碁盤を読む能力をもった(= value network)ニューラルネットワークを、深層学習と強化学習によって作った。 | ||
◆ | このニューラルネットワークを、手筋のシミュレーションによって最良の手を選択する(= rollout policy)市販の囲碁プログラムの探索アプローチ(= MCTS)と組み合わせた。 |
以降、この4つの技術について、順に説明します。なお、「④rollout policy」は「③モンテカルロ木検索」の一部とするのが普通ですが、説明の都合上、分けてあります。
policy network
まず言葉の意味ですが、ポリシー(policy)とは、着手を決めるロジック、ないしはアルゴリズムのことです。現在の盤面の情報をもとに、次にどこに打つべきかをコンピュータ・プログラムで決める、その決め方をいっています。またネットワーク(network)とは、AI(人工知能)の研究で多用されるニューラルネットワーク(neural network)のことです。つまり、
policy networkとは、現在の盤面の情報をもとに、次にどこに打つべきかを決めるためのニューラルネットワーク |
です。ディープマインド社がコンピュータ上に構築した policy network は、ニューラルネットワークの中でも「畳み込みニューラルネットワーク(Convolutional Neural Network. CNN)」と呼ばれるタイプのもので、画像認識の研究で発達しました。画像認識で、たとえば画像の中にある猫の顔を認識しようとすると、それは画像いっぱいにあるもしれないし、画像のごく一部かもしれない。また猫の顔が移動しても(どこにあっても)、大きさが違っても、少々変形していても認識できないといけない。画像の大域的な特徴と局所的な特徴を同時にとらえ、かつ移動や変形、拡大縮小があったとしても普遍的な特徴をとらえる。「畳み込みニューラルネットワーク」はこのようなことが可能なニューラルネットワークです。ディープマインド社が使ったのは隠れ層が12層あるもので(いわゆるディープ・ニューラルネットワーク。Deep Neural Network。DNN)、図示すると以下のようです。
kは "フィルタ" の数で、プロとの実戦では 192 が使われた。入力層から第1隠れ層への "カーネル" は5×5である。従って、周辺に 0 を2つパディングした 23×23×48 が入力層となる(19+2+2=23)。5×5×48個の重み値(フィルタ)と、入力層の5×5×48の部分領域の値を掛け合わせて合計した値を活性化関数(ReLU関数)への入力として、第1隠れ層の1つの値が決まる。この操作を、入力層の部分領域を上下左右に1ずつずらしながら19×19回繰り返すと、第1隠れ層の1つのプレーンができる。さらにこの計算全体を、フィルタをかえて192回繰り返すと第1隠れ層ができあがる。
第1隠れ層から第12隠れ層に至るカーネルは3×3である。出力層へのカーネルは1×1であるが 19×19 個の異なったバイアスを使用し、また出力層の合計値が 1.0 になるように調整される。ニューラルネットワークの訓練とは、訓練データが示す出力(19×19のどこか1箇所が1で残りは全部ゼロ)と最も近くなるように、フィルタ(重み)およびバイアスの値を調整することである。 このニューラルネットの重みがいくつあるか計算してみると、第1隠れ層への重みは5×5×48×192、第2隠れ層から第12隠れ層については3×3×192×192×11(=11層)、出力層への重みは1×1×192である。さらに出力層には19×19のバイアスが加味される。これらをすべて合計すると約388万(3,880,489)である。388万個のパラメータ(重みとバイアス)を最適に決めるのがニューラルネットワークの訓練である。 なお、画像認識における「畳み込みニューラルネットワーク」で使われるプーリング層(画像を "サマライズ" する層)はない。19×19程度の "画像" をサマライズする意味はない。 |
このニューラルネットワークの出力層は 19×19×1 で、碁盤の 19×19個の交点(目)に対して 0.0 ~ 1.0の数値が出力されます。この数値は囲碁の熟練者がそこに打つ確率を表します。すべての交点の確率を合計すると1.0になります(いわゆる確率分布)。
入力層は 19×19×48 のサイズで、碁盤の19×19の交点が48層(48プレーン)があります。一つのプレーンの一つの交点は 1 か 0 の値をとります。コンピュータに詳しい人なら「19×19の交点のそれぞれに48ビットを割り当てた」と言った方が分かりやすいでしょう。No.174「ディープマインド」で紹介した「Nature ダイジェスト 2016年3月号」の記事では、「入力層は碁盤の黒石・白石の配置パターン」と受け取れる表現がありましたが、実際の入力層はそれよりもかなり複雑です。48のプレーンは以下のように構成されています。全ての情報は打ち手(次に手を打つ人)を基準に計算され、一手進むごとに再計算されます。
policy network の入力層の構成
の数 |
説明 |
1 | 打ち手の石(打ち手の石があれば 1) |
1 | 相手の石(相手の石があれば 1) |
1 | 空点(空点であれば 1) |
1 | すべて 1 |
8 | その交点に石が打たれてから現在までに進んだ手数。 |
8 | 石の呼吸点(上下左右の空点)の数。その交点の石と連結している石全体(いわゆる “連”)の呼吸点を表す。 |
8 | その交点に打ち手の石を打ったとしたとき、相手の石を取れる数。 |
8 | その交点に相手が石を打ったとしたとき、打ち手の石が取られる数。 |
8 | その交点に打ち手の石を打ったとき、その石と連結している石全体(連)の呼吸点の数。 |
1 | その交点に打ち手の石を打って相手の石をシチョウで取れるとき 1 |
1 | その交点に打ち手の石を打ってシチョウから逃げられるとき 1 |
1 | 合法手。その交点に打ち手の石を打つのが囲碁のルールで許されるとき 1。ただし打ち手の目をつぶす手は合法手とはしない。 |
1 | すべて 0 |
8つのプレーンで一つの数を表すものが5種類ありますが、いずれも「0, 1, 2, 3, 4, 5, 6, 7, 8以上」を表します。1 の場合は1番目のプレーンだけが 1、2 の場合は2番目のプレーンだけが 1、以下、8以上の時は8番目のプレーンだけが 1です。情報科学でいう one-hot encoding("8ビット" のうち 1 は一つだけ)になっています。
この構成で分かるように、入力層は単なる黒石・白石の配置パターンではありません。囲碁のルールが加味されています。さらに「シチョウに取る・シチョウから逃げる」や「ダメヅマリ(連結する石の呼吸点の数)」というような、ルールから派生する囲碁の常識(が判別できる情報)も含まれています。
以上の 19×19×48 の入力層の情報をディープマインド社の研究報告では盤面の "state" と読んでいます。これに従って、以下「盤面(state)」ないしは単に「state」と書くことにします。
当然ですが、盤面(state)の情報は、打った手の履歴が分かれば計算できます。アルファ碁は着手を決定する際に policy network を使うのですが、まず state を計算し(再計算し)、ニューラルネットワークの計算を行って、囲碁の熟練者がどこに打つかの確率を求める。これを着手ごとに繰り返すことになります。
SL policy network
ディープマインド社がまず作成した policy network は、教師あり機械学習(supervised learning)による policy network で、これを SL policy network と呼びます。以下、単に SL と書くこともあります。SL policy networkの「訓練データ」は、KGS Go Server からダウンロードされた、囲碁の対局データです。
KGS Go Serverは、もともと神奈川県茅ヶ崎市の囲碁用品店、棋聖堂が運営していた無料の囲碁対局サイト(Kiseido Go Server : KGS)で、現在はアメリカの篤志家と各国のボランティアが運営しています。このサイトには世界の囲碁愛好家が集まっていて、無料の囲碁対局サイトとしては最も広まっているものの一つです。
参加者はアマチュア30級(30k)から1級(1k)、アマ初段(1d)から九段(9d)までにレーティングされます。このレーティングは、KGSの独自のアルゴリズムにより対局が行われるたびに自動更新されます。KGS にはプロ棋士も参加しており、自ら参加を公表しているプロ棋士もいます。プロの段位は d ではなく p と表示します(レーティングはなく申請方式)。アマチュアの中には、コンピュータ囲碁のプログラムも参加しているようです。
ディープマインド社が SL policy network の訓練データとしたのは、KGS のアマチュア高段者(6段~9段。6d~9d)の約16万局の対局データで、それには2940万の盤面データがありました。このうち100万の盤面データは、できあがった SL policy network の評価に使用されました。従って実際の訓練データは「2840万の盤面データと、その場面で囲碁熟練者が実際に打った手」です。もっとも、囲碁には対称性があるので盤面を90度づつ回転した4つの盤面データ、およびそれらの裏返しを含めた合計8つの盤面データが教師データとして使われました。従ってSL policy networkにとっての訓練データの総数は2億2720万ということになります。訓練データの数が2840万とか2億2720万というと非常に多いようにみえますが、SL policy network のパラメータの数(重みとバイアス。上の policy network の図の説明参照)は388万もあります。これと比較すると約7倍とか60倍という数です。深層学習の訓練データの必要数はパラメータの数の数倍以上とされているようなので、この数はリーズナブルな数なのでしょう。
これら訓練データの state をあらかじめ計算しておき、policy networkを "教育" しました。つまり「出力層の確率分布」と「実際に打たれた手の確率分布(どこか1箇所が 1 で、その他は 0)」との誤差の総体が最も小さくなるように、ニューラルネットワークの重みを調整していったわけです。この調整には "確率的勾配降下法"(stochastic gradient descent。SGD。報告では ascent も何回か使われているが、同じ意味)という手法が使われました。こうして出来あがったのが SL policy network です。
この SL policy network が、どの程度の精度で熟練者の実際の手を予測できるかを、訓練データとしては使わなかった100万の盤面データで調べた値があります。それによると予測精度は57.0%とのことです。この定義ですが、実際に打たれた手に対応する SL policy network の出力層での確率(の100万個の平均値)だと読み取れます。とすると、出力層の最高確率の手を打てばアマチュア高段者の手がかなりの精度で近似できるということになります。57.0%は100万のテストデータの平均値なので、中にはハズレもあるでしょう。また、アマチュア高段者が打った手が最善手だとは限りません。しかしこの57.0%という数字は SL policy network が有効だということを示しています。想像するに、確率が上位の3つぐらいの手の中にアマチュア高段者が実際に打った手が極めて高い確率で含まれるのではないでしょうか。
興味あるデータがあります。もし SL policy network の入力層が48プレーンではなく11プレーン(石の配置が3プレーン、手数が8プレーン)ならどうなるかということです。それを実際にやってみると、予測精度は 55.7% になったとのことです。わずか 1.3% の違いなのですが、研究報告で強調してあるのは、この程度の予測精度のわずかな違いが囲碁の強さに大きく影響するということです。
予測精度をあげるためには、畳み込みニューラルネットワークの隠れ層を増やすという案も当然考えられます。しかしそうすると、policy network の計算時間が増えます。つまり、限られた時間内に「読める」手が少なくなる。ディープマインド社は超高速コンピュータシステムを使っているので、policy network の一回の計算は3ミリ秒で終わります。しかしあとから出てくるように、コンピュータ囲碁に適用するにはこの速度でも遅すぎるのです(その回避策もあとで説明します)。
入力層のプレーンが48や、畳み込みニューラルネットワークの隠れ層が12というのは、ディープマインド社が精度と速度のバランスを試行錯誤して決めたものだと想像できます。
補足ですが、No.174「ディープマインド」で紹介した「Nature ダイジェスト 2016年3月号」に「プロ棋士どうしの対局の3000万通りの局面を調べ」とあるのは間違いです(原文か訳か、どちらかの間違い)。SL policy network の訓練データは KGS Go Server のアマ高段者の対局データです。 |
RL policy network
RL policy networkとは、強化学習(reinforcement learning)の手法を使って、SL policy network をさらに "強く" したものです。基本的な方針は policy network 同士の「自己対局」です。policy network に従って碁を打つということは、policy network が示す確率分布に従って手を打つということになります。
まず初期値として RL = SL とします。そして「強化試合相手の集合(policy pool)」を設定し、初期状態ではSLをひとつだけ policy pool に入れておきます。
一回の「強化」は次のように進みます。policy poolの中から「強化試合相手」をランダムに選び、RLをその相手と128回対戦させます。この対戦過程の全盤面を記憶しておき、RLの対戦成績が最も高くなるように、RLのニューラルネットワークのパラメータ(重み)を調節します。つまり、勝った対戦では勝ちに至った手をできるだけ選ぶようにパラメータを調節し、負けた対戦では負けに至った手を選びにくいように調節するわけです。このあたり、ディープマインド社のCNNを使った強化学習の技術蓄積が生きているところです。
以上の強化を500回行うごとに、その時点でのRLを policy pool に入れます。この強化を1万回(1回あたりの対戦は128回)繰り返して、最終的なRLとします。従って「自己対戦」は128万回行ったことになります。もともと SL policy network は KGS Go Server の約16万局のデータをもとに訓練されたものでした。それからすると RL の作成で行った自己対局の128万回は断然多いことになります。
こうして作成された RL policy network を市販のコンピュータ囲碁プログラムと対戦させた結果が報告に載っています。Pachi というプログラムは、オープンソースの(ソースコードが公開されている)コンピュータ囲碁プログラムでは最強と言われていて、KGSのレーティングではアマチュア2段(2d)です。RL はPachi と対戦して 85%の勝率でした。一方、SL は 11%の勝率でした。RL policy network は SL policy network に比べて格段に強くなったと言えるでしょう。このように、すべてコンピュータ内部で自動的に行える「自己対局」を繰り返すことで強くできるアルゴリズムを作れることが、ニューラルネットワークをコンピュータ囲碁に持ち込む大きなメリットでしょう。
RL policy network はなぜ強くなったのかを推定してみます。SL policy network の最大の弱点は、機械学習の教師データとした「2840万の盤面における次の一手」が最善手とは限らないことです。教師データは、あくまでアマチュア高段者の実際の対局データ(約16万局)です。高段者と言えども、次の一手には悪手や疑問手が多数含まれているはずだし、中には "ポカ" もあるでしょう。それらを全部 "正しい" 教師データとして機械学習したのが SL です。
RL は SL 同士の自己対局で作られました。「SL に勝つような SLの修正版が RL」であり、そういった "カイゼン" を次々と繰り返していって完成したのが最終的な RL です。しかも "カイゼン" のための自己対局の数は、元の教師データの対局数より圧倒的に多い。この結果、元々の SL に含まれていた「疑問手・悪手・ポカ」を打つ傾向が薄まったと考えられます。RL が最善手を打てるとは言わないまでも「最善手を打たない傾向は、かなり弱まった」と考えられるのです。想像するに「アマチュア高段者が実際に打った手を予測できる」という点に絞れば、RL は SL より予測精度が悪いのかも知れません。RL の予測精度は研究報告には書いてないのですが、つまり「そういった議論は意味がない」ということでしょう。しかし RL が最善手を示す確率は SL よりも高い。おそらくそういうことだと考えられます。
強化学習というと何か新しい能力を獲得したように感じてしまいますが、この学習はあくまで自己対局によるものです。「SLには無かった良い面」を新たに獲得したとは考えにくい。むしろ「SLの悪い面」を少なくした、これが強化学習の意義だと思います。市販のプログラム、Pachi との対戦で 85%もの勝率をあげたのは、このような理由だと推定できます。
Pachi との対戦での重要な注意点は、市販のコンピュータ囲碁プログラムは、打つ手の先を次々と読んで有力な次の手を判断していることです。一方の policy network は「手を先読みする」ことは一切せず、現在の盤面(state)だけから、次に打つべき有力手を計算します。つまり人間同士の囲碁の勝負でいうと、盤面を見て直感で打つことに相当します。直感で手を打つ RL policy network が、手を先読みする市販のコンピュータ囲碁プログラムと対戦して85%の勝率をあげたということは、RL policy network を手を先読みする機能と組み合わせれば非常に強いコンピュータ囲碁プログラムができるだろう、と推定できるのです。
ディープマインド社がやったことはまさにそういうことであり、市販のコンピュータ囲碁プログラムで「手を先読みする」ときに広く使われているモンテカルロ木検索(Monte Carlo Tree Serch. MCTS)と policy network を組み合わせることでした。
次にその「モンテカルロ木検索」ですが、その前に、モンテカルロ木検索で使われる「ロールアウト」です。ロールアウトもディープマインド社の発明ではなく、現在のコンピュータ囲碁プログラムで一般的に使われている手法です。ディープマインド社の研究報告にロールアウトの具体的な説明はなく、既知のものとしてありますが、モンテカルロ木検索の理解のためには必須の事項なので、以下に説明します。
ロールアウト(rollout)という手法
ロールアウトとは、モンテカルロ木検索で使われる重要な手法です。プレイアウト(playout)と呼ぶことが多いのですが、ディープマインド社の研究報告に従ってロールアウトとします。ロールアウトとは次のようなものです。
◆ | ある盤面において次に打つ候補手が複数あるとする(たとえば合法手のすべて)。 | ||
◆ | どの候補手が一番有力かを見極めるために、候補手の次から始まって黒白交互に合法手をランダムに打って終局まで進め、その勝敗をみる(=ロールアウト)。 | ||
◆ | これを何回か繰り返して勝率を計算する。そして勝率のよい候補手ほど有力とする。別の言い方をすると、候補手を打ったときの盤面の優劣を、そこからのロールアウトの勝率で判断する。 |
この「黒白交互に終局まで合法手をランダムに打って勝敗をみる」のがロールアウトです。ランダムということは、候補手の有力な度合いを確率的に判断するということです(自分の目をつぶす手は合法手から除外します)。かつ、序盤であれ中盤であれ、また終盤であれ、とにかく最後までヨセてみる。それを繰り返してその勝率で候補手の有力度合をみるということです。これは人間の思考とはかなり違います。人間なら「最後までヨセたらどうなるか」という思考で打つのは終盤だけです。序盤・中盤でそんなことは考えない(考えられない)。ロールアウトはコンピュータ囲碁の着手に人間とは違った要素を持ち込むと考えられます。
ロールアウトという "乱暴な" 手法がなぜ成立するのかと言うと、囲碁というゲームが「どこに打ってもいいから合法手を順に打っていくと終局に至るゲーム」だからです。囲碁は着手をするたびに打てる所が少なくなっていきます。だから成り立つ。ちなみに将棋だとこうはいきません。将棋の合法手を互いにランダムに指していって王様が詰むという保証はどこにもありません(逃げられる王手を見逃すのは将棋のルール違反)。
ロールアウトを使うと、次のような着手決定アルゴリズムが考えられます。まず許された時間に何回ロールアウトが可能かを見積もります。囲碁は持ち時間(考える時間)が決まっています。たとえばアルファ碁とイ・セドル 九段の対戦では、持ち時間はそれぞれ2時間でした。囲碁の平均手数を200手とすると、黒白それぞれ100手ですから、1手あたり許される思考時間は72秒です。もちろんそれは平均であって、思考時間の配分もコンピュータ囲碁プログラムを設計する時のポイントです。とにかく許される思考時間の間に、たとえば10万回のロールアウトが可能だとしましょう。そして着手可能な合法手(囲碁のルール上許される手)は100手だとします。そうすると、100手のそれぞれで1000回のロールアウトを行い、最も勝率の良い手を着手する・・・・・・。
もちろん、こんな単純なアルゴリズムでは強いコンピュータ囲碁プログラムにはなりません。なぜなら「無駄なロールアウト」をいっぱいやっているからです。ルール上許される合法手といっても、アマチュア初心者でも絶対打たないような手がいっぱいあります。そんな手にたくさんのロールアウトを繰り返すのは時間の無駄です。ロールアウトはあくまで「確率的判断」で有力な手を見極めようとするものです。有力そうな手にはできるだけ多くのロールアウトを割り当て、ダメそうな手は早々に切り上げる。そうしないと確率的に最善手に近づくことができません。つまり、まず候補手をそれぞれ何回かロールアウトして様子を見て、その中から良さそうな手を選択し、さらにそこをロールアウトする・・・・・・。そのようなアルゴリズムが必要です。しかしロールアウトによる勝敗判断はあくまで確率的なので、何回かロールアウトしてみてダメそうな手であっても、もっとロールアウトすると勝率が良い手に "化ける" かもしれないのです。では、どうしたらよいのか。
実は、どの手をロールアウトすべきか、それを決めるための「数学的に最良な方法」が知られています。それが、候補手の Upper Confidence Bound(UCB。信頼上限)という値を計算し、常にUCB値が最大となる手をロールアウトするというアルゴリズムです。UCBは1回のロールアウトのたびに変化していく値で、次の式で計算されます。
候補手i のUCB | |||
候補手i をロールアウトした数 | |||
候補手i のロールアウトによる勝ち数 | |||
ロールアウトの総数(logは自然対数) | |||
定数(理論的には2の平方根だが囲碁プログラム依存) |
その時点で「UCB最大の手」をロールアウトします。もしUCBが第1項(Wi/Ni)だけだと「その時点で最も勝率が高い手を常にロールアウトする」ことになってしまいます。しかし第2項があるためにそうはなりません。第2項にはNiの逆数があるので「その時点でロールアウトの配分が少ない手」ほどロールアウト候補として有利になります。しかし第2項を見ると分子には logN があります。この意味するところは、ロールアウトの配分率が少ない手が有利だとはいうものの、ロールアウトの総数(N)が大きくなると第2項の効果は相対的に薄れていくということです(logN ではなく N だと薄れない)。k は第2項をどの程度重要視するかという定数です。k が小さいと、より勝率の高い手をロールアウトするようになり、k が大きいと勝率が小さくても "チャレンジ" するようになる。このあたりの決め方がコンピュータ囲碁プログラムのノウハウとなっています。第1項を開拓(exploitation)、第2項を探検(exploration)と呼んだりします。
UCB についての補足です。UCB(Upper Confidence Bound。信頼上限)は、教師なし機械学習の理論の一つである「多腕バンディット問題」で出てくる値です。バンディット(Bandit)は山賊の意味ですが、ここではスロットマシンのことです。山賊は旅人や商人からお金を巻き上げるので、これをスロットマシンになぞらえたものです。
スロットマシンにはアーム(腕)があり、コインを入れてアームを操作すると "当たり" か "ハズレ" になる。「多腕」とは、そのアームが複数あるという意味です。説明をシンプルにするために、以降同じことですが、複数のスロットマシンがあることとします。
ポイントは、複数のスロットマシンで "当たり" の出る確率がそれぞれ異なっていて、事前にはその確率が分からないことです。プレーヤーの持っているコインは限られていますが、スロットマシンの台数に比べて十分な量とします。では、この複数のスロットマシンを相手にどういう戦略でプレーをすれば最大の利得が得られる(=当たりの回数を最大化できる)でしょうか。これが問題です。
とりあえず、まず全部のマシンを試してみるのが妥当でしょう。そうすると、たとえば2台のマシンが "当たり" だったとします。では残りのコインでその2台を集中的に試すべきでしょうか。
もちろんこんな戦略ではダメです。最初に "当たり" が出なかったマシンにも高い確率のものがあるかもしれないからです。また2台を試してみてずっと "当たり" が出なかったとき、いつ諦めるべきかという問題もある。では、どうするか。
要は、結果として "当たり" の出る確率が高いマシンにより多くのコインを投資するようにプレーを誘導できればいいわけです。それ実現する "数学的に正しい戦略" が「UCB を判定し、常に最大UCBのマシンを試す」というものなのです。
これがスロットマシンの問題だとすると実用性はありませんが、この理論の応用は現代のビジネスで使われています。その例ですが、今、あるWebページがあり、そのページには50のコンテンツがあるとします。1画面には10のコンテンツが表示できるので、別画面に移るときにはクリックして移ることとします(全部で5つの画面)。最初に表示される第1画面は一般的にコンテンツの良し悪しにかかわらずクリックされる確率が高く、第2、第3となるにつれて急速に確率が落ち、第5画面が最低になる。
この状況で、Webページのページビューを最大化するにはどうすべきでしょうか。そのためには「本質的に最も人気のあるコンテンツを上位画面に集める」ことができればよい。しかしどれが人気が出るコンテンツかは、事前にはわからない。こういう場合サイトの設計者としてはログをとり、そのログを見ながらコンテンツの表示順位を決めますが、よく閲覧されたコンテンツを決めるファクターは「人気がある」と「過去に上位に表示された」の2つがあるので、この2つのバランスをどうとって判断するか、そのアルゴリズムが問題です。
これは、条件はスロットマシンよりは複雑ですが、本質的に「多腕バンディット問題」と同じです。教師なし機械学習はAIの一部と言ってもいいわけで、このような「AI技術を使ってページビューを最大化」しているサイトは多々あるはずです。
コンピュータ囲碁の話に戻ります。この数学的裏付けにもとづいたUCBを使うアルゴリズムでも、まだ問題点があります。一つはランダムに合法手を打ってロールアウトするところです。これではいくらなんでも単純すぎる。囲碁には「常識的な手」があります。相手の石が取れるなら取るとか、ノゾキにはツグとか、また、アマチュアで段位を持っている人なら誰でも知っている手筋も多い。そういう常識的な手が打てるなら打つ。そうした方がランダムなロールアウトより盤面の優劣の判断がより正確になると考えられるのです。
実際、現代のコンピュータ囲碁プログラムでは、ランダムではなく一定のロジックに基づいてロールアウトをしています。このロジックをロールアウト・ポリシー(rollout policy)と呼びます。後で書きますが、アルファ碁もロールアウト・ポリシーによるロールアウトを使っています。ロールアウト・ポリシーの必須条件は、高速に計算できることです。ロールアウトによる勝率の推定は、あくまで確率的なものです。ロールアウトの回数が多いほど推定が正確になるので、高速性が大変重要です。
さらに上のアルゴリズムの問題点は、候補手をリストアップする段階で「合法手すべて」としていることです。少なくともロールアウト総数が少ない初期の段階では、それらを均等に扱っている。合法手の中には「囲碁の常識上ダメな手」があるはずです。「囲碁の常識上ダメな手」がロールアウトなしで高速に判別できれば、候補手の中でもロールアウトの優先度を落とすべきでしょう。このロジックも、現代のコンピュータ囲碁プログラムで採用されています。
以上の「常にUCB値を再計算しながら、それが最大となる候補手をロールアウトし、その勝敗の数で手の有力度合いを判定する」アルゴリズムに「手を先読みする」機能を加えたのが、次の「モンテカルロ木検索」です。
(次回に続く)
No.176 - 将棋電王戦が暗示するロボット産業の未来 [技術]
No.174「ディープマインド」、No.175「半沢直樹は機械化できる」に続いて AI(人工知能)の話を書きます。特に人工知能とロボットの関係です。考える糸口としたいのはタイトルに書いた "将棋電王戦" なのですが、まずその前に、ロボットについて振り返ってみます。
産業用ロボット
ロボットはすでに現代社会において広く使われています。いわゆる「産業用ロボット」で、主に工場や倉庫で活躍しています。ここで言う "ロボット" とは、単なる機械ではありません。複数の工程や手順の組み合わせを自律的に行って、まとまった仕事や人に対するサービスを行う機械です。単一の動作、たとえば "瓶に液体を積める作業" だけを繰り返す機械は、ロボットとは言いません。また常に人間の指示によって動く機械、たとえば建設現場のクレーンや遠隔操縦のマジックハンドのような「非自律的な機械」も、ふつうロボットとは言いません。複数手順の組み合わせを自律的に行うのがロボットであり、そのうち、主として工場・倉庫などで使われているのが産業用ロボットです。具体的な用途としては、自動車の生産ラインにおける溶接や塗装、製品や部品の搬送、部品の研磨、電子部品の装着、製品の検査などがあります。
No.71「アップルとフォックスコン」で書いたマシニングセンター(工作機械の一種)は、ふつう "ロボット" とは呼びませんが、ロボットと同等の機械です。鴻海精密工業は、iPad / iPhone の外装ボディを金属塊から削って作っていますが、ここで使われているマシニングセンターは、複数のドリル・工具をとっかえひっかえして "自律的に" iPad/iPhone の複雑な曲面を切削していきます。日本のファナックの製品名は「ロボドリル」であり、このネーミングは産業用ロボットだと言っているわけです。
以上のように産業用ロボットは「自律的」に動作するのですが、この動作は人間があらかじめ "教え込んだ" ものです。一連の動作をどう進めるか、どういう条件ならどいういう風に動作を変えるかなどがあらかじめ詳しく指示されていて、その指示がプログラムとしてロボットの制御装置の中に内蔵されています。この指示通りにロボットは動きます。
産業用ロボットは日本の有力産業であり、世界のシェアの60%程度は日本企業が占めています。安川電機、ファナック、川崎重工、不二越、パナソニック、ヤマハ発動機、デンソーなどが有力メーカーです。
次世代ロボット
一方、産業用ロボットと対比する形で、今後大きく伸びると考えられているロボットがあります。それを「次世代ロボット」と呼ぶことにします。次世代ロボットは次のような特徴を備えています。
まず、人間の「脳の働き」がメジャーだと考えられている仕事を行うという特徴があります。力仕事や高速動作などの "物理的身体能力" を越えた仕事やサービスを行うのが次世代ロボットです。何点かの例をあげます。
また、これらの機能が「固定的ではない」のが次世代ロボットです。つまり次世代ロボットの特徴として次があげられます。
工場や倉庫だけでなく、家庭、病院、オフィス、公共施設、小売店の店頭、リクレーション施設、道路、空、農場、牧場、海や河川、など、社会のさまざまな場所やシーンにロボットの活躍の場が広がります。その目的も、エンターテインメントから、移動、介護、窓口対応、案内、危険作業まで、さまざまです。
一つだけ例をあげると、道路を活躍の場とする自動運転車です。これは次世代ロボットの代表と言っていいでしょう。自動車各社は自動運転の公道実験を繰り返しているようで、実現時期を公表している会社もあります。公表時期が一番早いのは日産自動車で、2016年に高速道路の1車線、2018年に高速道路の複数車線、2020年に交差点を含む市街地となっています。2016年4月15日の日経新聞は、高速道路での自動運転ができるミニバン(セレナ)を2016年8月に売り出すと報じました。
高速道路の1車線限定でも自動運転ができれば、そのメリットは大です。高速道路の長距離運転をしていて一番怖いのは(私にとっては)居眠りです。眠気を感じてゾッとすることがある。万一、事故を起こしたら・・・・・・と思ってゾッとするわけです。もちろん "休み 休み" 運転するのが大原則ですが、自動運転モードにすることが可能だと非常に大きな安心材料になります。
自動運転ではありませんが、一般的になってきた「自動ブレーキ」だけでもメリットは大きい。スバル車の自動ブレーキ機能(EyeSight)を搭載したクルマは、非搭載車より1万台あたりの追突事故件数が84%も減ったそうです。スバルが2016年2月にこの調査データを公表しました。自動ブレーキだけでこの効果です。自動運転が実用化されると交通事故は激減するでしょう。
さらに、任意の道路での自動運転までいかなくても、たとえば過疎地において「自宅と、指定した数カ所を巡回するだけの自動運転」が実用化できれば、高齢者の足の確保に大きな威力を発揮するはずです。地方再生にもつながるでしょう。
「知能化」が大きな特徴だとすると、その特徴を生かすなら「次世代ロボットは動かなくてもいい」わけです。この点で、今後一番ホットな開発競争なるのは、個人が常時携帯するスマートフォンでしょう。
No.159「AIBOは最後のモルモットか」でスマートフォンのビジネスを展開するソニーモバイルコミュニケーションズの話を書いたのですが、そこで「知性をもち、個人に対して働きかけ、役立つスマホ」や、「人工知能(AI)やロボティックスが非常に重要な要素」といった会社幹部の発言を紹介しました。全くその通りだと思います。
いろいろと書きましたが、もちろん次世代ロボットが上にあげたすべての特徴を持つというわけではありません。部分的な特徴から順次組み込まれていくはずです。現在の工場で働いている検査用ロボットの中には、画像認識だけで不良品を検出するものがあります。これなどは「次世代ロボット」の先駆けでしょう。また「知能」と言っても程度問題です。どういう特徴を備えたら「知能」と言えるのか、明確になっているわけではありません。
つまり「産業用ロボット」と「次世代ロボット」の区別は厳密なものではなく、両者の境界に属するようなロボットもいろいろあります。あくまでロボットのトレンドとして、ないしはロボット産業の方向性として、今までは「産業用ロボット」が市場の中心だったが、今後は「次世代ロボット」にシフトしていく、そいういう傾向だと言いたいわけです。そして重要なのは、
だと思うのです。ここに世界の産業の浮沈、大げさにいうと国の経済の盛衰がかかっていると思うのです。
将棋電王戦
以上の「産業用ロボット」と「次世代ロボット」を踏まえた上で、題名にあげた「将棋電王戦」を考えてみたいと思います。将棋電王戦は、将棋のプロ棋士とコンピュータ将棋がハンディキャップなして戦う棋戦で、ドワンゴと日本将棋連盟が主催し、過去何回か行われました。現在も「第1期 電王戦」が進行中です(2016.5.13現在)。
①は米長邦雄永世棋聖との1番勝負、②~④は、プロ棋士とコンピュータ将棋の団体戦(5番勝負)でしたが、⑤から方式が変わりました。⑤は、ドワンゴがスポンサーになって2015年から始まった「叡王戦」の優勝者と、コンピュータ将棋選手権「将棋電王トーナメント」の優勝プログラムとの頂上決戦(2番勝負)です。2016年は山崎隆之 八段と ポナンザ(ponanza。山本一成氏が開発したコンピュータ将棋プログラム) の戦いです(ポナンザ が先勝。2016.5.13現在。第2局は2016.5.21-22)。
ここでは、プロ棋士とコンピュータ将棋の勝ち負けを論じるのが目的ではありません。注目したいのは、この電王戦のためにデンソーが開発した将棋用ロボット(コンピュータの代わりに将棋を指すロボット=代指しロボット)です。以下はその話です。
デンソーが開発した「代指しロボット」
株式会社 デンソーは、2014年の第3回将棋電王戦から、コンピュータ将棋のプログラムの指令に従って将棋を指すロボットを提供しています。プログラムの代わりに将棋を指すので「代指しロボット」と呼ばれています。その後、改良が続けられて、現在は第3代目になっています。このロボットはデンソーの子会社、デンソーウェーブが開発したものですが、以降、デンソーもデンソーウェーブも区別せずに "デンソー" と記述します。
まずデンソーのホームページから、これらのロボットの説明をみてみましょう。下線は原文にはありません。
最初に開発された「電王手くん」は、画像認識の技術が駆使されていて、駒をつかんで置くために「吸着」が使われていることが分かります。
最初に開発された「電王手くん」では、駒をつかむために "吸着" が使われていました。吸着は工場のロボットでモノを搬送するのに広く使われている技術です。ホームページの説明にあるように、上から駒を吸い付けるので「隣の駒に触れることがない」というメリットがありました。
しかし第2世代の「電王手さん」では吸着を使わず、駒をはさむ特殊なグリップが開発されました。駒をはさんでも隣の駒に影響を与えない小型のグリップで、しかも駒を裏返しにできるという特殊なものです。おそらくデンソーの開発陣としては、吸着を使っているのでは技術者のプライドが許さない、どうしても人間の手の動きと同様のグリップを実現したかったのでしょう。技術者魂を感じるロボットです。
第3世代の「新電王手さん」は、第2世代の技術を継承しつつ、消音化と高速化がされたようです。ということは、代指しロボットとしては一応の完成域に近づいたということだと思います。
これらのロボットを開発したデンソーの技術者のチャレンジ精神と開発力は大したものだと思います。何しろ、全く前例のない世界最初のロボットです(あたりまえだけれど)。本物の将棋盤と駒を使い、画像認識技術を駆使し、専用に開発したロボットアームとグリップの微妙な動きを制御しなれければならない。
最も大変だったのは、ロボット動作の信頼性の確保ではないでしょうか。対戦相手は生身の人間であるプロ棋士です。ロボットの誤動作や不正確な駒の動きは許されないし、駒を盤上に落とすようなこともあってはならない。工場のロボットであれは、ラインを止めてやり直しができます。しかし一発勝負ではだめです。プロ棋士の方も、コンピュータに負けるのは恥という意識があるはずだから、真剣勝負です。トラブルが起こると対局の雰囲気を壊し、プロ棋士のリズムを乱してしまう。そうなるとデンソーとしても責任を問われるでしょう。全国の将棋ファンが固唾をのんで見守る棋戦を「ぶちこわす」ことにもなりかねない。また、デンソーのロゴをつけたロボットが大舞台でトラブルとなると、ブランド・イメージにもマイナスになるでしょう。
こういったハードルとプレッシャーを越えて、過去3回の棋戦を乗り切ったデンソーの技術陣は、大いに賞賛されてしかるべきだと思います。
産業用ロボット・メーカーは衰退する
しかしプロ棋士と「代指しロボット」が対決する動画や画像を見ていて、私としては大きな違和感というか、奇妙で複雑な感じを受けたのです。というのも「代指しロボット」に対する指令は、すべてコンピュータ将棋のプログラムが与えているからです。つまり「プログラム + ロボット」で1人の人間だと考えると、
に相当するのは明らかです。ロボットがやっていることは、あくまでプログラムの「代指し」に過ぎない。
さきほど書いたように、この「代指しロボット」には最先端の技術が盛り込まれています。ロボット技術者たちのチャレンジ精神も詰まっている。しかしそれでもなおかつ「代指しロボット」は "コンピュータ将棋プログラム = 頭脳" の "しもべ" であって、意志を持たない機械に過ぎません。そういうポジションに "成り下がっている" のです。どんなに「代指しロボット」が将棋をうまく指したとしても、また成り駒がうまくできたとしても、棋戦としての価値の100%はコンピュータ将棋のプログラムにあるのです。
デンソーは自動車部品メーカーとして有名ですが、一つの顔は産業用ロボットのメーカーです。「代指しロボット」は "産業" に使われるわけではありませんが、機能としては "産業用ロボット" の典型です。一方、コンピュータ将棋プログラムと代指しロボットを合わせた「複合体」を考えると、この複合体は "次世代ロボット"の典型と言えるでしょう。ゲームをプレーするまでの知能を備えた、エンターテインメント分野の次世代ロボットです。「代指しロボット」のハードウェアの中にコンピュータを埋め込み、そこでコンピュータ将棋のプログラムを動かすことなど、いくらでも(やろうと思えば)できます。対戦するプロ棋士が指した手を画像認識で判別することだってできる。そうなると本当の「将棋指しロボット」ということになります。
だと思えたのです。さきほど書いた「違和感」や「奇妙なで複雑な感じ」は、そいういうところからきています。
デンソーの経営陣は、将棋電王戦を見て危機感を覚えたはずです。それは、デンソーとの取引関係が深いトヨタ自動車を考えてみるとすぐに分かります。トヨタの経営陣は、グーグルがトヨタ車を改造した自動運転車の公道実験をしている映像を見て、最大級の危機感を抱いたはずです。将来の自動車の「価値」がグーグルに握られるのではないかと・・・・・・。それと同じ構図が、コンピュータ将棋のプログラムと代指しロボットです。自動車(ロボット)技術者が精魂を傾けて開発した機械が、それとは全く無関係なソフトウェア技術者によって意のままに操られている。その操り方にこそすべての価値がある。全く同じ構図です。デンソー経営陣が危機感を抱かなかったはずがない。
ちなみに、2016年の第1期 電王戦を山崎隆之 八段と戦っているコンピュータ将棋プログラムは「ポナンザ」ですが、このプログラムを開発した山本一成氏は、AI応用ソフトを開発するベンチャービジネス、HEROZ(ヒーローズ。東京)の社員です。第1期 電王戦は、ベンチャーの頭脳が大企業(デンソー)の腕・手・指をあやつる構図なのです。
それともデンソー経営陣は「将棋はゲームだから大したことはない」と思ったでしょうか。しかし、ゲームを侮ってはいけません。No.174「ディープマインド」で書いたように、ディープマインド社のAI技術を使った「アルファ碁」は世界トップクラスの囲碁棋士に勝ったのですが、歴史的に眺めてみると、そこで使われたAI技術(深層強化学習)は「ゲームに導かれた革新」だったわけです。
デンソーのホームページを見ると、代指しロボットの開発経緯に取材した動画が公開されています(2016.5.13 現在)。技術者としてこの開発成果を誇るのは当然だし、またデンソーの広報部としてもPR(= Public Relation)の観点から、ホームページの目玉の一つとして掲載しているのだと思います。しかしもっと大きな視点からすると、代指しロボットを短期間に開発したことを誇るだけでいいのかと思うわけです。局所的に素晴らしいが大局には遅れる、ないしは、局所的に素晴らしいからこそ大局に遅れる、ということがあるのではないか。
デンソーは、代指しロボットの開発を契機に「コンピュータ将棋選手権」に参戦すべきだったと思うのですが、どうでしょうか。もちろんコンピュータ将棋のプログラムの開発は一朝一夕にはできません。すでに「コンピュータ将棋選手権」に参戦されている開発者の方に "三顧の礼を尽くして"、デンソーに迎える。そして、コンピュータ将棋のプログラムを開発するとともに、デンソーのAI技術のアドバイザーをしてもらう。ことによっては、別にAIの専門家を迎えて「本格的にAI技術や深層学習を使ったコンピュータ将棋プログラム」を開発してもいいわけです。繰り返しになりますが「知能をコンピュータで実現する技術 = AI技術」の活用は、単にゲームにとどまりません。No.174のディープマインド社は、コンピュータ囲碁ソフトを開発する会社でなく、そこで得られた技術をさまざまな社会問題にまで応用しようとしている会社です。
デンソーはロボットメーカーとしては中堅ですが、自動車部品メーカーとしては日本最大の会社であり、世界でも有数の会社です。そのデンソーが目標とする自動車部品メーカーはドイツのボッシュ社でしょう。そのボッシュは、自動運転の研究を大々的にやっています。その自動運転で使われる重要技術がAIです。上に書いたように、自動運転車こそ次世代ロボットの典型であり、自動車部品メーカーの雄であるデンソーは、そこに深くコミットせざるを得ないはずです。その自動運転車と将棋を指すロボットは「次世代ロボット」というキーワードでつながっていると思うのです。
自動車が知能化していくように、産業用ロボットも知能化して次世代ロボットへと変身していかざるを得ない。これには他の理由もあります。現在の産業用ロボットのメーカーは、ある競争にさらされようとしているからです。日経新聞の比奈田記者は、最近、次のような記事を書いていました。
比奈田記者が書いている産業用ロボットのキーデバイスですが、ロボットのすべての関節にはモーターとともに "精密減速機" が内蔵されています。精密減速機がモーターの回転数を大きく落とすことで、ロボットは強い力を発揮する。この産業用ロボット用の精密減速機で世界の60%ものシェアを握っているのが、日本のナブテスコです。上の記事にある「デンマークの産業用ロボットベンチャー、ユニバーサルロボット」が、ナブテスコから精密減速機を調達しているということは大いにありうると思います。
比奈田記者は産業用ロボットを液晶テレビになぞらえていいますが、これはちょっと違うのではと思います。液晶テレビはロボット(=メカトロニクス製品)と違い、完全なエレクトロニクス製品(動かない、デジタル製品)だからです。しかし、ごくマクロ的なアナロジーとして読めば理解できます。そして、比奈田記者の言うビジネスモデルの転換のための重要技術が、個々のロボットの高度な作業や、工場全体のロボット群の協調作業を見据えた「知能化」だと思います。
以上の状況を考えると、将棋電王戦で、頭脳に相当するコンピュータの指示どおりに黙々と "手" を動かしているだけの「代指しロボット」は、それがいかに技術的に優れていたとしても、ロボット・ビジネスとしての凋落を暗示するように思えてしまったのです。開発したデンソーは自動車部品の大会社であり、かつ産業用ロボットメーカーです。知能化の研究や先行開発は社内で鋭意やっているのでしょう。しかし、将棋電王戦だけをみると凋落に見えたということです。
産業用ロボット・メーカーは変身し、発展する
ここまで、将棋電王戦の「代指しロボット」について否定的なことを書いたのですが、もう一度よくよく考えてみると、この「代指しロボット」は、産業用ロボットメーカーであるデンソーの大きな戦略の一環かもしれないとも思えました。それはこのロボットが、将棋の駒をつかむときの人間の(プロ棋士の)手と指の動きと同等の働きをするからです。つまりこの代指しロボットは「人間の手と指の微妙な動きを完全に模擬できるロボットを開発する」という、デンソーの大きな企業目標の一つとして位置づけられているのかもしれないと思ったわけです。
ここで思い出すのは、No.71「アップルとフォックスコン」で紹介した鴻海精密工業の工場の光景です。鴻海精密工業はアップル製品(iPhone や iPad など)の筐体(= 外装ボディ)を金属の塊から "削り出す" ことで製造しています。そのための工具を自社生産する工場の様子が、下の写真の右中です(No.71に掲載した写真)。小型のマシニング・センター(=産業用ロボット)がズラッと並び、当然のことながら、人の姿はまばらです。残念ながら iPhone / iPad の筐体の製造工場の写真はないのですが、下の工具製造工場と類似の風景であることは間違いありません。
一方、アップル製品を組み立てる工場が下の光景(同じくNo.71に掲載した写真)ですが、ここはまさに "人海戦術 " です。アップルの製品は最新のデジタル技術を使い、先端のエレクトロニクス部品のオンパレードなのですが、最終組立ては人手に頼らざるを得ない。従って鴻海精密工業(ないしは、同業の製造受託会社)に委託せざるをえない。ここにアップルのビジネスモデルの最大の隘路があると考えられます。
もしアップル製品の最終組立てが出来るような「組立てロボット」ができたとしたらどうでしょうか。ものづくりは大変貌するに違いありません。ものづくりだけでなく、たとえば衣類の縫製ができるような「縫製ロボット」が出来たとしたら、ユニクロのビジネスモデルも大きく変わるでしょう。当然、工場の立地も変わってくる。
「組立てロボット」の開発は難しいはずです。まず人間の手に近い柔軟性を持ち、微細な動きが可能なロボット・ハンドを開発する必要があります。その制御プログラムも非常に難しそうです。高度な画像認識技術も必要だし、当然、学習する能力も必要で、つまりAIを駆使しなければならない。これは明らかに「次世代ロボット」の範疇に入るものです。
ロボットの導入コストも問題です。仮に、鴻海精密工業の中国工場の労働コストを1人・1ヶ月あたり日本円換算で10万円とすると(あくまで "仮に" です)、3交代で30万円、1年で約400万円になります。ロボットの減価償却期間を3年間とし、ランニングコストを無視すると、ロボットの価格が1200万円で人と同じということになります。ということは、その半分程度、たとえば500万円程度でロボットが導入できないと、人に置き代わるのは無理でしょう。その価格でロボットが大量生産できるかどうかです。あくまでざっとした見積もりですが、製造コスト面でも「次世代組立てロボット」は大きなチャレンジだということが分かります。中国より人件費が安い国もあります。
しかし障壁を乗り越えて「次世代組立てロボット」ができたとすると、産業構造が大きく変わります。アップルも、アメリカ国内の土地の値段が安い場所(ただし、道路のアクセスが良い所)を選んで自社工場を建ててもいいわけです。論理的にはそうなります。
ここで、前回の No.175「半沢直樹は機械化できる」で紹介したオックスフォード大学の研究チームの「雇用の未来」が思い当たります。このレポートは、AI技術によって仕事が機械に奪われる、その「奪われ易さ」を数値で出しているのですが、エレクトロニクス製品の組立て作業はどうなっているかです。レポートをみると、次の記述があります。
Electromechanical Equipment Assemblers は「何らかの稼働部(メカ)を電子制御する製品の組立て」であり、家電製品でいうと掃除機などでしょう。今問題にしているのは iPhone/iPad などのアップル製品の組立てなので Electrical and Electronic Equipment Assemblers の方です。この95%という確率は、全702の職業について機械に奪われそうな確率を並べた表で、上位から82番目にリストされています。意外にも、エレクトロニクス製品の組立ては機械に奪われる確率が高いと予測されているのです。前回のNo.175「半沢直樹は機械化できる」でも引用した、小林雅一著『AIの衝撃』からもう一度引用してみましょう。
この引用に書かれていることをまとめると、現代のコンピュータやロボットが苦手とする仕事は、二つのジャンルに分類される、つまり
の二種類というわけです。これは非常に納得できます。ところが、オックスフォード大学の研究チームの「雇用の未来」は見解が違います。
iPhone/iPad などのエレクトロニクス製品を組立てるには「繊細な人間の手の動きを忠実に再現するロボット・アーム」が必要なことは言うまでもありません。これが出来たとして、問題はそのロボット・アーム制御するコンピュータ・プログラムの作り方です。これは、従来の産業用ロボット的な発想では無理であり、小林氏が指摘するように、AI技術の要となっている「機械学習」が必須でしょう。たとえば、人間がロボット・アームを遠隔操縦して部品を掴む様子を動画に撮る。それを大量に集めて手と指の動きを解析する。人間は部品が少々ずれても微妙な指の動きで修正できます。部品と手の位置関係によって指をどう動かせばよいのか、それを大量データをもとにした機械学習でロボットに学ばせるというやり方です。
まとめると、精巧なメカと機械学習で「視覚や聴覚のような高度なパターン認識と、繊細な運動神経や移動運動などを組み合わせる仕事」は、ロボットに置き換えられていくというのがオックスフォード大学の予測なのです。一言で言うと、ロボットの「知能化」の効果です。
現在、工場内部で各種作業を行っている産業用ロボットですが、それらもいずれ「知能化」し、現在は人間でないと無理と思われる作業、たとえばエレクトロニクス製品の組立てとか、工業用ミシンを使った服の縫製などに乗り出していく、つまり産業用ロボットが「次世代ロボット」に変身していく。そういった将来が予測できるのです。
将棋電王戦に登場したロボットの話に戻ります。デンソーの「代指しロボット」は、
と見なすことができます(聴覚はありませんが)。つまりこのロボットを突き詰めていくと、製品組立てなどの、今はロボットには不可能と思われていることができる可能性があるのです。「代指しロボット」は、そういったデンソーの企業戦略の一環かもしれないのです。
「代指しロボット」が暗示する将来
デンソーの「代指しロボット」が予感させる産業用ロボットの将来として、「産業用ロボット・メーカーは衰退する」と「産業用ロボット・メーカーは変身し、発展する」の二つを書きました。改めてまとめると、将来についての次の2つのシナリオです。
この2つのシナリオの間の中間的な将来も考えれるでしょう。もちろん現在の産業用ロボットメーカーにとってのベストのシナリオは、シナリオ1における「AI技術に長けた勢力」に自らがなり、かつシナリオ2も実現させることです。
デンソーは、なぜ将棋電王戦に「代指しロボット」を提供したのでしょうか。おそらくその直接的な理由は、会社の認知度の向上でしょう。デンソーの顧客は自動車会社などの企業であり、一般消費者向けの製品は(ほとんど)作っていません。将棋電王戦に "参戦" することによって認知度を上げ、ブランドの強化につなげる。そういう思惑でしょう。
しかしはからずもこの "参戦" は、現在の日本の産業用ロボット・メーカーの将来を予見させるものとなった。その予見には「明るい将来」と「暗い将来」の両方が混在しています。そして重要なことは、日本の産業用ロボットの世界シェアは60%と極めて高く、現代日本の有力産業だということです。たとえ現在のロボット・メーカーの勢力地図が変わったとしても、産業全体としては「明るい方の将来」であって欲しいと思いました。
アップル製品の組立てが出来るような次世代ロボットが出現したら、産業構造が変わり、工場の立地も変わるだろうという意味のことを本文に書いたのですが、それに関連して、ドイツの有名なスポーツ・シューズのメーカー、アディダスが、ドイツ国内での靴の生産を再開するという記事を紹介します。
記事には書いてないのですが、アディダスとともに「スピード・ファクトリー」を立ち上げたのは、エクスラー(Oechsler GmbH)という会社です。ウェブサイトを見るとこの会社は、記事にあるように「自動車部品・医療機器メーカー」であって、ロボットメーカーではありません。ただ、グループ会社のエクスラー・モーションが工場自動化ラインに強みをもっているようです。ということは、既存の最新ロボットを使って、アディダスの「スポーツ・シューズ自動製造ライン」を作りあげたと推測できます。
この工場のロボットが「次世代ロボット」かどうかは別にして、アディダスの発表から分かることは、
ということです。もちろん、スポーツシューズをロボットで生産できたからといって、アップルの iPhone の自動組立てや、ユニクロのキャジュアル・ウェアの自動縫製ができるわけではありません(難易度が違う)。しかしこの記事は、ロボットが産業構造や社会構造を変えてしまう可能性を秘めていることを強く示唆しています。21世紀の大産業を一つだけあげよと言われたなら "次世代ロボット"と本文に書きましたが、その思いを強くしました。
第1期電王戦は、山崎隆之 八段 対 ポナンザで行われ、ポナンザの2連勝で終わりました(第1局:2016.4.9-10。第2局:2016.5.21-22)。この棋戦に挑む山崎隆之 八段に密着取材したドキュメントが、先日NHK総合で放映されました。「NEXT 未来のために 不屈の人間力で人工知能に挑む 山崎隆之 八段」(NHK総合。2016.6.18。17:30-18:00)です。
ドキュメントを見る限り、山崎 八段の敗因は「人間である限り避けられない心理面の弱さ」が現れてしまったという感じです。そういう風に受け取りました。歩を打ってじっと自重すべきところで攻撃に転じてしまう(第1戦)。角を切って決戦に突入すべきところで守りに回ってしまう(第2戦)。いずれも控え室の予想を裏切った手でした。もちろん控え室の予想通りで勝てたとは限りません。しかし山崎八段に心理的な迷いが生じ、それが指し手に現れてしまったと感じました。
しかし、このドキュメントの最後で山崎隆之八段が語った言葉は大変に印象的で "爽やかな" ものでした。
人工知能との戦いで山崎隆之 八段が感じたのは、自分の「変なこだわり」や「頭の堅さ」であり、彼自身がもっと欲しいのは「素直な吸収力」なのです。まさにこの "素直な" コメントは、人間と人工知能が共存していく未来を予感させるものでした。
補記1でアディダスが、スポーツシューズのドイツ国内生産を再開することを紹介しました。グローバルにビジネスを行っている日本企業で国内生産にこだわっている会社の一つがキヤノンです。そのキーワードは、ロボット技術を駆使したデジタルカメラの「完全自動生産」です。
2016年7月26日、キヤノンは2016年1月~6月の連結決算を発表しました。その関連記事から紹介します。
増子執行役員の言う「低コストでの自動化が実現できるよう、製品の構造や設計の工夫、部品の工夫が必要」というところがポイントだと思います。完全自動化はロボット技術だけの問題ではなく、部品設計・製品設計の課題でもあり、部品を調達する場合は部品メーカーをも巻き込むことになります。そして、このような "総力戦" は、まさに日本企業の最も得意とするところだと思いました。
「補記1:アディダスの国内回帰」の続報です。アディダスは先進国において靴のロボット生産を展開し、世界シェア1位のナイキを追撃する戦略を加速しているようです。米国での生産開始の記事がありました。
産業用ロボット
ロボットはすでに現代社会において広く使われています。いわゆる「産業用ロボット」で、主に工場や倉庫で活躍しています。ここで言う "ロボット" とは、単なる機械ではありません。複数の工程や手順の組み合わせを自律的に行って、まとまった仕事や人に対するサービスを行う機械です。単一の動作、たとえば "瓶に液体を積める作業" だけを繰り返す機械は、ロボットとは言いません。また常に人間の指示によって動く機械、たとえば建設現場のクレーンや遠隔操縦のマジックハンドのような「非自律的な機械」も、ふつうロボットとは言いません。複数手順の組み合わせを自律的に行うのがロボットであり、そのうち、主として工場・倉庫などで使われているのが産業用ロボットです。具体的な用途としては、自動車の生産ラインにおける溶接や塗装、製品や部品の搬送、部品の研磨、電子部品の装着、製品の検査などがあります。
No.71「アップルとフォックスコン」で書いたマシニングセンター(工作機械の一種)は、ふつう "ロボット" とは呼びませんが、ロボットと同等の機械です。鴻海精密工業は、iPad / iPhone の外装ボディを金属塊から削って作っていますが、ここで使われているマシニングセンターは、複数のドリル・工具をとっかえひっかえして "自律的に" iPad/iPhone の複雑な曲面を切削していきます。日本のファナックの製品名は「ロボドリル」であり、このネーミングは産業用ロボットだと言っているわけです。
以上のように産業用ロボットは「自律的」に動作するのですが、この動作は人間があらかじめ "教え込んだ" ものです。一連の動作をどう進めるか、どういう条件ならどいういう風に動作を変えるかなどがあらかじめ詳しく指示されていて、その指示がプログラムとしてロボットの制御装置の中に内蔵されています。この指示通りにロボットは動きます。
産業用ロボットは日本の有力産業であり、世界のシェアの60%程度は日本企業が占めています。安川電機、ファナック、川崎重工、不二越、パナソニック、ヤマハ発動機、デンソーなどが有力メーカーです。
次世代ロボット
一方、産業用ロボットと対比する形で、今後大きく伸びると考えられているロボットがあります。それを「次世代ロボット」と呼ぶことにします。次世代ロボットは次のような特徴を備えています。
 知能化  |
まず、人間の「脳の働き」がメジャーだと考えられている仕事を行うという特徴があります。力仕事や高速動作などの "物理的身体能力" を越えた仕事やサービスを行うのが次世代ロボットです。何点かの例をあげます。
・ | 二足歩行 人間とは "二足歩行するサル" という言い方もあるぐらいです。二足歩行は人間の顕著な特徴であり、脳の複雑な機能で達成されています。この二足歩行ロボットの先駆けとなったのは本田技術研究所の ASIMO です。二足歩行は、平坦な床ならまだしも、"階段を上る・下る" となるととたんに難しくなるし、"瓦礫の中を進む" となると格段に難しくなります。 | ||
・ | 画像認識や音声認識 画像から意味を認識するのも、知能の働きです。たとえば手書き文字を認識したり、猫の写真をみて猫だと認識したり、顔の画像から同じ人だとわかるといった認識機能です。 | ||
・ | 言語認識 画像や音声の認識をベースに、もっと高度な知能として言葉の認識があります。言葉の意味を理解して、行動したり質問に答えたりするものです。 |
また、これらの機能が「固定的ではない」のが次世代ロボットです。つまり次世代ロボットの特徴として次があげられます。
◆ | 学習する ソニーのAIBOやソフトバンクのPepperがそうであるように、次世代ロボットは学習し、成長します。つまり、
| ||||||||||||||
◆ | 類推する あらかじめ学習しなかった状況、いままで無かった状況にも対応します。新しい状況にどう対応すべきか、過去の経験をもとに類推し、推論して行動を決めることができます。 これは、No.174「ディープマインド」で書いたコンピュータ将棋のプログラムと本質的に同じです。プロ棋士の過去の指し手をもとに、局面の優劣を判断する「評価関数」が決まるのですが、この評価関数はもちろん過去に現れなかった局面でも優劣を判定できます。将棋のは、序盤はともかく特に終盤は過去の棋譜と同じ形が現れることはまずないので、類推・推論ができないとコンピュータ将棋のプログラムにはなりません。 |
 社会で活躍  |
工場や倉庫だけでなく、家庭、病院、オフィス、公共施設、小売店の店頭、リクレーション施設、道路、空、農場、牧場、海や河川、など、社会のさまざまな場所やシーンにロボットの活躍の場が広がります。その目的も、エンターテインメントから、移動、介護、窓口対応、案内、危険作業まで、さまざまです。
一つだけ例をあげると、道路を活躍の場とする自動運転車です。これは次世代ロボットの代表と言っていいでしょう。自動車各社は自動運転の公道実験を繰り返しているようで、実現時期を公表している会社もあります。公表時期が一番早いのは日産自動車で、2016年に高速道路の1車線、2018年に高速道路の複数車線、2020年に交差点を含む市街地となっています。2016年4月15日の日経新聞は、高速道路での自動運転ができるミニバン(セレナ)を2016年8月に売り出すと報じました。
高速道路の1車線限定でも自動運転ができれば、そのメリットは大です。高速道路の長距離運転をしていて一番怖いのは(私にとっては)居眠りです。眠気を感じてゾッとすることがある。万一、事故を起こしたら・・・・・・と思ってゾッとするわけです。もちろん "休み 休み" 運転するのが大原則ですが、自動運転モードにすることが可能だと非常に大きな安心材料になります。
自動運転ではありませんが、一般的になってきた「自動ブレーキ」だけでもメリットは大きい。スバル車の自動ブレーキ機能(EyeSight)を搭載したクルマは、非搭載車より1万台あたりの追突事故件数が84%も減ったそうです。スバルが2016年2月にこの調査データを公表しました。自動ブレーキだけでこの効果です。自動運転が実用化されると交通事故は激減するでしょう。
さらに、任意の道路での自動運転までいかなくても、たとえば過疎地において「自宅と、指定した数カ所を巡回するだけの自動運転」が実用化できれば、高齢者の足の確保に大きな威力を発揮するはずです。地方再生にもつながるでしょう。
 動かないロボット  |
「知能化」が大きな特徴だとすると、その特徴を生かすなら「次世代ロボットは動かなくてもいい」わけです。この点で、今後一番ホットな開発競争なるのは、個人が常時携帯するスマートフォンでしょう。
No.159「AIBOは最後のモルモットか」でスマートフォンのビジネスを展開するソニーモバイルコミュニケーションズの話を書いたのですが、そこで「知性をもち、個人に対して働きかけ、役立つスマホ」や、「人工知能(AI)やロボティックスが非常に重要な要素」といった会社幹部の発言を紹介しました。全くその通りだと思います。
いろいろと書きましたが、もちろん次世代ロボットが上にあげたすべての特徴を持つというわけではありません。部分的な特徴から順次組み込まれていくはずです。現在の工場で働いている検査用ロボットの中には、画像認識だけで不良品を検出するものがあります。これなどは「次世代ロボット」の先駆けでしょう。また「知能」と言っても程度問題です。どういう特徴を備えたら「知能」と言えるのか、明確になっているわけではありません。
つまり「産業用ロボット」と「次世代ロボット」の区別は厳密なものではなく、両者の境界に属するようなロボットもいろいろあります。あくまでロボットのトレンドとして、ないしはロボット産業の方向性として、今までは「産業用ロボット」が市場の中心だったが、今後は「次世代ロボット」にシフトしていく、そいういう傾向だと言いたいわけです。そして重要なのは、
21世紀の大産業を一つだけあげよ、と言われたとしたら、その答えは「次世代ロボット」 |
だと思うのです。ここに世界の産業の浮沈、大げさにいうと国の経済の盛衰がかかっていると思うのです。
将棋電王戦
以上の「産業用ロボット」と「次世代ロボット」を踏まえた上で、題名にあげた「将棋電王戦」を考えてみたいと思います。将棋電王戦は、将棋のプロ棋士とコンピュータ将棋がハンディキャップなして戦う棋戦で、ドワンゴと日本将棋連盟が主催し、過去何回か行われました。現在も「第1期 電王戦」が進行中です(2016.5.13現在)。
① | 第1回 将棋電王戦 | 2012年 | ||||
② | 第2回 将棋電王戦 | 2013年 | ||||
③ | 第3回 将棋電王戦 | 2014年 | ||||
④ | 将棋電王戦 FINAL | 2015年 | ||||
⑤ | 第1期 電王戦 | 2016年 |
①は米長邦雄永世棋聖との1番勝負、②~④は、プロ棋士とコンピュータ将棋の団体戦(5番勝負)でしたが、⑤から方式が変わりました。⑤は、ドワンゴがスポンサーになって2015年から始まった「叡王戦」の優勝者と、コンピュータ将棋選手権「将棋電王トーナメント」の優勝プログラムとの頂上決戦(2番勝負)です。2016年は山崎隆之 八段と ポナンザ(ponanza。山本一成氏が開発したコンピュータ将棋プログラム) の戦いです(ポナンザ が先勝。2016.5.13現在。第2局は2016.5.21-22)。
ここでは、プロ棋士とコンピュータ将棋の勝ち負けを論じるのが目的ではありません。注目したいのは、この電王戦のためにデンソーが開発した将棋用ロボット(コンピュータの代わりに将棋を指すロボット=代指しロボット)です。以下はその話です。
デンソーが開発した「代指しロボット」
株式会社 デンソーは、2014年の第3回将棋電王戦から、コンピュータ将棋のプログラムの指令に従って将棋を指すロボットを提供しています。プログラムの代わりに将棋を指すので「代指しロボット」と呼ばれています。その後、改良が続けられて、現在は第3代目になっています。このロボットはデンソーの子会社、デンソーウェーブが開発したものですが、以降、デンソーもデンソーウェーブも区別せずに "デンソー" と記述します。
年 | 棋戦 | ロボット名称 |
2014年 | 第3回 将棋電王戦 | 電王手くん |
2015年 | 将棋電王戦 FINAL | 電王手さん |
2016年 | 第1期 電王戦 | 新電王手さん |
将棋電王戦 FINAL・第2局の対戦風景(2015年3月23日)。プロ棋士は永瀬拓矢六段。ロボットはデンソーが開発した「電王手さん」。永瀬六段が勝利した。
(日本将棋連盟のホームページより)
|
まずデンソーのホームページから、これらのロボットの説明をみてみましょう。下線は原文にはありません。
|
電王手くん
(デンソーのホームページより)
|
最初に開発された「電王手くん」は、画像認識の技術が駆使されていて、駒をつかんで置くために「吸着」が使われていることが分かります。
|
電王手さん
(デンソーのホームページより)
|
最初に開発された「電王手くん」では、駒をつかむために "吸着" が使われていました。吸着は工場のロボットでモノを搬送するのに広く使われている技術です。ホームページの説明にあるように、上から駒を吸い付けるので「隣の駒に触れることがない」というメリットがありました。
しかし第2世代の「電王手さん」では吸着を使わず、駒をはさむ特殊なグリップが開発されました。駒をはさんでも隣の駒に影響を与えない小型のグリップで、しかも駒を裏返しにできるという特殊なものです。おそらくデンソーの開発陣としては、吸着を使っているのでは技術者のプライドが許さない、どうしても人間の手の動きと同様のグリップを実現したかったのでしょう。技術者魂を感じるロボットです。
|
新電王手さん
(デンソーのホームページより)
|
第3世代の「新電王手さん」は、第2世代の技術を継承しつつ、消音化と高速化がされたようです。ということは、代指しロボットとしては一応の完成域に近づいたということだと思います。
これらのロボットを開発したデンソーの技術者のチャレンジ精神と開発力は大したものだと思います。何しろ、全く前例のない世界最初のロボットです(あたりまえだけれど)。本物の将棋盤と駒を使い、画像認識技術を駆使し、専用に開発したロボットアームとグリップの微妙な動きを制御しなれければならない。
最も大変だったのは、ロボット動作の信頼性の確保ではないでしょうか。対戦相手は生身の人間であるプロ棋士です。ロボットの誤動作や不正確な駒の動きは許されないし、駒を盤上に落とすようなこともあってはならない。工場のロボットであれは、ラインを止めてやり直しができます。しかし一発勝負ではだめです。プロ棋士の方も、コンピュータに負けるのは恥という意識があるはずだから、真剣勝負です。トラブルが起こると対局の雰囲気を壊し、プロ棋士のリズムを乱してしまう。そうなるとデンソーとしても責任を問われるでしょう。全国の将棋ファンが固唾をのんで見守る棋戦を「ぶちこわす」ことにもなりかねない。また、デンソーのロゴをつけたロボットが大舞台でトラブルとなると、ブランド・イメージにもマイナスになるでしょう。
こういったハードルとプレッシャーを越えて、過去3回の棋戦を乗り切ったデンソーの技術陣は、大いに賞賛されてしかるべきだと思います。
産業用ロボット・メーカーは衰退する
しかしプロ棋士と「代指しロボット」が対決する動画や画像を見ていて、私としては大きな違和感というか、奇妙で複雑な感じを受けたのです。というのも「代指しロボット」に対する指令は、すべてコンピュータ将棋のプログラムが与えているからです。つまり「プログラム + ロボット」で1人の人間だと考えると、
・ | コンピュータ将棋のプログラムが「頭脳」 | ||
・ | ロボットが「腕と手と指」 |
に相当するのは明らかです。ロボットがやっていることは、あくまでプログラムの「代指し」に過ぎない。
さきほど書いたように、この「代指しロボット」には最先端の技術が盛り込まれています。ロボット技術者たちのチャレンジ精神も詰まっている。しかしそれでもなおかつ「代指しロボット」は "コンピュータ将棋プログラム = 頭脳" の "しもべ" であって、意志を持たない機械に過ぎません。そういうポジションに "成り下がっている" のです。どんなに「代指しロボット」が将棋をうまく指したとしても、また成り駒がうまくできたとしても、棋戦としての価値の100%はコンピュータ将棋のプログラムにあるのです。
デンソーは自動車部品メーカーとして有名ですが、一つの顔は産業用ロボットのメーカーです。「代指しロボット」は "産業" に使われるわけではありませんが、機能としては "産業用ロボット" の典型です。一方、コンピュータ将棋プログラムと代指しロボットを合わせた「複合体」を考えると、この複合体は "次世代ロボット"の典型と言えるでしょう。ゲームをプレーするまでの知能を備えた、エンターテインメント分野の次世代ロボットです。「代指しロボット」のハードウェアの中にコンピュータを埋め込み、そこでコンピュータ将棋のプログラムを動かすことなど、いくらでも(やろうと思えば)できます。対戦するプロ棋士が指した手を画像認識で判別することだってできる。そうなると本当の「将棋指しロボット」ということになります。
将棋電王戦で我々が見た光景は、産業用ロボットが次世代ロボットに置き替わっていき、現在の産業用ロボットメーカーが衰退していくことの「暗示」 |
だと思えたのです。さきほど書いた「違和感」や「奇妙なで複雑な感じ」は、そいういうところからきています。
デンソーの経営陣は、将棋電王戦を見て危機感を覚えたはずです。それは、デンソーとの取引関係が深いトヨタ自動車を考えてみるとすぐに分かります。トヨタの経営陣は、グーグルがトヨタ車を改造した自動運転車の公道実験をしている映像を見て、最大級の危機感を抱いたはずです。将来の自動車の「価値」がグーグルに握られるのではないかと・・・・・・。それと同じ構図が、コンピュータ将棋のプログラムと代指しロボットです。自動車(ロボット)技術者が精魂を傾けて開発した機械が、それとは全く無関係なソフトウェア技術者によって意のままに操られている。その操り方にこそすべての価値がある。全く同じ構図です。デンソー経営陣が危機感を抱かなかったはずがない。
ちなみに、2016年の第1期 電王戦を山崎隆之 八段と戦っているコンピュータ将棋プログラムは「ポナンザ」ですが、このプログラムを開発した山本一成氏は、AI応用ソフトを開発するベンチャービジネス、HEROZ(ヒーローズ。東京)の社員です。第1期 電王戦は、ベンチャーの頭脳が大企業(デンソー)の腕・手・指をあやつる構図なのです。
それともデンソー経営陣は「将棋はゲームだから大したことはない」と思ったでしょうか。しかし、ゲームを侮ってはいけません。No.174「ディープマインド」で書いたように、ディープマインド社のAI技術を使った「アルファ碁」は世界トップクラスの囲碁棋士に勝ったのですが、歴史的に眺めてみると、そこで使われたAI技術(深層強化学習)は「ゲームに導かれた革新」だったわけです。
デンソーのホームページを見ると、代指しロボットの開発経緯に取材した動画が公開されています(2016.5.13 現在)。技術者としてこの開発成果を誇るのは当然だし、またデンソーの広報部としてもPR(= Public Relation)の観点から、ホームページの目玉の一つとして掲載しているのだと思います。しかしもっと大きな視点からすると、代指しロボットを短期間に開発したことを誇るだけでいいのかと思うわけです。局所的に素晴らしいが大局には遅れる、ないしは、局所的に素晴らしいからこそ大局に遅れる、ということがあるのではないか。
デンソーは、代指しロボットの開発を契機に「コンピュータ将棋選手権」に参戦すべきだったと思うのですが、どうでしょうか。もちろんコンピュータ将棋のプログラムの開発は一朝一夕にはできません。すでに「コンピュータ将棋選手権」に参戦されている開発者の方に "三顧の礼を尽くして"、デンソーに迎える。そして、コンピュータ将棋のプログラムを開発するとともに、デンソーのAI技術のアドバイザーをしてもらう。ことによっては、別にAIの専門家を迎えて「本格的にAI技術や深層学習を使ったコンピュータ将棋プログラム」を開発してもいいわけです。繰り返しになりますが「知能をコンピュータで実現する技術 = AI技術」の活用は、単にゲームにとどまりません。No.174のディープマインド社は、コンピュータ囲碁ソフトを開発する会社でなく、そこで得られた技術をさまざまな社会問題にまで応用しようとしている会社です。
デンソーはロボットメーカーとしては中堅ですが、自動車部品メーカーとしては日本最大の会社であり、世界でも有数の会社です。そのデンソーが目標とする自動車部品メーカーはドイツのボッシュ社でしょう。そのボッシュは、自動運転の研究を大々的にやっています。その自動運転で使われる重要技術がAIです。上に書いたように、自動運転車こそ次世代ロボットの典型であり、自動車部品メーカーの雄であるデンソーは、そこに深くコミットせざるを得ないはずです。その自動運転車と将棋を指すロボットは「次世代ロボット」というキーワードでつながっていると思うのです。
自動車が知能化していくように、産業用ロボットも知能化して次世代ロボットへと変身していかざるを得ない。これには他の理由もあります。現在の産業用ロボットのメーカーは、ある競争にさらされようとしているからです。日経新聞の比奈田記者は、最近、次のような記事を書いていました。
|
比奈田記者が書いている産業用ロボットのキーデバイスですが、ロボットのすべての関節にはモーターとともに "精密減速機" が内蔵されています。精密減速機がモーターの回転数を大きく落とすことで、ロボットは強い力を発揮する。この産業用ロボット用の精密減速機で世界の60%ものシェアを握っているのが、日本のナブテスコです。上の記事にある「デンマークの産業用ロボットベンチャー、ユニバーサルロボット」が、ナブテスコから精密減速機を調達しているということは大いにありうると思います。
比奈田記者は産業用ロボットを液晶テレビになぞらえていいますが、これはちょっと違うのではと思います。液晶テレビはロボット(=メカトロニクス製品)と違い、完全なエレクトロニクス製品(動かない、デジタル製品)だからです。しかし、ごくマクロ的なアナロジーとして読めば理解できます。そして、比奈田記者の言うビジネスモデルの転換のための重要技術が、個々のロボットの高度な作業や、工場全体のロボット群の協調作業を見据えた「知能化」だと思います。
以上の状況を考えると、将棋電王戦で、頭脳に相当するコンピュータの指示どおりに黙々と "手" を動かしているだけの「代指しロボット」は、それがいかに技術的に優れていたとしても、ロボット・ビジネスとしての凋落を暗示するように思えてしまったのです。開発したデンソーは自動車部品の大会社であり、かつ産業用ロボットメーカーです。知能化の研究や先行開発は社内で鋭意やっているのでしょう。しかし、将棋電王戦だけをみると凋落に見えたということです。
産業用ロボット・メーカーは変身し、発展する
ここまで、将棋電王戦の「代指しロボット」について否定的なことを書いたのですが、もう一度よくよく考えてみると、この「代指しロボット」は、産業用ロボットメーカーであるデンソーの大きな戦略の一環かもしれないとも思えました。それはこのロボットが、将棋の駒をつかむときの人間の(プロ棋士の)手と指の動きと同等の働きをするからです。つまりこの代指しロボットは「人間の手と指の微妙な動きを完全に模擬できるロボットを開発する」という、デンソーの大きな企業目標の一つとして位置づけられているのかもしれないと思ったわけです。
ここで思い出すのは、No.71「アップルとフォックスコン」で紹介した鴻海精密工業の工場の光景です。鴻海精密工業はアップル製品(iPhone や iPad など)の筐体(= 外装ボディ)を金属の塊から "削り出す" ことで製造しています。そのための工具を自社生産する工場の様子が、下の写真の右中です(No.71に掲載した写真)。小型のマシニング・センター(=産業用ロボット)がズラッと並び、当然のことながら、人の姿はまばらです。残念ながら iPhone / iPad の筐体の製造工場の写真はないのですが、下の工具製造工場と類似の風景であることは間違いありません。
アップル製品の筐体と、製造のための工具、工具製造工場。工作機は数万台ある。必要な工具は内製している(日経ものづくり 2012年 11月号より引用。出典はフォックスコンの社内報「画説富士康」2010.7) |
一方、アップル製品を組み立てる工場が下の光景(同じくNo.71に掲載した写真)ですが、ここはまさに "人海戦術 " です。アップルの製品は最新のデジタル技術を使い、先端のエレクトロニクス部品のオンパレードなのですが、最終組立ては人手に頼らざるを得ない。従って鴻海精密工業(ないしは、同業の製造受託会社)に委託せざるをえない。ここにアップルのビジネスモデルの最大の隘路があると考えられます。
フォックスコンの組み立て工場(日経ものづくり 2012年 11月号より引用。出典はフォックスコンの社内報「画説富士康」2010.7) |
もしアップル製品の最終組立てが出来るような「組立てロボット」ができたとしたらどうでしょうか。ものづくりは大変貌するに違いありません。ものづくりだけでなく、たとえば衣類の縫製ができるような「縫製ロボット」が出来たとしたら、ユニクロのビジネスモデルも大きく変わるでしょう。当然、工場の立地も変わってくる。
「組立てロボット」の開発は難しいはずです。まず人間の手に近い柔軟性を持ち、微細な動きが可能なロボット・ハンドを開発する必要があります。その制御プログラムも非常に難しそうです。高度な画像認識技術も必要だし、当然、学習する能力も必要で、つまりAIを駆使しなければならない。これは明らかに「次世代ロボット」の範疇に入るものです。
ロボットの導入コストも問題です。仮に、鴻海精密工業の中国工場の労働コストを1人・1ヶ月あたり日本円換算で10万円とすると(あくまで "仮に" です)、3交代で30万円、1年で約400万円になります。ロボットの減価償却期間を3年間とし、ランニングコストを無視すると、ロボットの価格が1200万円で人と同じということになります。ということは、その半分程度、たとえば500万円程度でロボットが導入できないと、人に置き代わるのは無理でしょう。その価格でロボットが大量生産できるかどうかです。あくまでざっとした見積もりですが、製造コスト面でも「次世代組立てロボット」は大きなチャレンジだということが分かります。中国より人件費が安い国もあります。
しかし障壁を乗り越えて「次世代組立てロボット」ができたとすると、産業構造が大きく変わります。アップルも、アメリカ国内の土地の値段が安い場所(ただし、道路のアクセスが良い所)を選んで自社工場を建ててもいいわけです。論理的にはそうなります。
ここで、前回の No.175「半沢直樹は機械化できる」で紹介したオックスフォード大学の研究チームの「雇用の未来」が思い当たります。このレポートは、AI技術によって仕事が機械に奪われる、その「奪われ易さ」を数値で出しているのですが、エレクトロニクス製品の組立て作業はどうなっているかです。レポートをみると、次の記述があります。
職 業 | 奪われる確率 |
Electromechanical Equipment Assemblers | 97% |
Electrical and Electronic Equipment Assemblers | 95% |
Electromechanical Equipment Assemblers は「何らかの稼働部(メカ)を電子制御する製品の組立て」であり、家電製品でいうと掃除機などでしょう。今問題にしているのは iPhone/iPad などのアップル製品の組立てなので Electrical and Electronic Equipment Assemblers の方です。この95%という確率は、全702の職業について機械に奪われそうな確率を並べた表で、上位から82番目にリストされています。意外にも、エレクトロニクス製品の組立ては機械に奪われる確率が高いと予測されているのです。前回のNo.175「半沢直樹は機械化できる」でも引用した、小林雅一著『AIの衝撃』からもう一度引用してみましょう。
|
この引用に書かれていることをまとめると、現代のコンピュータやロボットが苦手とする仕事は、二つのジャンルに分類される、つまり
◆ | 創造的な仕事、高度なコミュニケーション能力が必要な仕事、芸術的な仕事(=高収入) | ||
◆ | 視覚や聴覚のような高度なパターン認識と、繊細な運動神経や移動運動などを組み合わせる仕事(=低収入) |
の二種類というわけです。これは非常に納得できます。ところが、オックスフォード大学の研究チームの「雇用の未来」は見解が違います。
|
|
iPhone/iPad などのエレクトロニクス製品を組立てるには「繊細な人間の手の動きを忠実に再現するロボット・アーム」が必要なことは言うまでもありません。これが出来たとして、問題はそのロボット・アーム制御するコンピュータ・プログラムの作り方です。これは、従来の産業用ロボット的な発想では無理であり、小林氏が指摘するように、AI技術の要となっている「機械学習」が必須でしょう。たとえば、人間がロボット・アームを遠隔操縦して部品を掴む様子を動画に撮る。それを大量に集めて手と指の動きを解析する。人間は部品が少々ずれても微妙な指の動きで修正できます。部品と手の位置関係によって指をどう動かせばよいのか、それを大量データをもとにした機械学習でロボットに学ばせるというやり方です。
まとめると、精巧なメカと機械学習で「視覚や聴覚のような高度なパターン認識と、繊細な運動神経や移動運動などを組み合わせる仕事」は、ロボットに置き換えられていくというのがオックスフォード大学の予測なのです。一言で言うと、ロボットの「知能化」の効果です。
現在、工場内部で各種作業を行っている産業用ロボットですが、それらもいずれ「知能化」し、現在は人間でないと無理と思われる作業、たとえばエレクトロニクス製品の組立てとか、工業用ミシンを使った服の縫製などに乗り出していく、つまり産業用ロボットが「次世代ロボット」に変身していく。そういった将来が予測できるのです。
将棋電王戦に登場したロボットの話に戻ります。デンソーの「代指しロボット」は、
視覚や聴覚のような高度なパターン認識と、繊細な運動神経や移動運動などを組み合わせる仕事の、ごく初期段階を実現したもの |
と見なすことができます(聴覚はありませんが)。つまりこのロボットを突き詰めていくと、製品組立てなどの、今はロボットには不可能と思われていることができる可能性があるのです。「代指しロボット」は、そういったデンソーの企業戦略の一環かもしれないのです。
「代指しロボット」が暗示する将来
デンソーの「代指しロボット」が予感させる産業用ロボットの将来として、「産業用ロボット・メーカーは衰退する」と「産業用ロボット・メーカーは変身し、発展する」の二つを書きました。改めてまとめると、将来についての次の2つのシナリオです。
◆ | シナリオ1 AI技術に長けた勢力が勃興して「知能」の部分を担当し、現在の産業用ロボットメーカーはその手足となって指示どおりに動く存在となる。もちろん知能とモノとの接点である「手足」がなくなることはないが、全体としての価値が他企業に移転し、現在のメーカーは実質的に衰退する。 | ||
◆ | シナリオ2 現在の産業用ロボットは、知能をもった「次世代産業用ロボット」へと高度化し、組立てや縫製などの(現状のロボットでは無理な)複雑な仕事を担当することになる。つまり産業用ロボットメーカーは変身して、発展する。 |
この2つのシナリオの間の中間的な将来も考えれるでしょう。もちろん現在の産業用ロボットメーカーにとってのベストのシナリオは、シナリオ1における「AI技術に長けた勢力」に自らがなり、かつシナリオ2も実現させることです。
デンソーは、なぜ将棋電王戦に「代指しロボット」を提供したのでしょうか。おそらくその直接的な理由は、会社の認知度の向上でしょう。デンソーの顧客は自動車会社などの企業であり、一般消費者向けの製品は(ほとんど)作っていません。将棋電王戦に "参戦" することによって認知度を上げ、ブランドの強化につなげる。そういう思惑でしょう。
しかしはからずもこの "参戦" は、現在の日本の産業用ロボット・メーカーの将来を予見させるものとなった。その予見には「明るい将来」と「暗い将来」の両方が混在しています。そして重要なことは、日本の産業用ロボットの世界シェアは60%と極めて高く、現代日本の有力産業だということです。たとえ現在のロボット・メーカーの勢力地図が変わったとしても、産業全体としては「明るい方の将来」であって欲しいと思いました。
 補記1:アディダスの国内回帰  |
アップル製品の組立てが出来るような次世代ロボットが出現したら、産業構造が変わり、工場の立地も変わるだろうという意味のことを本文に書いたのですが、それに関連して、ドイツの有名なスポーツ・シューズのメーカー、アディダスが、ドイツ国内での靴の生産を再開するという記事を紹介します。
|
記事には書いてないのですが、アディダスとともに「スピード・ファクトリー」を立ち上げたのは、エクスラー(Oechsler GmbH)という会社です。ウェブサイトを見るとこの会社は、記事にあるように「自動車部品・医療機器メーカー」であって、ロボットメーカーではありません。ただ、グループ会社のエクスラー・モーションが工場自動化ラインに強みをもっているようです。ということは、既存の最新ロボットを使って、アディダスの「スポーツ・シューズ自動製造ライン」を作りあげたと推測できます。
この工場のロボットが「次世代ロボット」かどうかは別にして、アディダスの発表から分かることは、
◆ | 24年ぶりに雇用がドイツ国内に復活(回帰)した。 | ||
◆ | しかしその雇用は、24年前の「スポーツシューズを手で作る」という仕事ではなく「ロボットを開発・製造する」仕事、ないしは「ロボットを工場ラインへ設置し、維持・管理する」仕事へとシフトした。 |
ということです。もちろん、スポーツシューズをロボットで生産できたからといって、アップルの iPhone の自動組立てや、ユニクロのキャジュアル・ウェアの自動縫製ができるわけではありません(難易度が違う)。しかしこの記事は、ロボットが産業構造や社会構造を変えてしまう可能性を秘めていることを強く示唆しています。21世紀の大産業を一つだけあげよと言われたなら "次世代ロボット"と本文に書きましたが、その思いを強くしました。
 補記2:電王戦を戦った山崎隆之 八段  |
第1期電王戦は、山崎隆之 八段 対 ポナンザで行われ、ポナンザの2連勝で終わりました(第1局:2016.4.9-10。第2局:2016.5.21-22)。この棋戦に挑む山崎隆之 八段に密着取材したドキュメントが、先日NHK総合で放映されました。「NEXT 未来のために 不屈の人間力で人工知能に挑む 山崎隆之 八段」(NHK総合。2016.6.18。17:30-18:00)です。
ドキュメントを見る限り、山崎 八段の敗因は「人間である限り避けられない心理面の弱さ」が現れてしまったという感じです。そういう風に受け取りました。歩を打ってじっと自重すべきところで攻撃に転じてしまう(第1戦)。角を切って決戦に突入すべきところで守りに回ってしまう(第2戦)。いずれも控え室の予想を裏切った手でした。もちろん控え室の予想通りで勝てたとは限りません。しかし山崎八段に心理的な迷いが生じ、それが指し手に現れてしまったと感じました。
しかし、このドキュメントの最後で山崎隆之八段が語った言葉は大変に印象的で "爽やかな" ものでした。
|
人工知能との戦いで山崎隆之 八段が感じたのは、自分の「変なこだわり」や「頭の堅さ」であり、彼自身がもっと欲しいのは「素直な吸収力」なのです。まさにこの "素直な" コメントは、人間と人工知能が共存していく未来を予感させるものでした。
第1期電王戦 第1局。2日目の朝に封じ手を指す 山崎隆之 八段。岩手県平泉町中尊寺。2016年4月10日。
(site : www.asahi.com)
|
 補記3:キヤノンの完全自動生産  |
補記1でアディダスが、スポーツシューズのドイツ国内生産を再開することを紹介しました。グローバルにビジネスを行っている日本企業で国内生産にこだわっている会社の一つがキヤノンです。そのキーワードは、ロボット技術を駆使したデジタルカメラの「完全自動生産」です。
2016年7月26日、キヤノンは2016年1月~6月の連結決算を発表しました。その関連記事から紹介します。
|
|
増子執行役員の言う「低コストでの自動化が実現できるよう、製品の構造や設計の工夫、部品の工夫が必要」というところがポイントだと思います。完全自動化はロボット技術だけの問題ではなく、部品設計・製品設計の課題でもあり、部品を調達する場合は部品メーカーをも巻き込むことになります。そして、このような "総力戦" は、まさに日本企業の最も得意とするところだと思いました。
 補記4:アディダスの米国生産  |
「補記1:アディダスの国内回帰」の続報です。アディダスは先進国において靴のロボット生産を展開し、世界シェア1位のナイキを追撃する戦略を加速しているようです。米国での生産開始の記事がありました。
|
No.175 - 半沢直樹は機械化できる [技術]
No.173「インフルエンザの流行はGoogleが予測する」と No.174「ディープマインド」は、いずれもAI(Artificial Intelligence。人工知能)の研究、ないしはAI技術によるビッグデータ解析の話でした。その継続で、AIについての話題です。
AI(人工知能)が広まってくると「今まで人間がやっていた仕事、人間しかできないと思われていた仕事で、AIに置き換えられるものが出てくるだろう」と予測されています。これについて、国立情報学研究所の新井紀子教授が新聞にユニークなコラムを書いていたので、それをまず紹介したいと思います。新井教授は、例の「ロボットは東大に入れるか」プロジェクトのディレクターです。
金融におけるITの活用
新井教授は、金融サービスにおける "フィンテック" が日本を含む世界で熱を帯びていることから話を始めます。
2014年末、三井住友銀行とみずほ銀行は、コールセンター業務にIBMの人工知能コンピュータ「ワトソン」を導入すると発表しました。新井教授はそういった銀行業界の動きを言っています。しかし新井教授によると、窓口業務よりも、もっとAI向きの銀行業務があると言います。
こういうコラムを読むと、研究者と言えども一般向けに文章を書く(ないしは講演をする)ときには、言葉の使い方が極めて重要だということがよく分かります。「銀行の融資業務は機械化できる」というよりも、「半沢直樹は機械化できる」と言った方が圧倒的にインパクトが強いわけです。研究者も、言いたい事の本質を伝えられる。
新井教授が主導している「ロボットは東大に入れるか」プロジェクトも同じです。「ロボットは大学入試に受かるか」ではなく、あえて「東大」としてあります。プロジェクトの存在感を内外に示すためには、ここは是非とも「東大」でないとまずいのでしょう。しかも最後は「か」という疑問形です。このプロジェクトによって「ロボットが東大に入れるようになるのか、ならないのか、分からない」ようにしてあるわけです。想像ですが、ロボットが東大入試問題を解いて合格するのは無理だと、新井教授は思っているのではないでしょうか。特定の科目で合格点をとるならまだしも・・・・・・。しかし、無理だと言ってしまうと身もフタもない。国立の研究所としては、このプロジェクトを進めることで日本のAI研究を底上げするのが目的でしょうから、ここは疑問形が最適なのですね。
コラムに戻って、では、新井教授は銀行の窓口業務をどう考えているのでしょうか。
確かに窓口での対応は、銀行が顧客に直に接する最前線の一つです。融資担当者(ローンオフィサー)も最前線ですが、接する顧客の数が全く違います。窓口では、顧客のそのときの状況にマッチした「一期一会」の対応が、本来、大変に需要なのです。
アマゾンによる与信審査の完全自動化
新井教授がコラムの最後で書いている「与信審査の完全自動化」ですが、アマゾンはすでに日本でもやっています。
アマゾンにとってみると、適切な事業者(=アマゾン出店者)に、適切な金額を必要な時期に融資できれば、アマゾン経由の通販の量が増え、それによって手数料収入が増える。さらに融資の金利が収入になる。一石二鳥とはこのことでしょう。
事業者のビジネス動向をつぶさにとらえられるという、インターネット通販の特性を生かしたアマゾンのビジネスです。その意味では「融資を断った地方銀行」とは立場が違うのですが、コトの本質は「与信審査は自動化できる」ということです。銀行にその波が押し寄せるのは時間の問題でしょう。
雇用の未来:The Future of Employment
新井教授のコラムに戻ります。新井教授はコラムの最後で言及しているのは、オックスフォード大学の研究チームが発表した「雇用の未来」という論文です。前回の No.174 でも引用した小林雅一著『AIの衝撃』(講談社 現代新書 2015)から、その概要を紹介します。『AIの衝撃』では、AIの進歩が "雇用の浸食" をもたらすだろうという、ビル・ゲイツ氏(マイクロソフト創業者)の講演の紹介に続いて、次のような文章が出てきます。
この引用における注意点が2つあります。まず、新井教授は「オックスフォード大学のチームが2014年に、機械に代替されやすい職業のトップ20にローンオフィサーをランクインさせた」という主旨の文を書いていますが、引用したオックスフォード大学の研究チームの論文は2013年9月に発表されたものです。従って新井教授が正しければ「機械に代替されやすい職業のトップ20」という発表が、2014年に別にされたことになります。ひょっとしたら新井教授の勘違いかもしれません(2014年となっている所は、正しくは2013年)。しかしどうであれ本質は変わらないので、2013年9月のオックスフォード大学の論文をベースに話を進めます。注意点の2つ目は、引用において、
と書いてあるところです。このうち、②の具体的な推定方法が大事だと思うのですが、そこが書かれていません。オックスフォード大学の論文はネットで公開されているので、それをざっと眺めてみると、おおよそ次のような方法です。
まず「機械に代替されやすさ」を採点するための「職業の数式モデル」を作る必要があります。このモデルの変数を、
の3つとします。それぞれの必要性や重要性が高い仕事ほど機械で代替しにくい、との仮説をまず置くのです。
次に米国・労働省の「O*NET」の各職業に関する記述項目のうち、A B C に影響すると考えれる項目、9個を選びます。たとえば A については3つで「指先の器用さ」「手の器用さ」「窮屈な姿勢での仕事」です。また B は「創造性」と「芸術性」、C は「交渉力」「説得力」「社会的理解力」「他人への援助やケア」です。各職業におけるこれら9つの項目の重要度と必要レベルの数値をもとに、回帰分析の手法で70の職業の "機械化されやすさ" の「採点関数」を求め、その関数を使って702の職業の採点をする、というのが大まか流れです。
これは No.174「ディープマインド」で書いた、コンピュータ将棋における局面の優劣の評価手法と本質的には同じです。つまり、プロの対局で実際に現れた局面をもとに、局面の優劣を判断する評価関数を回帰分析で求め、その関数を使って一般の局面の優劣を判断するという手法と同じです。オックスフォード大学の研究チームは70の代表的な職業が機械で代替されやすいかどうかのAI専門家の判断をもとに、702の職業全部についての判定をAIの手法でやったわけです。
銀行の「融資担当者」と「窓口係」
新井教授の意見とオックスフォード大学の研究チームの結論に共通しているのは、銀行においてAIで代替しやすい職業は融資担当者だということです。つまり半沢直樹は機械化できる、これが共通の結論です。
しかし違っているところもあります。それは、新井教授は窓口係は機械化しにくいと見ているのに対し、オックスフォード大学の研究チームは(融資担当者と同程度に)機械化しやすいと推測していることです。どちらが妥当なのでしょうか。
どうも新井教授に分があるのではと思います。窓口に来た顧客(ないしはコールセンターに電話した顧客)の要望や質問に対して正確に答えることは、十分、コンピュータで出来るようになると思います。しかし、そうであったとしても銀行としては窓口係を配置し、コンピュータの答えも参考にしつつ顧客に寄り添った応対をするのが本筋でしょう。顧客の年齢、緊急度、相談事項の重要度などは千差万別です。まさに新井教授の言うように「一期一会」の対応が必要であり、しかもその対応の数は融資申し込み数より圧倒的に多い。窓口係を機械化することは、銀行の存在基盤を危うくするでしょう。
さっきあげたアマゾンの例が象徴的です。アマゾンは与信審査を完全自動化しているが、アマゾンからオファーをうけた個人事業主は、アマゾンに電話していろいろ聞いているのですね。それで融資を受ける決断をしたわけです。もちろん、コールセンターで運営時間外の問合わせ応答を完全機械化するといったことは、顧客サービスの向上という視点から大いにありうると思います。
この考えからすると、銀行の融資担当者も完全にAIに置き変わるのではないかもしれない。融資可能か否か、可能だとしたらいくらまで可能かは、コンピュータが答えるようになるでしょう。しかし将来の融資担当者はその答えをもとに、融資を申し込んだ顧客と「一期一会の」対応をするのかもしれない。個人事業主からの1000万円の融資申し込みに対し500万円までしか貸せないとしたら、どのように事業を改善すればいいか、その相談に乗るとか・・・・・・。あくまで想定ですが、機械(AIを搭載したコンピュータ)をうまく使いつつ、より高度なサービスを展開するというやり方です。
とは言うものの、この銀行の融資担当者(半沢直樹)と窓口係の話は、我々に大きな意識変革を迫っていると感じます。私たちは暗黙に融資担当者の方が窓口係より価値が大きいと思い込んでいるわけです。実際、銀行に入社10年目の融資担当者と窓口係の給料を比較してみると、大きな差がついているはずです。前者の方が銀行にとって重要であり、ノウハウも知識も経験も必要な仕事だと見なされているからです。
しかし半沢直樹は機械化できる。窓口係よりも機械化しやすいか、少なくとも窓口係と同程度に機械化しやすいのです。つまり、仕事の付加価値は今後、大きく変貌するかもしれないという認識を私たちは持つべきでしょう。
料理人の価値とは
オックスフォード大学の『雇用の未来』という研究報告をつらつら眺めてみると、いろいろとおもしろい発見があります。その一つですが、上に引用した小林雅一著『AIの衝撃』で、仕事をコンピュータに奪われやすい職種として「料理人」がありました。
のところです。ここで言う料理人(Cook)とは、決められレシピ通りに料理を作る人という意味であり、新しい料理のレシピを考える人は、当然ですが「奪われにくい」のだと思います。実は、オックスフォード大学の研究報告では Cook が3つに分かれています。
つまり『AIの衝撃』に引用されている「料理人: 96%」とは「Cooks, Restaurant(レストランの料理人): 96%」のことであり、それよりも比較的仕事を奪われにくいのは「Cooks, Fast Food(ファストフードの料理人): 81%」なのです。我々は暗黙に、ファストフードで料理を作る店員の方が機械化しやすいと考えるのですが、そうではない。この報告では料理の値段が高いか安いかよりも「短時間に素早く料理をつくる必要性」が「機械に仕事を奪われにくい」理由になっているようです。
もちろんこれはAI専門家による推測に過ぎないし、15%程度の差異を議論するのは妥当ではないでしょう。たとえ機械化しやすいとしても、高価な料理は料理人が自らの手で "心をこめて" 作るのが当然とされるでしょうから、"社会的に" 機械化しにくいはずです。技術論だけで「仕事を奪われる・奪われない」という議論をするのも意味がありません。
しかし「料理人の機械化」の話は、先ほどの「融資担当者と窓口係」と同じく、仕事の価値とは何かについての一つの教訓と考えられると思います。我々には、現代社会における給料の多寡や "社会的地位" からくる暗黙の思い込みがあるのではないか・・・・・・。その思いこみを排して考えたとき、仕事の真の価値とは何かが見えてくるでしょう。
機械化によって仕事が変貌するとともに、不必要な仕事・職業が出てくるのも必定です。この数十年の例から言うと、たとえば「バスの車掌」という職業がそうです。バス内部の機械化によって運転手が車掌を兼ねるようになった。もっと大きく言うと、教科書で習った世界史では英国の産業革命の時代に機械化に反対する労働者の暴動まで起きました。何回か引用した『AIの衝撃』には、産業革命よりもっと前の歴史エピソードが出てきます。
エリザベス一世の思考に入っていなかったのは、靴下編み機を使うと製造コストが大きく下がり、臣民に広く靴下が行き渡るだろうということです。その方が、全体として英国経済の活性化に寄与するはずです。ただし仕事を追われる人たちが出てくる・・・・・・。
ともかく、エリザベス一世の時代から400数十年がたっているのですが、その間ずっと「機械が仕事を奪う」現象が世界のどこかで起き続けてきたわけです。その一方で、機械による効率化で国全体の経済が発展し、人々の暮らしが楽になり、余裕が出てきたとも言える。健康を損なうような "奴隷的肉体労働" も無くなった。ものごとには両面の見方があります。今また、その「機械化」の大きな波が来ようとしている。そう考えられると思いました。
みずほ銀行とソフトバンクは2016年9月15日、個人向け融資における与信審査を自動化したサービス提供に乗り出すことを発表しました。
あくまで個人向けの融資ですが、このブログの本文に書いた新井教授の「半沢直樹は機械化できる」という予想が、日本でも現実化してきたわけです。
ソフトバンクとみずほ銀行の発表の一番のポイントは、将来の能力や稼ぐ力も考慮して貸し出すというところですね。これには、いわゆるビッグデータが必要です。つまり現代日本の個人の年収と、その人の学歴や家族構成、家族の職歴、居住地区・番地をはじめとする個人情報のビッグデータです。これをAI技術で分析し、将来の能力や稼ぐ力を推定する。どこまでの個人情報を収集する(した)のか、それは完全に秘密にされるでしょうが、個人の購買履歴やライフスタイルに関するさまざまな情報が参考になると思われます。もちろん推定がハズレることもあるでしょうが、個人向けローンのビジネスが成立する程度の正確さで推定できればよいわけで、それが出来るというのが新会社設立の背景です。
「若者がもつ将来の能力や稼ぐ力に合わせて貸し出せる。若者が夢をかなえられる」という孫社長の発言の裏にあるのは、
ということであり、既にそういう時代に突入していることは認識しておくべきでしょう。
2018年1月22日、Amazon はシアトルに「レジ係がいないコンビニ」をオープンさせました。ここにはAI技術が駆使されています。本文の中で紹介したオックスフォード大学の「雇用の未来」に、AIによって職を奪われやすい職種として「小売店などのレジ係」が "97%の高確率" でリストアップされていました。それが現実化する第1歩が踏み出されたわけです。日本経済新聞の記事(オープン直前に書かれた記事)を引用します。
記事の見出しだけを読むと誤解しそうですが、この店舗は無人でありません。総菜を調理する人や商品の棚出しをする人、警備員などはいます。これは「レジ係無しの店舗」です。日本でも広がってきたセルフ・レジは決して無人のレジではなく、レジ係を利用客に代行させるという奇妙なレジですが、アマゾンの店舗は本物の無人レジであり、その意味では画期的でしょう。
報道で思ったのは、やはり AI(ないしは、AIを含む広い意味での機械)で代替しやすい仕事と、そうではない仕事があることです。多くのスーパーで見られるような「バーコードをスキャンし決済するだけのレジ係」は機械で完全に代替されてしまうことが証明されました。しかし日本のコンビニのような「多機能レジ係」はそうとも言えないでしょう。コンビニでは「スキャンと決済」だけでなく、保温商品の提供(おでんやフライなど)、代行収納、宅配便の保管、チケットの販売など、"コンビニエンス" を利用客に提供するための多様な業務を行っています。仕事の価値とは何かを考えさせられます。
アマゾンの店舗で使われているAI技術は非公開のようです。技術の詳細が分かると悪用されるからでしょうが、今後、研究が進んで徐々にメディアで報道されると思います。たとえば、利用者のプライバシーに配慮して顔認識はあえてせず、服装などで人を特定していると米メディアが既に報じています。この、店舗全体を自販機に変えてしまう技術に注目したいと思います。
AI(人工知能)が広まってくると「今まで人間がやっていた仕事、人間しかできないと思われていた仕事で、AIに置き換えられるものが出てくるだろう」と予測されています。これについて、国立情報学研究所の新井紀子教授が新聞にユニークなコラムを書いていたので、それをまず紹介したいと思います。新井教授は、例の「ロボットは東大に入れるか」プロジェクトのディレクターです。
金融におけるITの活用
新井教授は、金融サービスにおける "フィンテック" が日本を含む世界で熱を帯びていることから話を始めます。
|
2014年末、三井住友銀行とみずほ銀行は、コールセンター業務にIBMの人工知能コンピュータ「ワトソン」を導入すると発表しました。新井教授はそういった銀行業界の動きを言っています。しかし新井教授によると、窓口業務よりも、もっとAI向きの銀行業務があると言います。
|
こういうコラムを読むと、研究者と言えども一般向けに文章を書く(ないしは講演をする)ときには、言葉の使い方が極めて重要だということがよく分かります。「銀行の融資業務は機械化できる」というよりも、「半沢直樹は機械化できる」と言った方が圧倒的にインパクトが強いわけです。研究者も、言いたい事の本質を伝えられる。
新井教授が主導している「ロボットは東大に入れるか」プロジェクトも同じです。「ロボットは大学入試に受かるか」ではなく、あえて「東大」としてあります。プロジェクトの存在感を内外に示すためには、ここは是非とも「東大」でないとまずいのでしょう。しかも最後は「か」という疑問形です。このプロジェクトによって「ロボットが東大に入れるようになるのか、ならないのか、分からない」ようにしてあるわけです。想像ですが、ロボットが東大入試問題を解いて合格するのは無理だと、新井教授は思っているのではないでしょうか。特定の科目で合格点をとるならまだしも・・・・・・。しかし、無理だと言ってしまうと身もフタもない。国立の研究所としては、このプロジェクトを進めることで日本のAI研究を底上げするのが目的でしょうから、ここは疑問形が最適なのですね。
コラムに戻って、では、新井教授は銀行の窓口業務をどう考えているのでしょうか。
|
確かに窓口での対応は、銀行が顧客に直に接する最前線の一つです。融資担当者(ローンオフィサー)も最前線ですが、接する顧客の数が全く違います。窓口では、顧客のそのときの状況にマッチした「一期一会」の対応が、本来、大変に需要なのです。
|
アマゾンによる与信審査の完全自動化
新井教授がコラムの最後で書いている「与信審査の完全自動化」ですが、アマゾンはすでに日本でもやっています。
|
アマゾンにとってみると、適切な事業者(=アマゾン出店者)に、適切な金額を必要な時期に融資できれば、アマゾン経由の通販の量が増え、それによって手数料収入が増える。さらに融資の金利が収入になる。一石二鳥とはこのことでしょう。
事業者のビジネス動向をつぶさにとらえられるという、インターネット通販の特性を生かしたアマゾンのビジネスです。その意味では「融資を断った地方銀行」とは立場が違うのですが、コトの本質は「与信審査は自動化できる」ということです。銀行にその波が押し寄せるのは時間の問題でしょう。
雇用の未来:The Future of Employment
新井教授のコラムに戻ります。新井教授はコラムの最後で言及しているのは、オックスフォード大学の研究チームが発表した「雇用の未来」という論文です。前回の No.174 でも引用した小林雅一著『AIの衝撃』(講談社 現代新書 2015)から、その概要を紹介します。『AIの衝撃』では、AIの進歩が "雇用の浸食" をもたらすだろうという、ビル・ゲイツ氏(マイクロソフト創業者)の講演の紹介に続いて、次のような文章が出てきます。
|
① | 70の職業の「機械に代替されやすさ」をAI専門家が採点し、 | ||
② | この採点をもとに、702の職業の「機械に代替されやすさ」を、回帰分析の手法で推定した |
と書いてあるところです。このうち、②の具体的な推定方法が大事だと思うのですが、そこが書かれていません。オックスフォード大学の論文はネットで公開されているので、それをざっと眺めてみると、おおよそ次のような方法です。
まず「機械に代替されやすさ」を採点するための「職業の数式モデル」を作る必要があります。このモデルの変数を、
知覚による手作業 | |||
知的創造 | |||
社会スキル |
の3つとします。それぞれの必要性や重要性が高い仕事ほど機械で代替しにくい、との仮説をまず置くのです。
次に米国・労働省の「O*NET」の各職業に関する記述項目のうち、A B C に影響すると考えれる項目、9個を選びます。たとえば A については3つで「指先の器用さ」「手の器用さ」「窮屈な姿勢での仕事」です。また B は「創造性」と「芸術性」、C は「交渉力」「説得力」「社会的理解力」「他人への援助やケア」です。各職業におけるこれら9つの項目の重要度と必要レベルの数値をもとに、回帰分析の手法で70の職業の "機械化されやすさ" の「採点関数」を求め、その関数を使って702の職業の採点をする、というのが大まか流れです。
これは No.174「ディープマインド」で書いた、コンピュータ将棋における局面の優劣の評価手法と本質的には同じです。つまり、プロの対局で実際に現れた局面をもとに、局面の優劣を判断する評価関数を回帰分析で求め、その関数を使って一般の局面の優劣を判断するという手法と同じです。オックスフォード大学の研究チームは70の代表的な職業が機械で代替されやすいかどうかのAI専門家の判断をもとに、702の職業全部についての判定をAIの手法でやったわけです。
銀行の「融資担当者」と「窓口係」
新井教授の意見とオックスフォード大学の研究チームの結論に共通しているのは、銀行においてAIで代替しやすい職業は融資担当者だということです。つまり半沢直樹は機械化できる、これが共通の結論です。
しかし違っているところもあります。それは、新井教授は窓口係は機械化しにくいと見ているのに対し、オックスフォード大学の研究チームは(融資担当者と同程度に)機械化しやすいと推測していることです。どちらが妥当なのでしょうか。
どうも新井教授に分があるのではと思います。窓口に来た顧客(ないしはコールセンターに電話した顧客)の要望や質問に対して正確に答えることは、十分、コンピュータで出来るようになると思います。しかし、そうであったとしても銀行としては窓口係を配置し、コンピュータの答えも参考にしつつ顧客に寄り添った応対をするのが本筋でしょう。顧客の年齢、緊急度、相談事項の重要度などは千差万別です。まさに新井教授の言うように「一期一会」の対応が必要であり、しかもその対応の数は融資申し込み数より圧倒的に多い。窓口係を機械化することは、銀行の存在基盤を危うくするでしょう。
さっきあげたアマゾンの例が象徴的です。アマゾンは与信審査を完全自動化しているが、アマゾンからオファーをうけた個人事業主は、アマゾンに電話していろいろ聞いているのですね。それで融資を受ける決断をしたわけです。もちろん、コールセンターで運営時間外の問合わせ応答を完全機械化するといったことは、顧客サービスの向上という視点から大いにありうると思います。
この考えからすると、銀行の融資担当者も完全にAIに置き変わるのではないかもしれない。融資可能か否か、可能だとしたらいくらまで可能かは、コンピュータが答えるようになるでしょう。しかし将来の融資担当者はその答えをもとに、融資を申し込んだ顧客と「一期一会の」対応をするのかもしれない。個人事業主からの1000万円の融資申し込みに対し500万円までしか貸せないとしたら、どのように事業を改善すればいいか、その相談に乗るとか・・・・・・。あくまで想定ですが、機械(AIを搭載したコンピュータ)をうまく使いつつ、より高度なサービスを展開するというやり方です。
とは言うものの、この銀行の融資担当者(半沢直樹)と窓口係の話は、我々に大きな意識変革を迫っていると感じます。私たちは暗黙に融資担当者の方が窓口係より価値が大きいと思い込んでいるわけです。実際、銀行に入社10年目の融資担当者と窓口係の給料を比較してみると、大きな差がついているはずです。前者の方が銀行にとって重要であり、ノウハウも知識も経験も必要な仕事だと見なされているからです。
しかし半沢直樹は機械化できる。窓口係よりも機械化しやすいか、少なくとも窓口係と同程度に機械化しやすいのです。つまり、仕事の付加価値は今後、大きく変貌するかもしれないという認識を私たちは持つべきでしょう。
料理人の価値とは
オックスフォード大学の『雇用の未来』という研究報告をつらつら眺めてみると、いろいろとおもしろい発見があります。その一つですが、上に引用した小林雅一著『AIの衝撃』で、仕事をコンピュータに奪われやすい職種として「料理人」がありました。
職 業 | 奪われる確率 |
料理人 | 96% |
のところです。ここで言う料理人(Cook)とは、決められレシピ通りに料理を作る人という意味であり、新しい料理のレシピを考える人は、当然ですが「奪われにくい」のだと思います。実は、オックスフォード大学の研究報告では Cook が3つに分かれています。
職 業 | 奪われる確率 |
Cooks, Restaurant | 96% |
Cooks, Short Order | 94% |
Cooks, Fast Food | 81% |
つまり『AIの衝撃』に引用されている「料理人: 96%」とは「Cooks, Restaurant(レストランの料理人): 96%」のことであり、それよりも比較的仕事を奪われにくいのは「Cooks, Fast Food(ファストフードの料理人): 81%」なのです。我々は暗黙に、ファストフードで料理を作る店員の方が機械化しやすいと考えるのですが、そうではない。この報告では料理の値段が高いか安いかよりも「短時間に素早く料理をつくる必要性」が「機械に仕事を奪われにくい」理由になっているようです。
もちろんこれはAI専門家による推測に過ぎないし、15%程度の差異を議論するのは妥当ではないでしょう。たとえ機械化しやすいとしても、高価な料理は料理人が自らの手で "心をこめて" 作るのが当然とされるでしょうから、"社会的に" 機械化しにくいはずです。技術論だけで「仕事を奪われる・奪われない」という議論をするのも意味がありません。
しかし「料理人の機械化」の話は、先ほどの「融資担当者と窓口係」と同じく、仕事の価値とは何かについての一つの教訓と考えられると思います。我々には、現代社会における給料の多寡や "社会的地位" からくる暗黙の思い込みがあるのではないか・・・・・・。その思いこみを排して考えたとき、仕事の真の価値とは何かが見えてくるでしょう。
機械化によって仕事が変貌するとともに、不必要な仕事・職業が出てくるのも必定です。この数十年の例から言うと、たとえば「バスの車掌」という職業がそうです。バス内部の機械化によって運転手が車掌を兼ねるようになった。もっと大きく言うと、教科書で習った世界史では英国の産業革命の時代に機械化に反対する労働者の暴動まで起きました。何回か引用した『AIの衝撃』には、産業革命よりもっと前の歴史エピソードが出てきます。
|
エリザベス一世の思考に入っていなかったのは、靴下編み機を使うと製造コストが大きく下がり、臣民に広く靴下が行き渡るだろうということです。その方が、全体として英国経済の活性化に寄与するはずです。ただし仕事を追われる人たちが出てくる・・・・・・。
ともかく、エリザベス一世の時代から400数十年がたっているのですが、その間ずっと「機械が仕事を奪う」現象が世界のどこかで起き続けてきたわけです。その一方で、機械による効率化で国全体の経済が発展し、人々の暮らしが楽になり、余裕が出てきたとも言える。健康を損なうような "奴隷的肉体労働" も無くなった。ものごとには両面の見方があります。今また、その「機械化」の大きな波が来ようとしている。そう考えられると思いました。
 補記1:与信審査の自動化  |
みずほ銀行とソフトバンクは2016年9月15日、個人向け融資における与信審査を自動化したサービス提供に乗り出すことを発表しました。
|
みずほフィナンシャルグループの佐藤康博社長とソフトバンクグループの孫正義社長の記者会見。2016年9月15日。
(site : mainichi.jp)
|
ソフトバンクとみずほ銀行の発表の一番のポイントは、将来の能力や稼ぐ力も考慮して貸し出すというところですね。これには、いわゆるビッグデータが必要です。つまり現代日本の個人の年収と、その人の学歴や家族構成、家族の職歴、居住地区・番地をはじめとする個人情報のビッグデータです。これをAI技術で分析し、将来の能力や稼ぐ力を推定する。どこまでの個人情報を収集する(した)のか、それは完全に秘密にされるでしょうが、個人の購買履歴やライフスタイルに関するさまざまな情報が参考になると思われます。もちろん推定がハズレることもあるでしょうが、個人向けローンのビジネスが成立する程度の正確さで推定できればよいわけで、それが出来るというのが新会社設立の背景です。
「若者がもつ将来の能力や稼ぐ力に合わせて貸し出せる。若者が夢をかなえられる」という孫社長の発言の裏にあるのは、
「本人からの申告データ」と「合法的に入手できるデータから推定できる個人情報」をもとに、AI技術を使って、個人向け融資ビジネスに使える程度の正確さで、本人の将来の稼ぐ力を推定できる |
ということであり、既にそういう時代に突入していることは認識しておくべきでしょう。
(2016.9.18)
 補記2:アマゾン・ゴー  |
2018年1月22日、Amazon はシアトルに「レジ係がいないコンビニ」をオープンさせました。ここにはAI技術が駆使されています。本文の中で紹介したオックスフォード大学の「雇用の未来」に、AIによって職を奪われやすい職種として「小売店などのレジ係」が "97%の高確率" でリストアップされていました。それが現実化する第1歩が踏み出されたわけです。日本経済新聞の記事(オープン直前に書かれた記事)を引用します。
|
Amazon Goの出入り口
|
報道で思ったのは、やはり AI(ないしは、AIを含む広い意味での機械)で代替しやすい仕事と、そうではない仕事があることです。多くのスーパーで見られるような「バーコードをスキャンし決済するだけのレジ係」は機械で完全に代替されてしまうことが証明されました。しかし日本のコンビニのような「多機能レジ係」はそうとも言えないでしょう。コンビニでは「スキャンと決済」だけでなく、保温商品の提供(おでんやフライなど)、代行収納、宅配便の保管、チケットの販売など、"コンビニエンス" を利用客に提供するための多様な業務を行っています。仕事の価値とは何かを考えさせられます。
アマゾンの店舗で使われているAI技術は非公開のようです。技術の詳細が分かると悪用されるからでしょうが、今後、研究が進んで徐々にメディアで報道されると思います。たとえば、利用者のプライバシーに配慮して顔認識はあえてせず、服装などで人を特定していると米メディアが既に報じています。この、店舗全体を自販機に変えてしまう技術に注目したいと思います。
(2018.1.23)
No.174 - ディープマインド [技術]
最近の記事で、AI(Artificial Intelligence。人工知能)について3回書きました。
の3つです。No.159 の "AIBO" は AI技術を利用したソニーの犬型ロボットで、1999年に発売が開始され、2006年に販売終了しました。さすがソニーと思える先進的な製品です。また、No.166「データの見えざる手(2)」で紹介したのは「ホームセンターの業績向上策」をAI技術を利用して見い出したという事例でした。さらにNo.173は、グーグルが人々の検索ワードを蓄積したビッグデータをもとに、AI技術を応用してインフルエンザの流行予測を行った例でした。
そのAI関連の継続で、今回はグーグルが2014年に買収した英国の会社、ディープマインド社について書きたいと思います。この会社がつくった「アルファ碁」というコンピュータ・プログラムは、囲碁の世界トップクラスの棋士と対戦して4勝1敗の成績をあげ、世界中で大変な話題になりました。
「アルファ碁」とイ・セドル九段の5番勝負
2016年3月、韓国のイ・セドル(李世乭)九段とディープマインド社の「アルファ碁」の5番勝負がソウル市内で行われ、「アルファ碁」の4勝1敗となりました。イ・セドル九段は世界のトップクラスの棋士であり(世界No.1とも、No.2とも言われる)、囲碁の世界では大変な強豪です。コンピュータはその棋士に "勝った" ことになります。
もっとも、これが真に "対等な勝負" なのかは疑問があります。それは、「アルファ碁」は世界のプロ棋士の過去の対局・数十万の棋譜を記憶しているが(数は推定。後述)、イ・セドル九段はもちろんそんな数の棋譜を知っているわけではないし、さらに「アルファ碁」の棋譜もほとんど知らなかったと想定できることです。想像ですが「アルファ碁」は過去のイ・セドル九段の全対局を "予習" したのではないでしょうか。ディープマインド社にとって(そしてグーグルにとって)イ・セドル九段に勝つことは会社の価値を上げる最大の見せ場になるからです。違うかもしれません。しかし「相手の手の内を知る」という意味で、双方には圧倒的な情報格差があったことは事実でしょう。
それに加えて、人間側には不利な面があります。それは「人間があるがゆえの弱点」です。まず、イ九段には "この対局に負けると囲碁2000年の歴史を汚す" というような精神的プレッシャーがあったと想像できます。また、第1局に負けたあとは当然、大きな焦りが出てきただろうし、人間には一般的に言って「体調が悪い」とか「疲れ」とか「集中力が切れる」とかの弱さがあります。機械にはこういった弱点は全くありません。単純には比較できない感じがします。
とはいえ従来、コンピュータ囲碁がトップクラスの棋士に勝てる日などいつになるか分からないと考えられていたものが、こんなにも早く勝利するとは素晴らしいことだと思います。報道で「機械が勝利するのにあと10年はかかると考えられていた」とありましたが、IT技術やコンピュータ技術がこれだけ急速に進歩する中で「10年はかかる」というのは「いつになるか分からない」と同じことでしょう。その意味で、ディープマインド社の技術は凄いと言えます。まるで生命の突然変異のように急激な進化を遂げたように感じます。
この「アルファ碁」を開発したディープマインドとはどういう会社でしょうか。
ディープマインドの設立
グーグルは2014年1月に英国・ディープマインド社を推定4億ポンド(約700億円)で買収しました。そのとき設立3年目に入っていたディープマインドは、まだ売り上げを出していなかったし、それどころか製品すら出していなかった。なぜグーグルは約700億円も投じてそんな会社を買収したのでしょうか。実績のないベンチャー・ビジネスに対する投資としては金額が大きすぎます。
ディープマインド社は 2011年に3人の共同創業者によってロンドンで設立されました。いずれも20~30代の青年です。その共同創業者の一人がデミス・ハサビス氏で、現在の最高経営責任者(CEO)であり、アルファ碁開発の中心人物です。イ・セドル九段との5番勝負の報道でも、たびたび登場しました。
以下、小林雅一著『AIの衝撃』(講談社 現代新書 2015)から引用します。小林氏はKDDI研究所のリサーチフェローです。
この経歴をみるとハサビス氏はコンピュータ・サイエンスを学んだあと、脳の研究に取り組み、そのあとにディープマインド社を設立しています。おそらく新たなAI技術を確立するため海馬を研究し、そしてベンンチャー・ビジネスを起こすという長期的な考えがあったと想像されます。
AIBOは最後のモルモットか | |||
データの見えざる手(2) | |||
インフルエンザの流行はGoogleが予測する |
の3つです。No.159 の "AIBO" は AI技術を利用したソニーの犬型ロボットで、1999年に発売が開始され、2006年に販売終了しました。さすがソニーと思える先進的な製品です。また、No.166「データの見えざる手(2)」で紹介したのは「ホームセンターの業績向上策」をAI技術を利用して見い出したという事例でした。さらにNo.173は、グーグルが人々の検索ワードを蓄積したビッグデータをもとに、AI技術を応用してインフルエンザの流行予測を行った例でした。
そのAI関連の継続で、今回はグーグルが2014年に買収した英国の会社、ディープマインド社について書きたいと思います。この会社がつくった「アルファ碁」というコンピュータ・プログラムは、囲碁の世界トップクラスの棋士と対戦して4勝1敗の成績をあげ、世界中で大変な話題になりました。
「アルファ碁」とイ・セドル九段の5番勝負
2016年3月、韓国のイ・セドル(李世乭)九段とディープマインド社の「アルファ碁」の5番勝負がソウル市内で行われ、「アルファ碁」の4勝1敗となりました。イ・セドル九段は世界のトップクラスの棋士であり(世界No.1とも、No.2とも言われる)、囲碁の世界では大変な強豪です。コンピュータはその棋士に "勝った" ことになります。
AlphaGo vs イ・セドル9段(右)第1局
(YouTube)
|
もっとも、これが真に "対等な勝負" なのかは疑問があります。それは、「アルファ碁」は世界のプロ棋士の過去の対局・数十万の棋譜を記憶しているが(数は推定。後述)、イ・セドル九段はもちろんそんな数の棋譜を知っているわけではないし、さらに「アルファ碁」の棋譜もほとんど知らなかったと想定できることです。想像ですが「アルファ碁」は過去のイ・セドル九段の全対局を "予習" したのではないでしょうか。ディープマインド社にとって(そしてグーグルにとって)イ・セドル九段に勝つことは会社の価値を上げる最大の見せ場になるからです。違うかもしれません。しかし「相手の手の内を知る」という意味で、双方には圧倒的な情報格差があったことは事実でしょう。
それに加えて、人間側には不利な面があります。それは「人間があるがゆえの弱点」です。まず、イ九段には "この対局に負けると囲碁2000年の歴史を汚す" というような精神的プレッシャーがあったと想像できます。また、第1局に負けたあとは当然、大きな焦りが出てきただろうし、人間には一般的に言って「体調が悪い」とか「疲れ」とか「集中力が切れる」とかの弱さがあります。機械にはこういった弱点は全くありません。単純には比較できない感じがします。
とはいえ従来、コンピュータ囲碁がトップクラスの棋士に勝てる日などいつになるか分からないと考えられていたものが、こんなにも早く勝利するとは素晴らしいことだと思います。報道で「機械が勝利するのにあと10年はかかると考えられていた」とありましたが、IT技術やコンピュータ技術がこれだけ急速に進歩する中で「10年はかかる」というのは「いつになるか分からない」と同じことでしょう。その意味で、ディープマインド社の技術は凄いと言えます。まるで生命の突然変異のように急激な進化を遂げたように感じます。
この「アルファ碁」を開発したディープマインドとはどういう会社でしょうか。
ディープマインドの設立
グーグルは2014年1月に英国・ディープマインド社を推定4億ポンド(約700億円)で買収しました。そのとき設立3年目に入っていたディープマインドは、まだ売り上げを出していなかったし、それどころか製品すら出していなかった。なぜグーグルは約700億円も投じてそんな会社を買収したのでしょうか。実績のないベンチャー・ビジネスに対する投資としては金額が大きすぎます。
ディープマインド社は 2011年に3人の共同創業者によってロンドンで設立されました。いずれも20~30代の青年です。その共同創業者の一人がデミス・ハサビス氏で、現在の最高経営責任者(CEO)であり、アルファ碁開発の中心人物です。イ・セドル九段との5番勝負の報道でも、たびたび登場しました。
以下、小林雅一著『AIの衝撃』(講談社 現代新書 2015)から引用します。小林氏はKDDI研究所のリサーチフェローです。
|
この経歴をみるとハサビス氏はコンピュータ・サイエンスを学んだあと、脳の研究に取り組み、そのあとにディープマインド社を設立しています。おそらく新たなAI技術を確立するため海馬を研究し、そしてベンンチャー・ビジネスを起こすという長期的な考えがあったと想像されます。