Custom Speech 프로젝트 만들기

Custom Speech 프로젝트에는 모델, 학습, 테스트 데이터 집합, 배포 엔드포인트가 포함됩니다. 각 프로젝트는 로캘과 관련이 있습니다. 예를 들어 미국 영어에 대한 프로젝트를 만들 수 있습니다.

프로젝트 만들기

Custom Speech 프로젝트를 작성하려면 다음 단계를 수행합니다.

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

  2. 작업할 구독 및 음성 리소스를 선택합니다.

    Important

    오디오 데이터를 사용하여 사용자 지정 모델을 학습하는 경우 오디오 데이터 학습을 위한 전용 하드웨어가 있는 음성 리소스 지역을 선택합니다. 자세한 내용은 지역 표의 각주를 참조하세요.

  3. 사용자 지정 음성>새 프로젝트 만들기를 선택합니다.

  4. 마법사에서 제공하는 지침에 따라 프로젝트를 만듭니다.

이름으로 새 프로젝트를 선택하거나 프로젝트로 이동을 선택합니다. 왼쪽 패널에 음성 데이터 집합, 사용자 지정 모델 학습, 모델 테스트, 배포 모델과 같은 메뉴 항목이 표시됩니다.

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

  • 필수 language 매개 변수를 설정합니다. 프로젝트 및 포함된 데이터 세트의 로캘은 동일해야 합니다. 로캘은 나중에 변경할 수 없습니다. Speech CLI language 매개 변수는 JSON 요청 및 응답의 locale 속성에 해당합니다.
  • 필수 name 매개 변수를 설정합니다. 이는 Speech Studio에 표시되는 이름입니다. Speech CLI name 매개 변수는 JSON 요청 및 응답의 displayName 속성에 해당합니다.

다음은 프로젝트를 만드는 Speech CLI 명령의 예입니다.

spx csr project create --api-version v3.1 --name "My Project" --description "My Project Description" --language "en-US"

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

{
  "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/1cdfa276-0f9d-425b-a942-5f2be93017ed",
  "links": {
    "evaluations": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/1cdfa276-0f9d-425b-a942-5f2be93017ed/evaluations",
    "datasets": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/1cdfa276-0f9d-425b-a942-5f2be93017ed/datasets",
    "models": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/1cdfa276-0f9d-425b-a942-5f2be93017ed/models",
    "endpoints": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/1cdfa276-0f9d-425b-a942-5f2be93017ed/endpoints",
    "transcriptions": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/1cdfa276-0f9d-425b-a942-5f2be93017ed/transcriptions"       
  },
  "properties": {
    "datasetCount": 0,
    "evaluationCount": 0,
    "modelCount": 0,
    "transcriptionCount": 0,
    "endpointCount": 0
  },
  "createdDateTime": "2022-05-17T22:15:18Z",
  "locale": "en-US",
  "displayName": "My Project",
  "description": "My Project Description"
}

응답 본문의 최상위 self 속성은 프로젝트의 URI입니다. 이 URI를 사용하여 프로젝트의 평가, 데이터 세트, 모델, 엔드포인트 및 전사에 대한 세부 정보를 가져옵니다. 또한 이 URI를 사용하여 프로젝트를 업데이트하거나 삭제합니다.

프로젝트에 대한 Speech CLI 도움말을 보려면 다음 명령을 실행합니다.

spx help csr project

프로젝트를 만들려면 음성 텍스트 변환 REST APIProject_Create 작업을 사용합니다. 다음 지침에 따라 요청 본문을 생성합니다.

  • 필수 locale 속성을 설정합니다. 이 속성은 포함된 데이터 세트의 로캘이어야 합니다. 로캘은 나중에 변경할 수 없습니다.
  • 필수 displayName 속성을 설정합니다. 이는 Speech Studio에 표시되는 프로젝트 이름입니다.

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

curl -v -X POST -H "Ocp-Apim-Subscription-Key: YourSubscriptionKey" -H "Content-Type: application/json" -d '{
  "displayName": "My Project",
  "description": "My Project Description",
  "locale": "en-US"
} '  "https://YourServiceRegion.api.cognitive.microsoft.com/speechtotext/v3.1/projects"

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

{
  "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/1cdfa276-0f9d-425b-a942-5f2be93017ed",
  "links": {
    "evaluations": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/1cdfa276-0f9d-425b-a942-5f2be93017ed/evaluations",
    "datasets": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/1cdfa276-0f9d-425b-a942-5f2be93017ed/datasets",
    "models": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/1cdfa276-0f9d-425b-a942-5f2be93017ed/models",
    "endpoints": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/1cdfa276-0f9d-425b-a942-5f2be93017ed/endpoints",
    "transcriptions": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/1cdfa276-0f9d-425b-a942-5f2be93017ed/transcriptions"       
  },
  "properties": {
    "datasetCount": 0,
    "evaluationCount": 0,
    "modelCount": 0,
    "transcriptionCount": 0,
    "endpointCount": 0
  },
  "createdDateTime": "2022-05-17T22:15:18Z",
  "locale": "en-US",
  "displayName": "My Project",
  "description": "My Project Description"
}

응답 본문의 최상위 self 속성은 프로젝트의 URI입니다. 이 URI를 사용하여 프로젝트의 평가, 데이터 세트, 모델, 엔드포인트 및 전사에 대한 세부 정보를 가져옵니다. 또한 이 URI를 사용하여 프로젝트를 업데이트하거나 삭제합니다.

모델 선택

Custom Speech 모델을 사용하는 방법에는 몇 가지가 있습니다.

  • 기본 모델은 다양한 시나리오에 대해 기본 모델에서 정확한 음성 인식을 제공합니다. 베이스 모델은 정확성과 품질을 개선하기 위해 주기적으로 업데이트됩니다. 기본 모델을 사용하는 경우 최신 기본 모델을 사용하는 것이 좋습니다. 필요한 사용자 지정 기능을 이전 모델에서만 사용할 수 있는 경우 이전 기본 모델을 선택할 수 있습니다.
  • 사용자 지정 모델은 기본 모델을 보강하여 사용자 지정 도메인의 모든 영역에서 공유되는 도메인별 어휘를 포함합니다.
  • 사용자 지정 도메인에 각각 특정 어휘가 있는 여러 영역이 있는 경우 여러 사용자 지정 모델을 사용할 수 있습니다.

기본 모델이 충분할지 확인하는 한 가지 권장 방법은 기본 모델에서 생성된 전사를 분석하고 같은 오디오에 대해 사람이 생성한 대본과 비교하는 방식입니다. 기록을 비교하고 WER(단어 오류율) 점수를 얻을 수 있습니다. WER 점수가 높은 경우 잘못 식별된 단어를 인식하도록 사용자 지정 모델을 학습하는 것이 좋습니다.

어휘가 도메인 영역에 따라 달라지는 경우 여러 모델을 사용하는 것이 좋습니다. 예를 들어 올림픽 해설자는 각각 자체 언어와 관련된 다양한 이벤트에 대해 보고합니다. 각 올림픽 이벤트 어휘는 다른 용어와 크게 다르기 때문에 이벤트와 관련된 사용자 지정 모델을 빌드하면 해당 특정 이벤트에 상대적인 발화 데이터를 제한하여 정확도가 높아질 수 있습니다. 따라서 모델이 일치하는지 확인하기 위해 관련 없는 데이터를 선별할 필요가 없습니다. 그럼에도 불구하고 학습에는 여전히 다양한 학습 데이터가 필요합니다. 서로 다른 악센트, 성별, 나이 등을 가진 다양한 해설자의 오디오를 포함합니다.

모델 안정성 및 수명 주기

기본 모델 또는 Custom Speech를 사용하여 엔드포인트에 배포된 사용자 지정 모델은 업데이트할 때까지 수정됩니다. 새 기본 모델이 릴리스될 경우에도 음성 인식 정확도와 품질이 일관되게 유지됩니다. 이렇게 하면 최신 모델을 사용하기로 결정할 때까지 특정 모델의 동작을 잠글 수 있습니다.

고유한 모델을 학습하든 기본 모델의 스냅샷을 사용하든 관계없이 제한된 시간 동안 모델을 사용할 수 있습니다. 자세한 내용은 모델 및 엔드포인트 수명 주기를 참조하세요.

다음 단계