AIと機械学習は違うもの!?

AIという言葉がもてはやされていて、

  • ”なんでも自動でやってくれる!?”
  • ”仕事を奪われる!?”
  • ”人間世界が機械に乗っ取られる!?”

様々な噂を耳にします。

今回は、そんなAIって何ができるのかということをデータサイエンティスト目線で説明したいと思います。

そもそも、AIの定義って何!?


AIの定義をWkipedia先生で調べてみると、以下の通り

”人工知能(じんこうちのう、英: artificial intelligence、AI〈エーアイ〉)とは、「『計算(computation)』という概念と『コンピュータ(computer)』という道具を用いて『知能』を研究する計算機科学(computer science)の一分野」を指す語[1]。「言語の理解や推論、問題解決などの知的行動を人間に代わってコンピューターに行わせる技術」[2]、または、「計算機(コンピュータ)による知的な情報処理システムの設計や実現に関する研究分野」ともされる[3]。” (引用元

正直、イマイチわからないってのが率直な感想だと思います。私もそう思います。

我々データサイエンティストからしても、AIという言葉は何を指しているのか曖昧なので使う頻度はそう多くないです。

ただ、AIっていう言葉を入れておけば、”なんかすごそう”とか”時代の流れに乗っている感”を演出することができるので、資料にあえて使ったりすることもあります。

よく言われている、AIとか機械学習の関係図です。

まずは皆さん聞きなじみのあるAI(Artificial Intelligence)の中に、機械学習ルールベースの分野があります。

機械学習は過去のデータを分析することで与えられたデータを予測、分類、検知することができる技術です。ディープラーニングも機械学習の技術の中の一つと言えます。

ディープラーニングは教師あり学習の一つではありますが、少し特徴的なので分けてしまいました。

ルールベースは簡単に言うとプログラミングでいうif文による分岐ですね。「○○だったら××を行う」という条件分岐を複雑に行うことで物事を決定していきます。

世間のイメージとしてルールベースはあまりAIと認識されてないかもしれませんが定義的にはAIとなります。RPA(Robotic Process Automation)などはまさにルールベースで自動化を行い、業務を効率化している例ですね。

個人的に不思議だと思うのは、上記の区分けで行くと昔遊んでたスーファミのストリートファイターやマリオカートのCPUもAIだったんだなぁと。どういう仕組みなのかはわかりませんが、よくできたAIですね。

 

AIとは!?


それでは少し、データサイエンティストとしてAIという言葉をどう捉えているのか説明します。

私が仕事でAIという言葉を使うときに意識すること、それは機械学習(またはルールベース)の技術が組み込まれた一つのシステムであることです。

機械学習はデータを使ってモデリングを行います。具体的に言うと、Pythonといったプログラミング言語でデータを読込み、データの修正・加工の準備を済ませ、学習を行う関数を使って学習させます。

予測するときは予測用のデータをPythonで読込み、学習させたモデルに入力することで予測結果が返ってきます。この一連の流れをPythonの中でやってしまいます。

つまり、機械学習モデルといっても単なるプログラミング上で動く関数みたいなもんなんです。

これだけではデータサイエンティストが作ったスパゲッティコードがそこにあるだけで、AIでもなんでもありません。

私たちデータサイエンティストの仕事は、このPythonで作った学習済みモデルをとあるシステムに組込み、実際の現場で使えるようになって初めて意味があると思っています。そしてこの作業を含めてAI化と呼んでいます。

AIとは何か?と問われれば「機械学習(またはルールベース)による予測機能を使って自動化されたシステム」です。

例えば車の自動運転システムは、カメラによる画像データや超大量のセンサーから得た情報をもとに機械学習(特に画像に強いと言われているディープラーニング)が道、歩行者、信号機などを判別して、その予測結果をもとに自動でハンドルの位置やスピードなどを調整しているシステムです。(違っていたらゴメンナサイ)

自動運転システムにおける機械学習の役割はあくまで予測・識別を行うシステムの一部に過ぎません。AIはシステム全体を指す言葉なのです。

以上がAIの本質であり、機械学習との違いになります。

コメント

タイトルとURLをコピーしました