機械学習モデルを検証する - Amazon SageMaker

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

機械学習モデルを検証する

モデルをトレーニングした後、そのパフォーマンスと正確性がビジネス目標を達成するのに十分なかどうかを評価します。さまざまな方法で複数のモデルを生成し、それぞれを評価することができます。たとえば、モデルごとに異なるビジネスルールを適用し、さまざまな尺度を適用して各モデルの適合性を判断することができます。モデルが特定のものよりも敏感である必要があるかどうか (またはその逆) を検討することができます。

履歴データ (オフラインの場合) またはライブデータを使用してモデルを評価できます。

  • オフラインテスト-推論のためにモデルにリクエストを送信するために、ライブデータではなく履歴データを使用します。

    トレーニングを受けたモデルをアルファエンドポイントにデプロイし、履歴データを使用して推論リクエストを送信します。リクエストを送信するには、Amazon SageMaker ノートブックインスタンスの Jupyter ノートブックを使用し、AWS SDK for Python (Boto)または SageMaker によって提供された高レベルの Python ライブラリを使用します。

  • ライブデータを使用したオンラインテスト—SageMaker は、実稼働バリアントを使用して、実稼働モデルの A/B テストをサポートします。プロダクションバリアントは、同じ推論コードを使用し、同じ SageMaker エンドポイントにデプロイされるモデルです。検証するモデルにライブトラフィックのごく一部が移動するように、本番バリアントを設定します。たとえば、評価のためにトラフィックの 10% をモデルのバリエーションに送信することを選択できます。モデルのパフォーマンスに満足したら、更新されたモデルに 100% のトラフィックをルーティングできます。本番稼働でのモデルのテストの例については、「本番環境のテストモデル」を参照してください。

詳細については、Evaluating Machine Learning Models (機械学習モデルの評価) など、モデルの評価方法に関する記事や書籍を参照してください。

オフラインモデル評価のオプションは次のとおりです。

  • ホールドアウトセットを使用した検証—機械学習の実践者は、データの一部を「保留セット」として取り分けることがよくあります。モデルのトレーニングにこのデータを使用しません。

    このアプローチでは、モデルが保留セットに関する推論をどの程度適切に提供するかを評価します。次に、モデルメモリを使用するのではなく、モデルが最初のトレーニングで学習したことをどの程度効果的に一般化しているかを評価します。この検証方法は、モデルが正しい答えをどれくらいの頻度で推論できるかを示します。

     

    いくつかの点で、このアプローチは小学生を教えることに似ています まず、学習するための一連の例を提供し、学習から一般化する能力をテストします。宿題とテストでは、最初の学習に含まれていなかった問題を提起し、彼らが効果的に一般化できるかどうかを判断します。完璧な記憶を持つ生徒は、ルールを学習する代わりに、問題を暗記することができます。

     

    通常、保留データセットはトレーニングデータの 20~30% です。

     

  • K 分割検証— この検証手法では、サンプルデータセットをk..parts このそれぞれを、k 回のトレーニング実行のための保留セットとみなし、他の k-1 個の部分をそのトレーニング実行のためのトレーニングセットとして使用します。同様のプロセスを使用して k 個のモデルを作成し、モデルを集約して最終モデルを生成します。k は通常、5 ~ 10 の範囲の値です。