最近は「人工知能(AI)」っていう言葉がいたるところで使われていて、割となじみのある言葉となっているかと思います。ただ、「人工知能って結局どんなものなのか?」「コンピュータプログラムやアルゴリズムと何が違うのか?」「ターミネータの話でしょ?」なんて思っている人が多いと思います。
今回は研究開発を仕事とする筆者が最新のテクノロジーであるAIとは何か、専門用語や数式などはなるべく使わずに解説していきたいと思います。特に、AIの中でも近年脚光を浴びている深層学習(Deep Learning)にフォーカスして説明していきます。
AIとは?
AIはプログラムである
AIとはArtificial Intelligence (人工的な知能)の頭文字です。後述しますが、AIの構造は人間の神経系の構造に似ている数理モデルで構成されているので、「知能」と呼ばれます。
AIとは統一的な定義は定まっていないのですが、コンピュータプログラムの一種だと考えています。物理的なロボット(ハードウェア)などではなく、プログラム(ソフトウェア)です。したがって、ターミネータみたいものを厳密には「AIが搭載されたロボット」と呼びます。
AIプログラムが一般的なコンピュータプログラムと異なる点は、「学習」と「推論・予測」をすることだと思います。大雑把に言うと、一般的なコンピュータプログラムはエンジニアが実装したとおりの出力をし、AIプログラムは「学習」によりプログラムの出力結果を改善していくイメージです。こういった点も「知能」と呼ばれる所以ですね。
AIがしていること
それでは、AIはプログラムは実際にどんなことをしているのか、画像識別AIを例に説明していきます。
まず、AIの動作ですが、明確化のために入力と出力を決めます。
画像識別AIの場合、AIへの入力は「画像データ」です。そして、出力は「その画像が何の画像か」です。

上の絵がAIの動作例です。犬の画像をAIに見せると(入力すると)、「この画像は犬である」という出力をしてくれ、猫の画像を見せれと「この画像は猫である」と出力してくれます。
これはAIが記憶した特定の画像に対して正しい答えを教えてくれるわけではなく、色や種類が異なる犬の画像であっても、AIが見たことがない画像であっても正しい答えを出してくれます。
こんなことが可能である理由は、AIが画像の特徴(特徴量)を覚えているからです。画像そのものを覚えているのではありません。
昔はAIが覚え専門知識を持った技術者や研究者が覚えるべき特徴を指定していました。しかし、技術の進歩によって覚えるべき特徴をAIが勝手に抽出できるようになりました。このようなAIモデルを深層学習と呼びます。(いい感じに特徴を覚えてくれるようになったイメージです)
深層学習となると、AIは1000次元とか2000次元の超高次元空間で特徴を抽出するので、どのような特徴を覚えているのか人間には到底知覚できません。
したがって、深層学習の出力の解釈性(どういう論理や特徴に基づいてAIが出力を決めたか)を研究する分野もあります。より人間に近い動作ができるようになるのかもしれないですね。
推論とは
前節で先走って説明してしまいましたが、AIが行う「推論・予測」について改めて説明していきます。AIの構築は学習→推論の順に行うのですが、簡単のために推論から先に説明します。
推論とは、単にある入力に対してAIプログラムがある出力をすることです。例えば、動物の画像を入力として、その動物の種類をこたえるAIを学習したとすると、「画像の動物は何かをこたえること」が推論です。
このとき、画像はAIが学習したことがないものを使用します。
さきに説明しましたが、AIは画像そのものではな画像の特徴を学習しているからです。
特徴を計算することを、「特徴量を抽出する」といいます。
また、AIの精度は推論の正答率で評価します。
近年は空港の日本人用入国ゲートでは顔認証が採用されています。顔認証ゲートにももちろん、パスポートの写真とゲートで撮影した写真が同一人物かどうかを推論するAIが搭載されています。
この顔認証ゲートのAIは正解率が99.9%以上といわれています。
不正解率が0.1%ってすごい高精度に思えるかもしれないですが、このくらいはないとゲートとして使い物にならないです。(1000人に1人間違えてしまうと、1日に数万人ゲートを通過すると数十人間違えてしまう計算です)
AIを実用化するにあたり、この推論の精度が大きな壁になります。
学習とは
先に述べた、「推論・予測」とはAIが未知の入力に対して特徴をみて答えを出力をすることに対して、「学習」とは推論の正解率を高めるためにAIの出力までの式を変化させていくことです。
ものすごく抽象的な表現ですが、出力を計算するまでの式を変化させて正しい特徴を抽出できるように勉強させるイメージです。
正しく特徴量が抽出できるような式をもつAIが構築できれば、AIが学習したことがない入力に対しても正しく特徴量を抽出して正しい出力を出すことができるでしょう、という論理です。
AIが得意なこと
AIが得意な仕事として、学習をするためのデータがたくさんあるような領域です。
現在AIプログラムが適用されているところは、画像認識(顔認証など)・音声認識・自動運転・機械翻訳・株価予測などです。学術研究の段階では様々な分野への応用が検討されていますが、実用化はまで至った例はあまり多くない印象です。
AIの実用化が困難な理由は、「推論の精度」、「汎用性」、「解釈性」を高めることが難しいからと考えます。
「汎用性」とは、AIがどれくらい広い範囲に使えるかという指標です。例えば画像を見て動物の種類をこたえるAIを訓練したとしても、洗濯機の画像を見せても洗濯機であると答えることはできません。
「解釈性」はどういう特徴に基づいてAIが出力をしたかということです。
先にも述べたように、AIの解釈性を高めることは、まだまだ研究段階であるようです。
AIに仕事を奪われることはあるのか
おそらく、皆さんが気になるのは「AI技術の進歩によって仕事を奪われることがあるのか」ということかなと思います。結論から申し上げると、「人手でやっていた仕事の大部分はAIによって置き換わるが、まだまだ時間がかかる」と私は思います。
実際にすでに今までは人手で行っていたことがAIに置き換わっている事例もあります。
たとえば、私の趣味である株式投資の世界にもAI技術は進出しています。AIは過去のデータから人間が知覚できない特徴を抽出するため、株価などの一定の規則性があり大量にとれるデータの解析には相性がいいです。
短期の株価変動の予測などはAIが非常に得意とする仕事です。
AI技術はまだまだ研究段階であり、未知の可能性を持っています。
これから様々な分野にAI技術が進出していくことでしょう。ですが、あまり悲観的になる必要はないと私は考えています。
AI技術が進歩していけば、それだけ日常生活が豊かなものになります。
最後に、私が考えるAIによって仕事を奪われないようにするための方法をお伝えしたいと思います。
それは、「AIを作るか使う側にまわること」だと思っています。
次回以降、具体的にAIを作るか使うことができる人材になる方法を紹介していけたらと思います。
以上です。