Amazon SageMakerを触ってみた!AWS公式ハンズオンのすすめ
Kyriosを提供するJTPの社内では、毎週LT(ライトニングトーク)が行われています。今回はLTで発表された「Amazon SageMakerを触ってみた!」の内容をもとに、AWS公式ハンズオンのすすめをご紹介します。
目次[非表示]
- 1.Amazon SageMakerとは
- 1.1.Amazon SageMakerの特徴
- 1.2.ノーコードでの機械学習を可能にする「Amazon SageMaker Canvas」
- 1.3.新しい技術やサービスを学習するときのおすすめ:ハンズオン
- 2.Amazon SageMakerを触ってみる
- 2.1.今回使用したハンズオン チュートリアル
- 2.2.ハンズオンの流れ
- 2.2.1.ステップ 1: Amazon SageMaker Studio ドメインを設定する
- 2.2.2.ステップ 2: SageMaker Canvas にログインし、データセットを Amazon S3 バケットにアップロードする
- 2.2.3.ステップ 3: モデルを自動構築するための SageMaker Canvas のセットアップ
- 2.2.4.ステップ 4: 機械学習モデルの構築、トレーニング、および分析
- 2.2.5.ステップ 5: モデル予測の生成
- 2.2.6.ステップ6: AWS リソースをクリーンアップする
- 2.3.ハンズオンを試してみて良かったこと
- 2.3.1.短い時間で機械学習の概要について学べたのでとても良かった
- 2.3.2.実際に画面を操作して理解を深められた
Amazon SageMakerとは
Amazon SageMakerの特徴
Amazon SageMakerは、機械学習(ML)モデルの構築、トレーニング、デプロイを簡単に行えるフルマネージドサービスです。
マネージドサービスであるため、構築されたデータ基盤上にデータの保存・共有を行い、機械学習のワークフローを進めることができます。数ステップで、安全でスケーラブルな環境に、モデルをデプロイすることができます。
詳細は下記のドキュメントをご覧ください。
ノーコードでの機械学習を可能にする「Amazon SageMaker Canvas」
Amazon SageMaker の最大の特徴の一つが「ノーコードで機械学習ができる」という点です。Amazon SageMaker Canvasという、GUIのインターフェイスが提供されており、これを使用することで、コーディング不要で機械学習のモデル構築や、予測を行うことができます。そのため、データサイエンティストや機械学習に触れてきたエンジニアではない、ビジネスアナリティストや学生などが、気軽に機械学習をスタートすることができるのです。
新しい技術やサービスを学習するときのおすすめ:ハンズオン
何か新しい技術やサービスを学ぼうとするとき、まずはインターネットで検索し、公式のドキュメントや、技術系ブログなどを読んでその内容を理解しようとすることが多いのではないでしょうか。
しかし文章を読むだけでは、細かい部分のイメージが難しいため、実際に手を動かして、ようやく定着するといえます。実施に自身で操作してみることで、注意しなければならないポイント、関連して学んでおくべきこと、サービス同士のつながりなどわかります。
その際におすすめしたいのが、ハンズオンです。AWS公式に提供されているチュートリアルで、ステップバイステップでキャプチャも豊富に説明されているのですぐに取り組むことができます。
特に機械学習などでは、大規模データが必要になるため、自前で準備するのは難しく、こういったハンズオンは非常に役に立ちます。
Amazon SageMakerを触ってみる
では実際にAmazon SageMakerを触ってみたいと思います。
今回使用したハンズオン チュートリアル
今回は、AWS公式のハンズオン、「コードを書かずに機械学習の予測を生成する」を使用しました。「このチュートリアルでは、 Amazon SageMaker Canvas を使用して、一行のコードも書かずに機械学習 (ML) モデルを構築し、正確な予測を生成する方法について学びます。」とあるように、GUIで直感的に操作ができる機械学習の環境を構築する方法を学べます。
ハンズオンの流れ
このハンズオンでは、配送データの予測がテーマとなっていて、出荷の到着予定時刻 (ETA) を予測するための機械学習モデルを構築することができます。
本記事ではハンズオンの大まかな流れをご紹介します。
ステップ 1: Amazon SageMaker Studio ドメインを設定する
まずは、SageMaker Studio ドメインを作成し、AWS CloudFormation テンプレートを実行することで、必要なアクセス許可の追加を行います。テンプレートを実行するだけなので、細かな設定は必要ありません。
ステップ 2: SageMaker Canvas にログインし、データセットを Amazon S3 バケットにアップロードする
次に、本チュートリアルで提供されているCSVデータファイルを、Amazon S3 バケットにアップロードします。今回のテーマは、「出荷の到着予定時刻 (ETA)」であるため、出荷ログと製品の説明のデータが用意されています。
ステップ 3: モデルを自動構築するための SageMaker Canvas のセットアップ
Amazon S3 バケットにアップロードしたデータを、SageMaker Canvasにインポートし、2つのデータセットを結合します。
ステップ 4: 機械学習モデルの構築、トレーニング、および分析
SageMaker Canvas上で「新規モデルの構築」を行います。「選択」「構築」「分析」「予測 」の4つのタブが用意されており、画面に沿って順番に設定を行っていきます。
選択タブでは、前のステップで結合したデータセットを選択します。
構築タブでは、ターゲット列を選択すると、自動で問題タイプが推論されます。その他のタイプに変更することも可能です。また、データセット内に欠損値や不一致値、平均値などの統計値が提供されるため、予測に反映したくないデータを削除することができます。
データ探索後、モデルのトレーニングが行われますが、精度に応じて 「クイックビルド」と「スタンダードビルド」の2つのタイプが用意されています。
モデル構築終了後、分析タブ上で、分析結果が表示されます。
ステップ 5: モデル予測の生成
次に4つ目のタブ「予測」から、構築したモデルを使用して予測を生成します。予測のプレビューを見ることができるほか、予測データのダウンロードをすることも可能です。
ステップ6: AWS リソースをクリーンアップする
意外と大事なステップなのですが、AWSは従量課金制のため、ハンズオンで使用したリソースをしっかりと削除し、予想外の課金が発生しないようにします。
このように、環境を構築する作業から、実際に機械学習のモデル構築や予測を行うフェーズ、そして最後のリソースクリーンアップまで丁寧に紹介されています。細かい操作方法は、すべてキャプチャ付きで紹介されていますので、チュートリアル記事をご覧ください。
ハンズオンを試してみて良かったこと
短い時間で機械学習の概要について学べたのでとても良かった
ハンズオンにより複雑な設定を省略できたので、初心者でも簡単に操作できた点が、非常に良かったです。まず自分で環境を構築しようと思っても、どのような要件でやるかを検討するところから行うのは、とてもハードルが高いため、その心配や手間が不要なのは大きいです。
実際に画面を操作して理解を深められた
動画やテキストで見るよりも、実際に体験を通した方が、深い理解が得られると改めて感じました。一度経験したことによって、また次に別のデータで試してみよう、という選択肢ができる点も良いと思います。
ぜひ気になった方は、ハンズオンを試してみて、この機会に機械学習に触れてみてください。