オントロジーリンクのバッチ分析 - Amazon Comprehend Medical

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

オントロジーリンクのバッチ分析

Amazon Comprehend Medical を使用して、Amazon Simple Storage Service (Amazon S3) バケットに保存されている臨床テキスト内のエンティティを検出し、これらのエンティティを標準化されたオントロジーにリンクします。オントロジーリンクのバッチ分析を使用して、ドキュメントのコレクションまたは最大 20,000 文字の単一ドキュメントを分析できます。コンソール、またはオントロジーリンクバッチ API オペレーションを使用して、継続中のバッチ分析ジョブの開始、停止、リスト表示、および説明を行うオペレーションを実行できます。

バッチ分析およびその他の Amazon Comprehend Medical オペレーションの価格情報については、「Amazon Comprehend Medical の料金」を参照してください。

バッチ分析の実行

バッチ分析ジョブは、Amazon Comprehend Medical コンソールまたは Amazon Comprehend Medical バッチ API オペレーションを使用して実行できます。

API オペレーションを使用したバッチ分析の実行

前提条件

Amazon Comprehend Medical API を使用する場合、AWS Identity Access and Management (IAM) ポリシーを作成し、このポリシーを IAM ロールにアタッチします。IAM ロールと信頼ポリシーの詳細については、「IAM でのポリシーとアクセス許可」を参照してください。

  1. データを S3 バケットにアップロードします。

  2. 新しい分析ジョブを開始するには、StartICD10CMInferenceJob、StartSNOMEDCTInferenceJob、または StartRxNormInferenceJobオペレーションを使用します。入力ファイルが含まれる Amazon S3 バケットの名前と、出力ファイルを送信する Amazon S3 バケットの名前を指定します。

  3. DescribeICD10CMInferenceJob、DescribeSNOMEDCTDescribeSNOMEDCTInferenceJob、または DescribeRxNormInferenceJobオペレーションを使用して、ジョブの進行状況をモニタリングします。さらに、ListICD10CMInferenceJobs、ListSNOMEDCTInferenceJobs、および を使用して、オントロジーリンクのすべてのバッチ分析ジョブのステータスListRxNormInferenceJobsを確認できます。

  4. 進行中のジョブを停止する必要がある場合は、StopICD10CMInferenceJob StopSNOMEDCTInferenceJob 、または を使用して分析StopRxNormInferenceJobを停止します。

  5. 分析ジョブの結果を表示するには、ジョブの開始時に設定した出力 S3 バケットを確認します。

コンソールを使用したバッチ分析の実行

  1. データを S3 バケットにアップロードします。

  2. 新しい分析ジョブを開始するには、実行する分析のタイプを選択します。入力ファイルが含まれる S3 バケットの名前と、出力ファイルを送信する S3 バケットの名前を指定します。

  3. 進行中のジョブのステータスを監視します。コンソールから、分析の開始日と終了日など、すべてのバッチ分析オペレーションとそのステータスを表示できます。

  4. 分析ジョブの結果を表示するには、ジョブの開始時に設定した出力 S3 バケットを確認します。

バッチオペレーションの IAM ポリシー

Amazon Comprehend Medical バッチ API オペレーションを呼び出す IAM ロールには、入力ファイルと出力ファイルが含まれる S3 バケットへのアクセス権を付与するポリシーが必要です。また、IAM ロールには、Amazon Comprehend Medical サービスがロールを引き受けることができるようにする信頼関係も割り当てる必要があります。IAM ロールと信頼ポリシーの詳細については、「IAM ロール」を参照してください。

ロールには、以下のポリシーが必要です。

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::input-bucket/*" ], "Effect": "Allow" }, { "Action": [ "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::input-bucket", "arn:aws:s3:::output-bucket", ], "Effect": "Allow" }, { "Action": [ "s3:PutObject" ], "Resource": [ " arn:aws:s3:::output-bucket/*" ], "Effect": "Allow" } ] }

ロールには、以下の信頼関係が必要です。混乱した代理によるセキュリティの問題を防ぐために aws:SourceAccount および aws:SourceArn 条件キーを使用することをお勧めします。混乱した代理問題と AWS アカウントを保護する方法の詳細については、IAM ドキュメントの「混乱した代理問題」を参照してください。

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "Service":[ "comprehendmedical.amazonaws.com" ] }, "Action":"sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "account_id" }, "ArnLike": { "aws:SourceArn": "arn:aws:comprehendmedical:region:account_id:*" } } } ] }

バッチ分析の出力ファイル

Amazon Comprehend Medical は、バッチ内の入力ファイルごとに 1 つの出力ファイルを作成します。ファイルの拡張子は .out です。Amazon Comprehend Medical は、まず AwsAccountId-JobType-JobId を名前として使用して出力 S3 バケットにディレクトリを作成し、バッチのすべての出力ファイルをこのディレクトリに書き込みます。Amazon Comprehend Medical は、ジョブの出力が別のジョブの出力を上書きしないように、この新しいディレクトリを作成します。

バッチオペレーションでは、同期オペレーションと同じ出力が生成されます。

バッチオペレーションごとに、ジョブに関する情報が含まれた以下の 3 つのマニフェストファイルが生成されます。

  • Manifest — ジョブを要約します。ジョブに使用されたパラメータ、ジョブの合計サイズ、および処理されたファイル数に関する情報を提供します。

  • Success — 処理が成功したファイルに関する情報を提供します。入力ファイル名と出力ファイル名、および入力ファイルのサイズが含まれます。

  • Unprocessed – バッチジョブで処理されなかったファイルを、ファイルごとのエラーコードとエラーメッセージと共にリスト表示します。

Amazon Comprehend Medical は、バッチジョブ用に指定された出力ディレクトリにこれらのファイルを書き込みます。概要マニフェストファイルは、Manifest_AccountId-Operation-JobId というタイトルのフォルダと共に出力フォルダに書き込まれます。マニフェストフォルダには、成功マニフェストを含む success フォルダと、未処理のファイルマニフェストを含む failed フォルダがあります。以降のセクションでは、マニフェストファイルの構造を示します。

バッチのマニフェストファイル

以下に、バッチのマニフェストファイルの JSON 構造を示します。

{"Summary" : {"Status" : "COMPLETED | FAILED | PARTIAL_SUCCESS | STOPPED", "JobType" : "ICD10CMInference | RxNormInference | SNOMEDCTInference", "InputDataConfiguration" : { "Bucket" : "input bucket", "Path" : "path to files/account ID-job type-job ID" }, "OutputDataConfiguration" : { "Bucket" : "output bucket", "Path" : "path to files" }, "InputFileCount" : number of files in input bucket, "TotalMeteredCharacters" : total characters processed from all files, "UnprocessedFilesCount" : number of files not processed, "SuccessFilesCount" : total number of files processed, "TotalDurationSeconds" : time required for processing, "SuccessfulFilesListLocation" : "path to file", "UnprocessedFilesListLocation" : "path to file", "FailedJobErrorMessage": "error message or if not applicable, The status of the job is completed" } }

成功のマニフェストファイル

以下に、処理が成功したファイルに関する情報が含まれたファイルの JSON 構造を示します。

{ "Files": [{ "Input": "input path/input file name", "Output": "output path/output file name", "InputSize": size in bytes of input file }, { "Input": "input path/input file name", "Output": "output path/output file name", "InputSize": size in bytes of input file }] }

未処理のマニフェストファイル

以下に、未処理のファイルに関する情報が含まれたマニフェストファイルの JSON 構造を示します。

{ "Files" : [ { "Input": "file_name_that_failed", "ErrorCode": "error code for exception", "ErrorMessage": "explanation of the error code and suggestions" }, { ...} ] }