至宝の人工知能 〜問題に寄り添い、最適解をそっと教えてくれる:Over the AI ―― AIの向こう側に(17)(3/8 ページ)
先人たちにより開発され、磨かれてきた「至宝の最適化アルゴリズム」。本当はこれを軽々しく「AI」とは呼びたくな……い……という気持ちをぐっとこらえ、AI技術として解説します。「試験前の一夜漬け」「雪山遭難」「井戸堀り」の例を使って、説明していきます。繰り返しますが、最適化アルゴリズムを軽々しく「AI」という言葉で片付けたくはないんですよ、本当は。
深層学習や強化学習は、なぜ「そのように動いたか」を説明できない
仕事の現場においては、仕事の背景、ルール、ノウハウを、ロジカルに説明し、問題があればその問題点を明かにして、次のプロセスで改善させる ―― そういう学習方法の方が、優れているに決まっています ―― たとえ「神秘性」はなくとも。
実際、深層学習や強化学習は、制御分野、特に、超高度なリアルタイム性や安全性を要求される分野では、現在のところ、全く利用されていませんし、今後も利用される可能性は低いでしょう。
理由は明快です。深層学習や強化学習は、なぜ「そのように動いたか」を説明できないからです。本連載の別の回「困惑する人工知能 〜1秒間の演算の説明に100年かかる!?」を読んでいただければ、その理由が分かるかと思います*)。人間だって、自分の行動をきちんと説明できる訳ではありませんが、それでも、(たとえ“後付け”であったとしても)「言い訳」を語れなければ、社会の構成員としては認められません。
*)現在、この問題に対して、"Explainable Artificial Intelligence=説明可能な人工知能"の研究が盛り上がっています。
個人的な意見ですが、ニューラルネットワークや強化学習で、知識を習得したAI技術を搭載したジェットコースターなんぞ、私は絶対に乗りません。
しかし、最適化アルゴリズムによって制御されているジェットコースターなら、乗車しても良いと思っています。たとえ私がそのジェットコースターで事故死しても、家族にその理由を説明してもらえると思えるからです。
もっとも、私の家族が、私を殺した「最適化アルゴリズム」の内容や、そのベースとなる数学のコンセプトを理解できるかどうかは、別問題ですが。
「最適化アルゴリズム」とは、つまり何なのか
さて、「最適化アルゴリズム」を、私なりに定義すると、
- 酷く複雑で大規模で面倒くさい問題に対して、その解答を導くもので
- コンピュータプログラムとして記述可能なもので
- (理屈の上ではともかく)現実にはコンピュータの計算能力の助けなくしては使えないもの
です。
今回、この「最適化アルゴリズム」をカテゴリーで分類しようとしたのですが、表を作っても、あまり面白くありませんでした*)。
*)線形計画、整数計画、非線型計画とか、離散系とか連続系とか、そんなところです。
ですので、今回は、「最適化アルゴリズム」の著名なアプリケーションを羅列してみました。
一見すると、「これって、そんなに難しい問題か?」と思えるかもしれませんが、皆さんも、これまでの人生で同じような問題で苦労してきたはずです。
- 時間配分を無視して、つまらんスピーチをダラダラと続ける上司によって狂わされる、発表会タイムスケジュールの復旧方法
- 結婚披露宴に、一度も出会ったことがない親戚を呼ぶために(両親からの強い圧力)、親しい友人の何人かを、席数の都合で切り捨てなければならない時の決断
もっと極端な例では、
- 「仕事と私、どっちが大切なの!/なんだ!」と、その場限りのコスト計算しかできず、仕事を辞してしまった後の「『あなた』の価値の下落」を考慮しない、感情的な恋人との折り合い
こうした問題は、それ自体解決方法が難しいのに加えて、もっと大規模なスケール(発表会が同時に複数進行しているとか、結婚式の正体客が1万人のオーダーとか)を想定してみれば、その困難性は明らかだと思います。
しかし、「その問題の性格」に応じて「何とかしてみせる」のが、最適化アルゴリズムなのです。これは、「問題の性格」を全く教えずに、自動的に学習させる「強化学習」の対極に立つ手法と言えます。
Copyright © ITmedia, Inc. All Rights Reserved.