음성 활동 발견

IBM Watson® Speech to Text 서비스는 음성 인식에 사용되는 오디오를 제어하는 데 두 개의 음성 활동 감지 매개변수를 제공합니다. 이들 매개변수는 비음성 이벤트 및 배경 소음에 대한 서비스의 감도를 지정합니다. 이들 매개변수는 독립적이며, 따라서 개별적으로 사용하거나 함께 사용할 수 있습니다.

음성 활동 발견은 대부분의 언어 모델에서 지원됩니다. 자세한 정보는 언어 모델 지원을 참조하십시오.

음성 활동 감지의 작동 방식

음성 활동 감지 기능은 입력 오디오 스트림을 활용하여 스트림의 어느 부분을 음성 인식에 전달할지 결정합니다. 배경 음성 및 소음으로 인해 잘못된 전사, 추가 단어 또는 입력 오디오에서 누락된 단어 등 음성 인식 오류가 발생할 수 있습니다. 음성 활동 발견 기능은 음성 인식을 위해 관련 오디오만 처리하는 데 도움이 될 수 있습니다.

기능을 사용하여 다음 음성 인식 측면을 제어할 수 있습니다.

  • 배경 음성을 억제합니다. 콜센터 데이터에는 종종 다른 에이전트와의 혼선("엿듣기")이 포함됩니다. 서비스에서 지정된 수준보다 조용한 배경 음성을 무시하도록 하는 볼륨 임계값을 설정할 수 있습니다.
  • 배경 소음을 억제합니다. 공장에서 녹음된 음성과 같은 일부 오디오에는 높은 레벨의 배경 소음이 포함될 수 있습니다. 지정된 수준보다 더 조용한 배경 소음을 무시하도록 임계값을 설정할 수 있습니다.
  • 비음성 오디오 이벤트를 억제합니다. 전화 대기 중인 클라이언트에게 재생되는 오디오와 같이 배경 음악 및 톤 이벤트로 인해 정확하지 않은 인식이 야기될 수 있습니다. 무음으로 인해 불필요한 인식 또는 텍스트 변환 오류가 발생할 수도 있습니다. 시스템이 지정된 수준보다 조용한 이벤트를 무시하도록 하는 임계값을 설정할 수 있습니다.

기본적으로 음성 활동 발견은 각 모델의 일반 경우에 대해 최적의 성능을 제공하도록 구성됩니다. 특정한 경우 기본 설정이 최적이 아니어서 텍스트 변환 속도가 느려지거나 단어 삽입 및 삭제로 이어질 수 있습니다. 오디오에 가장 적합한 값을 판별하기 위해 다른 설정으로 실험해 보도록 권장합니다.

음성 감지기 감도

음성 활동 감지의 감도를 조정하려면 speech_detector_sensitivity 매개변수를 사용하십시오. 매개변수를 사용하여 음악, 기침 및 기타 비음성 이벤트에서 단어가 삽입되지 못하도록 하십시오. 서비스는 음성 및 비음성 활동의 이전 모델에 대한 많은 양의 입력 오디오를 평가함으로써 음성 인식을 위해 전달되는 오디오를 변형시킵니다.

0.0과 1.0 사이의 소수 값을 지정하십시오. 기본값은 0.5이며, 민감도 레벨을 적절히 절충합니다. 0.0 값은 모든 오디오를 억제합니다(텍스트로 변환되는 음성이 없음). 1.0 값은 오디오를 전혀 억제하지 않습니다(음성 발견 민감도가 사용 안함으로 설정됨). 값은 민감도 대 음성의 단순 곡선으로 증가합니다. 일반적으로 소수점 이하 자릿수를 한 자리 또는 두 자리로 지정(예: 0.55)하면 충분합니다.

이 매개변수는 음성 인식의 품질 및 대기 시간 모두에 영향을 줄 수 있습니다.

  • 더 작은 값은 음성 인식에 전달될 수 있는 오디오 양이 줄어들기 때문에 지연 시간을 감소시킬 수 있습니다. 그러나 값을 너무 작게 설정하면 실제 음성이 포함된 오디오 청크가 버려져, 트랜스크립트에서 유용한 내용이 손실될 수 있습니다.
  • 값이 높으면 음성 인식을 위해 많은 오디오가 전달될 가능성이 있으므로 대기 시간이 증가할 수 있습니다. 그러나 값을 높게 설정하면 비음성 이벤트가 포함된 오디오 청크가 통과될 수 있으며, 이로 인해 대본에 불필요한 내용이 추가될 수 있습니다.

음성 감지기 감도 예

다음 예제 요청은 동기 HTTP 인터페이스를 사용하여 speech_detector_sensitivity 매개변수에 대해 0.6 값을 지정합니다. 서비스는 기본적으로 사용할 수 있는 것보다 약간 더 많은 잠재적인 비음성 이벤트를 인식합니다.

IBM Cloud

curl -X POST -u "apikey:{apikey}" \
--header "Content-Type: audio/flac" \
--data-binary @{path}audio-file1.flac \
"{url}/v1/recognize?speech_detector_sensitivity=0.6"

IBM Cloud Pak for Data IBM Software Hub

curl -X POST \
--header "Authorization: Bearer {token}" \
--header "Content-Type: audio/flac" \
--data-binary @{path}audio-file1.flac \
"{url}/v1/recognize?speech_detector_sensitivity=0.6"

음성 활동 감지(SAD)

음성 활동 감지(SAD)는 이제 음성 텍스트 변환 recognize API의 기존 방법 외에 새로운 개선된 방법을 포함하도록 업그레이드되었습니다. 이 새로운 방법은 오디오 스트림 내에서 음성 경계를 감지하는 정확도와 성능을 향상시킵니다. sad_module:2 을 설정하여 사용할 수 있습니다.

향상된 기능

SAD에는 다음과 같은 향상된 기능이 있습니다:

  • 음성 시작과 끝을 감지하는 성능이 향상되었습니다.
  • 노이즈 억제 기능이 향상되었습니다.
  • 음성으로 세그먼트를 식별할 때 응답 시간이 빨라집니다.
  • 시끄러운 환경에서도 인식 정확도가 향상되었습니다.

음성 시작 이벤트 감지

이제 음성 시작 이벤트 감지를 사용하면 recognize API를 통해 조기 알림을 받을 수 있습니다. 수신 오디오 스트림에서 음성의 시작을 감지하여 사용자에게 알림을 보냅니다. 요청에 speech_begin_event: true 이 설정되면 음성 세그먼트의 시작을 나타내는 새 응답 객체가 전송됩니다. 실시간 트랜스크립션이나 음성 활동 중심 애플리케이션에 유용할 수 있습니다. 클라이언트 애플리케이션에서 speech started 또는 active 표시기를 표시하고 실시간 처리 파이프라인을 준비하는 등 다운스트림 작업을 트리거하는 데 사용할 수 있습니다.

말하기 시작 이벤트는 두 가지 시나리오에서 생성됩니다:

  1. 오디오 스트림에서 음성이 먼저 감지되는 경우
  2. end_of_phrase_silence_time 기간마다 새로운 음성이 감지될 경우

탐지 감도는 음성 시작 이벤트를 트리거하는 음성 신호의 강도를 측정하는 speech_event_sensitivity (기본값 0.5 ) 파라미터를 사용하여 조정할 수 있습니다.

값이 클수록 음성에 더 민감하다는 의미입니다. 0 에 가까운 값일수록 배경 소음에 덜 민감하게 감지됩니다. 값이 1에 가까울수록 음성 시작 이벤트를 감지할 확률이 높아지지만 시끄러운 환경에서는 잘못된 알림이 트리거될 수 있습니다.

speech_event_sensitivity 을 사용하면 speech_detector_sensitivity 매개 변수로 제어되는 STT 트랜스크립트와 별도로 음성 시작 이벤트의 감도를 제어할 수 있습니다. speech_event_sensitivity 은 잘못된 바지인 이벤트를 발생시킬 수 있는 speech_begin_event 에 대한 노이즈를 무시합니다.

배경 오디오 억제

음성으로 인식하여 변환하지 않도록, 배경 오디오를 해당 음량을 기반으로 억제하려면 background_audio_suppression 매개변수를 사용하십시오. 사이드 대화 또는 배경 소음을 억제하려면 이 매개변수를 사용하십시오. 예를 들어, 약한 오디오 신호와 같이 안정적이고 조용한 배경 소리를 관리하려면 이 매개변수를 사용하세요. 이러한 소음은 텍스트 변환을 방해할 수 있으므로 오디오에서 실제 음성이 없는 컨텐츠를 생성할 수 있습니다.

0.0과 1.0 범위의 소수 값을 지정하십시오. 기본값은 0.0이며 아무 소리도 억제하지 않습니다(배경 오디오 억제가 사용 안함으로 설정됨). 0.5 값은 일반적인 사용을 위해 적절한 레벨의 오디오 억제를 제공합니다. 1.0 값은 모든 오디오를 억제합니다(텍스트로 변환되는 음성이 없음). 값은 단순 곡선으로 증가합니다. 일반적으로 소수점 이하 자릿수를 한 자리 또는 두 자리로 지정(예: 0.55)하면 충분합니다.

이 매개변수는 음성 인식의 품질 및 대기 시간 모두에도 영향을 줄 수 있습니다. 그러나 기본적으로 배경 소음 억제는 사용 안함으로 설정되므로 매개변수를 0보다 큰 값으로 설정하면 대기 시간만을 개선할 수 있습니다. 그러나 값이 커지면 음성 인식을 위해 전달되는 오디오가 점진적으로 감소할 수 있고, 이로 인해 텍스트 변환 내용에서 유효한 컨텐츠가 유실될 수 있습니다.

배경 오디오 억제 예

다음 예제 요청은 동기 HTTP 인터페이스를 사용하여 background_audio_suppression 매개변수에 대해 0.5 값을 지정합니다. 서비스는 적절한 레벨의 배경 오디오를 억제합니다.

IBM Cloud

curl -X POST -u "apikey:{apikey}" \
--header "Content-Type: audio/flac" \
--data-binary @{path}audio-file1.flac \
"{url}/v1/recognize?background_audio_suppression=0.5"

IBM Cloud Pak for Data IBM Software Hub

curl -X POST \
--header "Authorization: Bearer {token}" \
--header "Content-Type: audio/flac" \
--data-binary @{path}audio-file1.flac \
"{url}/v1/recognize?background_audio_suppression=0.5"

언어 모델 지원

speech_detector_sensitivitybackground_audio_suppression 매개변수는 다음 언어 모델에서 사용할 수 있도록 지원됩니다.

  • 대규모 음성 모델 및 차세대 모델의 경우 모든 모델에서 매개 변수가 지원됩니다.
  • 이전 세대 모델의 경우, 대부분의 모델에서 해당 매개변수를 지원합니다. 다음 모델들은 현재 음성 활동 감지를 지원 하지 않습니다. 이러한 모델과 함께 사용되는 경우 매개변수는 무시됩니다.
    • 아랍어 광대역 모델(ar-MS_BroadbandModel)
    • 브라질 포르투갈어 광대역 모델(pt-BR_BroadbandModel)
    • 중국어 광대역 모델(zh-CN_BroadbandModel)
    • 중국어 협대역 모델(zh-CN_NarrowbandModel)
    • 독일어 광대역 모델(de-DE_BroadbandModel)