View a markdown version of this page

Kategorisieren Sie Text mit Textklassifizierung () Multi-label - Amazon SageMaker KI

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Kategorisieren Sie Text mit Textklassifizierung () Multi-label

Anmerkung

Amazon SageMaker Ground Truth steht neuen Kunden nicht mehr offen. Bestehende Kunden können den Service weiterhin wie gewohnt nutzen. AWS investiert weiterhin in Sicherheits- und Verfügbarkeitsverbesserungen für Ground Truth, aber wir planen nicht, neue Funktionen einzuführen.

Wenn Sie Artikel und Text in mehrere vordefinierte Kategorien einteilen möchten, verwenden Sie den Aufgabentyp für die Multi-Label-Textklassifizierung. Sie können diesen Aufgabentyp beispielsweise verwenden, um mehr als eine im Text vermittelte Emotion zu identifizieren. Die folgenden Abschnitte enthalten Informationen zum Erstellen einer Multi-Label-Textklassifizierungsaufgabe über die Konsole und die API.

Auftragnehmer, die an einer Aufgabe zur Multi-Label-Textklassifizierung arbeiten, sollten alle anwendbaren Bezeichnungen (Label) auswählen, zumindest muss jedoch eine Bezeichnung ausgewählt werden. Beim Erstellen eines Auftrags unter Verwendung dieses Aufgabentyps können Sie bis zu 50 Bezeichnungskategorien angeben.

Amazon SageMaker Ground Truth bietet keine Kategorie „Keine“ für den Fall an, dass keines der Labels zutrifft. Um den Auftragnehmern diese Option zur Verfügung zu stellen, fügen Sie beim Erstellen eines Multi-Label-Textklassifizierungsauftrags eine Bezeichnung wie „Keine“ oder „Sonstiges“ hinzu.

Verwenden Sie den Aufgabentyp Kategorisieren von Text anhand der Textklassifizierung (Single-Label), um Auftragnehmer auf die Auswahl einer einzelnen Bezeichnung für jedes Dokument oder jede Textauswahl zu beschränken.

Wichtig

Wenn Sie manuell eine Eingabemanifestdatei erstellen, verwenden Sie "source", um den Text zu identifizieren, den Sie beschriften möchten. Weitere Informationen finden Sie unter Eingabedaten.

Erstellen Sie einen Label-Job zur Multi-Label Textklassifizierung (Konsole)

Folgen Sie den AnweisungenErstellen eines Kennzeichnungsauftrags (Konsole), um zu erfahren, wie Sie in der Amazon SageMaker AI-Konsole einen Beschriftungsauftrag zur Textklassifizierung mit mehreren Etiketten erstellen. Wählen Sie in Schritt 10 im Dropdownmenü der Aufgabenkategorie die Option Text aus und wählen Sie Textklassifizierung (Multi-label) als Aufgabentyp aus.

Ground Truth stellt für die Labeling-Aufgaben eine Worker-Benutzeroberfläche ähnlich der folgenden bereit. Wenn Sie die Labeling-Aufgabe mit der Konsole erstellen, müssen Sie Anweisungen bereitstellen, damit die Worker die Aufgabe ausführen können, und Kennzeichnungen, aus denen die Worker auswählen können.

Gif, das zeigt, wie Sie in der Amazon SageMaker AI-Konsole einen Beschriftungsauftrag zur Textklassifizierung mit mehreren Etiketten erstellen.

Erstellen Sie einen Multi-Label Textklassifizierungs-Label-Job (API)

Verwenden Sie den SageMaker API-VorgangCreateLabelingJob, um einen Beschriftungsauftrag für die Textklassifizierung mit mehreren Etiketten zu erstellen. Diese API definiert diesen Vorgang für alle AWS SDKs. Eine Liste der sprachspezifischen SDKs, die für diese Operation unterstützt werden, finden Sie im Abschnitt Siehe auch von CreateLabelingJob.

Befolgen Sie diese Anweisungen unter Erstellen eines Kennzeichnungsauftrags (API) und führen Sie die folgenden Schritte aus, während Sie Ihre Anforderung konfigurieren:

  • Pre-annotation Lambda-Funktionen für diesen Aufgabentyp enden mit. PRE-TextMultiClassMultiLabel Informationen zum Lambda-ARN vor der Anmerkung für Ihre Region finden Sie unter. PreHumanTaskLambdaArn

  • Annotation-consolidation Die Lambda-Funktionen für diesen Aufgabentyp enden mit. ACS-TextMultiClassMultiLabel Den Lambda-ARN zur Konsolidierung von Anmerkungen für Ihre Region finden Sie unter. AnnotationConsolidationLambdaArn

Im Folgenden finden Sie ein Beispiel für eine AWS -Python-SDK-(Boto3)-Anforderung zum Erstellen eines Beschriftungsauftrags in der Region USA Ost (Nord-Virginia). Alle Parameter in Rot sollten durch Ihre Spezifikationen und Ressourcen ersetzt werden.

response = client.create_labeling_job( LabelingJobName='example-multi-label-text-classification-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': { 'UiTemplateS3Uri': 's3://bucket/path/custom-worker-task-template.html' }, 'PreHumanTaskLambdaArn': 'arn:aws:lambda::function:PRE-TextMultiClassMultiLabel, 'TaskKeywords': [ 'Text Classification', ], 'TaskTitle': 'Multi-label text classification task', 'TaskDescription': 'Select all labels that apply to the text shown', 'NumberOfHumanWorkersPerDataObject': 123, 'TaskTimeLimitInSeconds': 123, 'TaskAvailabilityLifetimeInSeconds': 123, 'MaxConcurrentTaskCount': 123, 'AnnotationConsolidationConfig': { 'AnnotationConsolidationLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:ACS-TextMultiClassMultiLabel' }, Tags=[ { 'Key': 'string', 'Value': 'string' }, ] )

Erstellen Sie eine Vorlage für die Textklassifizierung Multi-label

Wenn Sie eine Labeling-Aufgabe unter Verwendung der API erstellen, müssen Sie in UiTemplateS3Uri eine Worker-Aufgabenvorlage bereitstellen. Kopieren und ändern Sie die folgende Vorlage. Ändern Sie nur short-instructions, full-instructions und header.

Laden Sie diese Vorlage zu S3 hoch und geben Sie den S3-URI für diese Datei in UiTemplateS3Uri an.

<script src="https://assets.crowd.aws/crowd-html-elements.js"></script> <crowd-form> <crowd-classifier-multi-select name="crowd-classifier-multi-select" categories="{{ task.input.labels | to_json | escape }}" header="Please identify all classes in the below text" > <classification-target style="white-space: pre-wrap"> {{ task.input.taskObject }} </classification-target> <full-instructions header="Classifier instructions"> <ol><li><strong>Read</strong> the text carefully.</li> <li><strong>Read</strong> the examples to understand more about the options.</li> <li><strong>Choose</strong> the appropriate labels that best suit the text.</li></ol> </full-instructions> <short-instructions> <p>Enter description of the labels that workers have to choose from</p> <p><br></p> <p><br></p><p>Add examples to help workers understand the label</p> <p><br></p><p><br></p><p><br></p><p><br></p><p><br></p> </short-instructions> </crowd-classifier-multi-select> </crowd-form>

Informationen zum Erstellen einer benutzerdefinierten Vorlage finden Sie unter Benutzerdefinierte Kennzeichnung-Workflows.

Multi-label Ausgabedaten für die Textklassifizierung

Nachdem Sie einen Beschriftungsauftrag für die Multi-Beschriftung-Textklassifizierung erstellt haben, befinden sich die Ausgabedaten in dem im S3OutputPath Parameter angegebenen Amazon-S3-Bucket, wenn Sie die API verwenden, oder im Feld Speicherort des Ausgabedatensatzes im Auftragsübersicht der Konsole.

Um mehr über die von Ground Truth erzeugte Ausgabemanifestdatei und die Dateistruktur zu erfahren, die Ground Truth zum Speichern der Ausgabedaten verwendet, siehe Ausgabedaten von Kennzeichnungsaufträgen.

Ein Beispiel für Ausgabemanifestdateien für einen Labeling-Auftrag für die Multi-Label-Textklassifizierung finden Sie unter Multi-label Ausgabe des Klassifizierungsauftrags.