Amazon Web Services ブログ

CSVデータセットのPipeモードを使って、Amazon SageMaker内蔵アルゴリズムでトレーニングがより早く

Amazon SageMakerに内蔵されたアルゴリズムはPipeモードをサポートし、Machine learning (ML)モデルをトレーニングしている間、Amazon Simple Storage Service (S3)からCSV形式でデータセットを取得しAmazon SageMakerへ取り込みます。

モデルのトレーニングを進めながら、データはPipe入力モードでアルゴリズムコンテナに直接流れます。トレーニングを開始する前にデータをローカルの Amazon Elastic Block Store (EBS)の容量でダウンロードするファイルモードとは異なります。Pipeモードを利用すると、トレーニングはより早く、かなり少ないディスク容量でより速く終了することができます。Machine learningモデルをトレーニングする全体的なコストを削減することができます。3.9GB CSVデータセットのAmazon SageMakerのLinear Learnerアルゴリズムで、回帰モデルのトレーニングに利用した内部基準では、ファイルモードに代わりPipeモードを利用した場合、モデルのトレーニングに費やす時間は全体的に40%も削減される例がありました。Pipeモードと利点の詳細についてはブログの掲示板をご覧ください。

Amazon SageMakerの内蔵アルゴリズムでPipeモードを利用する

本年度初頭に内蔵Amazon SageMakerアルゴリズムで利用するPipe入力モードが初めて発表された時は、protobuf recordIO形式のダータのみをサポートしていました。高処理のトレーニングジョブに特化した特殊な形式です。Pipe入力モードの持つ利点を、CSV形式のトレーニングデータセットでも活用できるようになりました。次のAmazon SageMaker内蔵アルゴリズムでは、Pipe入力モードを使ったCSV形式のデータセットによるトレーニングを全面的にサポートしています:

  • 主成分分析 (PCA)
  • K-Meansクラスタリング
  • K-Nearestネイバー
  • Linear Learner (分類と回帰)
  • ニューラルトピックモデリング
  • ランダムカットフォレスト

この新しい機能をトレーニングジョブで利用するためには、通常通りCSVデータベースのAmazon S3の位置を指定し、入力モードで「File」の代わりに「Pipe」を選択します。データ形式やコードの変更をする必要もなく、CSVデータセットはシームレスに流れてきます。

CSVの最適化Pipeモードを使ったより迅速なトレーニング

CSV形式でデータセットに新しく実行されるPipeモードは、高度に最適化された高処理を可能にします。Amazon SageMaker Linear Learnerアルゴリズムを合成CSVデータセット上でトレーニングし、Pipe入力モードを使うとパフォーマンスが向上することを実証します。

初のデータセットである3.9GB CSVファイルは、200万個の記録を保有し、それぞれの記録は100個のカンマで切り離された単精度浮動小数点数でした。次はバッチサイズが1000でAmazon SageMaker Linear Learnerアルゴリズムをトレーニングしている間の、PipeモードとFileモードの全体的なトレーニングジョブ実施時間モデルのトレーニング時間を比較したものです。

ご覧のようにCSVデータセットでPipe入力モードを利用すると、モードをトレーニングする合計時間はAmazon SageMakerにサポートされているインスタンスタイプで40%も削減できることがわかります。

二度目のデータセットである1GB CSVファイルは、400個の記録のみで、それぞれの記録は10万個のカンマで切り離された単精度浮動小数点数でした。バッチサイズが10の早期に実施していたトレーニング基準で再度実施してみました。

Pipeモードを利用したパフォーマンスは著しい向上を見せ、モデルをトレーニングする合計時間はおよそ75%も削減されました。

このような実験の結果は、Pipe入力モードが目覚ましいパフォーマンスの向上をもたらすということを明確に示しています。トレーニングインスタンスへデータセットをダウンロードすることから生じる遅れを避け、トレーニングジョブでより高度は読み込み処理ができるようになります。

Amazon SageMakerを利用する

ノートブック見本を活用してAmazon SageMakerで始めましょう。開発者ガイドには多くの資料があり、ディスカッション・フォーラム に登録すると新商品のお知らせを受け取ることができます。

 


著者について

Can BaliogluはAWS AIアルゴリズムチームのソフト開発エンジニアで、高性能計算を専門にしています。余暇には、お手製のGPUクラスタで遊ぶことが好きです。

 

 

 

Sumit Thakurは AWS Machine Learning プラットホームのシニアプロダクトマネージャーで、クラウドで顧客が容易にMachine learningできる製品を開発することが好きです。彼は、Amazon SageMaker と AWS Deep Learning AMI のプロダクトマネージャーです。余暇には、自然に触れたり、SF テレビシリーズを視聴することが好きです。