本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
訓練自訂實體辨識器 (API)
若要建立和訓練自訂實體辨識模型,請使 Amazon Comprehend CreateEntityRecognizerAPI 操作
訓練自訂實體辨識器 AWS Command Line Interface
下列範例示範如何將CreateEntityRecognizer
作業和其他相關聯的 API 與AWS CLI.
這些範例已針對 Unix、Linux 和 macOS 進行格式化。用於 Windows 時,請以插入號 (^) 取代每一行結尾處的 Unix 接續字元斜線 (\)。
使用 create-entity-recognizer
CLI 命令建立自訂實體辨識器。如需有關 input-data-config 參數的資訊,請參閱 Amazon Comprehend API 參考CreateEntityRecognizer中的。
aws comprehend create-entity-recognizer \ --language-code en \ --recognizer-name test-6 \ --data-access-role-arn "arn:aws:iam::
account number
:role/service-role/AmazonComprehendServiceRole-role" \ --input-data-config "EntityTypes=[{Type=PERSON}],Documents={S3Uri=s3://Bucket Name
/Bucket Path
/documents}, Annotations={S3Uri=s3://Bucket Name
/Bucket Path
/annotations}" \ --regionregion
使用 list-entity-recognizers
CLI 命令列出區域中的所有實體識別器。
aws comprehend list-entity-recognizers \ --region
region
使用 describe-entity-recognizer
CLI 命令檢查自訂實體辨識器的 Job 狀態。
aws comprehend describe-entity-recognizer \ --entity-recognizer-arn arn:aws:comprehend:
region
:account number
:entity-recognizer/test-6 \ --regionregion
訓練自訂實體辨識器 AWS SDK for Java
此範例會使用 Java 建立自訂實體辨識器並訓練模型
對於使用 Java Amazon Comprehend 的例子,請參閱 Amazon Comprehend
使用 Python (肉毒桿菌 3) 訓練自訂實體辨識器
實例化博托 3 SDK:
import boto3 import uuid comprehend = boto3.client("comprehend", region_name="
region
")
創建實體識別器:
response = comprehend.create_entity_recognizer( RecognizerName="Recognizer-Name-Goes-Here-{}".format(str(uuid.uuid4())), LanguageCode="en", DataAccessRoleArn="
Role ARN
", InputDataConfig={ "EntityTypes": [ { "Type": "ENTITY_TYPE
" } ], "Documents": { "S3Uri": "s3://Bucket Name
/Bucket Path
/documents" }, "Annotations": { "S3Uri": "s3://Bucket Name
/Bucket Path
/annotations" } } ) recognizer_arn = response["EntityRecognizerArn"]
列出所有識別器:
response = comprehend.list_entity_recognizers()
等待辨識器達到訓練狀態:
while True: response = comprehend.describe_entity_recognizer( EntityRecognizerArn=recognizer_arn ) status = response["EntityRecognizerProperties"]["Status"] if "IN_ERROR" == status: sys.exit(1) if "TRAINED" == status: break time.sleep(10)