키보드를 두드리지 않고 직접 말을 해 컴퓨터를 부릴 수 있다면 얼마나 좋을까.
음성은 인간과 인간사이의 가장 자연스러운 통신수단이다. 따라서 어떻게 하면 멀리 떨어져 있는 두지점 사이를 효과적으로 음성통신 할 수 있는냐가 전화기 발명된 이래 인간의 가장 주된 관심사로 연구되고 있다. 이러한 연구는 최근들어 급속한 발전을 보이고 있는 반도체및 컴퓨터기술에 힘입어 양자화된 음성신호, 즉 디지탈음성신호 처리분야로 집중되고 있다. 인간은 인간 사이만이 아닌 인간과 컴퓨터, 다시말하면 인간과 기계사이의 통신에서도 음성을 이용하려는 방향으로 연구가 진전되고 있다는 것이다.
음성을 숫자로 바꾼다.
음성통신시스템은 음성신호를 여러가지 방법으로 전송, 저장 처리하게 된다. 이와 같은 일을 기술적으로 해결하기 위하여 음성신호를 여러가지 형태로 표시한다. 이때 일반적으로 다음의 2가지 점이 특히 문제가 된다. 첫째 음성신호의 메시지 내용을 보존하여야 하는 일이고 둘째 메시지내용을 심하게 손상시키지 않고 전송과 저장에 편리하도록 음성신호를 적절한 형태로 다르게 표현하는 것이다. 음성신호를 다른 형태로 바꿀때 유의 할 점은 듣는 사람이 쉽게 내용을 알아들을 수 있거나 기계가 자동적으로 그 내용을 알 수 있도록 해야한다. 이와같이 음성신호의 형태를 바꾸어 나타낼 경우에 이를 표시하기 위해서는 5백 bps(bits per sec : 1초당 전송속도를 나타내는 단위)이상이 필요하다.
음성신호를 다른 형태로 표현하는 음성 부호화의 경우 되도록 그 표현에 필요한 비트수를 줄이는 것이 음성의 전송 또는 저장의 측면에서 바람직하다. 음성신호를 되도록 적은 비트수로 표현하려는 시도는 1939년 '더들리'(Dudley)가 뉴욕의 세계박람회에서 선보인 음성부호화기(Voder) 로부터 시작된다. 이 음성부호화기는 인간의 음성을 흉내낸듯한 소리를 내도록 되어있지만 비록 그 소리를 알아들을 수는 있어도 그리 음질이 좋지는 못하였다. 따라서 사람들은 과연 이것을 실제로 사용할 수 있을까하고 의심하였다.
그러나 그때와는 비교할 수 없을 정도롤 과학이 발달된 오늘날의 음성부호화기 구조는 훨씬 더 복잡해졌다. 그러나 그 음질은 전송속도가 9.6Kbps 이하가 될 경우 '더들리'의 음성부호화기보다 별로 나아지지 않고 있다.
음성을 기계로 인식하려는 연구도 현재까지는, 적절한 비용으로 기계와 자연스러운 대화를 사용하여 의사소통을 하는 데까지는 미치지 못하고 있다. 어떠한 제한된 형태로 발음된 말을 알아들을 수 있는 기계들은 만들어지고 있지만 이것이 어떤 지능을 갖고있다고 말할 수는 없다. 사람이 구술하는 내용을 알아듣고 글로 바꾸어줄 수있는 타이프라이터도 아직 완성되지 않고있다.
그러나 음성처리 기술의 진보로 인하여 인쇄 회로기판 한장으로 음성을 알아듣고 그에따라 기계를 제어할수 있도록 되어있는 제품이 저렴한 가격으로 제공되기 시작하고 있으나 비교적 느린 음성인식분야의 기술진보 속도에도 불구하고 이의 실용화 노력은 매우 활발히 진행되고 있다.
연속적인 음성신호를 어떻게 부호화하여 디지탈형태로 변환시키는가
우선 생각하여 볼수있는 것으로 아날로그방식이든 디지탈방식이든 간에 현재 한채널만 사용하던 통신선로에 둘 또는 그이상의 음성채널의 통화를 가능케 할 수있다면 새로운 통신선으로의 설치에 필요한 많은 노력과 비용을 절약할 수 있을 것이다. 나아가 이와같은 한 통신선로로 음성과 테이타신호를 공동으로 전송할 수 있다면 새로운 서비스를 더 빠르고 경제적으로 제공할 수 있게 된다.
디지탈음성 저장시스템의 경우는 될수록 낮은 전송속도에서 동작하는 음성부호화방식을 사용할 때 기억장치와 대역폭을 경제적으로 사용할 수있게 된다. 최근들어 쓰이기 시작하고 있는 광섬유선로를 쓸 경우 매우 넓은 대역폭을 사용할수 있으므로 음성 전송에서의 전송속도감축이 과연 아직도 필요한가에 대한 의문을 제기할 수도 있다. 앞으로 전 통신선로가 광섬유로 대치된다면 그와같은 일이 필요없을 수도 있겠으나 여하튼 대역폭이 제한된 통신채널이 존재하는 한 전송속도감축을 위한 음성부호화방식은 계속 개발되어야할 것이다.
비밀유지에는 적격
음성부호화의 새로운 방식들의 개발과 각종 음성신호처리용 소자들의 출현으로 음성부호화방식이 여러분야에 응용되고 있다. 이중 특히 괄목할만한 것은 대규모 집적회로(VLSI : very large scale integration)기술의 진보로 많은 음성부호화 제품들에 실용화되고 있다.
불과 수년 전만 하더라도 음성부호화기의 생산은 일반적인 디지탈 집적회로인 TTL(transistor-rransistor logic) IC(integrated circuit : 집적회로)가 쓰였고 그 디자인에도 특수한 기법이 요구되었다. 또한 이와같이 제작한 부호화기는 우선 그 부피가 클뿐만 아니라 전력손실도 크고 또한 음질도 만족할만하지 못하여 널리 쓰이지 않았다. 그러나 이러한 상황은 디지탈신호처리(DSP : digital signal processing)IC의 개발로 크게 달라지게 되었다. 새로운 DSP IC들과 고급언어를 사용한 개발 장비들의 등장으로 이제는 프로그램만 적절히 개발함으로써 각종 부호화기들을 값싸게 만들수 있게되었다. 이중 몇가지 대표적인 응용분야를 살펴보면 다음과 같다.
무선전화에서는 사용하는 주파수대역이 제한되어 있는 관계로 음성의 전송속도를 매우 낮춰야만 많은 가입자를 수용할 수 있다. 따라서 이경우에 낮은 전송속도의 음성부호화기일수록 유리하며 또한 디지탈신호의 전송이기 때문에 전화내용의 기밀유지에 필요한 음성의 암호화를 쉽게 이룰수 있다.
또한 대표적인 것으로 다중채널을 갖는 디지탈 전화응답기를 들수 있다. 이 전화응답기는 많은 부가기능을 가질수 있다.
예를들면 가입자의 음성메시지를 저장하였다가 가입자가 원하는 날짜와 시간에 이 메시지를 다른 가입자에게 전달할 수가 있다. 또한 이 시스템을 이용할 경우 정해진 시간에 상대방에게 전화를 자동적으로 걸게 할 수 있을 뿐만 아니라 가입자들끼리의 인사말도 쉽게 나눌 수가 있다. 이때에도 낮은 전송속도의 음성부호화기를 사용하면 시스템의 기억용량과 대역폭을 효율적으로 사용할수 있다. 우리나라에서도 금년도에 시범으로 이와같은 서비스를 실시할 예정이다.
다음으로 컴퓨터 음성응답이라는 것이있다. 이는 전화선을 이용하여 여러가지 정보를 얻는 컴퓨터를 이용한 시스템에 응용될수가 있는데 그 응용분야는 매우 넓다. 예를들면 전화번호 자동안내, 시간안내, 각종여행정보안내, 날씨안내 등을 들 수 있다. 이 시스템들의 경우는 기본적인 단어나 문장들이 부호화되어 저장되어 있다가 프로그램이 지시하는 대로 적절히 합성되어 음성 메시지를 만들어내는 일을 한다.
일반적인 사무자동화 추세의 진전으로 전화선을 이용하여 많은 양의 데이타(특히 컴퓨터 데이타)를 전달하려는 요구가 커지고 있다. 이경우 음성을 디지탈로 부호화하면 데이타와 같이 동일한 통신회선틀 이용할 수가 있고, 또한 개인의 비밀유지를 위한 암호화도 쉬워져 통신시설을 좀더 경제적으로 사용할 수가 있게 된다.
앞의 자동 전화교환 시스템과 동일한 이점을 갖고있는 것으로 사설 통신망이라는 것이있다. 사설통신망은 특히 국제전화의 경우 음성부호화기를 사용화여 한 회선으로 여러명이 동시에 통화를 하거나 통화시간을 단축하여 비용을 크게 줄일 수 있다.
또한 패켓(packet)교환방식을 사용하는 데이타통신망에 패켓화된 음성신호도 전송함으로써 전송로의 이용률을 높일 수 있다. 우리나라에도 현재 패켓 데이타통신망이 설치되어 있으며 이 통신망을 이용한 음성통신방식도 개발 연구되고 있다. 그러나 데이타와 음성의 서로 다른 특성 때문에 새로운 통신방식의 개발이 필요하다. 현재의 통신망에서는 전송하려는 데이타의 양이 통신망의 수용능력을 넘으면 보통 통신을 할수 없게 되어있다. 그나마 음성의 패켓통신의 경우는 음성부호화의 전송속도를 적절히 저절하여 약간 음질은 떨어지지만 통화가 가능하도록 할 수 있다.
음성인식에 대한 연구는 60년대 후반부터 본격적으로 시작되어 70년대를 거치면서 계속되어 왔으나 아직도 궁극적인 목표 즉 어느 사람의 말이건 간에 어휘의 제한없이 연속음성을 알아듣는 능력을 갖는 인식방법의 연구에는 훨씬 못미치고 있다. 이것은 현재 활발히 진행중인 인공지능 연구가 결실을 맺기 전까지는 가능하지 못하리라 생각된다.
1백단어의 한계를 넘어선다.
현실적으로는 특정한 사람이 아닌 여러 사람이 연속적으로 발음하는 음성을 알아듣는 인식시스템도 그 어휘의 수가 1백단어정도가 넘는 것은 만들기가 어렵다. 이는 사용하는 언어에 따라서도 다르다. 일본어의 경우는 영어의 경우보다 철자법이나 발음의 모호성이 적기 때문에 80년대말 경에는 특정인이 아닌 여러사람이 발음하는 연결언어를 어휘의 제한없이 인식하는 시스템의 개발이 가능하리라 예견된다. 우리말의 경우도 영어에 비하면 역시 이와같은 이점이 크기 때문에 연구가 집중된다면 빠른 시일내에 좋은결과를 낼 수 있을 것이다. 특히 일본어의 경우는 1천여자가 넘는 자판을 필요로 하는 타이프라이터의 대체를 위해서도 자동음성인식 시스템의 연구개발에 큰 힘을 쏟아넣고 있다.
현재의 음성인식시스템이 어떠한 상태가지 연구되어 있는가를 살펴보자. 우선 특정한 사람의 음성을 인식하는 시스템은 격리단어인식(isolated word recognition)의 경우 상당히 많은 양의 어휘를 인식할수 있다. 그러나 이때에도 어휘수에는 제한이 생기게 되는데 이는 주로 많은 어휘에 대한 각패턴의 혼동과 말하려는 사람에게 맞는 인식시스템의 훈련이 필요하기 때문이다. 여러사람의 음성을 인식하는 시스템에서는 격리어휘의 경우에도 적은 양의 단어밖에 인식할수 없는데 그것도 이 인식시스템을 사용하려는 집단의 구성원에 맞도록 통계적인 훈련과정을 거쳐야만 가능하다.
여러사람의 음성을 정확하게 인식하려면 제한되 인식어휘를 선택해야 하며 그 음이 크게 다른 단어들을 택할 필요가 있다. 예를들어 숫자를 나타낼때 일, 이, 삼, 사,···대신에 하나, 둘, 셋, 넷, ···등을 택한다든가 하는 일인데 이는 일반적인 생활습관 때문에 쉬운 일은 아니다. 이렇게 어휘를 선택한 후 주의하여 발음을 하더라도 인식시스템의 인식률은 그리 높지 않은것이 보통이다. 사람의 언어전달의 경우는 기계와 달리 어떤 특정한 단어의 발음이 불명확하여도 전후 문맥이나 생활습관을 통하여 또는 재확인을 통하여 알아들을 수가 있지만 현재의 컴퓨터를 이용한 음성인식시스템은 문장의 문법규칙이나 재확인 과정만을 이용하고 있어서 응용분야에 따라서는 그 사용이 부적절한 경우가 많다.
자동 음성인식시스템의 인식과정을 여기에서는 격리단어 인식에 대하여 설명하기로 한다. 격리단어 인식시스템은 지금 현재 상당한 기술적 진보를 이루어 실용화 단계에 와있고 그 대부분의 구성요소들은 연결단어 인식시스템(connected word recognition)에서도 동일하게 사용할 수 있다. 격리단어 인식시스템은 보통 단어 또는 귀절을 인식하게 되는데 대개 실제의 응용분야에서 필요로하는 어휘와 길이보다는 짧은 것이 한계이다.
음성인식시스템은 발음이 제약조건에 따라 격리단어 인식시스템, 연결단어 인식시스템, 연속음성 인식시스템(continuous speech recognition)으로 나눌수 있다. 격리단어 인식시스템은 그 명칭이 나타내듯이 단어와 단어사이에 적은 묵음구간을 필요로 한다. 반면 연결단어 인식시스템은 각각의 단어만 정확히 발음하면 된다. 연결음성 인식시스템은 일반 대화를 하듯이 발음하는 음성을 인식하는 시스템으로써 어휘들이 연속적으로 발음되며 또한 발음하는 사람에따라 달라지는 변이음현상으로 인하여 음성인식 작업이 한층 더 어려워진다.
목소리를 알아듣는 훈련
음성인식시스템이 어느 특정한 한 사람의 음성을 인식하느냐 또는 여러사람의 음성을 인식하는가는 인식시스템이 갖고 있는 기준패턴사전을 어떻게 만드느냐에 달려있다. 특정화자의 음성을 인식할 경우 이 기준패턴사전은 그 사람의 음성의 특성을 추출하여 만들게 된다. 말하는 사람에 관계없이 음성을 인식하려 할 때에는 단어의 기준패턴사전을 여러 개로 만들거나 또 여러사람의 발음에서 평균특성패턴을 찾아내어 구성할 수가 있다. 이렇게 기준패턴사전을 구성하더라도 각 개인의 음성자체도 감기, 정서적인 요인 또는 발음하는 환경이 바뀜에 따라 달라지는 현상이 발생하므로 인식의 문제를 더욱 어렵게 하고 있다. 예를 들면 전투기 조종사의 경우 음성인식시스템을 조용한 곳에서 훈련시킬때와 전투시에 발음할 때는 동일한 상태의 제어명령을 내리지는 못할 것이다. 이경우 주위의 환경도 시끄러운 상태로 바뀌지만 실제로 전투상황에서 겪는 스트레스로 인하여 목소리 자체도 달라지게 된다. 이점이 패턴의 유사도를 측정하여 음성인식을 행하는 시스템의 단점으로써 인식시스템을 훈련시킬 때와 다른 상황에서는 인식시스템의 성능이 저하된다. 이를 해결하기 위하여 인식시스템을 입력음성의 변화에 따라 시간이 지나면 적응되도록 하는 방식에 대한 연구도 행하여지고 있다. 그러나 조종사의 경우와 같이 인식시스템의 적응에 대한 충분한 시간이 없을 때에 얼마만큼 효과가 있을지는 의문시된다.
말하는 사람에 관계없이 음성을 인식하려는 시스템의 경우는 시스템을 보통 통계적으로 많이 사용하게될 사람들의 집단에 맞도록 훈련을 시키게 된다. 이때 한 단어당 여러개의 기준 패턴을 갖게 됨으로 인하여 인식할 수 있는 어휘의 수가 상대적으로 줄어들게 된다. 따라서 한 단어의 기준 패턴이 차지하는 기억용량이 크게 되며 특히 중요한 것은 실시간(real time)으로 음성인식을 하기 위하여 패턴 유사도 결정에 소요되는 시간을 줄일 필요가 생기고 이로 인하여 전체적인 기준 패턴의 수 즉 인식 단어의 수가 줄어들게 된다. 많은 시스템들에서도 이를 해결하기위해 약간의 구문 규칙을 사용, 어느 한 시점에서 다음에 나타날 가능성이 있는 단어들의 수를 줄여 실시간 처리를 가능케 하고 있다.
음성자동번역기까지
음성인식시스템을 값싸게 구축할 수 있게 되면 이를 이용한 많은 신제품과 향상된 서비스를 기대할 수 있다. 많은 사람들이 음성인식시스템을 실제로 이용하기를 원하고 있지만 현재까지의 음성인식 응용분야가 성공적이라고 할 수는 없다. 그 이유는 여러가지를 들 수 있겠으나 대개 그 응용분야가 적절치 않았거나 응용분야에 대한 잘못된 이해 그리고 음성 입출력장치의 가격이 너무 비싼 것이 문제였다.
앞에서도 언급하였듯이 이제 격리단어자동인식 연구는 실용화 단계에 와있다. 그러나 그것은 최근의 일이며 이또한 인식방식의 연구개발과 더불어 반도체 소자의 개발에 힘입은 바가 크다. 범용신호처리 VLSI기술 진보에 의해 음성인식제품의 실용화개발이 경제적으로 가능해지고 있다.
최근들어 음성인식기술을 이용한 제품이 급격히 증가하고 있다. 그러나 그 제품들이 과연 시장성이 있는지는 아직 의문이다. 음성인식시스템에서의 가장 큰 문제는 응용소프트웨어이다. 시스템을 개발하기 전에 과연 이 시스템에 자동 음성인식이 필요한가를결정해야 한다. 단지 자동음성인식 기능을 사용하여 일을 해결할 수 있어서가 아니라(이 경우 보통 다른 수단으로도 일을 가능케할 수 있다.) 꼭 음성인식기능이 있어야만 작업을 수행할 수 있는것이라야 한다.
일단 어떠한 작업이 음성인식기능을 통하여서만 최선으로 이루어질수 있다고 결정되면 동작시키려는 소자나 시스템과 사람과의 대화를 최적화시킬 수 있는 응용 소프트웨어를 신중히 작성하여야 한다. 경제적인 가격으로 음성인식시스템을 구성할수 있다면 그 응용분야는 무궁무진하다고 할수 있다. 음성으로 작동하는 각종 가정용 기기들을 비롯하여 전화를 이용한 24시간 정보 안내시스템 등을 대표적인 예로 들 수 있다.
이상으로 디지탈 음성처리 분야의 대표적인 두 분야 즉 기술현황에 대하여 살펴보았다. 이외에도 음성처리분야로 문자의 음성합성, 화자식별, 음성이해분야 등을 생각할 수 있다. 그러나 이러한 분야들도 기본적으로는 여기에서 언급한 음성부호화와 인식분야의 연구결과들을 이용하고 있다. 이들이 복합된 최적의 응용분야로는 음성 자동번역시스템이 있다. 이 시스템의 완성은 인공지능에 대한 연구가 훨씬 더 진전되어야 하고, 이를 빠른 속도로 처리할 수 있는 제5세대 컴퓨터가 구현되었을 때에 가능하다 하겠다.