AWS・Amazon Redshift Monthly Updates

#5 AWSの機械学習サービスAmazon Machine LearningとRedshiftの活用

この記事を読むのに必要な時間:およそ 3 分

AWSの機械学習サービスAmazon Machine Learning

機械学習(Machine Learning)は,ビッグデータの応用事例としてもよく取り上げられ,たとえばECサイトで商品のレコメンデーションに利用されたり,未来予測の技術としても使われることから,非常に注目を集めています。

今回(米国時間4月9日)AWSは,そのビッグイベントであるAWS Summit 2015(San Francisco)で,AWS初の機械学習サービスである「Amazon Machine Learning」を発表しました。

※)
現時点では US-EAST(N.Virginia)リージョンでの利用が可能となっています。Redshiftと併用する場合は,RedshiftのデータをUS-EASTに転送することで利用可能となります。

このAmazon Machine Learningは実際にECサイトであるAmazon自体ののデータサイエンティストが使っている機械学習モデルを土台にしており,分析やモデル構築の性能の方も信頼できるものとなっているとのことです。

このサービスは対象者として,⁠for developers of all skill levels to use machine learning technology.(機会学習テクノロジを使う全てのレベルの開発者に)⁠と書いてあるように,データ専門家でない人たちも気軽に機械学習を利用することができるように設計されているようです。そして目玉機能として,アプリケーションからAPIを用いて,この機械学習機能を呼び出し,直接アプリから利用することができるので,今後はこの機械学習機能を利用したさまざまなアプリケーションが増えてくるのではないかと思います。

このように,大きな可能性を秘めているAmazon Machine Learningですが,最初からAmazon Redshiftをデータソースとしてサポートしていることも特徴です。つまり,データをRedshiftに溜め込んでおいて,それを元にモデルを作り(学習させ)⁠確度の高い予測が可能になる,ということです。我々FlyDataは,このRedshiftの使い方はひとつのキラーアプリケーションになると考え,今回は公開後なるべく早く,Amazon Redshiftを利用したこのサービスの検証を行いました。

Amazon Machine Learningを使ってみる

AWSの発表によるとAmazon Machine Learningのデータソースには「Amazon S3」⁠Amazon Redshift」⁠RDS MySQL」が利用可能となっています。(現時点では,RDS MySQLの利用はまだのようです。) 今回の検証には,FlyDataのサービスでも分析に利用している一部のサンプルデータを使いました。

では,さっそく検証を始めます。

セットアップウィザードの立ち上げ

AWSのコンソール画面にアクセスし,Amazon Machine Learningを選択します(図1)⁠⁠Get started⁠をクリックすると,2つのセットアップオプションが表示されます。今回のテストでは “Standard setup” を選びました。⁠Launch⁠ボタンを押して,セットアップウィザードを開始します。

図1 Amazon Machine Learningの開始画面

図1 Amazon Machine Learningの開始画面

IAMロールの作成

まずはじめに,Amazon Machine LearningがデータソースであるAmazon Redshiftにアクセスできるように,IAMロールを作成する必要があります。こちらの設定は簡単なのでAmazon Machine LearningのIAMロールの作成の手順に従って作ります。

はじめにAmazon IAMの画面にアクセスし,メニューの左端にある⁠Role⁠を選び, “Create New Role⁠をクリックします。新しいロールを作成し,新しく追加したロール名を選び⁠Select⁠をクリックすると次の設定に進みます。

図2 Amazon IAMのロールタイプ選択画面

図2 Amazon IAMのロールタイプ選択画面

Datasourceの設定

IAMロールの作成完了後,データソースの作成に入ります。DatasourceのページでRedshiftを選択すると,クラスタ名,データベース名,クレデンシャル(パスワード)⁠そして,必要なデータを呼び出すためのSQLクエリなどの入力を求められます。

図3 Datasourceの設定

図3 Datasourceの設定

必要な情報を入力すると,Amazon Machine Learningは自動でRedshiftのデータをS3にコピーし,そのデータファイルを操作し,それぞれのスキーマにあったデータの型の提案をしてくれます。もし,この型推測が正しくない場合は⁠Change Type⁠で修正することができます。

次は⁠Target⁠の設定です。

図4 Targeeの設定

図4 Targeの設定

この⁠Target⁠のページで利用するデータの訓練変数⁠Target Value⁠(またはY値)を決められます。訓練変数の設定を完了し,クリックを押し,さらに進めていくとデータソース作成準備が終わりデータソースオブジェクトの作成が始まります。

以下はデータソースオブジェクトの作成後に見ることができる可視化されたデータ分布の例です。

図5

図5

著者プロフィール

山本美帆(やまもとみほ)

FlyData Inc. Data Analyst

カリフォルニアベイエリアの大学で統計学とコンピューターサイエンスの学位を取得後,シリコンバレーのSaaSスタートアップFlyData Inc.へ入社。立派なデータサイエンティストになる夢を持ち,さまざまなデータ分析方法やマーケティングの知識を身につけるべく日々精進している。


藤川幸一(ふじかわこういち)

学生時代からStartup (電脳隊・PIM)に関わり,PIMがYahoo! JAPANに買収された後は,エンジニアとしてYahoo!モバイルを開発。アジャイル開発コンサルやデリバティブ取引システムなどの開発経験を経て,シリウステクノロジーズでテクニカルマネージャ&夜はIPA未踏人材育成事業でHadoopのミドルウェア開発プロジェクト。日本JRubyユーザグループ発起人。

シリウスがYahoo! JAPANに買収されたのを機に,2010年FlyData Inc.(旧社名Hapyrus)をUSにて起業。カリフォルニアSunnyvale在住。

Twitter:@fujibee

コメント

コメントの記入