AI(人工知能)の基本的な考え方

 本日は、すごく基本的なAI(人工知能)の作り方、その精度をどうやって行なっていくのか、簡単なところから話をしましょう。

AIの出来上がり

 みなさん、AI(人工知能)って、どうやって出来上がるのかご存知ですか?中身は、大変難しく、プログラミング以外にも色々な知識は必要です。しかしながら、仕組みを知っておけば、より興味がわくかもしれません。私は、エンジニアではないですが、その仕組みを知っておかないと、お客様に良いものは提供できないと思っており、難しいモノをいかに簡単に説明できるようにするのかという視点にこだわっております。

 AIを使って何かを予測させたい、正しい答えを出させるなど色々とやりたいことがあると思います。(もちろん、AIを使うことが目的ではありませんが、そのあたりは前回、前々回のブログで説明したとおりです。)

AIのアルゴリズム=(AIのモデルに必要な)方程式のようなもの

 まずは、そのアルゴリズムを使って何らかのモデルを開発することです。このモデルの開発方法は、エンジニアによって違います。GoogleのTensorFlow(テンソルフロー)やIBMのWatson(ワトソン)など、あらかじめアルゴリズムの一部を用意しているベンダーのツールを活用する方法もあります。ちなみに、アルゴリズムとは、AIで解決してくれるモデルに必要な方程式(数式 / 関数)だと理解してください。マーケティングの領域ですと、例えば、退会(離脱)者の予測というモデルが例として挙げられます。

 当社は、そのモデルを開発するために、米国を中心とした最新の手法が記載されている論文を解読して、実際に企業が行いたい(解決したい)ことを基にアルゴリズムを開発しております。また、マーケティングに関するアルゴリズムについては、マーケティング・サイエンスの第一人者、東京大学大学院経済学研究科の阿部教授に、当社の技術アドバイザーとして参画頂き、そのアルゴリズムを開発頂いております。このアルゴリズムについては、数学の考え方、つまり、確率、指数関数などが基本となっているようです。当社は、Pythonでそれらのアルゴリズムをスクラッチで開発しており、中身まで説明することが可能です。

AIのモデルとアルゴリズムの関係

 改めて言いますと、何からのAIを活用して解決させたい(予測させるなど)モデルにアルゴリズムは必要です。そしてそのアルゴリズムの中に「学習」という機能が必ずあります。分かりやすくと言いますと、親が子供にドリルや参考書で勉強させますね。勉強させて、東京大学やスタンフォード大学に入学することが目的ですね。それと同じ原理です。このアルゴリズムで組み立てたモデルに、データで学習(勉強)させる訳ですね。最初は、このモデルは、赤ちゃんですが、何度も何度も学習していくと、大人になっていきます。

 具体的には、「2つの数字の掛け算を学ぶ」モデルを使って、子供が学習、つまり、勉強するとしましょう。勉強させるために、与えるドリル、AIの場合はデータになります。掛け算を学ばせたいのなら、(2,8)(3,3)というデータを与えます。2×8=16 3×3=9 最初は、2×8を12という風に答えて、間違いをどんどん正しくしていくイメージです。 細かいですが、16や9といった答えは、あらかじめ用意しておきます。ドリルの答えを用意しておくイメージです。

【子供から大人へ】

 その大人になったモデルがAIと呼ばれるわけで、ここでAIが誕生するわけです。この出来上がったAIこそが、冒頭で説明した、何かを予測させたい(離脱者を予測したい)、正しい答えを出させる(曲がったキュウリは出荷させないで、まっすぐのキュウリは出荷させるために、画像で判別させる)などの予測や正解の結果を出してくれるのです。ここまでが、学習(勉強)によって、出来上がるAIです。

【AIの検証】

 世に出す前に、この学習したAIを検証する必要があります。学習し終わったAIの精度を測る必要がありますよね。この精度を測ることを、検証と言います。この検証で、ある程度、そうですね、せめて7割くらいの正解率が出れば、OKでしょう。

 本来であれば、予測するわけですので、将来のデータがあればベストなのです。ただ、将来のデータってありますか?そんなのないですよね。あるわけないです。ここで、学習させるデータから、ある一定の学習させるデータから、学習させずに隠しておき、(正式にはホールドする、学習に使わず置いておくと言われます。)このデータは、学習させるデータに使いません。このホールドしておいたデータを将来のデータとして見立てるのです。

 ここで、検証した結果、正解が合っているかどうかを見ていきます。先ほどの掛け算でいうと、(2,8)(3,3)は学習に使ったので、(4,1)(6,7)といったような学習に使っていないデータで検証します。正しければ、正解、10個のうち7個正解だと、正解率は70%のスコアとなるわけです。

 最後に、AIの開発における独特の呼び名について整理しておきます。学習については、トレーニングと呼ばれることもあり、検証のことを評価、Validationと呼んだりします。これは、会社やその個人によって違います。予測させることを推論させると言われる場合があります。ちなみに、私は、一番、聞き慣れている言葉を使うようにします。

 今回は、AIの手法で一番ポピュラーな「教師あり」学習について説明しました。当社は、「教師なし」学習や「強化」学習についてもお客様向けに取り組んでおります。また、どこかの機会でわかりやすく説明したいと思っています。

どうでしたか?仕組み、概念が分かってもらいましたでしょうか?

今回は、ここまでです。

 

マーケターの方向けの、マーケティングにAI活用が進まない3つの理由とその解決策についてまとめた資料を無料で配布しています。

お気軽にダウンロードしてみてください。

>無料でDLする<

 

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です