「ＡＩで〇〇したいんだけど」の相談前に確認してほしい３つのこと

## はじめに

みなさん、こんにちは。
株式会社キカガクの代表取締役の吉崎です。

今回のテーマは「ＡＩで〇〇したいんだけど」という相談についてです。

１か月ほど前に書いた「[機械学習を使った事業を成功させるために必要な考え方や人材、フェーズとは？](https://qiita.com/yoshizaki_kkgk/items/55b67daa25b058f39a5d)」という記事に多くのいいねをいただき、このあたりの内容にご納得いただけたようで、とても嬉しいです。

そして、今回のテーマで扱う「ＡＩで〇〇したいんだけど」という相談について一概に否定するわけではないのですが、基本的には**何もわからないからとりあえず話を聞かせてほしい**という文脈の相談が多く、こちらとしても解析に使う時間などを削って相談に乗っているので、何もないと何の時間だったの...と思うわけです。

そこで、今回は１人分の相談に乗れる時間を使って、こういったことをすでにクリアしているのであれば、さらに相談すると実りがありますよという線引きをしておきたいと思います。

それでは、私が感じる相談前に確認してほしい３つのことは以下の通りです。

- 人間を超えるＡＩという幻想を抱いていないか
- ＡＩなしでもビジネスが成り立っているか
- 必要なデータの形を知っているか


## 人間を超えるＡＩという幻想を抱いていないか

この相談内容でよくあるものとして、**人間にはできていないから、人間を超えると言われているＡＩで解決したい**ということがあります。
確かに、AlphaGoでは囲碁で人間に勝ちましたし、最近では人間を超える結果を残すＡＩも登場しています。

ただし、これは**限られた環境の中での話**であって、すべての状況においてＡＩが人間を超えているわけではありません。

ＡＩには**汎用型ＡＩ**と**特化型ＡＩ**があります。
前者はドラえもんのように人間から与えられた情報を収集しながら処理を行い、その情報をもとに成長していくような人間にとって理想的な存在のＡＩです。
そして、後者は人間が与えた**教師データ**をもとに、その手順を限られた環境下で再現できるような規則性を見つけるようなＡＩです。

ビジネスの現場で使われているＡＩはほとんどが**特化型ＡＩ**です。
この特化型ＡＩでは人間が与える教師データを答えとして学習するため、基本的には人間を超えることはありません。
処理速度などという観点では人間を超えることはあるのですが、**回答の質**という意味では模倣するだけであるため、人間と同じ性能が出せれば万歳というものです。

またＡＩでは**学習**と**推論**の工程がありますが、これを知らない人を今でもよく見かけます。

学習では、人間が与えた教師データに基づいてその規則性を見つけていきます（教師なし学習というものもありますが、ひとまず置いておきましょう）。
この例でいうならば、与えられた画像が「佐藤さん」か「鈴木さん」かを分類するのですが、ＡＩでは最初からこれが佐藤さんか鈴木さんか知っているはずもないので、これは人間が教師データとして**手作業**で準備する必要があります。

![00.png](https://qiita-image-store.s3.amazonaws.com/0/130181/80c49830-389d-e9b6-2352-e9eb9995a456.png)


そして、学習を終えてある程度良い精度で予測できるような**学習済みモデル**が出来上がれば、これを用いて推論を行うことができます。

![00_1.png](https://qiita-image-store.s3.amazonaws.com/0/130181/b926b80a-8664-8302-0e10-735a90c7f391.png)

サービスで使っていく場合にはもちろん**推論**の工程から活用が開始できるのですが、ＡＩは最初から学習なしでも推論から始められると思っている人が意外と多いのです。

こんな話をするとないないと思うかもしれませんが、
**即導入できるチャットボットが欲しい**
という要望を聞いたりすることがあり、まさにこの例です。

ＡＩを作る場合は部下を育てるようにとよく言うのですが、まずは教師データを作りながら、**根気強く人間がＡＩに教え込んでいく**必要があります。
「なんだＡＩってそんなものか」
そう思った方は、ＡＩを使わずにビジネスを成り立たせることをお勧めします。

ただし、AzureのCognitive Servicesなどで提供されているのですが、学習済みモデルが提供されており、提供されている限られた用途でよければ、推論から始めることもできます。
ＡＩ初心者の方にはまず使ってみるという点で、このような学習済みモデルを使ってサービスに活かせないかというところから調べてみましょう。

- Azure Cognitive Services
- IBM Watson
- GCP Cloud Visionなど


## ＡＩなしでもビジネスが成り立っているか

こちらに関しては、前回の記事でも大きく触れているところでした。
参考：[機械学習を使った事業を成功させるために必要な考え方や人材、フェーズとは？](https://qiita.com/yoshizaki_kkgk/items/55b67daa25b058f39a5d)

![](https://camo.qiitausercontent.com/d8828b63c72cdc2679308546970f2f31d97ba395/68747470733a2f2f71696974612d696d6167652d73746f72652e73332e616d617a6f6e6177732e636f6d2f302f3133303138312f63636434323039652d353861392d663366622d356565322d3466623734623638353734322e706e67)


詳しくは上記の記事を読んでほしいのですが、ＡＩありきでないと成立しないビジネスモデルを成り立たせることは苦労すべき点が多いです。
**ＡＩに関して知見のある人が取り組んでもビジネスとして成り立たないことが多い**ということは、**ＡＩに関してほとんど知らない人が成り立たせることはさらなる難しさがある**わけです。

上記の記事で紹介している**パターンＡのビジネスモデル**となれるように考え、そして、**精度100%が出ない場合での運用側のカバー**を考えてみてください。
ＡＩの活用はその点でのアイディアが見えていて、はじめてスタート地点に立てるはずです。


## 必要なデータの形を知っているか

ＡＩと一言で言っても、ほとんどの場合は**機械学習**を指していると思います。
そして、この機械学習はありとあらゆるものをなんかいい感じの結果を得られるブラックボックスではなく、**決められた入力から決められた結果**が得られる程度のものです。
そのため、すでに用意されている状況下でしかパフォーマンスを出すことができません。

この機械学習を活用したいという場合には、**どのような手法**があり、その手法を使うためには**どのようなデータの形**をしておかないといけないかを覚えておきましょう。
その手法や形を覚えておくために、ここではいくつかの代表的なものを紹介していきます。
さらに詳しくは下記の本などがおすすめです。

参考文献：[大学4年間のデータサイエンスが10時間でざっと学べる](https://www.amazon.co.jp/%E5%A4%A7%E5%AD%A64%E5%B9%B4%E9%96%93%E3%81%AE%E3%83%87%E3%83%BC%E3%82%BF%E3%82%B5%E3%82%A4%E3%82%A8%E3%83%B3%E3%82%B9%E3%81%8C10%E6%99%82%E9%96%93%E3%81%A7%E3%81%96%E3%81%A3%E3%81%A8%E5%AD%A6%E3%81%B9%E3%82%8B-%E4%B9%85%E9%87%8E-%E9%81%BC%E5%B9%B3/dp/4046022116/ref=sr_1_1?ie=UTF8&qid=1542785684&sr=8-1&keywords=%E3%83%87%E3%83%BC%E3%82%BF%E3%82%B5%E3%82%A4%E3%82%A8%E3%83%B3%E3%82%B9%E3%80%8010)

<img src="https://images-na.ssl-images-amazon.com/images/I/51tDHD1o2UL._SX339_BO1,204,203,200_.jpg" height="300px">

### 教師あり学習

ビジネス活用されている代表的なものが教師あり学習と呼ばれる入力となる変数と**教師データ**との関係性（規則性）を見つけて、その規則性に基づいて新しいサンプルに対する予測をおこなうものです。
そのためには以下のようなデータの構造になっている必要があります。

![01.png](https://qiita-image-store.s3.amazonaws.com/0/130181/cf027b7f-6188-c37a-ba51-a669b2dcf661.png)

「データは大量にあるんだけど」という相談も多いのですが、たいていのケースは入力変数となるデータが溜まっているだけであり、教師データと紐づけて蓄積されていることがありません。


### 教師なし学習

教師なし学習ではマーケティングによく使われるクラスタリングを代表的なものとして、入力となるデータだけで学習を行います。

![02.png](https://qiita-image-store.s3.amazonaws.com/0/130181/cb9c745a-c0d4-213f-7159-c94f0a495c61.png)

教師データのように答えのない中、何を予測するの？と思うかもしれませんが、たとえばクラスタリングの例でみてみましょう。

![03.png](https://qiita-image-store.s3.amazonaws.com/0/130181/11c74a98-7eaa-70af-7719-cf84ec2568be.png)

クラスタリングでは上図のように、データが存在している中でどのようにグルーピングすると適切であるかと考えて、それを学習していきます。

![04.png](https://qiita-image-store.s3.amazonaws.com/0/130181/ef4fbc53-aa09-934f-e95f-71e6f05cdf69.png)

距離情報（遠い近いを定量評価）に基づいて**クラスター**と呼ばれる塊を作ります。上記ではわかりやすいように丸で囲んでいますが、厳密には丸と丸の間のゾーンに新しいサンプルが来た場合には一番近いクラスターに割り当てられます。
また、今回はクラスターの数を３としていますが、答えがないため適切なクラスターの数はわかりません。
データを見ながら、またＡＩＣなどのいくつかの指標を見ながら適切だと考えられるクラスターの数を決めていきます。

そして、クラスターという単位でくくることができれば、おそらく**この同一クラスター内の人物は似ているだろう**という仮説のもと、それぞれのクラスターに対する施策を打つ**マーケティング**が行われるわけです。
この先の姿としてパーソナライズされたレコメンドがあります。

たしかに教師データはありませんでしたが、なんの根拠もなくマーケティングするよりは一歩進みそうな気配がします。
これが**教師なし学習**と呼ばれるものです。

### レコメンド

マーケティングの次の施策として登場していた**レコメンド**は各個人の単位でおすすめの商品などを予測して提案するものです。
Amazonのおすすめの商品など最近ではとても身近な存在になっていると思います。
このレコメンドに関する相談も多くあります。

![05.png](https://qiita-image-store.s3.amazonaws.com/0/130181/ae6afa1c-f0f3-cbed-0471-618ae43314f3.png)

レコメンドの際には上記のようなデータ構造のデータセットが必要となります。
あるユーザーにお勧めの商品を提示する場合には、過去の**どのユーザーがどのアイテムに対して何点をつけていたかという点数 (rating)** が必要です。
それ以外にも、ユーザーやアイテムの属性情報などからレコメンドを行うこともできますが、それはさらに発展形としてここでは置いておきましょう。

レコメンドでは点数がつけられており、その点数情報を教師データとして学習するため、教師あり学習のように受け取ることもできますし、内部で属性情報が似たユーザーという距離情報に基づいたアルゴリズムも含まれるため、教師ありと教師なしの両方を駆使したものだと思っています。
そのため、別の枠組みで紹介していました。


### ツールで簡単に実装できる時代

これまで回帰や分類の教師あり学習、クラスタリングなどの教師なし学習、レコメンドと紹介してきましたが、それではこれらのデータの構造を理解し、蓄積ができていても難しいプログラミングが次の壁として待っているのでしょうか。
それが、最近では、ツールを使って簡単に機械学習のモデルを構築できる時代になっており、たとえば、Azure Machine Learning Studioでは下記に示すように、GUIでポチポチと組んでいくだけでノンプログラミングで実装ができます。

![06.png](https://qiita-image-store.s3.amazonaws.com/0/130181/ea14b4ba-8204-7da7-cfe1-74c20a13ddf1.png)

もちろん実際にシステムへ組み込んでいく際にはエンジニアの方の手助けは必要になってきますが、簡単な仮説検証程度であればプログラミングなしでもどうにか行うことができるようになっています。

ＡＩがこれから事業化されていく世の中になるためには、

- ＡＩが使えるデータ構造を理解し
- まずはＡＩなしでビジネスを成り立たせながら
- ＡＩで使えるデータを蓄積し
- データが溜まったタイミングで解析を行い
- エンジニアと協業しながらサービスの改善に取り組めるような人材

が必要とされているのではないかと思います。
本記事がその最初のステップになることを願っています。

## まとめ

「ＡＩで〇〇したいんだけど」の相談前には

- 人間を超えるＡＩという幻想を抱いていないか
- ＡＩなしでもビジネスが成り立っているか
- 必要なデータの形を知っているか

の３つをクリアしてから相談しましょう。

そして、この知識という文脈では話さなかったのですが、**相談相手へのお返し**もちゃんと考えましょう。
「とりあえず相談させてほしい」と連絡が来て相談に乗るも、ＡＩについて話して結局何もなく、時間だけ奪われてしまうことも少なくありません。

相談するための最低限のレベルになっていること、相談する相手への配慮を忘れないこと。

ＡＩが登場する以前に当たり前のことですが、その当たり前を忘れず、ビジネスを発展させ、産業を盛り上げていきましょう。
資源の少ない日本だからこそ、**情報**という資源をうまく活用できることが、日本の産業を盛り上げられるチャンスだと思っています。

技術を事業化していくことは大変ですが、お互い頑張っていきましょう。

もし記事の内容を気に入っていただければ、いいねをいただけると嬉しいです。

ご一読いただき、ありがとうございました。

### 著者

株式会社キカガク
代表取締役社長　吉崎亮介

<img src="https://qiita-image-store.s3.amazonaws.com/0/130181/41cb23eb-503e-5825-7b08-4dbb749aed32.jpeg" width="200px">

Twitterでのフォローをお待ちしています。
[@yoshizaki_kkgk](https://twitter.com/yoshizaki_kkgk)