You cannot see this page without javascript.

알리바바와 40인의 도둑 이야기에 나오는 신기한 동굴의 문은 ‘열려라. 참깨’라는 말에 문이 열린다. 옛날부터 사람들은 사람 아닌 물건, 혹은 동물들이 사람 말을 알아듣는 이야기를 많이 만들어냈는데, 이것이야말로 궁극의 상상력이 아닐까 싶다. 하지만, 정작 사람은 아무 불편 없이 다른 사람 말을 듣고 이해하는 것으로 보아, 분명히 그 속에는 말을 이해하는 원리가 있을 것이고, 오늘날에는 그 원리를 이용한 음성인식 제품들이 많이 만들어지고 있다.

 

 

사람이 소리를 내는 원리

우리가 소리를 알아듣는 방법을 이해하기 위해서는, 우선 사람이 소리를 내는 방법을 알아야 한다. 우리가 소리를 내면, 공기를 매질로 한 파동이 만들어지고, 그 파동은 듣는 사람의 귀 고막을 두드리는 것으로서 음성 정보를 전달하게 된다. 그럼, 사람은 소리를 어떻게 내는 것일까? 첫 번째 단계는, 횡격막이 수축하면서 허파 속의 공기가 밖으로 나오게 된다. 이때 목에 있는 성문(聲門)을 지나게 되는데, 성문에는 성대(聲帶)라는 한 쌍의 주름이 있다.

 

우리가 ‘아~’라는 음을 발성하면서 손을 목에 대었을 때 진동을 느끼게 되는데 바로 그 부분이 성대가 떨리고 있는 부분이다. 그럼 왜 그곳에서는 진동이 발생하게 될까? 우리는 지하철 플랫폼에서 전동차가 막 지나갈 때, 플랫폼 쪽에서부터 철로 방향으로의 힘을 느끼게 되는데, 이것은 베르누이의 정리때문에 발생하는 일이다. 사람의 성문에서도 그런 현상이 발생한다. 공기가 성문을 지나게 될 때 그 부분의 압력이 낮아지고, 힘은 압력이 높은 곳에서 낮은 곳으로 향하므로 그 결과 양옆에 있는 성대들이 서로 부딪히게 된다. 성문에서 발생하는 이러한 사건들은 사람의 목소리에 어떤 영향을 주는 것일까? 바로 음의 높낮이(pitch)를 결정하게 된다. 우리가 공기를 빠르게 보내면 압력이 더 낮아지고, 성대들이 서로 부딪히는 속도는 빨라지며 음의 높이는 높아지게 된다.

 

그럼, 실제 ‘아’, ‘어’와 같은 소리의 언어적 정보는 어디에서 만들어지는가? 성대에서 입술과 콧구멍까지의 통로를 성도(聲道)라고 부르는데 바로 이 성도를 지나면서 여러 가지 음이 만들어지게 된다. 성도의 상태, 즉 입을 크게 벌렸는지 작게 벌렸는지, 혀끝이 윗잇몸에 붙었는지 아닌지와 같은 여러 가지 상태에 따라서 다양한 소리가 나오게 된다.


성도(성대에서 입술 또는 콧구멍에 이르는 통로)의 시상단면(矢狀斷面)
<출처 : wikipedia>

 

 

음성 파형으로부터 언어 정보를 추출하는 방법

‘카’라고 발성했을 때의 음성 파형

  

위에 보이는 그림은 ‘카’라고 발성했을 때의 음성 파형이다. 위 그림에서 0.13초까지 ‘ㅋ’ 음에 해당하는 음성 파형이고 그 이후부터는 ‘아’ 음에 해당한다. ‘ㅋ’과 ‘아’ 음소(音素) 파형 중 ‘아’ 파형을 관찰해보면 시간 축 상에서 커다랗게 나타나는 피크 (peak)들이 보이는 것을 알 수 있다. 바로 이 피크들의 간격을 주기라고 말하고 이 시간 차이가 성대가 떨리는 주기와 일치하게 된다. 한편 ‘ㅋ’ 파형은 그런 피크들이 보이지 않는데 성대가 떨리지 않고 난류를 일으킨 무성음이기 때문이다. 그럼 음성 인식기는 위 음성 파형으로부터 어떻게 어떤 말인지 알아낼까?
 
음성 인식기는 음성 파형이 주어지게 되면, 매 1/100 초 단위로 그 시점에 있는 약 0.02초 정도 길이의 음편(音片)을 가져와서 분석하게 된다. 그 짧은 길이의 음성 파형은 여러 단계의 신호 처리를 거치게 되고 최종적으로 10개 이상의 숫자들이 나오게 되는데, 이 숫자들은 바로 그 시점에서의 성대와 성도의 상태를 나타내는 숫자들이다. 좀 더 쉽게 설명하면, 그 시점에서의 성대 진동 횟수와 입 모양을 그릴 수 있는 숫자들이다. 한편, 음성 인식 측면에서 보면, 사람은 어떠한 음높이의 ‘학교’라는 말을 들어도 모두 ‘학교’라는 언어 정보를 추출한다. 즉, 성대의 진동 주기는 언어 정보와 무관하다. 그러므로 그 숫자 중에서 성대 진동과 관련된 숫자들은 버리고 더이상 사용하지 않는다. 위의 이야기를 비유적으로 설명하면 다음과 같이 요약할 수 있다. 성문에서부터 입까지 찍는 특수한 사진기가 있다고 가정하고 그 사진기는 초당 100회 사진을 찍게 된다. 음성 인식은, 그 사진들을 시간 축으로 나열해 놓고 어떤 말일까 계산하는 과정이다.

 

 

연속 음성 인식기의 원리

음성인식 기술은 그 기술의 난이도에 따라 ‘고립 단어 인식’과 ‘연속 음성 인식’으로 크게 나뉜다. 예를 들어 인식 대상 어휘가 ‘서울’, ‘부산’ 두 개라고 가정하자. 이때 전자는 ‘서울’과 ‘부산’ 딱 두 개 어휘만 인식하는 기술이고, 후자는 이 두 개 어휘의 모든 조합, 즉 ‘서울 서울’, ‘서울 부산 서울’과 같이 어떠한 길이의 어휘 조합도 모두 인식하는 기술이다. 당연히 후자가 더 어려운 기술이다. 그리고 사람과 같은 수준의 음성 인식기를 개발하고자 한다면, 후자의 기술이 사용되어야 한다. ‘연속 음성 인식’을 수학식으로 표현하면 아래와 같다.

 

  

 

음성 인식을 위해서는 당연히 소리를 우선 들어야 하고, T 시간까지 발성된 음성이라면 이 음성은 라고 쓰자. 다음 단계는, 어떤 말일까 예측을 해야 하는데 그 말이 몇 개의 단어로 되어 있는지 모르므로 이라고 쓰고 여기서 m은 단어의 수가 된다. 첫 번째 식의 의미는, 음성이 주어졌을 때 모든 단어 조합에 대해서 가장 확률적으로 가능성이 큰 단어 열이 바로 우리가 찾고 싶은 단어 열이고 그것이 음성인식의 결과 이라는 의미이다.


위에서 첫 번째 식은 베이즈 정리 (Bayes’ Theorem)에 의해서 두 번째 식이 되고, 는 해당 음성 자체가 입력될 확률인데 이 값은 어떤 단어 열을 선택하든 언제나 분모로 있으므로 전체 식에 영향을 주지 않아 제거할 수 있다. 마지막 식에서 을 음향 모델(acoustic model)이라고 부르고 을 언어 모델(language model)이라고 부르는데, 이 두 모델의 확률 곱이 최대가 되는 이 우리가 찾고 싶은 최종 결과이다.


그럼, 두 모델의 의미는 무엇일까? 우선 을 보면 음성 파형을 의미하는 가 없다. 즉, 파형을 보지도 않고 그 음성이 무엇일까 예측하는 확률이다. 예를 들어, 오늘이 올림픽 개최일이라고 가정하자. 그렇다면, 사람들은 아마도 ‘올림픽’이라는 단어를 사용할 가능성이 클 것이다. 그러므로 누군가 무슨 말을 했는데 그 말을 맞추어야 한다면, ‘올림픽’ 아니냐고 이야기하는 것이 가장 합리적인 생각일 것이다. 정리하면 은 사람이 발화 시점에 어떤 단어들을 말할 확률을 미리 계산해서 가지고 있는 값이다. 두 번째로 은 단어 ‘올림픽’을 발성했을 때 해당 음성이 발성될 확률을 의미한다. 예를 들어 네 살배기 어린아이가 ‘올림픽’을 발성하는 것과 성인이 발성하는 것, 그리고 성우가 발성하는 것은 쉽게 생각해도 음의 명료성에서 크게 차이가 있을 것이다. 어린아이가 발성한 ‘올림픽’은 ‘올림’이 ‘우리’처럼 들려서 어쩌면 ‘우리 엄마’에 가깝게 들릴지도 모르고, 그러면  가  보다 더 높은 확률값을 가지게 된다.

 

 

빠르게 인식하는 방법

위 음성 인식 수식을 보면, 모든 후보가 되는 단어 열에 대한 확률을 모두 구해야 하고 그 중 가장 높은 확률을 낸 단어 열을 선택하게 되어 있다. 한편, 단어 열 길이에 대해 제한이 없으므로, 상식적으로 생각해도 우리가 찾아야 하는 탐색 공간은 무한대가 되어 버린다. 그러므로 어떻게 빠르게 단어 열을 찾을 것인가가 중요한 문제가 된다. 이에 대한 해결책은 매우 단순하다. 모든 후보 단어 열에 대한 가능성을 열어두고 음성을 듣다가 정답이 아닐 것 같은 후보들을 탈락시키는 것이다. 마치 축구에서 토너먼트 경기를 하면서 한 팀씩 탈락하는 것처럼, 음성을 들으면서 가능성이 없는 후보는 빨리 탈락시킨다. 음성 신호가 모두 처리되었을 때는 그 험한 경쟁에서 살아남은 최종 승리자가 최종 인식 결과가 된다.

 

 

 

이상호 / NHN 기술연구팀 팀장
KAIST에서 한국어 문서-음성 변환 시스템에서의 운율 생성 모델로 박사학위를 받은 후, LG에서 음성 인식기 개발에 참여했으며, 현재는 네이버 음성 검색 시스템을 개발하는 기술연구팀에서 근무하고 있다.


발행일 
2011.03.24




원문출처 : http://www.soonpeng.co.kr/index.php?document_srl=1045166
profile
엮인글 :
List of Articles
번호 제목 글쓴이 조회 수 날짜
공지 심심타파 잼있는 글 많이 올려 주세요....(냉무) [1] Chanyi 10629 2003-06-10

좋은글 명상의 대중화

명상의 대중화 생각은 좋은 생각과 나쁜 생각이 있습니다. 상상도 마찬가지입니다. 하지만, 명상은 좋고 나쁨이 없습니다. 명상은 긍정적이고 좋은 말입니다. 그래서 좋은 사람, 좋은 세상이 되려면 누구나 명상을 하고 명상이 대중화된 사회가 되어야 합니다. 명상상태에서는 생명의 실체를 바라볼 수 있고, 자신의 영혼은 물론 다른 사람의 영혼을 느낄 수 있습니다. 생명의 가치와 소중함이 가슴으로 느껴집니다. 삶 속에서 위험을 벗어날 길은 평소에 선한 일을 많이 하고 좋은 생각과 좋은 상상을 많이 하는 것입니다. 평소에 다른 사...

  • 2011-07-22

좋은글 목표는 크게 잡아라~ [1]

위대한 기업을 세우고자 한다면 위대한 꿈을 가질 용기가 있어야 한다. 작은 꿈을 꾼다면 어떤 작은 것을 이루는 데는 성공할 것이다. 많은 사람이 그것에 만족한다. 하지만, 광범위한 영향력과 영구적인 가치를 얻고 싶다면, 담대해져라. (If you want to build a great enterprise, you have to have the courage to dream great dreams. If you dream small dreams, you may succeed in building something small. For many people, that is enough. But if you want to achieve widespread impact and lasting value, be bold.) -하워...

  • 2011-07-22

좋은글 3D영화의 원리

입체 영화라고도 하는 3D 영화는 의외로 오랜 역사를 가지고 있다. 1800년대 중반부터 사진이나 그림을 입체적으로 볼 수 있는 장치를 만들어 즐기기 시작했으며 1922년에 최초의 상업용 3D 영화로 알려진 ‘the power of love'가 상영되기에 이르렀다. 1950-60년대 매우 활발하게 제작되었던 3D 영화는 침체기를 지나 2000년대 컴퓨터 기술의 힘으로 새로운 시대를 열고 있다. 사람이 보는 세계는 모두 3차원이다. 그러나 영화관의 스크린에 펼쳐지는 영상은 깊이가 없는 면으로 이루어진 2차원이다. 그런데 3D 영화의 영상은 우리가 마치...

  • 2011-07-22

좋은글 기계의 음성인식 원리

알리바바와 40인의 도둑 이야기에 나오는 신기한 동굴의 문은 ‘열려라. 참깨’라는 말에 문이 열린다. 옛날부터 사람들은 사람 아닌 물건, 혹은 동물들이 사람 말을 알아듣는 이야기를 많이 만들어냈는데, 이것이야말로 궁극의 상상력이 아닐까 싶다. 하지만, 정작 사람은 아무 불편 없이 다른 사람 말을 듣고 이해하는 것으로 보아, 분명히 그 속에는 말을 이해하는 원리가 있을 것이고, 오늘날에는 그 원리를 이용한 음성인식 제품들이 많이 만들어지고 있다. 사람이 소리를 내는 원리 우리가 소리를 알아듣는 방법을 이해하기 위해서는,...

  • 2011-07-22

좋은글 담쟁이-도종환 file

 어쩔 수 없는 벽이라고 우리가 느낄 때 그 때 담쟁이는 말 없이 그 벽을 오른다 물 한 방울 없고, 씨앗 한 톨 살아 남을 수 없는 저것은 절망의 벽이라고 말할 때 담쟁이는 서두르지 않고 앞으로 나아간다 한 뼘이라도 꼭 여럿이 함께 손을 잡고 올라간다 푸르게 절망을 다 덮을 때까지 바로 그 절망을 잡고 놓지 않는다 저것은 넘을 수 없는 벽이라고 고개를 떨구고 있을 때 담쟁이 잎 하나는 담쟁이 잎 수천개를 이끌고 결국 그 벽을 넘는다 도종환...담쟁이

  • 2012-01-02

심심타파 하는일이 힘들다고 느껴질때.. file

허걱~ When You Think You Have The Worst Job In The World... Just Remeber

  • 2011-12-31

좋은글 만약 내가

만약 내가 If I can ease one life the aching, or cool one pain, or help one fainting robin onto his nest, I shall not live in vain. (Emily Dickinson, "If I can . . . ) 만약 내가 누군가의 아픔을 쓰다듬어 줄 수 있다면, 혹은 고통 하나를 가라앉힐 수 있다면, 혹은 기진맥진 지친 한 마리 울새를 둥지로 되돌아가게 해줄 수 있다면, 나 헛되이 사는 것은 아니리. (에밀리 디킨슨의 시 “만약 내가 . . . ” 중에서)

  • 2011-12-26

심심타파 Piano Stairs

  • 2011-12-23

심심타파 전세계남자들이 감동한사진 file

  • 2011-12-07

좋은글 2006년 UN 선정 최고의 동시 file [3]

When I born, I black. 내가 태어났을때, 난 검다. When I grow up, I black. 내가 성장할때, 난 검다. When I go in sun, I black. 내가 햇볕에 나갈때, 난 검다. When I cold, I black. 내가 추울때, 난 검다. When I scared, I black. 내가 두려울때, 난 검다. When I sick, I black. 내가 아플때, 난 검다. And when I die, I still black. 그리고 내가 죽을때, 난 여전히 검다. You white folks... 너네 백인들은... When you born, you pink. 너가 태어났을때, 넌 분홍이다. When you grow up, you white. 너가 성장할때, 넌 희다. ...

  • 2011-11-24

좋은글 도를 지나쳐 살면

도를 지나쳐 살면 Superfluity comes sooner by white hairs, but competency lives longer. (The Merchant of Venice 1.2.7-8) 도를 지나쳐 살면 흰 머리카락이 빨리 늘어나지만, 절도 있는 생활을 하게 되면 오래 오래 살 수 있는 것이지요. (『베니스 상인』 1막2장 7-8행)

  • 2011-11-22

심심타파 진정한 승자 ㅋㅋ

  • 2011-11-05

좋은글 단 하루의 시간이 내게 주어진다면 file [1]

덜 미워하고 더 사랑하겠습니다. 덜 가지고 더 행복하겠습니다. 눈물을 흘리는 대신 웃겠습니다. 다가오지 않은 내일을 두려워하는 대신 오늘을 열심히 살겠습니다. 잘못된 결정을 후회하는 대신 새로운 결정을 내리겠습니다. 실패를 안타까워하는 대신 다시 무언가를 시작하겠습니다. 아프다고 말하는 대신 아픔을 견디겠습니다. 바쁘다고 말하는 대신 쌓인 일을 하나씩 해 나가겠습니다. 남들에게 어떻게 보일까 걱정하는 대신 나 자신에게 어떻게 보일까 생각하겠습니다. 남들의 잘못을 용서하는 대신 나 자신의 잘못을 뉘우치겠습니다...

  • 2011-11-01

좋은글 투표해야하는 이유. 프레지던트 명대사 [1]

  • 2011-10-30

심심타파 기발한 과속방지턱 근데? file

  • 2011-10-29
본 사이트에서는 회원분들의 게시된 이메일 주소가 무단으로 수집되는 것을 거부합니다. 게시된 정보 및 게시물의 저작권과 기타 법적 책임은 자료제공자에게 있습니다. 이메일:chanyi@hanmail.net Copyright © 2001 - 2022 EnjoyEnglish.co.kr. All Right Reserved.