機械学習のキモ「非線形解析」を理解する【自分で作るAI 第1回】

2023/06/01
Image

連載の目次

  • 第1回 機械学習のキモ「非線形解析」を理解する
  • 第2回 最低限の道具を揃え、ソフトを使ってみる
  • 第3回 言語データからの問題分析を試みる
  • 第4回 できることを整理し、業務変革の戦略を立てる

自分でAIを使って課題解決を目指す

還暦を過ぎて約3年が経った2019年、私は人工知能(AI:Artificial Intelligence)というものに初めて触れ、「いままでにない、実務に役立つ技術だ」と感じました。Chematelsの本連載「自分で作るAI」では、その理由を皆さんにお伝えし、少しでもAIを実務に活用していただきたいと思っています。

私のここまでの経験から言うと、やる気さえあれば専門家に頼らなくてもAIを使って、仕事などの現場の課題解決を図ることができます。極論すれば、インターネットにつながるパソコンがあって、1日目で無料のソフトと学習例題1,2)ダウンロードできれば、2日目には例題を解くことができ、1カ月で実務データの解析まですることができます。

場合によっては、すぐには実務に役立たないかもしれません。その場合は課題設定の見直しとデータの質・量の不足を補い、解析を繰り返す必要があります。一方で、AIの進歩は、自然災害、インフラ・農業・工場の管理、自動運転、翻訳、音声・画像の解析、創薬など、人間が判断する業務を効率化するといわれています。それら新しい手法を取り入れながら長い道のりの第一歩を踏み出してゆくことを期待しています。

AIブーム三度目の正直、その裏に「非線形解析」の進歩

AIのブームは1950年代ごろから少なくとも2回の浮き沈みがあり、その後、現代の3回目のピークに至っています3)。なぜ3回目のピークが訪れたかというと、文字の画像認識が進歩したからといわれます。2010年ごろ、文字の画像認識における誤差は26%でした。そのわずか5年後には、人間の認識誤差である5%を下回る精度になりました。少し専門的になりますが、「ニューラルネットワークでの畳込み」(CNN:Convolutional Neural Network)と呼ばれる前処理の技術で、画像の不要な情報を取り除くことができ、縦横のエッジ強調などのデフォルメによる抽象化が進んだからだといわれています。

では、なぜそのような進歩が起きたのでしょう。これはひとえに、「非線形解析が容易できるようになったから」といえます。グラフに表したとき直線となるような数学的関係を線形といい、線形でないものを非線形といいます。現実の世界には非線形の現象が多くあります。例えば、化学反応では複数の化学種の濃度の積が速度になりますが、これも非線形で表されるものです。

線形解析よりも複雑な非線形解析4)

Image

図1:パーセプトロン

線形解析と非線形解析の違いを見ていきます。図1は、脳の神経細胞の一つの機能を模擬した「パーセプトロン」と呼ばれるモデルの概念図です。1957年に考案されました。図内の円が脳の神経細胞に相当するニューロンであり、それが青線のシナプスと呼ばれる神経線でつながっています。これらがネットワーク状に結合していくと「ニューラルネットワーク」となります。矢印の方向にデータが流れます。そして、その数が多いほど人間の脳に近づき、深い学習、つまりディープラーニングがなされます。ちなみに人間の脳の神経細胞は100億を超えており、機械のほうは通常、数個から1000個以下です。

一つのパーセプトロンに対して、二つの入力信号x1,x2に重みw1,w2を掛けたものがニューロンに入ります。その総和が「アフィン関数」と呼ばれる関数により計算され、閾値θを超えるとニューロンが発火し、「1」を出力します。この発火する関数を「活性化関数」と呼び、この場合は入力値が閾値以下だと「1」を出力せず「0」を出力する「ステップ関数」となります。他に機械学習に関連する関数としては「正規化線形(ReLU: Rectified Linear Unit)関数」や「シグモイド関数」などがあります。

図1で見た一連の手順を「アルゴリズム」といい、いろいろな種類があります。ここでは「1個のパーセプトロンに対して、入力が2倍になれば出力も2倍になる」という線形システムとなっています。

では、ニューロンとシナプスが多数つながるとどうなるでしょう。全体では図2のように非線形になります。

Image

図2:ディープラーニング(ニューラルネットワーク)

図2のような非線形システムにおける学習のしくみを見ていきます。円で描かれたニューロンどうしをつないで情報が流れれば、「出力yi」を得ることができます。iは「1からmまで」といった意味です。そして、「出力yi」と「教師データti」との差に応じた情報が逆方向のxのほうへと流れていき、そのルートの重みを修正します。これが「学習をする」ということです。重みはシナプス毎に一つ設定されるため、その数だけ演算が必要になります。

Image

図3:領域分割

では最後に図3をご覧ください。形・色の違うマークごとに領域を①~④のように分割することは、このニューラルネットワークの得意とする分野です。その方法については、次回で説明します。

次回は第2回「最低限の道具を揃え、ソフトを使ってみる」の予定です。

【参考資料情報】

参考資料
⁠1)Anaconda3
https://www.anaconda.com

2)Sony Neural Network Console
https://dl.sony.com/

3)人工知能関連メディア 2020年6月17日「AI(人工知能)の歴史 時系列で簡単解説」
https://ledge.ai/history-of-ai/

4)齋藤康毅著『ゼロから作るDeep Learning』(2016年、オライリージャパン刊)

松田 宏康(Hiroyasu Matsuda)/SCE・Net

⁠合同会社設備技術研究所代表社員。1956年生まれ。前身の三井東圧化学時代を含め、三井化学で主に設備管理に従事。とりわけ、腐食防食関連の知識を生かして、化学環境と設備の劣化に対する現場解析および改良を行ってきた。現在は、設備劣化のモニタリングやAIを用いて解析技術の発展に貢献したいと考えている。