『機械学習』というテーマが注目を浴びている一方で、いざ実践してみるとなるとどうすれば良いのだろうか、またこのテーマについては統計や分析に関する知識も求められる部分がありますので、気軽に触ってみる……というのもAWSの他のサービスと比べると少しハードルが高い印象があるかと思います。
そこで当連載では、機械学習について興味を持ってはいるものの、これまでそういった実戦経験がない(かくいう私もそんなステータスです)、そんな立ち位置の人が読み進め・実践し・理解できるようなやAmazon Machine Learningの解説を行っていきたいと思います。
今後の予定と連載のゴールについて
連載第1回目となる本稿では、Amazon Machine Learningを理解する上での前提・基本となる部分について解説していきたいと思います。サービスの構成要素や実施手順などの紹介が主な内容です。そして次回第2回より、Amazon Machine Learningで提供されているそれぞれの予測分析手法について、実践を交えて紹介していく予定です。
連載のゴールとしては、ひと通りの内容を読み進めていただくことで『Amazon Machine Learningの実践には何が必要で、何ができるのか』を理解し、Amazon Machine Learningによる機械学習実践の足掛かりになる事を想定しています。
それでは改めまして、よろしくお願いいたします。
機械学習とは
Amazon Machine Learningのコンセプトの説明に入る前に、そもそも「機械学習」とは何ぞや?というところから進めてみたいと思います。
Wikipediaで「機械学習」を調べてみると、「人工知能における研究課題の一つで、人間が自然に行っている学習能力と同様の機能をコンピュータで実現しようとする技術・手法のことである」と説明されています。
ではなぜ、機械学習を用いるのでしょうか? それは、機械学習の手法を用いることで「予測」が行えるからです。予測を行いたい対象のデータをサンプルとして用意し、そのデータの内容を解析して予測を行うモデルを作成します。作成したモデルを使って予測を行わせたいデータを読み取り、はじき出した予測結果を見ることで次のアクションを起こすことができます。
機械学習を活用していくことで、これまで蓄積していたデータを元に、ビジネス上の決定をより早く、高い確度で下すための判断材料を得ることができるようになります。AWSはこの「機械学習」という領域にも、その守備範囲を広げて来たというわけです。
Amazon Machine Learningで扱うことができる機械学習のテーマ
今後、将来的にはできるテーマの数や領域が増えてくるのかもしれませんが、現時点ではその範囲は非常にシンプルなものと言えるでしょう。
Amazon Machine Learningのリリース時点における対象範囲、すなわち「できること」は、「教師あり学習」という手法に基づくいくつかのアプローチに限定されています。
「教師あり学習」とは機械学習の手法の一つで、事前に与えられた"解答の分かっている"データを「例題(教師からの助言)」データとみなし、そのデータを元に機械学習モデルに学習を行わせ、学習の完了したモデルを用いて新たなデータ、まだ見ぬデータに対して予測を行っていくものです。以下3つの手法が現時点では用意されています。
二項分類(Binary Classification)
入力データを2つの選択肢いずれかに判定させる分類方法。「顧客はこの商品を買うか否か」「このEメールはスパムか否か」というような分類を行いたい場合に使います。
多項分類(Multiclass classification)
入力データを3つ以上の選択肢のいずれかに判定させる分類方法。「この製品の分類は書籍/映画/衣類のいずれか」「顧客が興味を示すのはどのカテゴリの製品か」というような分類を行いたい場合に使います。
回帰分析(Regression)
「値の予測」を行いたい場合に使います。「明日の任意の地域の気温は何度になるか」「この商品はこの時期にどれだけ売れるか」というような情報を得たい場合に使います。
このような分類や予測を行いたい要件があり、かつその作業において「ルールや条件の調整が複雑なため人力では困難」「分類や予測に用いるデータのボリュームが多過ぎて人力ではスケールさせていくことができない」というような場合に機械学習、Amazon Machine Learningを用いることができます。機械学習で何でも解決、実現できる!という訳ではありませんのでこの辺りは見極めが重要となってきます。