Amazon Web Services ブログ

Category: SageMaker

Amazon SageMaker ノートブックインスタンスのネットワーク設定と高度なルーティングオプションについて理解する

Amazon SageMaker ノートブックインスタンスは、完全マネージド型の機械学習 (ML) Amazon EC2 インスタンスを通じて、Jupyter ノートブックアプリケーションを提供します。Amazon SageMaker Jupyter ノートブックは、高度なデータ探索、トレーニングジョブの作成、Amazon SageMaker ホスティングへのモデルのデプロイ、モデルのテストや検証に使用されます。 ノートブックインスタンスには、さまざまなネットワーク設定が用意されています。このブログ記事では、さまざまなオプションの概要を説明するとともに、お客様の一般的な事例を紹介していきます。 ベーシック Amazon SageMaker ノートブックインスタンスは、Virtual Private Cloud (VPC) がアタッチされているかどうかにかかわらず起動できます。VPC をアタッチして起動すると、ノートブックは、直接インターネット接続ありまたはなしで設定することができます。 重要な注意事項: 直接インターネット接続があるとは、Amazon SageMaker サービスが、サービスによって管理される VPC を通じて、ノートブックをインターネットに接続できるネットワークインターフェイスを提供していることを意味します。 Amazon SageMaker コンソールを使用する際、次の 3 つのオプションがあります。 お客様の VPC のアタッチなし。 お客様の VPC のアタッチあり (直接インターネット接続あり)。 お客様の VPC のアタッチあり (直接インターネット接続なし)。 それはどういう意味ですか? 3 つのオプションはそれぞれ、マネージド EC2 インスタンスのネットワークインターフェイスを一連のルーティング設定で自動的に設定します。特定の状況では、これらの設定を変更して、特定の IP アドレスの範囲を別のネットワークインターフェイスにルーティングすることができます。次に、これらのデフォルト設定をそれぞれ順を追って説明します。 アタッチしたお客様の VPC なし […]

Read More

Amazon SageMaker のバッチ変換が Amazon VPC および AWS KMS に基づく暗号化をサポート開始

Amazon SageMaker が、Amazon Virtual Private Cloud (Amazon VPC) での AWS Key Management Service (AWS KMS) を使用するバッチ変換ジョブのサポートを開始します。Amazon VPC を使用すると、機械学習 (ML) モデルのコンテナやデータへのアクセスをコントロールし、それらをプライベートに保ってインターネット経由でアクセスできないようにすることができます。AWS KMS を使用すると、バッチ変換ジョブを実行する ML コンピューティングインスタンスにアタッチされたストレージボリュームのデータを暗号化できます。これにより、バッチ変換ジョブで使用されるモデルのアーティファクト、ログ、および一時ファイルは常に安全です。このブログでは、こうした機能をバッチ変換ジョブに適用する方法を説明します。 Amazon SageMaker のバッチ変換は、データのバッチが大量にあり、トレーニングデータを前処理して変換する必要があるか、レイテンシーが 1 秒未満であることを必要としないシナリオに最適です。バッチ変換は、ペタバイトのデータから非常に小さなデータセットまで、さまざまなデータセットで使用できます。既存の機械学習モデルは、一切の変更なしで、この新しい機能でシームレスに動作します。Amazon SageMaker は、バッチ変換ジョブの開始時にリソースのプロビジョニングを管理します。ジョブが完了するとリソースが解放されるので、ジョブの実行中に使用されたリソースに対してのみを支払うことになります。 VPC を使用すると、プライベートでインターネットに接続されないように VPC を設定できるため、データやモデルアーティファクトを保存する Amazon S3 バケットなど、アクセスするモデルコンテナや AWS リソースを保護することができます。VPC を使用する場合、VPC フローログを使用して、モデルコンテナ内外のすべてのネットワークトラフィックを監視することもできます。VPC を指定しない場合、Amazon SageMaker はデフォルトでは VPC でバッチ変換ジョブを実行します。 Amazon SageMaker のバッチ変換は、すでに Amazon S3 SSE による入出力データの暗号化をサポートしています。現在は、AWS KMS を使用すると、バッチ変換ジョブで使用するストレージボリュームを、管理する暗号化キーで保護できます。推論を実行したり、データのバッチを変換したりするときに、集中キー管理、キー使用状況監査ログ、マスターキーローテーションなどの […]

Read More

Apache MXNet を Amazon SageMaker および AWS Greengrass ML Inference と共に使用する脳組織のセグメント化 – パート 2

 このブログ記事のパート 1 では、Amazon SageMaker を使用した簡単で合理的な方法によって、MRI スキャンから脳組織を自動的にセグメント化するためにニューラルネットワークをトレーニングおよびデプロイする方法を説明しました。パート 1 では、「Bring Your Own Script」というパラダイムを使用して、Amazon SageMaker で畳み込みニューラルネットワーク (CNN) をトレーニングするために Apache MXNet を使い、U-Net と効率的で低レイテンシーの ENet の 2 つのネットワークをトレーニングしました。パート 2 では、AWS Greengrass ML Inference を使用して、接続性が低い、または接続のない環境で、オフライン推論用のポータブルエッジデバイスに ENet をデプロイする方法を説明していきます。 このユースケースでは、医療画像を保護医療情報 (PHI) ではなく未処理画像として取り扱っていますが、以下の点に注意してください。 AWS Greengrass は、この記事の執筆時点では AWS HIPAA 準拠サービスではありません。AWS Business Associate Addendum (BAA) に従って、AWS Greengrass は、米国の医療保険の携行と責任に関する法律 (HIPAA) における保護医療情報 (PHI) の作成、受信、維持、送信に使用してはなりません。HIPAA の対象であるかどうかを判断する責任はお客様にあります。対象である場合は、HIPAA とその実施規則をどのように遵守するのが最適であるかを判断する必要があります。HIPAA 準拠サービスを使用して […]

Read More

Amazon SageMaker Neural Topic Model で、補助語彙チャンネル、新しいトピック評価メトリクス、およびトレーニングサブサンプリングのサポートを開始

このブログ記事では、Amazon SageMaker Neural Topic Model (NTM) の 3 つの新機能をご紹介します。これらの新機能では、ユーザーの生産性を向上し、トピック評価機能を強化し、さらにはモデルトレーニングのスピードアップに貢献しています。これらの新機能に加えて、スパース (疎) 処理とパラメータサーバーを最適化することで、アルゴリズムの速度をトレーニングに 2 倍、単一 GPU 上での評価に 4 倍向上させました。マルチ GPU トレーニングでは、さらなるスピードアップが可能です。 Amazon SageMaker NTM は、大量の文書集合 (コーパス) のトピック分布を学習する、教師なし学習アルゴリズムです。SageMaker NTM を使用して、文書分類、情報検索、コンテンツの推奨といったユースケースのための機械学習ソリューションを構築できます。Amazon SageMaker NTM についてもっと知りたい方は、Introduction to the Amazon SageMaker Neural Topic Model をご参照ください。 機械学習をよく知らない、あるいは他のタスクに専念したいという方には、完全自動化した Amazon Comprehend トピックモデリング API が最適です。データサイエンスの専門家の方で、ご自身のトピックモデルの構築やチューニングのさまざまなレイヤーをもっと細かく制御したい場合には、Amazon SageMaker NTM がぴったりです。例えば、カスタマイズした語彙を必要とするドキュメントトピックタグ付けアプリケーションを構築していて、ニューラルネットワークのレイヤー数などのアルゴリズムハイパーパラメータを調整する必要があるとしましょう。Amazon SageMaker NTM なら、一貫性および一意性スコアの目標精度を満たすトピックモデルをトレーニングすることができます。このような場合には、Amazon SageMaker NTM は適切なツールでしょう。 補助語彙チャネル トピックモデルをトレーニングする際に、顧客がトピックの内容を理解できるよう、各トピックのトップワードを知ることが重要です。Amazon […]

Read More

Amazon SageMaker でより速いパイプモードを使用してモデルのトレーニングを高速化する

Amazon SageMaker には現在、より高速のパイプモードが実装されているため、機械学習モデルをトレーニングしながら、Amazon Simple Storage Service (S3) から Amazon SageMaker へのデータのストリーミング速度を大幅に高速化することができます。 パイプモードは、モデルトのレーニングを開始する前に、ローカルの Amazon Elastic Block Store (EBS) ボリュームにデータをダウンロードするファイルモードよりも大幅に優れた読み取りスループットを提供します。つまり、トレーニングジョブがより早く始まり、迅速に完了し、必要なディスク容量が少なくて済み、Amazon SageMaker で機械学習モデルをトレーニングするための全体的なコストが削減されることを意味します。たとえば、Amazon SageMaker の組み込みアルゴリズム用パイプ入力モードを開始した今年の早い時期に、内部ベンチマークを実施しました。その結果、78 GB のトレーニングデータセットで開始時間が最大 87% 短縮されたことが分かりました。さらに、一部のベンチマークではスループットが 2 倍に向上し、合計トレーニング時間が最大 35% 短縮されることが分かりました。 概要 Amazon SageMaker は、トレーニングデータを転送するために、ファイルモードとパイプモードの 2 つのメカニズムをサポートしています。ファイルモードでは、トレーニングデータは、トレーニングを開始する前に、まずトレーニングインスタンスに添付された暗号化された EBS ボリュームにダウンロードされます。しかし、パイプモードでは、入力データは実行中にトレーニングアルゴリズムに直接ストリームされます。この連続的なデータのストリーミングによって、いくつかの大きな利点がもたらされます。まず、トレーニングジョブの起動時間が入力データのサイズとは無関係になり、特にギガバイトおよびペタバイトの規模のデータセットでのトレーニングでは、起動がはるかに迅速になります。さらに、大きなデータセットをダウンロードするために大容量のディスクボリュームの使用料を支払う必要がありません。最後に、トレーニングのアルゴリズムで I/O の負荷が大きい場合、パイプモードで採用されている並行性の高い高スループットの読み取りメカニズムにより、モデルのトレーニングが大幅にスピードアップされます。 より速いパイプモードでより高い I/O スループット パイプモードの最新の実装は、以前よりも高いデータストリーミングのスループットを実現しています。次の図は、今年初めにパイプモードのサポートを開始したときと比較した、パイプモードでのスループットの向上を示しています。同一条件での比較では、ストリーミングスループットの数値は、Amazon SageMaker のトレーニングでサポートされているインスタンスタイプで測定したファイルモードのスループットの数値に対するベースラインに基づいています。 ご覧のように、パイプモードを使用してトレーニングデータをストリーミングすると、以前の場合よりも最大で 3 倍高速になることがあります。パイプモードのサポートは、Amazon SageMaker の組み込みアルゴリズムですぐに使用できるように用意されています。ここでは、独自のカスタムトレーニングアルゴリズムを Amazon SageMaker に導入する場合に、パイプモードを活用する方法の例を紹介します。 パイプモードのトレーニングコードを書く […]

Read More

Amazon SageMaker ノートブックインスタンスで一般的なワークフローを使用する方法

 Amazon SageMaker ノートブックインスタンスは、データサイエンスや機械学習を行うためのスケーラブルなクラウドベースの開発環境を提供します。このブログ記事では、より生産性が高く、効果的な一般的ワークフローを紹介します。 このブログ記事で紹介するテクニックは、使い捨てと交換が可能であることを念頭におく、よりクラウドネイティブな方法でノートブックインスタンスを扱うツールとなります。以下を説明します。 まず、協調型の開発のために GitHub および AWS CodeCommit を使用する方法を示します。 次に、AWS CloudFormation を使用して、ノートブックインスタンスを自動的にプロビジョニングし、jupyter ノートブックをアップロードする方法を示します。 3 番目に、Amazon S3 バケットを使用してノートブックインスタンスからアセットをバックアップおよび復元する方法を示します。 チュートリアル Git によるコラボレーション ノートブックインスタンスは、1 人の開発者が 1 つのインスタンスに割り当てられている場合が最適な使用です。ただし、データサイエンティストはしばしば協調型の環境で作業をします。Git は、複数のコントリビュータがバージョン管理されたコードリポジトリに書き込むことを可能にするツールです。複数の開発者/データサイエンティストがそれぞれのノートブックインスタンスで作業し、リモートリポジトリからコードをプルし、変更をそのリポジトリにプッシュ (またはコミット) することができます。AWS CodeCommit と GitHub は、リモート Git リポジトリを配置することができる 2 つの場所です。 CodeCommit CodeCommit リポジトリで作業するには、Amazon SageMaker コンソールを開き、次の手順に従います。 SageMaker インスタンスのロール設定 AWS コンソールにログインします。 検索バーに「sagemaker」と入力し、sagemaker コンソールを開きます。 左側のメニューでノートブックを選択し、ノートブックを選択します (または最初に作成します)。 [IAM role ARN] の下のリンクをクリックします。 [Permissions] タブで、[attach […]

Read More

Amazon SageMaker と AWS Deep Learning AMI で PyTorch 1.0 プレビューが利用できるようになりました

Amazon SageMaker と AWS Deep Learning AMI (DLAMI) が、PyTorch 1.0 プレビューリリースを簡単に評価する手段を提供できるようになりました。PyTorch 1.0 は、PyTorch の人気が急騰する理由となった使いやすさを維持したまま、研究から本番にシームレスに移行する機能を追加します。AWS Deep Learning AMI には、高速コンピューティングインスタンスを活用するための CUDA と MKL のライブラリと共に、PyTorch 1.0、Anaconda、および Python のパッケージが事前構築されています。Amazon SageMaker は、あらゆる規模の機械学習 (ML) モデルを迅速かつ容易に構築、訓練、調整、およびデプロイするためのエンドツーエンドプラットフォームです。そして今、Amazon SageMaker は、お客様が PyTorch 1.0 を使って、自動モデルチューニングを含むすべての SageMaker 機能を活用できるように、PyTorch 1.0 プレビューを備えた事前構築済みの環境を提供するようになりました。 PyTorch は、研究と実験に最適なオープンソースの深層学習フレームワークです。しかし、開発者の最大の課題のひとつは、PyTorch で作成したモデルを使って、それらを大規模な本番環境で実行することでした。PyTorch は、その使いやすさ、命令型スタイル、シンプルな API、そして柔軟性で開発者の人気を急速に得ましたが、モデル探索から本番への移行には、フリージンググラフなど、反復的であるがゆえに時間がかかる追加の作業が必要です。PyTorch 1.0 は、深層学習フレームワークに研究から本番にシームレスに移行する機能を実現します。 Amazon SageMaker 内に事前構築された PyTorch 環境によって、開発者とデータ科学者は、単一の API コールを使ってそれぞれのスクリプトを指定して、ローカルで訓練、または分散型トレーニングジョブを送信することができます。開発者はまた、二番目の API コールを使って、需要の必要性に応じて自動的にスケールアップまたはスケールダウンできる管理された高可用性のオンラインエンドポイントに PyTorch で訓練されたモデルをデプロイできるようにもなりました。開発者は、異なるバージョン向けに単一のパラメータを変更することによって、PyTorch […]

Read More

Apache MXNet を Amazon SageMaker および AWS Greengrass ML Inference と共に使用する脳組織のセグメント化 – パート 1

医療画像のアノテーションとセグメンテーションは、困難な作業ですが深層学習 (DL) 技術によって部分的に自動化することができます。こうした手法は、画素レベルで画像を分類することを目的とする一般的なセグメンテーションタスクにおいて最先端の結果を達成しています。 このブログ記事のパート 1 では、Amazon SageMaker を使用する簡単で合理的な方法で、MRI スキャンから脳組織を自動的にセグメント化するためにニューラルネットワークをトレーニングおよびデプロイする方法を紹介します。Apache MXNet を使って、「Bring Your Own Script」のパラダイムを採用する Amazon SageMaker で畳み込みニューラルネットワーク (CNN) をトレーニングします。U-Net と効率的で低レイテンシーの ENet の 2 つのネットワークをトレーニングします。パート 2 では、AWS Greengrass ML Inference を使用して、低接続または非接続の環境でのオフライン推論用のポータブルエッジデバイスに ENet をデプロイする方法を見ていきます。 この記事ではこのアプローチを脳の MRI に適用しますが、一般的なセグメンテーションの手法として、X 線の分析などの類似のユースケースに適用できます。 このブログ記事では、高レベルの概要を紹介します。完全なチュートリアルのノートブックについては、GitHub にある Amazon SageMaker の脳セグメンテーションを参照してください。 このブログ記事の最後で、ここに示すように MRI からの脳組織のセグメンテーションを予測します。 このユースケースでは、医療画像を保護医療情報 (PHI) ではなく未処理画像として取り扱っていますが、以下の点に注意してください。 AWS Greengrass は、この記事の執筆時点では AWS HIPAA 準拠サービスではありません。AWS Business Associate […]

Read More

Amazon SageMaker 自動モデルチューニングによる高精度なモデル、高速化

Amazon SageMaker では、このほど、機械学習モデルのハイパーパラメータ値を自動的に調整することで、より正確な予測を生成できる機能をリリースしました。ハイパーパラメータは、トレーニング中にアルゴリズムがどのように動作するかを示すユーザー定義の設定です。例としては、データを繰り返し処理する毎に、決定木のサイズを拡張する方法、セグメンテーションで必要なクラスタの数やニューラルネットワークの重み付けを更新する方法などがあります。 機械学習モデルに適したハイパーパラメータ値を選択することは、最終的な精度とパフォーマンスに大きな影響を与える可能性があるため重要です。しかしながら、ハイパーパラメータ値を設定するプロセスは難しい場合があります。正しいやり方はデータによって異なります。アルゴリズムによっては、調整が可能なさまざまなハイパーパラメータがあります。一部のハイパーパラメータは、選択した値に対して他のパラメータよりも敏感に反応します。ほとんどの場合、モデルフィットとハイパーパラメータ値の間には非線形の関係があります。 ハイパーパラメータ値を選択するためのさまざまな方策があります。一部のサイエンティストは、ドメイン知識、経験則、直感、または手動の実験を活用します。他のサイエンティストは力まかせ探索を使用します。いくつかのメタモデルを構築して、どのようなハイパーパラメータ値がうまくいくか予測します。このアプローチの詳細については、Shahriari et alを参照してください。(2016) 方法にかかわらず、ハイパーパラメータ値の選択によっては、新たな機械学習の問題を解決するための特殊なスキルセットを必要になる場合があります。 Amazon SageMaker 自動モデルチューニングを使えば、この作業が容易になります。 ガウス過程回帰 (Gaussian Process regression) を使用して、どのパラメータ値がフィットを改善するのに最も効果的かを予測します。また、ベイズ最適化を使用して、ハイパーパラメータの領域の探索と特定のハイパーパラメータ値の利用が適切な場合にバランスをとることができます。また、重要なポイントとして、Amazon SageMakerの組み込みアルゴリズム、あらかじめ構築された詳細な深層学習フレームワーク、独自アルゴリズムコンテナを使って、自動モデルチューニングを使用することができます。 本ブログ記事では、Amazon SageMakerでハイパーパラメータチューニングを実行し、2つの方法を比較する方法を紹介します。つまり、自動モデルチューニングとランダム検索です。 単純に無作為に選んだハイパーパラメータ値は、最終的なフィットとそれに到達するために必要なジョブの数の両方に適したベースラインとしてしばしば利用できます。最先端の方法にも匹敵する方法です。 問題の概要 本記事では、全体的なアプローチについて説明します。 詳細と完全なステップバイステップの使い方については、対応する例・ノート。 使用するデータセットは、一般的なコンピュータビジョンベンチマークである CIFAR-10 画像データセット。 これは、60K 32×32 ピクセルのカラー画像 (50K トレイン、10Kテスト) で構成され、10 クラスに均等に分散しています。そのサイズは、ダウンロードするには十分に小さく、1つのインスタンスでトレーニングを行います。しかし、さまざまなアプローチの違いがハイライトされるので難しい作業です。 私たちは、Amazon SageMaker MXNetコンテナを使用して、ResNet-34 畳み込み画像分類ニューラルネットワークをトレーニングし、確率的勾配降下を使用してネットワークの重みを見つけます。すべてのジョブ実行に対して、単一の ml.p3.8xlarge インスタンスで、エポックを 50、ミニバッチサイズを 1,024 に修正します。私たちの目標は、ハイパーパラメータのチューニングを通してホールドアウトによる分類精度を向上させる方法と、各チューニング方法がどのように機能するかを示すことです。 この例をエンドツーエンドで実行すると約 400 USD の費用がかかります。 トレーニング 一度デフォルトのハイパーパラメータ値を使って、シンプルにモデルをトレーニングしてみましょう。 確率的勾配降下 (SGD) を使用して畳み込みニューラルネットワーク (CNN) をトレーニングしています。これは、トレーニング損失を改善するネットワーク重みを変更する方向を見つけることでトレーニング損失を最小限に抑える方法です。SGD はその方向の重みを少し更新して繰り返します。これらの3つのハイパーパラメータに焦点を当てます : learning_rate: 重みに対して行う更新の大きさを制御します。 momentum: 前回の更新の方向からの情報を使い、現在の更新を知らせます。 デフォルト値 0 は、現在のバッチ内の情報のみに基づいて重みの更新が行われることを意味します。 wd: […]

Read More

Amazon SageMaker を使用して、間違いの経済的コストが不均等なモデルをトレーニングする

多くの企業は、機械学習 (ML) に取り組んで、顧客やビジネスに対する成果を向上させています。そのために、「ビッグデータ」に基づいて構築された ML モデルの力を活用して、パターンを特定し、相関関係を見つけ出しています。次に、新しいインスタンスに関するデータに基づいて、適切なアプローチを特定したり、可能性のある結果を予測したりすることができます。ただし、ML モデルは実世界の近似なので、こうした予測の一部が誤っている可能性もあります。 一部のアプリケーションでは、すべてのタイプの予測の間違いの影響が実際には同等です。他のアプリケーションでは、ある種の間違いは、別の間違いよりもはるかに高価または重大になります – ドル、時間、または何か他の単位で絶対的または相対的に測定されます。例えば、医学的推定によって誰かが乳癌に罹っていないと予測して実際には罹っていたとすると (偽陰性の間違い)、逆の間違いよりもはるかに大きなコストまたは結果が生じるでしょう。偽陰性の間違いを十分に減らして補えるなら、より多くの偽陽性の誤りを許容することも可能かもしれません。 このブログ記事では、トレードオフの透明性を高めながら、望ましくない間違いを減らすという目標で、間違いのコストが不均等であるアプリケーションに対処します。異なる種類の誤分類のコストが非常に異なるバイナリ分類問題について、Amazon SageMaker のモデルをトレーニングする方法を紹介します。このトレードオフを調べるために、非対称の誤分類コストを組み込んだカスタム損失関数 (モデルがどの程度うまく予測を行っているかを評価するメトリクス) を書く方法を示します。そして、その損失関数を使って、Amazon SageMaker Build Your Own Model をトレーニングする方法を示します。さらに、モデルによる間違いの評価方法と、異なる相対コストでトレーニングされたモデルを比較する方法を示し、全体として最良の経済的成果を持つモデルを特定できるようにします。 このアプローチの利点は、ML モデルの成果と間違いと意思決定のためのビジネスの枠組みを明示的にリンク付けできることです。このアプローチでは、予測に基づいて対処するべき具体的な行動に基づいて、ビジネスがコストマトリクスを明示的に提示する必要があります。そうすることで、ビジネスはモデル予測の経済的帰結を全体的なプロセス、予測に基づいて対処した行動、それらに関連するコストで評価することができます。この評価プロセスは、モデルの分類結果を単純に評価するだけではありません。このアプローチは、ビジネスにおける挑戦的な議論を促し、オープンな議論と合意のためにさまざまな暗黙の意思決定や評価を明らかにすることができます。 背景とソリューションの概要 モデルのトレーニングは常に間違いを最小限に抑えることを目指していますが、ほとんどのモデルは、すべてのタイプの間違いが等しいと想定してトレーニングされています。しかし、種類が異なる間違いのコストが等しくないことが分かったらどうなるでしょうか? たとえば、UCI の乳癌診断データセットでトレーニングされたサンプルモデルを取り上げましょう。1 明らかに、偽陽性の予測 (乳癌ではないのに、乳癌であると予測する) は、偽陰性の予測 (乳癌であるのに、乳癌でないと予測する) とは非常に異なる結果をもたらすでしょう。最初のケースでは、追加スクリーニングが行われます。2 番目のケースでは、発見される前に癌が進行してしまう可能性があります。こうした結果を定量化するために、しばしば結果を相対コストの観点から議論し、トレードオフが可能になります。偽陰性や偽陽性の予測の正確なコストがどうあるべきかを議論することはできますが、少なくともすべてが同じではないことに全員が同意すると確信しています – ML モデルは一般にすべてが同じであるかのようにトレーニングされますが。 カスタムのコスト関数を使用してモデルを評価し、モデルが行っている間違いの経済的影響を確認することができます (効用解析)。Elkan2 は、モデルの結果にコスト関数を適用することで、標準的なベイジアンおよび意思決定木の学習方法で使用される場合の不均衡なサンプルを補正することができると示しました (例: より少ない債務不履行、大量の債務返済のサンプル)。また、カスタム関数を使用して、この同じ補正を実行することもできます。 モデルでは、カスタムの損失関数を使用して、トレーニング中にさまざまなタイプの間違いのコストをモデルに提供することで、コストの差異を反映した方法でモデルに予測を「シフト」させることもできます。たとえば、前述の乳癌の例では、モデルが行う偽陰性の間違いを少なくしたいと考えており、その目的を達成するために偽陽性をより多く受け入れる意思があります。さらに言うなら、偽陰性を少なくするためには、いくつかの「正しい」予測をあきらめても構わないかもしれません。少なくとも、ここではトレードオフを理解したいと考えます。この例では、医療業界のコストを使用します。3,4 さらに、多くの場合、モデルの予測は「ほぼ」として予測されていることを理解したいと思います。たとえば、バイナリモデルでは、スコアを「True」または「False」として分類するためにカットオフ (例、0.5) を使用します。 実際に、どのくらいのケースがカットオフに非常に近いでしょうか? スコアが 0.499999 だったので、偽陰性はそのように分類されたのでしょうか? こうした詳細は、混同行列または AUC 評価の通常の表現では見られません。こうした質問に取り組むために、特定の閾値に依存することなくこれらの詳細を調べることができる、モデル予測の斬新でグラフィカルな表現を開発しました。 実際に、特定の種類の間違いを回避するようにトレーニングされたモデルが、間違いの差別化に特化し始める可能性が高いケースがあります。街路から見える標識の誤認識がすべて同じであると信じるようにトレーニングされたニューラルネットワークを想像してみてください。 5 それでは、一時停止標識を速度制限 45 mph の標識として誤って認識することは、2 […]

Read More