AIによるデータ分析の代表として「機械学習」がありますが、その中で基本的な分析手法である「教師あり学習」(Supervised learning)とは何か、どのような用途で使うことができるのかを解説します。
「教師あり学習」と対比して語られることの多い「教師なし学習」との違いについても簡単に触れます。
【目次】
・機械学習とは
・機械学習が注目されている理由
・統計処理との違い
・教師あり学習とは
・教師あり学習と教師なし学習の違い
・教師あり学習の基本的な仕組み
・教師あり学習のプロセス
- データセットの準備
- データの前処理
- 目的変数と説明変数の選択
- アルゴリズムの選択
- モデル性能の評価
- モデルの運用
・教師あり学習の主な用途
- 金融業での主な用途
- 小売業での主な用途
- 製造業での主な用途
・教師あり学習で多い失敗パターンと解決方法
機械学習とは
(人工知能)はかなり幅広い概念で、人の脳の働きを人工的に再現することを目指した汎用型AIから、自動翻訳のように特定の業務に絞って、人間の作業を自動化することを目指している特化型AIまで様々な種類があり明確な定義は難しいのが現状です。
しかし、実際のビジネスでは特定のビジネス課題を効率よく解決する手段としてAIが使われることが多く、その中でもデータを分析して問題解決をはかる手法として機械学習が大きな注目を浴びています。
機械学習はデータを特定のアルゴリズムで学習・分析し、それにより意味を見出す手法一般をさしますが、名前の通り人間にかわり機械(コンピュータ)がデータを分析します。
最近よく耳にする「ディープラーニング」も機械学習の一種ですが、それ以外にも様々なアルゴリズムが存在します。比較的新しい技術で、今までの機械学習では扱いが難しかった画像データに適しているため「ディープラーニング」が注目を浴びていますが、「ディープラーニング」が他の手法より優れているということではありません。
どのようなデータをどう分析したいのかにより様々な方法が開発されてきたので、目的にあった手法で分析をするということが重要です。
機械学習が注目されている理由
企業が保有するデータは爆発的な勢いで増大しています。
業務プロセスのDXによるトランザクションデータ、デジタルマーケティングの普及に伴うWebアクセスデータやCRMなどの顧客データ、IoT機器の普及によるハードウェアからのデータ、インダストリー4.0に代表される生産プロセスのオンライン化、などの様々なデジタルデータが取得可能となり、またデータレイクなどのデータを運用管理するインフラが充実してきたというのが大きな理由です。
このようにデータの量及び種類が急騰しており、それらを人間が分析することは現実的には難しくなっています。そのために分析の手段として機械学習が現実解として大きな注目を浴びています。
統計処理との違い
一方でデータを分析して、意味を取り出す方法として統計の手法が多く使われてきました。
統計と機械学習は一見に似ていますが、全く異なる分析です。
統計の考え方では特定のインプット情報に対する結果の相関関係を分析します。それに対し機械学習では全てのインプットデータが結果にどう影響するのかの全ての項目の影響度合い[D2] を分析します。
例えば、商品の販売数を予測しようとした場合、統計では天気が販売数にどのように影響するか、気温がどのように影響するか、曜日がどのように影響するかを計算することができますが、天気・気温・曜日がそれぞれどのようにどの程度関係しているのかまではわかりません。
それに対し機械学習は、天気・気温・曜日(あるいはそれ以外の時間などインプットされたあらゆる情報)の影響度合いを分析し、それぞれの項目がどの程度販売数に影響するのかを算出することが可能です。
前述の通り様々なデータが入手可能となった現在、統計的な手法ではインプットとアウトプットの関係を正確に分析することが難しくなっており、その意味で機械学習が必要とされるケースが増えてきているといって良いでしょう。
教師あり学習とは
機械学習のなかでも早期に確立し、実ビジネスで活発に利用されているのが「教師あり学習」です。
「教師あり学習」は文字通り、過去のデータを教師としてデータの分析を行う方法です。
簡単に言えば、既に答え(正解)が分かっている過去データを分析し、答えを導き出すためのモデル(アルゴリズム)を作成し、そのモデルを使ってこれから起こる事を予測させる事を指します。
わかりやすい例で言えば、過去「商品A」を購入したユーザーのデータを学習し、どのようなユーザーが「商品A」を買ってくれるユーザーの属性を分析し、購入確率を計算するモデルを作る、というような使い方です。過去データから購入確率を予測するモデルを作成できれば、新たな見込みユーザーの情報を得た時に、そのユーザーがどの程度購入するかの確率を計算することができるようになります。それを活用して、購入確率の高いユーザーに優先的にアプローチを行うといった事が可能となります。
「教師あり学習」と「教師なし学習」の違い
「教師あり学習」と並んで「教師なし学習」という機械分析の手法もありますが、このふたつはこのふたつは目的も方法も異なります。「教師あり学習」が進化して、「教師なし」でも学習できるようになったということではありません。全く別の分析ですので、目的に応じて「教師あり」か「教師なし」なのかで使い分ける必要があります。
「教師なし学習」は文字通り教師、つまり正解が何かわからないデータに対する分析です。
具体的には、目的変数、つまり正解がないデータを分析し、そのなかで特定のパターンがあるのか、無いのかを分析から導き出します。
これだけではわかりにくいと思いますので、使い方の事例を挙げると、金融取引での不正検知で「教師なし学習」が使われています。取引の関する様々なデータを学習させておくことにより、通常の取引とは異なるパターンが現れた時に、不正が疑われる取引としてアラートを出すことが可能となります。
「教師なし学習」を使って取引を学習させることにより、特定のパターンに縛られずに「通常とは異なる」事を検知できるために、今までの不正とは異なる新たな不正を検知できる可能性があります。(従来の不正取引を教師データとする「教師あり学習」をした場合、過去に発生した不正以外が検知できないため、不正検知にはあまり向いていません)。
別の事例としては「顧客属性」の分析での利用があります。
どのようなユーザー属性、年齢、性別、職業、地域のユーザーを似た属性で群(クラスター)に分けて、どのようなユーザーが多いのかを分析する場合にも「教師なし」学習が使われます。
「教師あり学習」の基本的な仕組み
「教師あり学習」では、最低限「目的変数」と「説明変数」の2種類のデータが必要となります。「目的変数」はいわゆる正解データ(例えば、「商品A」を購入したかいなか)で、「説明変数」はそれ以外のデータとなります。「教師あり学習」ではそれぞれの「説明変数」がどの程度「目的変数」に影響しているのかを分析し、「説明変数」から「目的変数」を導き出すための計算式(アルゴリズム)を生成します。
機械学習の特徴として、多岐にわたる多くの「説明変数」が含まれる複雑なデータであっても、複雑なアルゴリズムを通じて、精度の高い予測モデルを作り出すことができるということが挙げられます。
「教師あり学習」のプロセス
実際に「教師あり」の「機械学習」を実行するためのプロセスを説明します。
データセットの準備
先述の通り「目的変数」と「説明変数」の含まれた過去データを用意します。
この時に留意しなければならないのは、データの種類と量です。
与えられた「説明変数」から「目的変数」を予測するモデルを作成するため、「目的変数」に影響を与える項目が含まれているかを確認する必要があります。
また、データ量が少ない場合には、精度の高いアルゴリズムが作成できない事が多いので、ある程度のデータ量が必要になります。一般的には、1000レコードあればモデルは作成できますが、10000レコード以上あるとより安定した結果を得られると言われています。
ただ、実際には分析する内容やデータによりより少ないデータ数でも高い予測結果を出した事例もありますので、上記はあくまでも目安だとお考え下さい。
また、過去のデータ全てでモデルを作成するのではなく、一部のデータは残しておき、アルゴリズムができた後に、答え合わせを行い、モデルの精度を検証する必要があります。
そのために検証用のデータも加味したデータ量が必要になります。
(検証でどの程度のデータを使うかは求める精度や内容により様々ですが一般的には20%から30%程度のデータを検証で使うことが多いようです)
データの前処理
実際のデータはそのままでは分析を正確に行う事はできないことがほとんどです。
値が入っていないセルが存在したり、何らかの理由で突発的に大きすぎたり、小さすぎたりといったデータがはいっている場合には、それらを何からの方法で補正する必要があります。
また、一言でデータといってもそれは売上のような数字の場合もあれば、地域や年代といったカテゴリーの場合もあれば、問い合わせのようなテキストの場合もあります。
それぞれのデータの種類を特定しなければ正しい分析ができません。
また、よく使われる顧客IDのような一見数字データとして扱えるデータは、実際には顧客を一意に特定するデータであるため、予測として使うには適しておらず、結果に影響しないデータとして取り除く必要があります。
これらの前処理を行って初めて正確な分析が可能となりますので、これらの前処理は必ず行う必要があります。
目的変数と説明変数の選択
教師あり学習では必ず「目的変数」と「説明変数」が必要となります。
「目的変数」は言葉の通り、分析の結果として導き出したいデータとなります。
例えば、不動産価格の変動を予測する場合には、不動産の価格が「目的変数」となります。
それに対し、「目的変数」に影響を与えるだろうその他の項目が「説明変数」となります。
例えば、購入ユーザーの予測の例で言えば、「年齢」「地域」「職業」「家族構成」「会員ステータス」などですし、不動産の場合であれば「駅からの距離」「広さ」「築年数」「部屋数」などになります。
教師あり学習は簡単に言ってしまえば、「説明変数」から「目的変数」を導き出すための分析モデルを作る事であると言えます。
アルゴリズムの選択
教師あり学習のアルゴリズムは長い歴史を通じ、様々なアルゴリズムが開発されてきました。
しかし、データにはそれぞれ特徴があり、複数存在するアルゴリズムにについて、どれを適用することでより高い精度の予測モデルが作成できるかを事前に知ることは困難です。
そのために複数のアルゴリズムでそれぞれモデルを作成して評価を行う必要がありますが、ある程度の経験を積むことにより、データの種類や目的によりどのアルゴリズムの性能がよさそうかの見当をつけることができるようになります。
詳細はここでは述べませんが、教師あり学習で使われる代表的なアルゴリズムでは下記のようなものがあります。
線形回帰
ランダムフォレスト
決定木
k近傍法
ニュートラルネットワーク
サポートベクターマシン
ロジスティック回帰
モデル性能の評価
上記のアルゴリズムのいずれかを使って、過去の「目的変数」と「説明変数」を持ったデータを学習させることにより、「説明変数」から「目的変数」を生成するモデルを作成します。
モデルを作成する場合に全てのデータを学習させるのではなく、モデル作成用のデータと評価用のデータに分割する必要があります。モデルを作成した後に、評価用のデータでモデルを実行し、実際の結果と照らし合わせることでモデルの精度を評価することができます。
この段階にきて始めてどのアリゴリズムを用いたモデルの性能が良いのか(精度が高いのか)がわかります。
モデルの運用
モデルができたら、それを実際に利用できるようモデルのデプロイが必要になります。
最も簡単な方法としてはExcelの計算式を使ってモデルを利用する方法です。
ただし、分析の頻度が多い場合には現実的な方法とは言えないため、多くは下記のいずれかの方法となります。
・モデルのプログラムを組み込む
・APIでシステムと連携する
上記のいずれからの方法により、初めて「目的」変数の入っていないデータを取り込んで分析することが可能になります。
「教師あり学習」の主な用途
教師あり学習は業種を問わず、幅広く利用されています。
特に金融業界での利用が進んでいましたが、最適では小売り、製造業でも利用が進んできました。
金融業での主な用途
法人の与信審査:貸し倒れリスクを予測し、審査期間の短縮を行う
個人のローン審査:貸し倒れリスクを予測し、審査期間の短縮を行う
マーケティング:キャンペーンの反応率の高い顧客、ある商品のアップセル・クロスセルの対象となる顧客を予測し、マーケティングの効率化を計る。
ロイヤル顧客の離脱防止:離脱するリスクの高い顧客の抽出し、また、離脱する顧客の属性を分析することにより、離脱前の対策を可能とする。
小売業での主な用途
マーケティング:キャンペーンの反応率の高い顧客を予測し、施策の効率化を計る。商品のクロスセルの対象を予測し、適切な施策を打てるようにする。
企画:特定の商品のユーザー層を分析し、顧客属性に合わせた1to1のコミュニケーションやプロモーションの立案を行う
ロイヤル顧客の離脱防止:離脱するリスクの高い顧客の抽出し、また、離脱する顧客の属性を分析することにより、離脱前の対策を可能とする。
製造業での主な用途
営業の効率化:商品毎・顧客毎の購入確率を予測し、営業の効率化を計る
生産設備の故障予測:製造設備毎の故障を予測するモデルを作成し、故障前に対策を打つことにより生産ストップを回避する。
部品の遅延予測:部品毎に納入の遅延を予測するモデルを作成し、部品の納入遅延が起こる前に対策を行う。
「教師あり学習」の注意点
教師あり学習の場合、なぜそうなるのかはわからないという、いわゆる「ブラックボックス化」は避けなればならない課題です。
ブラックボックス化の課題としてよく「上司からなぜそうなるのかと聞かれて、説明できないと困るから」と言われることが多いのですが、単に説明ができなくて困るというだけではなく、より本質的な問題であることに留意する必要があります。
機械学習では入力された説明変数をもとに目的変数を算出しますが、実際に説明変数が目的変数とどういう関係性であるか保証はありません。実際には相関関係が無いのに一見あるように見えてしまう「疑似相関」が発生してしまう可能性があります。
有名な事例として、アメリカの医学雑誌に掲載された「チョコレート消費量とノーベル賞受賞者の関連」があります。この発表によると、1人あたりのチョコレートの年間消費量が多い国ほど、ノーベル賞を受賞している人の数が多いということがわかったということでした。
これは実際にはチョコレート消費がノーベル受賞者の多寡に影響与えているのではなく、単に経済規模が大きければ、チョコレート消費もノーベル賞受賞者も多くなるというだけの話ですが、計算上はチョコレート消費量を増やせばノーベル受賞者が増えるようにみえてしまいます。(チョコレートが脳の働きを活性化するからという誤った理由付けもされてしまうかも知れませんね)
このような疑似相関を避けるためには、分析結果だけはなく、なぜそのような分析になったのかを、その領域に知見のある人の目で確認する必要あります。疑似相関を避けるためにも、ブラックボックス化することなく説明が見える分析ができることが重要です。
「教師あり学習」を自動化するAutoML
教師あり学習によりデータを活用したビジネス改善が可能となりますが、一方で正しい分析モデルを作成するには、データ分析の専門的な知識が必要というだけではなく、実際の分析プログラムを開発するなどかなりの手間やコストが必要です。
そのためにデータサイエンティストと呼ばれる専門家のいない企業では導入のハードルが高いという課題がありました。
専門家のいない企業でも利用できるよう教師あり学習のプロセスを自動化する「AutoML」というソリューションが登場し、導入する企業が増えています。
初めてAutoMLを利用するなら「DAVinCI LABS」がお勧め
ailys社が開発・提供している「DAVinCI LABS」(ダヴィンチラボ)なら、データの取り込みから前処理、アルゴリズムの選定からモデル作成までを全てノーコードでマウスクリックだけで行うことができます。
また、予測モデルの作成だけではなく、顧客属性の分析を行うためのクラスタリングなどビジネスで必要な教師あり学習の機能が全て揃っています。
また、作成したモデルに対し、なぜそのようになったのかを説明する機能も備えているため、AIのブラックボックス化を防ぎ、誤った判断をしてしまうというリスクも低減できます。
さらに、従来の教師あり学習に加え、「目標」と「予測結果」のギャップがある場合の施策のシミュレーションを行う機能までが揃っているので、単なるデータ分析にとどまることなく、施策やアクションにまで落とし込みができるため、データサイエンティストはいないがデータドリブンな経営を目指したい企業に最適なソリューションです。
「教師あり学習」で多い失敗パターンと解決方法
弊社では今まで教師あり学習にとりくんだものの、成果が出ずに失敗したという企業様からのご相談を頂くことがあります。
別ブログで教師あり学習で失敗してしまうパターンと、その要因、解決方法について解説していますので、教師あり学習を実ビジネスに適応を考えている方は是非ご参考にして下さい。
ブログ:
Comments