1. 탐구 동기
TV 프로그램을 보다가 녹음된 소리를 가지고 목소리를 비교하거나 소리를 분석하는 장면들을 본 적이 있었다. TV를 시청할 당시에는 소리만으로도 많은 것을 판별할 수 있다는 것이 신기하다고 생각하고 넘어갔었지만, 물리를 배우다보니 소리를 어떻게 구별하는지 궁금해졌다. 따라서 어떤 방식으로 소리를 구별하는지, 소리를 구별하는 방법은 어느 분야에 활용되는지에 대해 탐구해보고 싶은 욕심이 생겼다.
2. 탐구 내용
우선, 음성 인식은 사람 고유의 억양과 발음을 잡아내어 알아듣고 그대로 실행하는 기술을 의미하며, 파형은 음의 진동 모양을 시간 차이로 나누어 표시할 때 생기는 파동의 형태를 의미한다.
음성 인식은 인간의 음성을 컴퓨터가 알아들을 수 있게 하는 것에서부터 시작된다. 음성 인식 기계는 인간의 음성 중 약 0.02초 정도로 짧은 길이의 음성 파형을 가져와 분석하는데, 아래 그림과 같이 여러 단계의 신호 처리를 거치고, 그 결과로 10개 이상의 숫자들이 나온다.
이 숫자들은 그 시점의 성대와 성도의 상태를 나타내는 수치이며, 발성 시점의 성대 진동 횟수와 입모양을 그릴 수 있는 바탕이 된다. 따라서 그 숫자에 알맞은 패턴을 찾아내는 것이다. 음성 인식기가 음성을 분석한 후 그에 대한 데이터를 매치하고, 결과적으로 매치가 된 단어가 최종 인식 결과가 되는 것이다.
음성을 입력하는 과정은 가장 중요한 단계라고 할 수도 있다. 아무리 좋은 기술을 가지고 있다 하더라도 음성검출이 제대로 이루어지지 않으면 좋은 인식률을 기대하기 어렵기 때문인데, 따라서 잡음이 없는 곳에서 이루어진 음성 검출은 보다 더 정확한 음성 인식 결과를 불러온다.
특징 추출은 말 그대로 발음하는 사람의 성별, 나이, 발음시의 상태 등의 음성의 특징을 추출하는 것으로, 이 과정은 불필요하게 중복되는 정보를 없애도 동일 음성 신호의 일관성을 높이고 다른 신호와의 변별력을 높이는 과정이다.
현재 사용되고 있는 음성 특징추출 기술에는 선형예측계수, 켑스트럼, 멜프리퀸시 켑스트럼, 주파수 대역별 에너지 등의 기술들이 있다. 이 중 주파수 대역별 에너지 기술은 음성 신호의 특징을 추출하기 위해 각 대역통과 필터를 통과한 출력의 에너지 값을 음성 특징으로 사용하는 방법으로, 구현의 용이성과 응용성 때문에 음성 인식에서 주로 쓰이는 기술 중 하나이다.
음성 인식 과정을 조금 더 잘 이해하려면 소리와 파형에 대해 알아야 한다.
소리는 주파수와 진폭을 가지는데, 주파수는 단위 시간 내에 몇 개의 주기나 파형이 반복되었는가를 나타내는 수를 말하며 진폭은 주기적인 진동이 있을 때 진동의 중심으로부터 최대로 움직인 거리 혹은 변위를 뜻한다.
위에서 말한 0.02초는 1주기를 의미하며, 결론적으로 음성 인식 기계가 분석한 음성은 1초에 50주기임을 나타내며 50Hz의 주파수를 가진다고 할 수 있다.
또한 소리는 단순음과 두 단순음을 합친 복합음으로 나뉘는데, 우리가 일상적으로 듣는 소리는 대부분 복합음에 해당한다. 음성을 분석하기 위해서는 복합음을 단순음 형태로 분리해서 분석해야 한다. 같은 단순음이라도 주파수에 따라 그 진폭과 주기가 다르므로 이를 통해서 음성을 인식할 수 있다.
기본적으로 소리는 물체의 진동에 의해 발생하며, 매질의 진동으로 인해 전달된다.
물체가 진동하면 소리가 발생하고, 주위의 공기를 진동시키며, 공기의 진동이 고막을 진동시켜 우리가 소리를 듣게 되는 것이다. 소리는 진동을 하면서 전달되기 때문에 일종의 신호이며, 신호를 전달할 때 사용되는 파동의 생김새를 파형이라고 하니 소리를 파형으로 나타낼 수 있는 것이다.
소리의 파형은 소리의 세기, 높낮이, 맵시에 따라 그 형태가 달라진다.
위의 사진처럼 큰 소리는 진폭이 크고, 작은 소리는 진폭이 작으며, 높은 소리는 진동수가 크고, 낮은 소리는 진동수가 작다. 또한 소리를 내는 물체에 따라 소리 파형의 모양이 다르다. 소리가 이러한 특징을 가지고 있기에 파형 분석을 통해 음성 인식이 가능한 것이다.
음성 인식은 편리하고, 인간에게 가장 손쉬운 입력 수단으로써, 숙련을 요하지 않으며, 시스템 가격이 저렴하다는 장점이 있다. 따라서 음성 인식 기술은 현재 애플의 ‘시리(Siri)’, 구글의 ’구글 나우(Google Now)‘, 마이크로소프트의 ’코타나 (Cortana)’와 같은 음성인식 기반의 개인비서 서비스와, 일본의 NTT도코모의 ‘샤베테콘쉐루(しゃべってコンシェル)’와 같은 외국어 통역 서비스 등에 적용되었다. 또한 삼성전자와 LG전자의 ‘S보이스’, ‘Q보이스’와 같은 서비스도 출시되었다.
장점이 있으면 단점도 있기 마련이다. 단점으로는 녹취된 사용자의 음성을 이용한 음성 도용이 가능하다는 것과 인식률이 낮다는 것을 들 수 있다. 인식률이 낮은 것은 특정 단어들은 발음할 때마다 발음 시간이 달라져 단순히 입력과 기준 패턴을 비교하면 오류가 발생하기 때문에 나타나는 현상이다. 이를 보완하기 위해서 발음한 시간을 같게 설정해 비교하는 선형 정합 방식을 이용하기도 하며, 음성의 정점 부분 시간을 일치시켜 비교하는 동적 정합 방식을 활용하기도 한다.
3. 탐구 결과
음성 인식을 위한 파형 분석 방법에 대해 탐구해보면서 음성 인식 기술이 내가 생각했던 것 이상으로 복잡하고 발전된 기술이라는 것을 알 수 있었다. 또한 내가 인식하고 있던 것 보다 널리 상용화되어 있다는 사실이 놀라웠다. 자료를 조사하다보니 기술의 발달이 조금 더 이루어진다면 현재 상용화 되어있는 다른 기술들 못지않은 혹은 다른 기술들을 뛰어 넘는 기술이 될 수 있을 것이라는 생각이 들었으며, 그 기술의 발달에 참여해볼 수 있으면 좋겠다는 생각이 들었다.
댓글