Custom Speech 모델의 인식 품질 테스트

Speech Studio에서 Custom Speech 모델의 인식 품질을 검사할 수 있습니다. 업로드된 오디오를 재생하여 제공된 인식 결과가 올바른지 확인할 수 있습니다. 테스트가 성공적으로 생성되면 모델이 오디오 데이터 세트를 어떻게 전사했는지 확인하거나 두 모델의 결과를 나란히 비교할 수 있습니다.

병렬 모델 테스트는 애플리케이션에 가장 적합한 음성 인식 모델의 유효성을 검사하는 데 유용합니다. 대화 기록 데이터 세트 입력이 필요한 정확도의 객관적인 측정값은 정량적으로 모델 테스트를 참조하세요.

Important

테스트할 때 시스템에서 기록을 수행합니다. 서비스 제공 및 구독 수준에 따라 가격이 달라지기 때문에 이 점을 염두에 두어야 합니다. 항상 공식 Azure AI 서비스 가격에서 최신 세부 정보를 참조하세요.

테스트 만들기

지침에 따라 테스트를 만듭니다.

  1. Speech Studio에 로그인합니다.

  2. Speech Studio>Custom speech로 이동하여 목록에서 프로젝트 이름을 선택합니다.

  3. 테스트 모델>새 테스트 만들기를 선택합니다.

  4. 품질 검사(오디오 전용 데이터)>다음을 선택합니다.

  5. 테스트에 사용할 오디오 데이터 세트를 선택하고 다음을 선택합니다. 사용 가능한 데이터 세트가 없으면 설정을 취소한 다음 음성 데이터 세트 메뉴로 이동하여 데이터 세트를 업로드합니다.

    데이터 세트 대화 상자를 선택하는 스크린샷

  6. 정확도를 평가하고 비교하려면 모델을 하나 또는 두 개 선택합니다.

  7. 테스트 이름과 설명을 입력하고 다음을 선택합니다.

  8. 설정을 검토한 다음, 저장 후 닫기를 선택합니다.

테스트를 만들려면 spx csr evaluation create 명령을 사용합니다. 다음 지침에 따라 요청 매개 변수를 생성합니다.

  • project 매개 변수를 기존 프로젝트의 ID로 설정합니다. 이 매개 변수는 Speech Studio에서도 테스트를 볼 수 있도록 하기 위해 권장됩니다. spx csr project list 명령을 실행하여 사용 가능한 프로젝트를 가져올 수 있습니다.
  • 필수 model1 매개 변수를 테스트하려는 모델의 ID로 설정합니다.
  • 필수 model2 매개 변수를 테스트하려는 다른 모델의 ID로 설정합니다. 두 모델을 비교하지 않으려면 model1model2 둘 다에 대해 동일한 모델을 사용합니다.
  • 필수 dataset 매개 변수를 테스트에 사용할 데이터 세트의 ID로 설정합니다.
  • language 매개 변수를 설정합니다. 그렇지 않으면 Speech CLI는 기본적으로 "en-US"로 설정됩니다. 이 매개 변수는 데이터 세트 콘텐츠의 로캘이어야 합니다. 로캘은 나중에 변경할 수 없습니다. Speech CLI language 매개 변수는 JSON 요청 및 응답의 locale 속성에 해당합니다.
  • 필수 name 매개 변수를 설정합니다. 이 매개 변수는 Speech Studio에 표시되는 이름입니다. Speech CLI name 매개 변수는 JSON 요청 및 응답의 displayName 속성에 해당합니다.

다음은 테스트를 만드는 Speech CLI 명령의 예입니다.

spx csr evaluation create --api-version v3.1 --project 9f8c4cbb-f9a5-4ec1-8bb0-53cfa9221226 --dataset be378d9d-a9d7-4d4a-820a-e0432e8678c7 --model1 ff43e922-e3e6-4bf0-8473-55c08fd68048 --model2 1aae1070-7972-47e9-a977-87e3b05c457d --name "My Inspection" --description "My Inspection Description"

응답 본문은 다음 형식으로 표시되어야 합니다.

{
  "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/evaluations/8bfe6b05-f093-4ab4-be7d-180374b751ca",
  "model1": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/ff43e922-e3e6-4bf0-8473-55c08fd68048"
  },
  "model2": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/base/1aae1070-7972-47e9-a977-87e3b05c457d"
  },
  "dataset": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/datasets/be378d9d-a9d7-4d4a-820a-e0432e8678c7"
  },
  "transcription2": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions/6eaf6a15-6076-466a-83d4-a30dba78ca63"
  },
  "transcription1": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions/0c5b1630-fadf-444d-827f-d6da9c0cf0c3"
  },
  "project": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/9f8c4cbb-f9a5-4ec1-8bb0-53cfa9221226"
  },
  "links": {
    "files": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/evaluations/8bfe6b05-f093-4ab4-be7d-180374b751ca/files"
  },
  "properties": {
    "wordErrorRate2": -1.0,
    "wordErrorRate1": -1.0,
    "sentenceErrorRate2": -1.0,
    "sentenceCount2": -1,
    "wordCount2": -1,
    "correctWordCount2": -1,
    "wordSubstitutionCount2": -1,
    "wordDeletionCount2": -1,
    "wordInsertionCount2": -1,
    "sentenceErrorRate1": -1.0,
    "sentenceCount1": -1,
    "wordCount1": -1,
    "correctWordCount1": -1,
    "wordSubstitutionCount1": -1,
    "wordDeletionCount1": -1,
    "wordInsertionCount1": -1
  },
  "lastActionDateTime": "2022-05-20T16:42:43Z",
  "status": "NotStarted",
  "createdDateTime": "2022-05-20T16:42:43Z",
  "locale": "en-US",
  "displayName": "My Inspection",
  "description": "My Inspection Description"
}

응답 본문의 최상위 self 속성은 평가의 URI입니다. 이 URI를 사용하여 프로젝트 및 테스트 결과에 대한 세부 정보를 가져옵니다. 또한 이 URI를 사용하여 평가를 업데이트하거나 삭제합니다.

평가에 대한 Speech CLI 도움말을 보려면 다음 명령을 실행합니다.

spx help csr evaluation

테스트를 만들려면 음성 텍스트 변환 REST API평가_만들기 작업을 사용하세요. 다음 지침에 따라 요청 본문을 생성합니다.

  • project 속성을 기존 프로젝트의 URI로 설정합니다. 이 속성은 Speech Studio에서도 테스트를 볼 수 있도록 하기 위해 권장됩니다. Projects_List 요청을 수행하여 사용 가능한 프로젝트를 가져올 수 있습니다.
  • 필수 model1 속성을 테스트하려는 모델의 URI로 설정합니다.
  • 필수 model2 속성을 테스트하려는 다른 모델의 URI로 설정합니다. 두 모델을 비교하지 않으려면 model1model2 둘 다에 대해 동일한 모델을 사용합니다.
  • 필수 dataset 속성을 테스트에 사용할 데이터 세트의 URI로 설정합니다.
  • 필수 locale 속성을 설정합니다. 이 속성은 데이터 세트 콘텐츠의 로캘이어야 합니다. 로캘은 나중에 변경할 수 없습니다.
  • 필수 displayName 속성을 설정합니다. 이 속성은 Speech Studio에 표시되는 이름입니다.

다음 예제와 같이 URI를 사용하여 HTTP POST 요청을 만듭니다. YourSubscriptionKey를 Speech 리소스 키로 바꾸고, YourServiceRegion을 Speech 리소스 영역으로 바꾸고, 앞에서 설명한 대로 요청 본문 속성을 설정합니다.

curl -v -X POST -H "Ocp-Apim-Subscription-Key: YourSubscriptionKey" -H "Content-Type: application/json" -d '{
  "model1": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/ff43e922-e3e6-4bf0-8473-55c08fd68048"
  },
  "model2": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/base/1aae1070-7972-47e9-a977-87e3b05c457d"
  },
  "dataset": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/datasets/be378d9d-a9d7-4d4a-820a-e0432e8678c7"
  },
  "project": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/9f8c4cbb-f9a5-4ec1-8bb0-53cfa9221226"
  },
  "displayName": "My Inspection",
  "description": "My Inspection Description",
  "locale": "en-US"
}'  "https://YourServiceRegion.api.cognitive.microsoft.com/speechtotext/v3.1/evaluations"

응답 본문은 다음 형식으로 표시되어야 합니다.

{
  "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/evaluations/8bfe6b05-f093-4ab4-be7d-180374b751ca",
  "model1": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/ff43e922-e3e6-4bf0-8473-55c08fd68048"
  },
  "model2": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/base/1aae1070-7972-47e9-a977-87e3b05c457d"
  },
  "dataset": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/datasets/be378d9d-a9d7-4d4a-820a-e0432e8678c7"
  },
  "transcription2": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions/6eaf6a15-6076-466a-83d4-a30dba78ca63"
  },
  "transcription1": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions/0c5b1630-fadf-444d-827f-d6da9c0cf0c3"
  },
  "project": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/9f8c4cbb-f9a5-4ec1-8bb0-53cfa9221226"
  },
  "links": {
    "files": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/evaluations/8bfe6b05-f093-4ab4-be7d-180374b751ca/files"
  },
  "properties": {
    "wordErrorRate2": -1.0,
    "wordErrorRate1": -1.0,
    "sentenceErrorRate2": -1.0,
    "sentenceCount2": -1,
    "wordCount2": -1,
    "correctWordCount2": -1,
    "wordSubstitutionCount2": -1,
    "wordDeletionCount2": -1,
    "wordInsertionCount2": -1,
    "sentenceErrorRate1": -1.0,
    "sentenceCount1": -1,
    "wordCount1": -1,
    "correctWordCount1": -1,
    "wordSubstitutionCount1": -1,
    "wordDeletionCount1": -1,
    "wordInsertionCount1": -1
  },
  "lastActionDateTime": "2022-05-20T16:42:43Z",
  "status": "NotStarted",
  "createdDateTime": "2022-05-20T16:42:43Z",
  "locale": "en-US",
  "displayName": "My Inspection",
  "description": "My Inspection Description"
}

응답 본문의 최상위 self 속성은 평가의 URI입니다. 이 URI를 사용하여 평가의 프로젝트 및 테스트 결과에 대한 세부 정보를 가져옵니다. 또한 이 URI를 사용하여 평가를 업데이트하거나 삭제합니다.

테스트 결과 가져오기

테스트 결과를 가져오고, 각 모델에 대한 대화 기록 결과와 비교하여 오디오 데이터 세트를 검사해야 합니다.

다음 단계에 따라 테스트 결과를 얻습니다.

  1. Speech Studio에 로그인합니다.
  2. 사용자 지정 음성> 내 프로젝트 이름 >테스트 모델을 선택합니다.
  3. 테스트 이름으로 링크를 선택합니다.
  4. ‘성공’으로 설정된 상태로 테스트가 완료되면 테스트된 각 모델에 대한 WER 번호가 포함된 결과가 표시됩니다.

이 페이지에는 제출된 데이터 세트의 대화 내용 기록과 함께 데이터 세트의 모든 발화와 인식 결과가 나열됩니다. 삽입, 삭제 및 대체를 포함한 다양한 오류 유형을 전환할 수 있습니다. 오디오를 듣고 각 열의 인식 결과를 비교하면 요구 사항을 충족하는 모델 및 더 많은 학습 및 개선이 필요한 모델을 결정할 수 있습니다.

테스트 결과를 얻으려면 spx csr evaluation status 명령을 사용합니다. 다음 지침에 따라 요청 매개 변수를 생성합니다.

  • 필수 evaluation 매개 변수를 테스트 결과를 가져오려는 평가의 ID로 설정합니다.

테스트 결과를 가져오는 Speech CLI 명령의 예는 다음과 같습니다.

spx csr evaluation status --api-version v3.1 --evaluation 8bfe6b05-f093-4ab4-be7d-180374b751ca

모델, 오디오 데이터 세트, 대화 기록 및 자세한 내용은 응답 본문에 반환됩니다.

응답 본문은 다음 형식으로 표시되어야 합니다.

{
	"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/evaluations/8bfe6b05-f093-4ab4-be7d-180374b751ca",
	"model1": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/ff43e922-e3e6-4bf0-8473-55c08fd68048"
	},
	"model2": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/base/1aae1070-7972-47e9-a977-87e3b05c457d"
	},
	"dataset": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/datasets/be378d9d-a9d7-4d4a-820a-e0432e8678c7"
	},
	"transcription2": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions/6eaf6a15-6076-466a-83d4-a30dba78ca63"
	},
	"transcription1": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions/0c5b1630-fadf-444d-827f-d6da9c0cf0c3"
	},
	"project": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/9f8c4cbb-f9a5-4ec1-8bb0-53cfa9221226"
	},
	"links": {
		"files": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/evaluations/8bfe6b05-f093-4ab4-be7d-180374b751ca/files"
	},
	"properties": {
		"wordErrorRate2": 4.62,
		"wordErrorRate1": 4.6,
		"sentenceErrorRate2": 66.7,
		"sentenceCount2": 3,
		"wordCount2": 173,
		"correctWordCount2": 166,
		"wordSubstitutionCount2": 7,
		"wordDeletionCount2": 0,
		"wordInsertionCount2": 1,
		"sentenceErrorRate1": 66.7,
		"sentenceCount1": 3,
		"wordCount1": 174,
		"correctWordCount1": 166,
		"wordSubstitutionCount1": 7,
		"wordDeletionCount1": 1,
		"wordInsertionCount1": 0
	},
	"lastActionDateTime": "2022-05-20T16:42:56Z",
	"status": "Succeeded",
	"createdDateTime": "2022-05-20T16:42:43Z",
	"locale": "en-US",
	"displayName": "My Inspection",
	"description": "My Inspection Description"
}

평가에 대한 Speech CLI 도움말을 보려면 다음 명령을 실행합니다.

spx help csr evaluation

테스트 결과를 얻으려면 먼저 음성 텍스트 변환 REST API평가_가져오기 작업을 사용하세요.

다음 예제와 같이 URI를 사용하여 HTTP GET 요청을 만듭니다. YourEvaluationId를 평가 ID로 바꾸고, YourSubscriptionKey를 음성 리소스 키로 바꾸고, YourServiceRegion을 음성 리소스 지역으로 바꿉니다.

curl -v -X GET "https://YourServiceRegion.api.cognitive.microsoft.com/speechtotext/v3.1/evaluations/YourEvaluationId" -H "Ocp-Apim-Subscription-Key: YourSubscriptionKey"

모델, 오디오 데이터 세트, 대화 기록 및 자세한 내용은 응답 본문에 반환됩니다.

응답 본문은 다음 형식으로 표시되어야 합니다.

{
	"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/evaluations/8bfe6b05-f093-4ab4-be7d-180374b751ca",
	"model1": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/ff43e922-e3e6-4bf0-8473-55c08fd68048"
	},
	"model2": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/base/1aae1070-7972-47e9-a977-87e3b05c457d"
	},
	"dataset": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/datasets/be378d9d-a9d7-4d4a-820a-e0432e8678c7"
	},
	"transcription2": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions/6eaf6a15-6076-466a-83d4-a30dba78ca63"
	},
	"transcription1": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions/0c5b1630-fadf-444d-827f-d6da9c0cf0c3"
	},
	"project": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/9f8c4cbb-f9a5-4ec1-8bb0-53cfa9221226"
	},
	"links": {
		"files": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/evaluations/8bfe6b05-f093-4ab4-be7d-180374b751ca/files"
	},
	"properties": {
		"wordErrorRate2": 4.62,
		"wordErrorRate1": 4.6,
		"sentenceErrorRate2": 66.7,
		"sentenceCount2": 3,
		"wordCount2": 173,
		"correctWordCount2": 166,
		"wordSubstitutionCount2": 7,
		"wordDeletionCount2": 0,
		"wordInsertionCount2": 1,
		"sentenceErrorRate1": 66.7,
		"sentenceCount1": 3,
		"wordCount1": 174,
		"correctWordCount1": 166,
		"wordSubstitutionCount1": 7,
		"wordDeletionCount1": 1,
		"wordInsertionCount1": 0
	},
	"lastActionDateTime": "2022-05-20T16:42:56Z",
	"status": "Succeeded",
	"createdDateTime": "2022-05-20T16:42:43Z",
	"locale": "en-US",
	"displayName": "My Inspection",
	"description": "My Inspection Description"
}

대화 기록을 오디오와 비교

테스트된 각 모델의 대화 기록 출력을 오디오 입력 데이터 세트와 비교해서 검사할 수 있습니다. 테스트에 두 모델을 포함하는 경우 대화 기록 품질을 나란히 비교할 수 있습니다.

대화 기록의 품질을 검토하려면:

  1. Speech Studio에 로그인합니다.
  2. 사용자 지정 음성> 내 프로젝트 이름 >테스트 모델을 선택합니다.
  3. 테스트 이름으로 링크를 선택합니다.
  4. 모델에서 해당 대화 기록을 읽는 동안 오디오 파일을 재생합니다.

테스트 데이터 세트에 여러 오디오 파일이 포함된 경우 테이블에 여러 행이 표시됩니다. 테스트에 두 모델을 포함하면 대화 기록이 나란히 열에 표시됩니다. 모델 간의 대화 기록 차이는 파란색 텍스트 글꼴로 표시됩니다.

두 모델의 대화 기록 비교 스크린샷

테스트된 오디오 테스트 데이터 세트, 대화 기록 및 모델이 테스트 결과에 반환됩니다. 단일 모델만 테스트한 경우 model1 값이 model2와 일치하고 transcription1 값이 transcription2와 일치합니다.

대화 기록의 품질을 검토하려면:

  1. 복사본이 아직 없는 경우 오디오 테스트 데이터 세트를 다운로드합니다.
  2. 출력 대화 기록을 다운로드합니다.
  3. 모델에서 해당 대화 기록을 읽는 동안 오디오 파일을 재생합니다.

두 모델 간의 품질을 비교하는 경우 각 모델의 대화 기록 간 차이에 특히 주의해야 합니다.

테스트된 오디오 테스트 데이터 세트, 대화 기록 및 모델이 테스트 결과에 반환됩니다. 단일 모델만 테스트한 경우 model1 값이 model2와 일치하고 transcription1 값이 transcription2와 일치합니다.

대화 기록의 품질을 검토하려면:

  1. 복사본이 아직 없는 경우 오디오 테스트 데이터 세트를 다운로드합니다.
  2. 출력 대화 기록을 다운로드합니다.
  3. 모델에서 해당 대화 기록을 읽는 동안 오디오 파일을 재생합니다.

두 모델 간의 품질을 비교하는 경우 각 모델의 대화 기록 간 차이에 특히 주의해야 합니다.

다음 단계