Riconoscimento delle entità denominate - Amazon SageMaker

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Riconoscimento delle entità denominate

Per estrarre informazioni da testo non strutturato e classificarlo in categorie predefinite, utilizza un'attività di etichettatura di Amazon SageMaker Ground Truth denominata entity recognition (NER). Tradizionalmente, NER prevede l'analisi dei dati di testo per individuare frasi nominali, chiamate entità denominate, e la classificazione di ciascuna con un'etichetta, ad esempio «persona», «organizzazione» o «marchio». Puoi estendere questa attività per etichettare campate di testo più lunghe e classificare le sequenze con etichette predefinite specificate.

Quando viene assegnato un processo di etichettatura di riconoscimento delle entità denominate, i worker applicano le etichette a parole o frasi specifiche all'interno di un blocco di testo più grande. Scelgono un'etichetta, quindi la applicano utilizzando il cursore per evidenziare la parte del testo a cui si applica l'etichetta. Lo strumento di riconoscimento delle entità denominate di Ground Truth supporta annotazioni sovrapposte, selezione di etichette contestuali e selezione di più etichette per una singola evidenziazione. Inoltre, i worker possono utilizzare la tastiera per selezionare rapidamente le etichette.

Puoi creare un processo di etichettatura di riconoscimento di entità denominate utilizzando la sezione Ground Truth della SageMaker console Amazon o l'CreateLabelingJoboperazione.

Importante

Se crei manualmente un file manifest di input, usa "source" per identificare il testo che desiderate etichettare. Per ulteriori informazioni, consulta Dati di input.

Creazione di un processo di etichettatura di riconoscimento delle entità denominate (Console)

Puoi seguire le istruzioni Creazione di un processo di etichettatura (console) per imparare a creare un processo di etichettatura con riconoscimento di entità denominate nella SageMaker console. Nella fase 10, scegli Testo dal menu a discesa Categoria Attività e scegli Riconoscimento delle entità denominate come tipo di attività.

Ground Truth fornisce un'interfaccia utente di lavoro simile alla seguente per le attività di etichettatura. Quando si crea il processo di etichettatura con la console, si specificano le istruzioni per consentire ai worker di completare il processo e le etichette tra cui i worker possono scegliere.

Gif che mostra come creare un processo di etichettatura con riconoscimento di entità denominate nella console. SageMaker

Creare un processo di etichettatura con riconoscimento di entità denominate () API

Per creare un processo di etichettatura con riconoscimento di entità denominate, utilizzando l' SageMaker APIoperazione. CreateLabelingJob Questo API definisce questa operazione per tutti AWS SDKs. Per visualizzare un elenco delle lingue specifiche SDKs supportate per questa operazione, consultate la sezione Vedere anche di. CreateLabelingJob

Segui queste istruzioni su Creazione di un processo di etichettatura (API) ed effettua le seguenti operazioni durante la configurazione della richiesta:

  • Le funzioni Lambda di pre-annotazione per questo tipo di attività terminano con PRE-NamedEntityRecognition. Per trovare la pre-annotazione Lambda ARN per la tua regione, consulta. PreHumanTaskLambdaArn

  • Le funzioni Lambda di consolidamento delle annotazioni per questo tipo di attività terminano con ACS-NamedEntityRecognition. Per trovare la ARN Lambda di consolidamento delle annotazioni per la tua regione, consulta. AnnotationConsolidationLambdaArn

  • È necessario fornire quanto segue per: ARN HumanTaskUiArn

    arn:aws:sagemaker:aws-region:394669845002:human-task-ui/NamedEntityRecognition

    Sostituisci aws-region con la AWS regione utilizzata per creare il lavoro di etichettatura. Ad esempio, usa us-west-1 se crei un processo di etichettatura negli Stati Uniti occidentali (California settentrionale).

  • Fornisci le istruzioni per l'operatore nel file di configurazione della categoria di etichette utilizzando il parametro instructions. È possibile utilizzare una stringa o un linguaggio di HTML markup nei campi shortInstruction andfullInstruction. Per ulteriori dettagli, consulta Fornisci le istruzioni per il worker in un file di configurazione della categoria di etichette.

    "instructions": {"shortInstruction":"<h1>Add header</h1><p>Add Instructions</p>", "fullInstruction":"<p>Add additional instructions.</p>"}

Di seguito è riportato un esempio di richiesta AWS Python SDK (Boto3) per creare un processo di etichettatura nella regione Stati Uniti orientali (Virginia settentrionale). Tutti i parametri in rosso devono essere sostituiti con le specifiche e le risorse.

response = client.create_labeling_job( LabelingJobName='example-ner-labeling-job', LabelAttributeName='label', InputConfig={ 'DataSource': { 'S3DataSource': { 'ManifestS3Uri': 's3://bucket/path/manifest-with-input-data.json' } }, 'DataAttributes': { 'ContentClassifiers': [ 'FreeOfPersonallyIdentifiableInformation'|'FreeOfAdultContent', ] } }, OutputConfig={ 'S3OutputPath': 's3://bucket/path/file-to-store-output-data', 'KmsKeyId': 'string' }, RoleArn='arn:aws:iam::*:role/*', LabelCategoryConfigS3Uri='s3://bucket/path/label-categories.json', StoppingConditions={ 'MaxHumanLabeledObjectCount': 123, 'MaxPercentageOfInputDatasetLabeled': 123 }, HumanTaskConfig={ 'WorkteamArn': 'arn:aws:sagemaker:region:*:workteam/private-crowd/*', 'UiConfig': { 'HumanTaskUiArn': 'arn:aws:sagemaker:us-east-1:394669845002:human-task-ui/NamedEntityRecognition' }, 'PreHumanTaskLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:PRE-NamedEntityRecognition', 'TaskKeywords': [ 'Named entity Recognition', ], 'TaskTitle': 'Named entity Recognition task', 'TaskDescription': 'Apply the labels provided to specific words or phrases within the larger text block.', 'NumberOfHumanWorkersPerDataObject': 1, 'TaskTimeLimitInSeconds': 28800, 'TaskAvailabilityLifetimeInSeconds': 864000, 'MaxConcurrentTaskCount': 1000, 'AnnotationConsolidationConfig': { 'AnnotationConsolidationLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:ACS-NamedEntityRecognition' }, Tags=[ { 'Key': 'string', 'Value': 'string' }, ] )

Fornisci le istruzioni per il worker in un file di configurazione della categoria di etichette

Devi fornire le istruzioni per l'operatore nel file di configurazione della categoria di etichette che identifichi con il parametro LabelCategoryConfigS3Uri in CreateLabelingJob. Puoi utilizzare queste istruzioni per fornire dettagli sull'attività che desideri che i worker svolgano e aiutarli a utilizzare lo strumento in modo efficiente.

Fornisci istruzioni brevi e lunghe utilizzando shortInstruction e fullInstruction nel parametro instructions rispettivamente. Per ulteriori informazioni su tali tipi di istruzioni, consulta Creazione di pagine di istruzione.

Di seguito è riportato un esempio di file di configurazione della categoria di etichette con istruzioni che possono essere utilizzate per un processo di etichettatura di riconoscimento delle entità denominate.

{ "document-version": "2018-11-28", "labels": [ { "label": "label1", "shortDisplayName": "L1" }, { "label": "label2", "shortDisplayName": "L2" }, { "label": "label3", "shortDisplayName": "L3" }, { "label": "label4", "shortDisplayName": "L4" }, { "label": "label5", "shortDisplayName": "L5" } ], "instructions": { "shortInstruction": "<p>Enter description of the labels that workers have to choose from</p><br><p>Add examples to help workers understand the label</p>", "fullInstruction": "<ol> <li><strong>Read</strong> the text carefully.</li> <li><strong>Highlight</strong> words, phrases, or sections of the text.</li> <li><strong>Choose</strong> the label that best matches what you have highlighted.</li> <li>To <strong>change</strong> a label, choose highlighted text and select a new label.</li> <li>To <strong>remove</strong> a label from highlighted text, choose the X next to the abbreviated label name on the highlighted text.</li> <li>You can select all of a previously highlighted text, but not a portion of it.</li> </ol>" } }

Dati di output di riconoscimento delle entità denominate

Dopo aver creato un processo di etichettatura con riconoscimento di entità denominate, i dati di output si troveranno nel bucket Amazon S3 specificato nel S3OutputPath parametro quando si utilizza API il campo Output dataset location della sezione Job overview della console.

Per ulteriori informazioni sul file manifest di output generato da Ground Truth e sulla struttura di file utilizzata da Ground Truth per archiviare i dati di output, consulta Dati di output.