Control-MとAmazon SageMakerによる機械学習ワークフローの合理化

Control-MとAmazon SageMakerによる機械学習ワークフローの合理化

  • オーケストレーション
6分で読めます 更新日 Nov 10, 2023

ポイント: Control-MとAmazon SageMakerの統合は、機械学習ワークフローを自動スケジューリングと監視を通じて強化し、実験から生産への移行をスムーズにします。

  • Control-Mは、Amazon SageMakerのためのセキュアな接続と統一されたジョブスケジューリングを提供します。
  • MLワークフローの効率的な実行と監視を可能にし、信頼性とパフォーマンスを確保します。

今日の急速に変化するデジタル環境において、人工知能(AI)と機械学習(ML)の力を活用する能力は、競争優位を得ようとする企業にとって重要です。Amazon SageMakerは、企業やデータサイエンティストが複雑なAIモデルの開発をシームレスに行えるようにする画期的なMLプラットフォームです。その際立った特徴の1つは、データ準備からモデルデプロイメントまでの全プロセスを合理化するエンドツーエンドのMLパイプラインです。Amazon SageMakerの統合されたJupyter Notebookプラットフォームは、共同作業と対話型のモデル開発を可能にし、そのデータラベリングサービスは、データ注釈というしばしば手間のかかる作業を簡素化します。

また、事前構築されたアルゴリズムと深層学習フレームワークの豊富なライブラリを備えており、新人と経験豊富なML実践者の両方にとってアクセス可能です。Amazon SageMakerの管理されたトレーニングと推論機能は、実際のAIデプロイメントに必要なスケーラビリティと弾力性を提供します。さらに、その自動モデル調整や堅牢なモニタリングツールは、AIモデルの効率と信頼性を高め、時間が経つにつれて精度を保ち、最新の状態を維持します。全体として、Amazon SageMakerは、AIの潜在能力を活用しようとする組織にとって、包括的でスケーラブルかつユーザーフレンドリーなML環境を提供します。

Amazon SageMakerとControl-Mの統合

Amazon SageMakerは、データサイエンティストや開発者を含む幅広いユーザーにアクセス可能な全体のMLワークフローを簡素化します。MLモデルの構築、トレーニング、デプロイメントのための統一されたプラットフォームを提供します。しかし、Amazon SageMakerの力を真に活用するためには、ビジネスプロセスとシームレスに統合されたMLワークフローをオーケストレーションし自動化する能力が求められることが多いです。ここで、BMCのControl-Mが役立ちます。

Control-Mは、組織がデータおよびAI関連プロセスを効率的に自動化、監視、管理できる柔軟なアプリケーションおよびデータワークフローオーケストレーションプラットフォームです。これは、AIモデリングとデプロイメント、ビジネスオペレーションとの間に架け橋を作るためにSageMakerとシームレスに統合できます。

このブログでは、Amazon SageMakerとControl-Mのシームレスな統合と、それが企業に与える変革的な影響について探ります。

Amazon SageMakerは、データサイエンティストや開発者がオンプレミス、クラウド、エッジデバイスなど、さまざまな環境でMLモデルを作成、トレーニング、デプロイすることを可能にします。エンドツーエンドのデータパイプラインは、データが複数のソースから取り込まれ、変換され、集約されてからモデルのトレーニングを行い、Amazon SageMakerでAI/MLパイプラインを実行する際には、単にAmazon SageMakerのAIやML機能だけではありません。Control-Mは、エンドツーエンドのデータパイプラインを自動化し、オーケストレーションするためにしばしば使用されます。エンドツーエンドのオーケストレーションの優れた例は、AWSとBMCが共著したブログ「予測保守データパイプラインのオーケストレーション」で取り上げられています。

ここでは、Amazon SageMakerとControl-Mの統合に特に焦点を当てます。データパイプラインやControl-Mによってオーケストレーションされる複雑なワークフローにAmazon SageMakerジョブが組み込まれている場合、Amazon SageMakerパイプラインも含むエンドツーエンドのデータパイプラインを効率的に実行するためにControl-Mの機能を活用できます。

主要な機能

Control-M for Amazon SageMakerは以下を提供します:

  • セキュアな接続: 認証情報を明示的に提供する必要を排除し、任意のAmazon SageMakerエンドポイントに安全に接続します。
  • 統一スケジューリング: Amazon SageMakerジョブを他のControl-Mジョブとシームレスに統合し、単一のスケジューリング環境内でワークフロー管理を合理化します。
  • パイプライン実行: Amazon SageMakerパイプラインを容易に実行し、MLワークフローがスムーズに実行されるようにします。
  • モニタリングとSLA管理: Control-Mモニタリングドメイン内でAmazon SageMakerジョブのステータス、結果、および出力を注意深く監視し、正確な制御のためにAmazon SageMakerジョブにサービスレベル契約(SLA)ジョブを添付します。
  • 高度な機能: MLワークフローを効果的にオーケストレーションするために、すべてのControl-M機能(高度なスケジューリング基準、複雑な依存関係、リソースプール、ロックリソース、変数など)を活用します。
  • 並列実行: エージェントごとに最大50のAmazon SageMakerジョブを同時に実行し、規模での効率的なジョブ実行を可能にします。

Control-M for Amazon SageMakerの互換性

Control-M for Amazon SageMakerを設定する方法に入る前に、環境が互換性要件を満たしていることを確認することが重要です:

  • Control-M/EM:バージョン9.0.20.200以上
  • Control-M/Agent:バージョン9.0.20.200以上
  • Control-Mアプリケーションインテグレーター:バージョン9.0.20.200以上
  • Control-M Web:バージョン9.0.20.200以上
  • Control-M Automation API:バージョン9.0.20.250以上

各前提条件の必要なインストールファイルが用意されていることを確認してください。

実際の例:

UCI機械学習リポジトリから取得したアバロンデータセットは、さまざまな属性(サイズ、重量、性別など)に基づいてアバロンの年齢を予測するために頻繁に使用されるMLの例やチュートリアルで使用されています。アバロンの年齢は通常、殻の物理的な検査によって決定されますが、これは手間がかかり、侵襲的になる可能性があります。しかし、MLを使用すれば、物理的な検査に頼ることなく、かなりの精度で年齢を予測できます。

この演習では、AWSが提供するアバロンチュートリアルを使用しました。このチュートリアルは、データ前処理、トレーニング、Amazon SageMakerを使用したモデル評価の段階を効率的にユーザーに案内します。

チュートリアルの詳細を理解した後、アバロンデータセットでAmazon SageMakerモデルをトレーニングし、満足のいく精度を達成しました。さらに、モデル再トレーニングとエンドポイントの更新を自動化する包括的な継続的インテグレーションおよび継続的デリバリー(CI/CD)パイプラインを作成しました。これにより、モデルデプロイメントプロセスが合理化され、Amazon SageMakerの推論エンドポイントが常に最新のトレーニング済みモデルで更新されることが保証されました。

Control-M for Amazon SageMakerの設定

では、Control-M for Amazon SageMakerを設定する方法を3つの主要なステップで説明します:

  1. Control-MがAmazon SageMaker環境に接続するために使用する接続プロファイルを作成します。
  2. Control-M内で実行および監視したいAmazon SageMakerジョブを定義します。
  3. Control-Mを使用してAmazon SageMakerパイプラインを実行します。

ステップ1:接続プロファイルの作成

まず、Amazon SageMakerに接続するための接続プロファイルを定義する必要があります。これには、認証とSageMakerとの通信に必要なパラメータが含まれます。設定に応じて、一般的に使用される2つの認証方法があります。

例1:AWSアクセスキーとシークレットによる認証

図1. AWSアクセスキーとシークレットによる認証
図1. AWSアクセスキーとシークレットによる認証。

例2:EC2インスタンスからのAWS IAMロールによる認証

図2. AWS IAMロールによる認証
図2. AWS IAMロールによる認証。

環境に合った認証方法を選択してください。Amazon SageMakerのジョブタイプを、上記の例と正確に同じように指定することが重要です。Amazon SageMakerは大文字と小文字を区別するため、正しい大文字小文字を使用するようにしてください。

ステップ2:Amazon SageMakerジョブの定義

接続プロファイルを設定したら、Control-M内でAmazon SageMakerジョブタイプを定義できます。このタイプを使用すると、Amazon SageMakerパイプラインを効果的に実行できます。

図3. AWS SageMakerジョブ定義の例
図3. AWS SageMakerジョブ定義の例。

この例では、接続プロファイル("AWS-SAGEMAKER")を使用するように指定してAmazon SageMakerジョブを定義しました。パイプライン名、冪等性トークン、ジョブに渡すパラメータ、再試行設定などの追加パラメータを構成できます。詳細な理解とコードスニペットについては、BMCの公式文書を参照してください。

ステップ3:Control-MによるAmazon SageMakerパイプラインの実行

パイプライン名とエンドポイントは、パイプライン設定内の必須JSONオブジェクトであることに注意することが重要です。pipeline.jsonファイルで「ctm run」コマンドを実行することで、AWS内でパイプラインの実行が開始されます。

まず、「ctm build sagemakerjob.json」を実行してJSON設定を検証し、その後「ctm run sagemakerjob.json」コマンドを実行してパイプラインを実行します。

図4. Amazon SageMakerジョブの起動
図4. Amazon SageMakerジョブの起動。

上記のスクリーンショットで示されているように、「ctm run」コマンドはAmazon SageMakerジョブを起動しました。次のスクリーンショットは、Amazon SageMakerコンソールからのパイプラインが実行されている様子を示しています。

図5. Amazon SageMakerコンソールで実行中のデータパイプラインのビュー。
図5. Amazon SageMakerコンソールで実行中のデータパイプラインのビュー。

Control-Mモニタリングドメインでは、ユーザーがジョブ出力を表示することができます。これにより、パイプラインのステータスを簡単に追跡でき、ジョブの失敗に関するトラブルシューティングのための洞察を提供します。

図6. Control-MモニタリングドメインからのAmazon SageMakerジョブ出力のビュー。
図6. Control-MモニタリングドメインからのAmazon SageMakerジョブ出力のビュー。

この記事では、Control-M SageMaker統合が、チームがMLトレーニングパイプラインをスケジュール、監視、管理し、実験から信頼できる製品運用へとモデルを移行する方法について説明します。

まとめ

このブログでは、Control-MをAmazon SageMakerと統合してAWS MLサービスの最大の潜在能力を引き出し、既存のアプリケーションおよびデータワークフローにシームレスに統合する方法を示しました。この融合は、MLジョブの管理を容易にするだけでなく、全体の自動化プロセスを最適化します。

Control-MとBMC Control-M統合に関するさらなるブログをお楽しみに!Control-M統合の詳細については、私たちのウェブサイトを訪問してください。

これらの投稿は私自身のものであり、必ずしもBMCの立場、戦略、または意見を代表するものではありません。

オーケストレーションの関連記事

The Briefを購読する

このオファーに登録することで、あなたはBMCのプライバシーポリシーを読み、同意したことを確認します。

ありがとう

あなたはThe Briefに登録されました
The Briefはメインフレームとエンタープライズオーケストレーション—BMC AMIとControl-M—および、両者に関するアナリストの研究、顧客の展開、イベントをカバーしています。