메인 콘텐츠로 건너뛰기

Tips

AmiVoice API를 사용한 개발에 도움이 되는 힌트를 소개합니다.

클라이언트 프로그램 관련

의도하지 않은 음성 인식 실행 방지

음성 인식 종료 후 연결 해제를 잊거나 오조작 등으로 인해 의도치 않게 음성 인식이 실행되는 경우가 있습니다. 이러한 사고로 인해, 중요 정보를 포함한 음성 데이터의 원치 않는 전송이나 불필요한 비용 발생 등을 방지하기 위한 메커니즘을 클라이언트 프로그램에 구현하시도록 권장드립니다. 예를 들어, 다음과 같은 메커니즘을 고려할 수 있습니다.

  • 음성 녹음이나 음성 인식이 진행 중임을 화면 표시 등으로 사용자에게 알기 쉽게 알립니다.
  • 실시간 음성 인식의 경우, 세션 시간이 일정 시간을 초과하면 대화상자를 팝업시켜 사용자에게 확인을 요청합니다.

음성 데이터 관련

녹음 품질의 확인 권장

음성 인식 결과가 현저히 나쁘거나 정상적인 문장으로서 인식이 잘 되지 않아 보이는 경우, 녹음의 품질이 좋지 않을 가능성이 있습니다. 음성 인식을 했음에도 인식 결과를 정상적으로 사용할 수 없는 등의 상황을 방지하기 위해 최종 사용자에게 녹음 품질 확인을 권장합니다. 예를 들어, 다음과 같은 사항을 확인하십시오.

  • 인식하고자 하는 발화 음성의 음량이 충분한지. 대략적인 기준으로 16비트 음성의 경우 진폭이 3000 정도면 괜찮습니다. 반대로 음량이 너무 커서 소리가 깨지지 않도록 주의가 필요합니다.
  • 발화 음성이 울려서 듣기 어렵지 않은지 여부 확인.
  • 환경음이나 다른 화자의 목소리 등의 잡음이 너무 커서 인식하고자 하는 발화 음성이 가려지지 않는지 여부 확인.

음성 인식 요청의 파라미터가 적절하고 녹음 품질에도 문제가 없다면 음성 인식 결과가 현저히 나빠지는 일은 없을 것입니다. 사전에 녹음 품질을 확인할 수 없는 경우에도 실시간으로 인식 결과를 확인하고, 비정상적인 인식 결과가 나오는 경우 녹음을 재검토하는 등 적절한 품질로 녹음을 수행하도록 하십시오. 특히 넓은 회의실에서의 대면 회의 등은 조용한 실내라도 레코더의 위치나 성능 등에 따라 위와 같이 녹음 품질이 저하될 수 있음에 주의하십시오. (예: 레코더가 인식하고자 하는 발화자로부터 멀리 있거나, 레코더 바로 근처에서 타이핑 소리 또는 종이 넘기는 소리와 같은 잡음이 발생하는 경우 등)

음성 데이터 가공에 관한 주의사항

음성 인식을 수행할 음성 데이터는 사람의 귀로도 듣기 쉬운 음성(음량, 음질, 말하는 방식 등)일수록 음성 인식의 정확도도 높아지기 쉽습니다. 그러나 가공된 음성의 경우, 사람의 귀로는 듣기 쉬워도 음성 인식의 정확도가 저하될 수 있습니다. 다음은 음성 데이터 가공에 관한 주의사항입니다.

노이즈 캔슬링・에코 캔슬링

노이즈 캔슬링이나 에코 캔슬링은 그 방법에 따라 음성 신호가 왜곡되어 음성 인식 엔진이 학습한 소리와 특성이 변화하여 결과적으로 음성 인식의 정확도가 저하될 수 있습니다. 잡음이 심할 때 효과적일 수 있지만, 일반적으로는 사용하지 않도록 권장드립니다.

자동 이득 제어(AGC: Automatic Gain Control)

음성 신호의 레벨을 일정하게 유지하는 자동 이득 제어(AGC)는 음성 인식에는 부정적인 영향이 있지만, 발화 구간을 검출하는 프로세스에는 긍정적일 수 있습니다. 발화가 전혀 검출되지 않아 정확도가 낮아지는 경우에는 AGC를 사용하면 정확도가 개선될 가능성이 있습니다. 또한, 발화 구간의 검출 용이성 등은 요청 파라미터로 조절할 수도 있습니다.

압축

음성 인식을 수행할 음성 데이터는 반드시 FLAC와 같은 무손실 압축일 필요는 없습니다. 압축해도 정확도에 거의 영향이 없는 경우가 많지만, 사람의 귀로도 듣기 어려울 정도로 강한 압축을 가하면 인식 정확도에 영향이 생길 수 있으므로 주의하십시오.

AmiVoice Tech Blog에서는 샘플링 레이트나 압축률이 음성 인식의 정확도에 미치는 영향에 대한 검증을 소개하고 있습니다. 이것도 참고해 주십시오.

【검증해 보았습니다!】 샘플링 레이트나 압축률에 따라 음성 인식의 정확도는 어떻게 변화하는가!? (일본어 블로그)