AWSの機械学習サービス「Amazon Machine Learning(ML)」は、2015年4月に発表された。本稿執筆時点(2016年10月4日)で利用可能なリージョンは、バージニア北部、アイルランドの二つ。東京リージョンではまだ利用可能になっていない。

 Amazon MLは、ある商品が何個売れるか、特定の顧客が販促キャンペーンに反応するかどうか――といったビジネス関心事の予測に汎用的に使える。

 機械学習と聞くと、米IBMの Watsonや米GoogleのAlphaGoといった、自律的に学習して答えを出す高度な人工知能をイメージするかもしれないが、現状のAmazon MLはシンプルな予測に特化している。

 Amazon MLで用いられる機械学習の方法は、「教師あり学習」に分類されるものである(図1)。

図1 「教師あり学習」による予測の例
図1 「教師あり学習」による予測の例
[画像のクリックで拡大表示]

 顧客が販促キャンペーンメールに反応するかどうかという予測を例に取ると、まず顧客の「性別、年齢、購買頻度」といった入力項目の値、「販促キャンペーンメールに記載したURLをクリックしたかどうか」という出力項目の値で構成される過去実績データが必要になる。これは機械学習に用いるデータであり、専門用語で「教師データ」という。

 Amazon MLは、教師データの入力項目と出力項目の関係を解析して、入出力関数に相当する「予測モデル」を作成。この予測モデルに、顧客の「性別、年齢、購買頻度」のような入力値を投入すると、販促キャンペーンメールに反応しそうかどうかという予測値(この場合は0または1の2値)を得られる。

 Amazon MLは三つの典型的な分析手法をメニューとして提供している。ユーザーは分析手法を詳しく知らなくても予測が可能だ。分析手法は「二項分類」「他項分類」「数値予測」の三つである。一つずつ解説する。

(a)二項分類

 予測対象が、0か1か(YesかNoか)という2値を取る場合に使う。例えば、商品を購入する/しない、販促キャンペーンに反応する/しない、などを予測する。ロジスティック回帰分析という手法がベースになっている。

(b)多項分類

 予測対象が、0、1、2、3…といった3種類以上の値を取り得る場合に用いる。例えば、ある顧客が購入するのはどの商品か、などを予測する。多クラスロジスティック回帰という手法が使われる。

(c)数値予測

 予測対象が数値の場合に用いる。例えば、特定商品の来月の販売数量はどれだけか、顧客ごとの単価はいくらか、を予測する。線形回帰(直線回帰)という手法を用いる。

 いずれの分析手法でも、学習用の教師データや予測用の入力データは、CSV(カンマ区切り値)のような表形式であればよい。データの型はAmazon MLに自動推定させることもできるが、ユーザーが定義することも可能である。

 教師データは、ケースによっては大規模になるが、Amazon MLは、その処理基盤を備える。

 三つの手法のどれを使うのかを、自動的に選択する機能も持っている。ユーザーが、複数の項目で構成される教師データのどの項目が予測対象になるかを指定すると、Amazon MLが適切な手法を選ぶ。

 教師データが不完全であったり欠損があったりする場合でも、それが少量であれば、予測モデルを作り予測を行える。教師データの問題が大きい場合には、処理が中断する。

 さらに、教師データに対して過度に適応してしまい、実際の予測精度が低くなる「過学習」を制御する「正則化」という機能や、作成した予測モデルの評価機能も備わっている。