

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

# ステップ 3: Amazon S3 上のドキュメントに対する分析ジョブの実行
<a name="tutorial-reviews-analysis"></a>

Amazon S3 にデータを保存すると、Amazon Comprehend 分析ジョブの実行を開始することができます。感情分析ジョブでは、ドキュメントの全体的な雰囲気 (肯定的、否定的、中立、混在) が判定されます。エンティティ分析ジョブでは、ドキュメントから現実世界のオブジェクトの名前が抽出されます。そうしたオブジェクトとして、人物や場所、役職、イベント、日付、数量、商品、組織などがあります。このステップでは、2 つの Amazon Comprehend 分析ジョブを実行して、サンプルデータセットから感情とエンティティを抽出します。

**Topics**
+ [前提条件](#tutorial-reviews-analysis-prereqs)
+ [感情とエンティティを分析する](#tutorial-reviews-analysis-jobs)

## 前提条件
<a name="tutorial-reviews-analysis-prereqs"></a>

開始する前に、以下を実行します。
+ [ステップ 1: Amazon S3 にドキュメントを追加する](tutorial-reviews-add-docs.md) を完了します。
+ (オプション) を使用している場合は AWS CLI、IAM ロール ARN を完了[ステップ 2: (CLI のみ) Amazon Comprehend 用の IAM ロールを作成する](tutorial-reviews-create-role.md)して準備します。

## 感情とエンティティを分析する
<a name="tutorial-reviews-analysis-jobs"></a>

最初のジョブでは、サンプルデータセット内の各カスタマーレビューの感情を分析します。2 つ目のジョブでは、各カスタマーレビューのエンティティを抽出します。Amazon Comprehend の分析ジョブは、Amazon Comprehend コンソールまたは AWS CLIを使用して実行できます。

**ヒント**  
Amazon Comprehend をサポートする AWS リージョンにいることを確認します。詳細については、『グローバルインフラストラクチャガイド』の「[リージョン](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/)」の表を参照してください。

### 感情とエンティティを分析する (コンソール)
<a name="tutorial-reviews-analysis-jobs-console"></a>

Amazon Comprehend コンソールを利用すると、一度に 1 つのジョブを作成します。感情分析ジョブとエンティティ分析ジョブの両方を実行するには、次の手順を繰り返す必要があります。最初のジョブでは IAM ロールを作成しますが、2 つ目のジョブでは最初のジョブの IAM ロールを再利用できます。IAM ロールは、同じ S3 バケットとフォルダを使用する限り再利用できます。

**感情分析ジョブとエンティティ分析ジョブを実行する (コンソール)**

1. Amazon Simple Storage Service (Amazon S3) バケットを作成したリージョンと同じリージョンにいることを確認します。別のリージョンにいる場合は、ナビゲーションバーで、 AWS リージョンセレクタから S3 バケットを作成したリージョンを選択します。 ****

1. Amazon Comprehend コンソール ([https://console.aws.amazon.com/comprehend/](https://console.aws.amazon.com/comprehend/)) を開きます。

1. **[Launch Amazon Comprehend]** (Amazon Comprehend の起動) を選択します。

1. ナビゲーションペインで、[**分析ジョブ]**] を選択します。

1. **[Create job]** (ジョブの作成) を選択します。

1. **[Job settings]** (ジョブの設定) セクションで、以下の操作を行います。

   1. **[Name]** (名前)に `reviews-sentiment-analysis` と入力します。

   1. **分析タイプ**で、**時系列** を選択します。

   1. **[Language]** (言語) で、**[English]** (英語) を選択します。

   1. **[Job 暗号化]** 設定は無効のままにしておきます。

1. **[Input data]** (入力データ) セクションで、以下の操作を行います。

   1. **[Data source]** (データソース) で、**[My documents]** (マイドキュメント) を選択します。

   1. [**S3 上の場所**]で、[**S3 を参照**]を選択し、バケットのリストからバケットを選択します。

   1. S3 バケットの [**オブジェクト**] で、`input` フォルダを選択します。

   1. `input` フォルダでサンプルデータセット `amazon-reviews.csv` を選択し、[**選択**] を選択します。

   1. [**入力形式**]で、[**ファイルあたり 1 つのドキュメント**]を選択します。

1. **[Output data]** (出力データ) セクションで、以下の操作を行います。

   1. [**S3 上の場所**]で、[**S3 を参照**]を選択し、バケットのリストからバケットを選択します。

   1. S3 バケットの [**オブジェクト**] で、`output` フォルダを選択し、[**選択**] を選択します。

   1. **[暗号化]** は無効のままにしておきます。

1. **[Access permissions]** (アクセス許可) セクションで、以下の操作を行います。

   1. **[IAM role]** (IAM ロール) で、**[Create an IAM role]** (IAM ロールの選択) を選択します。

   1. **[Permissions to access]** (アクセスの許可) で、**[Input and Output S3 buckets]** (S3 バケットの入力と出力) を選択します。

   1. **[Name suffix]** (サフィックスに名前を付ける) で、`comprehend-access-role` と入力します。このロールは、Amazon S3 バケットへのアクセスを提供します。

1. **[ジョブの作成]** を選択します。

1. ステップ 1 ～ 10 を繰り返して、エンティティ分析ジョブを作成します。以下の変更を加えます。

   1. **[Job 設定]** の **[名前]** で `reviews-entities-analysis` と入力します。

   1. **[Job 設定]** の **[分析タイプ]**で **[エンティティ]** を選択します。

   1. [**アクセス許可**] で、[**既存の IAM ロールを使用**] を選択します。**[ロール名]** では、`AmazonComprehendServiceRole-comprehend-access-role` (感情ジョブ用に作成したロールと同じロール) を選択します。

### 感情とエンティティを分析する (AWS CLI)
<a name="tutorial-reviews-analysis-jobs-cli"></a>

感情分析ジョブとエンティティ分析ジョブの実行には、`start-sentiment-detection-job` および `start-entities-detection-job` コマンドを利用します。各コマンドを実行すると、 には、出力 S3 の場所を含むジョブの詳細にアクセスできる`JobId`値を持つ JSON オブジェクト AWS CLI が表示されます。

**感情およびエンティティ分析ジョブを実行するには (AWS CLI)**

1. 感情分析ジョブを開始するには、 AWS CLIで次のコマンドを実行します。`arn:aws:iam::123456789012:role/comprehend-access-role` の部分は、以前にテキストエディタにコピーした IAM ロールの ARN に置き換えます。デフォルトの AWS CLI リージョンが Amazon S3 バケットを作成したリージョンと異なる場合は、 `--region`パラメータを含めて、 をバケットが存在するリージョン`us-east-1`に置き換えます。

   ```
   aws comprehend start-sentiment-detection-job 
   --input-data-config S3Uri=s3://amzn-s3-demo-bucket/input/
   --output-data-config S3Uri=s3://amzn-s3-demo-bucket/output/ 
   --data-access-role-arn arn:aws:iam::123456789012:role/comprehend-access-role
   --job-name reviews-sentiment-analysis
   --language-code en
   [--region us-east-1]
   ```

1. ジョブを送信したら、`JobId` をコピーしてテキストエディタに保存します。分析ジョブの出力ファイルを見つけるには、`JobId` が必要です。

1. 感情分析ジョブを開始するには、 次のコマンドを実行します。

   ```
   aws comprehend start-entities-detection-job 
   --input-data-config S3Uri=s3://amzn-s3-demo-bucket/input/
   --output-data-config S3Uri=s3://amzn-s3-demo-bucket/output/ 
   --data-access-role-arn arn:aws:iam::123456789012:role/comprehend-access-role
   --job-name reviews-entities-analysis
   --language-code en
   [--region us-east-1]
   ```

1. ジョブを送信したら、`JobId` をコピーしてテキストエディタに保存します。

1. ジョブのステータスを確認します。ジョブの `JobId` を追跡することで、ジョブの進行状況を確認できます。

   感情分析ジョブの進捗状況を追跡するには、次のコマンドを実行します。`sentiment-job-id` の部分は、感情分析の実行後にコピーした `JobId` に置き換えます。

   ```
   aws comprehend describe-sentiment-detection-job
   --job-id sentiment-job-id
   ```

   エンティティ分析ジョブを追跡するには、次のコマンドを実行します。`entities-job-id` の部分は、エンティティ分析を実行した後にコピーし `JobId` に置き換えます。

   ```
   aws comprehend describe-entities-detection-job
   --job-id entities-job-id
   ```

   `JobStatus` が `COMPLETED` と表示されるまで、数分かかります。

感情とエンティティの分析ジョブが完了しました。次のステップに進むには、両方のジョブを完了している必要があります。ジョブが完了するまでに数分かかることがあります。