음성인식이란

최건우·2023년 12월 4일
0

음성인식

목록 보기
1/1

음성인식은 무엇이며, 어디에 사용되는가?

음성인식 기술

  • 기계가 발화 내용(음성 신호)을 인식하는 기술
  • 사람이 발화한 음성을 듣고, 어떤 의미인지 올바르게 인식해야 함.
    • (ex) AI 스피커
순서데이터작업결과
1음성 + 음악(잡음)사용자가 발화하여 스피커에 명령어를 전달(ex. '음악 정지')Raw speech signal이 스피커에 전달됨
2음성 + 음악(잡음)잡음 제거(전처리)(음원 분리)음악이 제거된 음성
3음악이 제거된 음성발화 내용 인식(음성인식)인식 결과 TEXT
4인식 결과 TEXT발화 내용 해석(자연어처리)조작 명령
5조작 명령응답 혹은 가전 조작명령어가 실행됨
  • 음성 데이터 인식률을 높이기 위해 "음원 분리", "음성 인식", "자연어 처리" 등의 기술이 적용된다.
  • 전처리 과정에서 잡지 못한 잡음은 이후의 단계로 전파되며 인식 성능을 떨어뜨리게 된다.
  • 이와 같이 AI 스피커의 기저에는 사용자의 의도를 올바르게 인식하기 위한 음성인식 기술이 작동하고 있음.

음성을 인식한다는 것은?

사람과 기계가 각각 음성을 인식하는 원리

  • 소리: 공기의 진동
  • 사람이 소리를 인식하는 과정
    • 소리의 발생: 근원이 되는 물체가 진동
    • 소리의 전달: 그 진동이 공기를 통해 전달되어 사람 귀(청각 기관)에 도달함.
    • 소리의 지각: 귀(청각 기관)에 도달한 신호를 전기 신호 형태로 변환하고 뇌에 전달
    • 소리의 인식: 다양한 음성을 듣고 음성과 대칭되는 언어를 학습하면서 서서히 향상
      • 갓 태어난 아이들은 언어를 습득하지 못한 상태지만, 반복적으로 대화를 들으며 조금씩 언어를 이해함.
  • 기계가 음성을 인식하는 과정
    • 음성 진동 신호 발생
    • 특징 추출: 사람의 지각 단계를 모방하여 음성신호를 인식하기 쉬운 표현으로 변환
      • 일반적으로 "푸리에 변환" 이라는 신호 처리 기법을 이용
      • 사람의 청각기관, 발성기관의 생물학적 지각 과정 모방
    • 인식: 대량의 음성과 언어 데이터를 이용하여 음성과 문자열의 대응 관계를 기계에게 학습시킴(기계학습)
      • 음성인식 결과의 타당성을 "확률"이라는 방법으로 평가하여 확률이 가장 높은 후보를 인식 결과로 출력.
      • 따라서 음성인식 모델이란, "입력 음성과 각 인식 결과 후보 확률을 계산하는 규칙" 을 의미함.

음성인식 모델의 구성

  • 상용화된 음성인식 제품의 음성인식 모델은 다음과 같은 세 모듈로 구성되며, 각각의 역할은 다음과 같음.
모듈역할
음향 모델음성 특징과 음소열 간 확률을 계산하는 모델.
음소란 /a/와 /i/ 같은 모음, /k/와 /s/ 같은 자음으로 구성된 소리의 최소 단위다.
음향 모델은 소리를 듣고 어떤 음소에 가장 가까운지 각 음소별 확률을 계산한다.
발음 사전음소열과 단어 간의 관계를 다루는 모델.
발음 사전은 이름 그대로 "인사: /i/n/s/a"와 같이 단어와 발음(음소열)이 기술된 목록이다. 인지한 발음을 발음 사전에 있는 단어와 대응시키기 위해 사용함.
언어 모델어떤 단어에 대해 해당 단어가 발화될 확률을 계산.
예를 들어 바로 앞 단어가 "좋은" 이라면, "질병"보다는 "날씨"일 확률이 높을 것이다.
음성의 유사도와 별개로 문맥적으로 어떤 단어가 등장할 확률이 높은지를 계산한다.
  • 영어 문장을 많이 읽은 사람일수록 영어 실력이 빠르게 향상되는 것과 같이, 언어 모델에 많은 문장을 제공함으로써 더 많은 문맥 정보를 학습시킬 수 있음.

  • 위와 같이 모듈로 분리된 3단계 음성인식 모델에서는, 각각의 모듈의 출력값을 적절하게 통합해 최종 음성인식 결과를 출력하는 "디코더"라는 처리 과정이 존재한다. 디코더 구현은 난이도가 매우 높은 작업이며, 음성인식 모델 구현에 있어 가장 큰 장애물 중 하나다.

음성인식 기술의 대략적인 흐름

1980 ~ 2010년대

이때까지 음향 모델은 은닉 마르코프 모델, 혼합 정규분포 모델을 조합하여 구축됨.
* 참고: 은닉 마르코프 모형(위키피디아)

2010년대

딥러닝 기술의 발전으로 인해 혼합 정규분포가 딥러닝 모델로 전환되면서 음성인식의 정확도가 획기적으로 향상됨.

2015년대~

음향 모델, 발음 사전, 언어 모델을 하나의 딥러닝 모델로 표현하는 End-to-End 모델 등장
* End-to-End: 종단 간. 즉, 처음부터 끝까지 모두 포함한다는 의미.

End-to-End 모델은 디코딩 후처리가 존재하지 않기 때문에, 3단계 모듈로 분리된 음성인식 모델과 달리 비교적 간단하게 구현할 수 있다. 다만, End-to-End 모델은 기존 기법이 해결하고자 하는 고유의 문제들을 해결하기 위해 등장했으므로, 과거 방법론들을 깊이 이해하지 않으면 End-to-End 모델을 올바르게 이해할 수 없다.


이 글은 파이썬으로 배우는 음성인식(다카시마 료이치, 2023) 를 읽고 정리한 내용입니다.
내용상 문제가 있다면, 댓글을 통해 지적해 주시면 감사하겠습니다.

[인용]

profile
부족한 경험을 채우기 위한 나만의 기록 공간

0개의 댓글