製品進化とマネジメント風景 第112話 知識の再利用、転移学習の利用マネジメント
AIの分野では転移学習が注目されています。なぜ、転移学習が注目されているのでしょうか? 様々な意見があると思いますが、一番は使えるAIを準備するのが非常に手間のかかる作業なので、その作業生産性を高めるためと言えましょう。その理屈を以下に簡潔に説明します。
汎用的に使えるAIは、現時点ではまだ出現していません。よって、今のAIは、特定のタスクに特化したものです。対象は、人間が必要とするタスクということになりますが、その数は一体、どれくらいあるのでしょうか?
人間が必要とするタスクの数は、大きくは家庭内と家庭外に分けられます。家庭外では何らかの事業にかかわる仕事をしているので、ひと言でいえばそれらの仕事のプロセスの数だけあると言えるでしょう。
もう少し具体的に考えると、事業の数、その事業を行う企業の数、各企業内にある専門部門の数、各専門部門内における作業プロセスの数があり、単純に考えるとこれらを掛け算した規模の数字になると予想されます。重複はあるでしょうし、かなり膨大な数字になることだけは分かります。
今のAIの主流は機械学習です。事業で使えるレベルにするには一定の開発期間が必要ですが、シンプルなものであれば計算コストは限定的であり、特に問題となりません。しかし、機械学習の1つである深層学習を採用し、その層の数を増やしデータ数を増やして規模を大きくすると、学習に非常に大量の計算が必要となります。
それを人間が必要とする仕事の作業プロセス数だけ作ろうとすれば、計算コスト的にも電力使用量的にも結構インパクトのある数字になるでしょう。一例としてデータセンターが使用する電力に注目すると、その量は急速に増え始めており、持続可能性を脅かしつつあります。 (最近、マスコミでもこの点が報道されるようになりました)
故に、人の求めるタスクを1つずつ学習していくのではなく、すでに学習したAIを他のタスクに適用し、学習コストを下げたいと考えるのは自然の流れです。実際、人間は生まれながらの転移学習の天才です。
新しい分野の活動を始める時、無意識であっても、過去に学習・経験した何かを基礎として活動を始めます。ですから、人間が有する、この転移学習のスキルをコンピュータに移植したいと考えるのは不思議でも何でもありません。
ここからは、転移学習について、もう少し専門的に見ていきましょう。転移学習の一般的な定義は以下です。
「新しいタスクに対する有効な仮説を効率的に見つけ出すために、1つ以上の別のタスクで学習された知識を保持し適用すること」
実は、転移学習は様々な分類方法があり、上記の定義は帰納転移学習について説明した文章です。ここから始まったので、これが転移学習の代表的な説明になっているのです。上記の定義を読めばその意味は何となくは分かりますが、これだけでは具体的なソフトウェアを作成できません。
ソフトウェア化をするためには学習データが必要です。しかも、転移、つまり知識を移植するのですから、大元のデータ領域に加え、転移先の目標データ領域をも考えなければなりません。よって、大元と転移先のデータの関係性を考えることにより、1つの分類法が出てきます。これを転移学習における第1番の分類法としましょう。
第1番の分類法では、大元のデータにラベル付けがされているか否か、そして、目標のデータにラベル付けがされているか否かにより分類し、結果として2×2の4つのタイプに分類されます。ラベルというのは、画像認識の場合ならば映っている対象について、犬や猫、家や車といった人が与えた正解のことです。
大元と転移先の両データにラベルが付いているケースを(1)帰納転移学習(要するに教師あり転移学習)とし、大元にはラベルがあるが目標にはラベルが無い場合を(2)トランスダクティブ転移学習(要するに半教師付き学習)と言います。大元にはラベルがなく、しかし転移先にはラベルがある場合は(3)自己教示学習であり、大元も転移先にもラベルが無い場合は(4)教師無し学習に分類されます。
せっかく4つに分類したのだから、それぞれの得意、不得意な領域を知りたくなるでしょう。今の段階での答えは、(1)と(2)は自然言語処理、音声認識、および少数データに基づく予測問題などが得意分野です。Chat GPTはこのタイプに属します。
(3)はラベルの無いデータを使用して、下流のタスクに有用な表現を得る手法です。パターンや構造を見つけ、これをラベル付けされた目標データと結びつけていきます。例えば、医療のX線写真を学習させ、良性と悪性のパターンと分類するタスクなどが得意と言われています。
(4)はラベルなしのデータを学習し、パターンや構造を抽出する問題が得意です。ラベルがないので、ラベル付けをしたければ、それは人間が与えてやる必要があります。画像を単なる意味を持たない点の集まりとして学習することにより、本物そっくりの偽の人間や動物の画像を生成できます。画像生成AIはこの分野の応用の1つです。
転移学習については、第1番の分類法以外にも他に2種類の分類法があります。第2番目の分類法では「何を転移するか?」という観点を重視しており、この場合には事例転移、特徴転移、パラメータ転移の3つに分類されます。
事例転移は、大元データも転移先データも似ている集合だと考え、類似のものとして扱います。類似度の厳密な定義は難しいのですが、人は類似性を発見する天才なので、人間が扱いやすい方法です。
これに対して特徴転移は抽象的で分かりにくいものです。パッと見た所、大元データと目標データには類似性が無いように見えるのですが、特徴空間同士を比較すると、ちょっとした変換で類似性が出てきて転移できるという方法です。
パラメータ転移は技術系の人には分かり易い話だと思います。現象を表わす何らかのモデルがあり、そのモデルは多数のパラメータから構成されています。このモデルとパラメータを転移の対象とし、パラメータを調整することにより、個別の問題を最適化したり、予測精度を向上したりする話です。
転移学習の分類法は色々ありますが、一番知りたいのはその実用性でしょうから、製造系、技術系企業のどういう仕事に適用できるのか、以下はそれを検討していきます。
インターネット上を調べた所、以下の6つの問題において転移学習は一定の成果を上げていました。6つの問題とは、材料特性の予測、材料破面の分類、風車流入風の方向予測、洪水の水位予測、エンジンのモデルベース制御、およびトナー製造の品質予測です。以下、これらについて概要を説明します。
材料特性の予測は、既存の材料データを学習し、新材料の特性を予測する問題です。予測すると言っても、一部の特性についてはデータがあるものの、網羅的に全てのデータ取得がされていないので、その取得できていない特性を予測する所に転移学習を使おうということです。実際問題として一定の有効性があるという結論でした。本件は、事例を転移対象とした帰納転移学習と言えます。
材料破面の分類は、既存の材料破面データの分類から、新しい材料の破面を分類する問題です。材料はその種類により、破面の特徴がいくつかに分かれるため、大元データの全データで学習した上で、どの材料の種類に近いかを判断し、そこから再学習して破面の推定精度を高めます。この問題については、転移対象を特徴量とした、トランスダクティブ転移学習と相性が良いようでした。
風力発電の風車には大きく、アップウインド型とダウンウインド型があります。ここでは、両者を別物として扱い、しかし、どちらか片方の型を学習すれば、その知識をもう片方にも転移できることを示そうとした報告です。アップウインド型もダウンウインド型も結局は類似の原理で作動しているため、うまく転移できていました。これを前述の分類に当てはめると、やはり事例を特徴量とした帰納転移学習となります。
洪水の水位予測は、日本国内の多数の河川の洪水情報からそのパラメータを学習した後、予測したい特定の河川について少数のデータだけを使ってパラメータをチューニングすれば、十分によい精度で予測できるという話です。これは、転移対象をパラメータとした帰納転移学習です。
エンジンのモデルベース制御では、経験的に得られたエンジン燃焼制御のパラメータを基礎として学習済のモデルを使い、新しいエンジンでパラメータをファインチューニングして早期に適切な制御をできるようにするという話です。これも転移対象をパラメータとした帰納転移学習に分類できます。
最後のトナー製造品質の予測ですが、これは、ある1つの色のトナーの製造品質を高めるために学習して得られた特徴量を他の色のトナー製造に転移してその品質も高めたいという話です。よって、これは事例を転移対象とした帰納転移学習です。
上記を見る限り、転移対象は事例かパラメータが多く、殆どはオーソドックスな帰納型転移学習に分類されることが分かります。つまり、人間が分類していない問題をコンピュータが学習し、新たなパターンや構造、パラメータを見つけるという問題は、画像や文章の生成AIを除くと、その応用はまだ少数派だということです。
帰納型転移学習では、類似性をどう定義するかという根本的な課題が残っています。今の所、ここはアートの話でありサイエンスになっていません。アートは人間特有のスキルなので、まだ、人間がAIを制御していることを意味し、少し安心します。
当社が展開している製品開発マネジメント法も、実は転移学習に相当します。製造系、技術系企業における製品開発プロセスは非常に似通っているので、同一の製品でなくてもその知見を活用して有効性を発揮できるのです。特に、企画段階、開発段階において必要となる事柄の抜け漏れ防止に絶大な効果を発揮します。
既存製品の改良をするだけならば、以前の開発プロセスをそのまま踏襲すれば良いのですが、何か新しい要素が入る、あるいは開発プロセスの合理化を行った際など、抜け漏れが生じやすくなります。
なぜなら、以前の開発プロセスの1つ1つの作業の意味は理解されているのでしょうが、なぜ、そういうプロセスの繋がりで実施しないといけないのかまで、完全に理解した上で実施していないからです。(表面だけ真似てもダメということです)
開発プロセスについて、具体的な作業そのものではなく、あえて抽象化によって、その作業の持つ本質的な意味を追求していくと、一連のプロセスのつながり方が1つの成功する道筋であることに気付きます。
ただ、同時に、その道とは別の成功する道筋もあったことが分かってきます。新しい開発案件などにこの考え方を適用すると、開発において実施すべき項目の抜け漏れを防止できるようになり、結果的に、畑の違う技術分野であっても大きな成果を上げることができるようになるのです。
さて、話をAIの転移学習に戻します。人間と今のAIの違いを挙げるとすれば、類似性を見抜く所に人間らしさがあると言えます。人間が類似性を見抜けるのはメタ学習能力があるためです。メタ学習能力とは、学習方法を学習する能力のことです。AIは、まだこの能力は十分に獲得できていないようです。
メタ学習の話題については別の機会にくわしく議論したいと思いますが、AIやコンピュータがこのメタ学習能力を獲得しはじめると、いよいよ人間に近づいてくるので、少し心配になりますね。