

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

# IP Insights
<a name="ip-insights"></a>

Amazon SageMaker AI IP Insights は、IPv4 アドレスの使用パターンを学習する教師なし学習アルゴリズムです。このアルゴリズムは、IPv4 アドレスと、ユーザー ID やアカウント番号などの各種エンティティとの間の関連付けをキャプチャするように設計されています。たとえば、異常な IP アドレスからウェブサービスにログインしようとしているユーザーを識別するために使用できます。あるいは、異常な IP アドレスからコンピューティングリソースを作成しようとしているアカウントを識別するために使用することもできます。トレーニング済みの IP Insight モデルは、リアルタイムの予測を行うためにエンドポイントでホストしたり、バッチ変換の処理で使用したりできます。

SageMaker AI IP Insights は、履歴データを (エンティティ、IPv4 アドレス) のペアとして取り込み、各エンティティの IP 使用パターンを学習します。(エンティティ、IPv4 アドレス) イベントを使用してクエリが実行されると、SageMaker AI IP Insights モデルは、そのイベントのパターンがどの程度異常であるかを推測するスコアを返します。たとえば、ユーザーが IP アドレスからログインしようとしたときに、IP Insights のスコアが十分に高ければ、ウェブログインサーバーは多要素認証システムの起動を決定する可能性があります。より高度なソリューションでは、IP Insights のスコアを他の機械学習モデルに取り込むことができます。たとえば、IP Insights のスコアを他の特徴と組み合わせて、[Amazon GuardDuty](https://docs.aws.amazon.com/guardduty/latest/ug/what-is-guardduty.html) などの別のセキュリティシステムの結果をランク付けすることができます。

SageMaker AI IP Insights アルゴリズムは、埋め込みと呼ばれる IP アドレスのベクトル表現も学習できます。**ベクトルとしてエンコードされた埋め込みを、IP アドレスで観測された情報を使用するダウンストリームの機械学習タスクの特徴として使用することができます。たとえば、クラスタリングに含まれる IP アドレス間の類似性を測定するタスクや、視覚化タスクなどに使用できます。

**Topics**
+ [IP Insights アルゴリズムの入出力インターフェイス](#ip-insights-inputoutput)
+ [IP Insights アルゴリズムの EC2 インスタンスに関する推奨事項](#ip-insights-instances)
+ [IP Insights サンプルノートブック](#ip-insights-sample-notebooks)
+ [IP Insights の仕組み](ip-insights-howitworks.md)
+ [IP Insights ハイパーパラメータ](ip-insights-hyperparameters.md)
+ [IP Insights モデルを調整する](ip-insights-tuning.md)
+ [IP Insights データ形式](ip-insights-data-formats.md)

## IP Insights アルゴリズムの入出力インターフェイス
<a name="ip-insights-inputoutput"></a>

**トレーニングおよび検証**

SageMaker AI IP Insights アルゴリズムは、トレーニングと検証のデータチャネルをサポートします。オプションの検証チャネルを使用して、事前定義された負のサンプリング戦略で曲線下面積 (AUC) スコアを計算します。AUC メトリクスは、モデルが正のサンプルと負のサンプルをどの程度区別しているかを検証します。トレーニングおよび検証データのコンテンツタイプは、`text/csv` 形式である必要があります。CSV データの最初の列は、エンティティの一意の識別子を提供する不透明な文字列です。2 列目は、ドット区切りの 10 進数表記の IPv4 アドレスです。IP Insights は現在、ファイルモードのみをサポートしています。詳細および例については、[IP Insights トレーニングデータの形式](ip-insights-training-data-formats.md)を参照してください。

**推論**

IP Insights は推論のために、`text/csv`、`application/json`、および `application/jsonlines` データコンテンツタイプをサポートします。SageMaker AI から提供される推論に共通するデータ形式の詳細については、「[推論の共通データ形式](cdf-inference.md)」を参照してください。IP Insights 推論は、`application/json` または `application/jsonlines` として形式設定された出力を返します。出力データの各レコードには、各入力データポイントに対応する `dot_product` (または互換性スコア) が含まれています。詳細および例については、[IP Insights 推論データの形式](ip-insights-inference-data-formats.md)を参照してください。

## IP Insights アルゴリズムの EC2 インスタンスに関する推奨事項
<a name="ip-insights-instances"></a>

SageMaker AI IP Insights アルゴリズムは、GPU インスタンスと CPU インスタンスの両方で実行できます。トレーニングジョブの場合は、GPU インスタンスを使用することをお勧めします。ただし、大規模なトレーニングデータセットを使用する特定のワークロードでは、分散型の CPU インスタンスを使用すると、トレーニングコストを削減できる可能性があります。推論の場合は、CPU インスタンスを使用することをお勧めします。IP Insights は P2、P3、G4dn、G5 の GPU ファミリーをサポートしています。

### IP Insights アルゴリズムの GPU インスタンス
<a name="ip-insights-instances-gpu"></a>

IP Insights は、使用可能な GPU をすべてサポートします。トレーニングを加速させる必要がある場合は、ml.p3.2xlarge などの単一 GPU インスタンスから始めて、ml.p3.8xlarge や ml.p3.16xlarge などのマルチ GPU 環境に移行することをお勧めします。マルチ GPU は、ミニバッチのトレーニングデータを自動的に分割します。単一の GPU から複数の GPU に切り替えると、`mini_batch_size` が、使用される GPU の数だけ均等に分割されます。これを補うために、`mini_batch_size` の値を大きくすることをお勧めします。

### IP Insights アルゴリズムの CPU インスタンス
<a name="ip-insights-instances-cpu"></a>

お勧めする CPU インスタンスのタイプは、インスタンスの使用可能なメモリとモデルのサイズによって大きく異なります。モデルサイズは、`vector_dim` と `num_entity_vectors` の 2 つのハイパーパラメータによって決まります。サポートされる最大モデルサイズは 8 GB です。次の表に、さまざまなモデルサイズの入力パラメータに基づいてデプロイする一般的な EC2 インスタンスのタイプをリストしてあります。表 1 で、最初の列の `vector_dim` の値は 32～2048 の範囲で、最初の行の `num_entity_vectors` の値は 10,000～50,00,000 の範囲です。


| `vector_dim` \\ `num_entity_vectors`. | 10,000 | 50,000 | 100,000 | 500,000 | 1,000,000 | 5,000,000 | 10,000,000 | 50,000,000 | 
| --- | --- | --- | --- | --- | --- | --- | --- | --- | 
| 32 | ml.m5.large | ml.m5.large | ml.m5.large | ml.m5.large | ml.m5.large | ml.m5.xlarge | ml.m5.2xlarge | ml.m5.4xlarge | 
| `64` | ml.m5.large | ml.m5.large | ml.m5.large | ml.m5.large | ml.m5.large | ml.m5.2xlarge | ml.m5.2xlarge |  | 
| `128` | ml.m5.large | ml.m5.large | ml.m5.large | ml.m5.large | ml.m5.large | ml.m5.2xlarge | ml.m5.4xlarge |  | 
| `256` | ml.m5.large | ml.m5.large | ml.m5.large | ml.m5.large | ml.m5.xlarge | ml.m5.4xlarge |  |  | 
| `512` | ml.m5.large | ml.m5.large | ml.m5.large | ml.m5.large | ml.m5.2xlarge |  |  |  | 
| `1024` | ml.m5.large | ml.m5.large | ml.m5.large | ml.m5.xlarge | ml.m5.4xlarge |  |  |  | 
| `2048` | ml.m5.large | ml.m5.large | ml.m5.xlarge | ml.m5.xlarge |  |  |  |  | 

`mini_batch_size`、`num_ip_encoder_layers`、`random_negative_sampling_rate`、および `shuffled_negative_sampling_rate` ハイパーパラメータの値も、必要なメモリ量に影響します。これらの値が大きい場合は、通常よりも大きいインスタンスタイプを使用しなければならない可能性があります。

## IP Insights サンプルノートブック
<a name="ip-insights-sample-notebooks"></a>

SageMaker AI IP Insights アルゴリズムをトレーニングし、それを使用して推論を実行する方法を示すサンプルノートブックについては、「[An Introduction to the SageMaker AI IP Insights Algorithm](https://sagemaker-examples.readthedocs.io/en/latest/introduction_to_amazon_algorithms/ipinsights_login/ipinsights-tutorial.html)」を参照してください。SageMaker AI でサンプルを実行するために使用できる Jupyter ノートブックインスタンスを作成してアクセスする方法の詳細については、「[Amazon SageMaker ノートブックインスタンス](nbi.md)」を参照してください。ノートブックインスタンスを作成したら、**[SageMaker AI サンプル]** タブを選択して、すべての SageMaker AI サンプルのリストを表示します。ノートブックを開くには、その [**Use (使用)**] タブを選択し、[**Create copy (コピーを作成)**] を選択します。