Hochladen von Trainings- und Testdatasets für Custom Speech

Sie benötigen Audio- oder Textdaten, um die Genauigkeit der Spracherkennung von zu testen oder Ihre benutzerdefinierten Modelle zu trainieren. Informationen zu den zum Testen oder Trainieren von Modellen verfügbaren Datentypen finden Sie unter Trainieren und Testen von Datasets.

Tipp

Sie können auch mithilfe des Editors für Onlinetranskriptionen bezeichnete Audiodatasets erstellen und optimieren.

Hochladen von Datasets

Führen Sie die folgenden Schritte aus, um Ihre eigenen Datasets in Speech Studio hochzuladen:

  1. Melden Sie sich in Speech Studio an.

  2. Wählen Sie Custom Speech> Ihr Projektname >Speech-Datasets>Daten hochladen aus.

  3. Wählen Sie die Registerkarte Trainingsdaten oder Testdaten aus.

  4. Wählen Sie einen Datasettyp und dann Weiter aus.

  5. Geben Sie den Speicherort des Datasets an, und wählen Sie dann Weiter aus. Sie können eine lokale Datei auswählen oder einen Remotespeicherort eingeben, z. B. eine URL einer Azure Blob-Instanz. Wenn Sie „Remotestandort“ auswählen und keinen vertrauenswürdigen Sicherheitsmechanismus der Azure-Dienste verwenden, dann sollte der Remotestandort eine URL sein, die mit einer einfachen anonymen GET-Anforderung abgerufen werden kann. Beispielsweise eine SAS-URL oder eine öffentlich zugängliche URL. URLs, die eine zusätzliche Autorisierung erfordern oder eine Benutzerinteraktion erwarten, werden nicht unterstützt.

    Hinweis

    Wenn Sie eine Azure-Blob-URL verwenden, können Sie mithilfe des Sicherheitsmechanismus vertrauenswürdiger Azure-Dienste eine maximale Sicherheit Ihrer Datasetdateien gewährleisten. Sie verwenden die gleichen Techniken wie für die Batchtranskription und einfache Speicherkonto-URLs für Ihre Datasetdateien. Ausführlichere Informationen finden Sie hier.

  6. Geben Sie den Namen und eine Beschreibung des Datasets ein, und wählen Sie dann Weiter aus.

  7. Überprüfen Sie Ihre Einstellungen, und wählen Sie anschließend Speichern und schließen aus.

Nachdem Ihr Dataset hochgeladen wurde, wechseln Sie zur Seite Trainieren benutzerdefinierter Modelle, um ein benutzerdefiniertes Modell zu trainieren.

Anders als bei Speech Studio wählen Sie bei der Speech-CLI und der REST-API für die Spracherkennung beim Upload nicht aus, ob ein Dataset zum Testen oder zum Trainieren verwendet werden soll. Die Verwendung eines Datasets wird beim Trainieren eines Modells oder beim Ausführen eines Tests angegeben.

Die Art des Datasets muss allerdings trotzdem angegeben werden, auch wenn Sie nicht festlegen, ob das Dataset zum Testen oder zum Trainieren verwendet werden soll. Die Art des Datasets wird verwendet, um zu bestimmen, welcher Datasettyp erstellt wird. In manchen Fällen wird eine Datasetart nur zum Testen oder Trainieren verwendet. Dies sollte jedoch nicht als Abhängigkeit verwendet werden. Die Werte vom Typ kind der Speech-CLI und der REST-API entsprechen den Optionen in Speech Studio, wie in der folgenden Tabelle beschrieben:

CLI- und API-Art Speech Studio-Optionen
Akustik Trainingsdaten: Audiodaten + von Menschen beschriftetes Transkript
Testdaten: Transkript (automatische Audiosynthese)
Testdaten: Audiodaten + von Menschen beschriftetes Transkript
Audiodateien Testdaten: Audio
Sprache Trainingsdaten: Nur-Text
LanguageMarkdown Trainingsdaten: Strukturierter Text in Markdownformat
Aussprache Trainingsdaten: Aussprache
OutputFormatting Schulungsdaten: Ausgabeformat

Hinweis

Trainingsdatasets vom Typ „Strukturierter Text im Markdown-Format“ werden in Version 3.0 der REST-API für die Spracherkennung nicht unterstützt. Sie müssen die Version 3.1 der REST-API für die Spracherkennung verwenden. Weitere Informationen finden Sie unter Migrieren von Code von v3.0 zu v3.1 der REST-API.

Verwenden Sie den Befehl spx csr dataset create, um ein Dataset zu erstellen und eine Verbindung mit einem vorhandenen Projekt herzustellen. Erstellen Sie die Anforderungsparameter gemäß den folgenden Anweisungen:

  • Legen Sie den project-Parameter auf die ID eines vorhandenen Projekts fest. Dieser Parameter wird empfohlen, um das Dataset auch in Speech Studio anzeigen und verwalten zu können. Mit dem Befehl spx csr project list können Sie verfügbare Projekte abrufen.

  • Legen Sie den erforderlichen kind-Parameter fest. Für die Art des Datasets sind folgende Werte verfügbar: „Language“ (Sprache), „Acoustic“ (Akustik), „Pronunciation“ (Aussprache) und „AudioFiles“ (Audiodateien).

  • Legen Sie den erforderlichen contentUrl-Parameter fest. Dieser Parameter ist der Speicherort des Datasets. Wenn Sie den Sicherheitsmechanismus der vertrauenswürdigen Azure-Dienste nicht verwenden (siehe nächster Hinweis), dann sollte der Parameter contentUrl eine URL sein, die mit einer einfachen anonymen GET-Anforderung abgerufen werden kann. Beispielsweise eine SAS-URL oder eine öffentlich zugängliche URL. URLs, die eine zusätzliche Autorisierung erfordern oder eine Benutzerinteraktion erwarten, werden nicht unterstützt.

    Hinweis

    Wenn Sie eine Azure-Blob-URL verwenden, können Sie mithilfe des Sicherheitsmechanismus vertrauenswürdiger Azure-Dienste eine maximale Sicherheit Ihrer Datasetdateien gewährleisten. Sie verwenden die gleichen Techniken wie für die Batchtranskription und einfache Speicherkonto-URLs für Ihre Datasetdateien. Ausführlichere Informationen finden Sie hier.

  • Legen Sie den erforderlichen language-Parameter fest. Das Gebietsschema des Datasets muss mit dem Gebietsschema des Projekts übereinstimmen. Das Gebietsschema können Sie später nicht mehr ändern. Der Parameter language der Speech-Befehlszeilenschnittstelle entspricht der locale-Eigenschaft in der JSON-Anforderung und -Antwort.

  • Legen Sie den erforderlichen name-Parameter fest. Dieser Parameter ist der Name, der im Speech Studio angezeigt wird. Der name-Parameter der Speech-CLI entspricht der displayName-Eigenschaft in der JSON-Anforderung und -Antwort.

Mit dem folgenden Beispielbefehl der Speech-CLI wird ein Dataset erstellt und mit einem vorhandenen Projekt verbunden:

spx csr dataset create --api-version v3.1 --kind "Acoustic" --name "My Acoustic Dataset" --description "My Acoustic Dataset Description" --project YourProjectId --content YourContentUrl --language "en-US"

Sie sollten einen Antworttext im folgenden Format erhalten:

{
  "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/datasets/e0ea620b-e8c3-4a26-acb2-95fd0cbc625c",
  "kind": "Acoustic",
  "contentUrl": "https://contoso.com/mydatasetlocation",
  "links": {
    "files": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/datasets/e0ea620b-e8c3-4a26-acb2-95fd0cbc625c/files"
  },
  "project": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/70ccbffc-cafb-4301-aa9f-ef658559d96e"
  },
  "properties": {
    "acceptedLineCount": 0,
    "rejectedLineCount": 0
  },
  "lastActionDateTime": "2022-05-20T14:07:11Z",
  "status": "NotStarted",
  "createdDateTime": "2022-05-20T14:07:11Z",
  "locale": "en-US",
  "displayName": "My Acoustic Dataset",
  "description": "My Acoustic Dataset Description"
}

Die oberste self-Eigenschaft im Antworttext ist der URI des Datasets. Verwenden Sie diesen URI, um Details zum Projekt und zu den Dateien des Datasets abzurufen. Dieser URI wird auch verwendet, um ein Dataset zu aktualisieren oder zu löschen.

Mit dem folgenden Befehl erhalten Sie datasetbezogene Hilfe für die Speech-CLI:

spx help csr dataset

Anders als bei Speech Studio wählen Sie bei der Speech-CLI und der REST-API für die Spracherkennung beim Upload nicht aus, ob ein Dataset zum Testen oder zum Trainieren verwendet werden soll. Die Verwendung eines Datasets wird beim Trainieren eines Modells oder beim Ausführen eines Tests angegeben.

Die Art des Datasets muss allerdings trotzdem angegeben werden, auch wenn Sie nicht festlegen, ob das Dataset zum Testen oder zum Trainieren verwendet werden soll. Die Art des Datasets wird verwendet, um zu bestimmen, welcher Datasettyp erstellt wird. In manchen Fällen wird eine Datasetart nur zum Testen oder Trainieren verwendet. Dies sollte jedoch nicht als Abhängigkeit verwendet werden. Die Werte vom Typ kind der Speech-CLI und der REST-API entsprechen den Optionen in Speech Studio, wie in der folgenden Tabelle beschrieben:

CLI- und API-Art Speech Studio-Optionen
Akustik Trainingsdaten: Audiodaten + von Menschen beschriftetes Transkript
Testdaten: Transkript (automatische Audiosynthese)
Testdaten: Audiodaten + von Menschen beschriftetes Transkript
Audiodateien Testdaten: Audio
Sprache Trainingsdaten: Nur-Text
LanguageMarkdown Trainingsdaten: Strukturierter Text in Markdownformat
Aussprache Trainingsdaten: Aussprache
OutputFormatting Schulungsdaten: Ausgabeformat

Hinweis

Trainingsdatasets vom Typ „Strukturierter Text im Markdown-Format“ werden in Version 3.0 der REST-API für die Spracherkennung nicht unterstützt. Sie müssen die Version 3.1 der REST-API für die Spracherkennung verwenden. Weitere Informationen finden Sie unter Migrieren von Code von v3.0 zu v3.1 der REST-API.

Verwenden Sie den Vorgang Datasets_Create der REST-API für die Spracherkennung, um ein Dataset zu erstellen und mit einem vorhandenen Projekt zu verbinden. Erstellen Sie den Anforderungstext gemäß den folgenden Anweisungen:

  • Legen Sie die project-Eigenschaft auf den URI eines vorhandenen Projekts fest. Diese Eigenschaft wird empfohlen, um das Dataset auch in Speech Studio anzeigen und verwalten zu können. Sie können eine Projects_List-Anforderung zum Abrufen verfügbarer Projekte ausführen.

  • Legen Sie die erforderliche kind-Eigenschaft fest. Für die Art des Datasets sind folgende Werte verfügbar: „Language“ (Sprache), „Acoustic“ (Akustik), „Pronunciation“ (Aussprache) und „AudioFiles“ (Audiodateien).

  • Legen Sie die erforderliche contentUrl-Eigenschaft fest. Diese Eigenschaft ist der Speicherort des Datasets. Wenn Sie den Sicherheitsmechanismus der vertrauenswürdigen Azure-Dienste nicht verwenden (siehe nächster Hinweis), dann sollte der Parameter contentUrl eine URL sein, die mit einer einfachen anonymen GET-Anforderung abgerufen werden kann. Beispielsweise eine SAS-URL oder eine öffentlich zugängliche URL. URLs, die eine zusätzliche Autorisierung erfordern oder eine Benutzerinteraktion erwarten, werden nicht unterstützt.

    Hinweis

    Wenn Sie eine Azure-Blob-URL verwenden, können Sie mithilfe des Sicherheitsmechanismus vertrauenswürdiger Azure-Dienste eine maximale Sicherheit Ihrer Datasetdateien gewährleisten. Sie verwenden die gleichen Techniken wie für die Batchtranskription und einfache Speicherkonto-URLs für Ihre Datasetdateien. Ausführlichere Informationen finden Sie hier.

  • Legen Sie die erforderliche locale-Eigenschaft fest. Das Gebietsschema des Datasets muss mit dem Gebietsschema des Projekts übereinstimmen. Das Gebietsschema können Sie später nicht mehr ändern.

  • Legen Sie die erforderliche displayName-Eigenschaft fest. Diese Eigenschaft ist der Name, der im Speech Studio angezeigt wird.

Erstellen Sie eine HTTP POST-Anforderung mithilfe des URI, wie im folgenden Beispiel gezeigt. Ersetzen Sie YourSubscriptionKey durch Ihren Speech-Ressourcenschlüssel, ersetzen Sie YourServiceRegion durch die Region der Speech-Ressource, und legen Sie die Anforderungstexteigenschaften wie zuvor beschrieben fest.

curl -v -X POST -H "Ocp-Apim-Subscription-Key: YourSubscriptionKey" -H "Content-Type: application/json" -d '{
  "kind": "Acoustic",
  "displayName": "My Acoustic Dataset",
  "description": "My Acoustic Dataset Description",
  "project": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/70ccbffc-cafb-4301-aa9f-ef658559d96e"
  },
  "contentUrl": "https://contoso.com/mydatasetlocation",
  "locale": "en-US",
}'  "https://YourServiceRegion.api.cognitive.microsoft.com/speechtotext/v3.1/datasets"

Sie sollten einen Antworttext im folgenden Format erhalten:

{
  "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/datasets/e0ea620b-e8c3-4a26-acb2-95fd0cbc625c",
  "kind": "Acoustic",
  "contentUrl": "https://contoso.com/mydatasetlocation",
  "links": {
    "files": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/datasets/e0ea620b-e8c3-4a26-acb2-95fd0cbc625c/files"
  },
  "project": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/70ccbffc-cafb-4301-aa9f-ef658559d96e"
  },
  "properties": {
    "acceptedLineCount": 0,
    "rejectedLineCount": 0
  },
  "lastActionDateTime": "2022-05-20T14:07:11Z",
  "status": "NotStarted",
  "createdDateTime": "2022-05-20T14:07:11Z",
  "locale": "en-US",
  "displayName": "My Acoustic Dataset",
  "description": "My Acoustic Dataset Description"
}

Die oberste self-Eigenschaft im Antworttext ist der URI des Datasets. Verwenden Sie diesen URI, um Details zum Projekt und zu den Dateien des Datasets abzurufen. Dieser URI wird auch verwendet, um das Dataset zu aktualisieren oder zu löschen.

Wichtig

Die Verbindung eines Datasets mit einem Custom Speech-Projekt ist nicht erforderlich, um ein benutzerdefiniertes Modell über die REST-API oder die Speech CLI zu trainieren und zu testen. Nicht verbundene Datasets können allerdings nicht zum Trainieren oder Testen in Speech Studio ausgewählt werden.

Nächste Schritte