SageMakerの「予算オーバー」を防ぐには? 賢いインスタンスの選び方:機械学習用「EC2インスタンス」選びの基本【後編】
「Amazon SageMaker」でAIワークロードを実行する際、予算オーバーになるのはよくある問題だ。SageMakerのインスタンス選びで、料金を抑えながら性能を最大限に引き出すポイントとは。
機械学習などのAI(人工知能)技術を活用する上で、機械学習モデルのトレーニング、推論といった処理(ワークロード)を実行するには、大量の計算処理能力が欠かせない。これを実現するための手段として、Amazon Web Services(AWS)の機械学習モデル構築サービス「Amazon SageMaker」(以下、SageMaker)がある。
SageMakerのインフラとなるのが、仮想マシンサービス「Amazon Elastic Compute Cloud」(Amazon EC2、以下EC2)だ。インスタンスのCPUコア数、メモリ容量、GPU、ネットワーク帯域幅などの組み合わせを定義したインスタンスタイプの選択は、AIワークロードを効果的に実行したり、SageMakerの費用を削減したりする上で重要になる。どのような点に注意してEC2インスタンスを選べばよいのか。
「どのEC2インスタンスが適切か」を見極めるには?
併せて読みたいお薦め記事
連載:機械学習用「EC2インスタンス」選びの基本
AWSサービス活用のヒント
機械学習を活用したアプリケーションを公開するまでには複数のステップがある。そのライフサイクルを通じてさまざまなタスクをこなすために、さまざまな種類の計算能力が必要になる。機械学習モデルの構築と活用に関連する主なタスクは以下の通りだ。
- モデルの設計と実装
- データの前処理と後処理
- モデル性能の評価
- モデルのトレーニング
- データの準備
- モデルによる推論
ほとんどの場合、これらのタスクごとに計算能力や処理時間、スケーラビリティ(拡張性)などに関する要件、直面する課題が異なる。そのため、実行するタスクに応じて適切なEC2インスタンスを選ぶことが重要だ。適切なインスタンスを選択する際のポイントを以下に挙げる。
ポイント1.要件を分析する
特定のインスタンスタイプやインスタンスサイズ(インスタンスを構成するリソースの規模)を選択する前に、各タスクのパフォーマンスに関する要件を明確にしよう。インスタンスを最適化すると、同等の容量を持つ汎用(はんよう)インスタンスよりも費用が高くなる場合がある。レイテンシや処理、学習、推論に必要なデータ量などに関するビジネス目標を達成するために、その費用が見合うかどうかを検討しなければならない。
汎用のインスタンスタイプでも要件を満たせる場合がある。だが高いパフォーマンスが結果的にコスト削減につながることもある。各タスクについて、想定しているデータ量やトランザクション量に応じて複数のテストを実行し、高いパフォーマンスが有効なのかどうかを評価する必要がある。複数のインスタンスタイプを試しながら費用を計算し、UX(ユーザーエクスペリエンス)やアプリケーションのパフォーマンスに影響するメトリクス(指標)を測定する。
ポイント2.メトリクスを見る
「Amazon CloudWatch」は、AWSサービスにおけるリソースの管理・監視ツールだ。呼び出し回数やレイテンシ、エラー率、CPUとメモリの使用率といったメトリクスを提供する。機械学習タスクは、コストが短期間で数千ドルに達する可能性があるため、要件ごとに最適なインフラコストを把握することが重要だ。Amazon CloudWatchが提供するメトリクスは、特定のインスタンスタイプが特定のワークロードに適しているかどうかを評価するために役立つ。
ポイント3.コストを最適化する
SageMakerの料金モデル「Amazon SageMaker Savings Plans」を利用することで、コストを削減できる可能性がある。1年または3年の契約期間において、ユーザー企業が特定の使用量を約束することで、料金の割引を受けることが可能だ。ただしAmazon SageMaker Savings Plansの適用範囲には制限がある点に注意が必要だ。
TechTarget発 世界のインサイト&ベストプラクティス
米国TechTargetの豊富な記事の中から、さまざまな業種や職種に関する動向やビジネスノウハウなどを厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.