본문 바로가기

APPLE/APPLE Geek Bible

시리(Siri)가 베타(Beta)인 이유


 애플의 새로운 음성인식 기능인 시리(Siri)는 현재 베타서비스(Beta) 서비스를 하고 있습니다. 이에 대해 '다른 언어 지원을 하지 않아서', '인식률이 완벽하지 않아서' 등 다양한 의견이 있습니다. 물론 새로운 서비스를 테스트하기 위함으로 베타테스트를 하고 있는거겠죠. 여기서 제가 말하고자 함은 시리의 가능성입니다.






시리(Siri)가 베타(Beta)인 이유


 시리가 정해진 커맨드가 아닌 문맥을 이해하고 거기에 따른 답을 내는 것은 이제 누구나 다 알고 있습니다. 그런데 어떻게 문맥을 이해하는 것일까요?




iOS5 약관


Siri를 사용함으로써, 귀하는 Apple과 Apple의 자회사 및 대리인이 귀하의 입력된 목소리와 사용자 데이터 등 이러한 정보를 Siri와 기타 Apple 제품과 서비스의 제공과 증진을 위하여 전송, 수집, 보유, 처리 및 사용하는 것에 동의합니다.


 iOS5의 약관을 읽어보셨나요? 약관을 보면 그 전에는 없던 시리에 대한 내용이 있습니다. 거기에는 위의 내용이 적혀있죠. 시리를 사용하게 되면 목소리가 녹음되고 녹음된 음성데이터를 애플서버로 보내 처리하여 답이 나오게 됩니다. 여기서 녹음된 음성데이터는 애플이 수집하게 되는데 이 데이터를 이용하여 시리의 성능을 계속해서 상승시킬 수 있습니다.

 여기에는 음조와 억양 등의 음성 정보와 단어, 문장 연결 등의 언어 정보가 모두 포함합니다.





사용할수록


  시리를 사용하면 할수록 이 음성데이터를 늘어갑니다. 다양한 사람, 지방, 인종의 패턴을 수집해가는 것이죠. 그것은 인식률을 높히는데 사용되어집니다.


Siri
Siri
Siri
City
City
City


 위 표를 봅시다. 제가 시리를 사용하면서 인식을 번갈아가며 했던 것이 'Siri'와 'City'인데요, 쉽게 설명하자면 'Siri'라고 하는 100% 정확한 발음이 있을테고, 'City'의 100% 정확한 발음도 있을 것입니다. 하지만 누구나 발음이 100% 정확하진 않죠. 그래서 Siri와 City 사이에 100% 아래의 발음이 있고 시리에게 말을 걸었을때 발음 중 가장 근접한 언어로 인식을 하게 되는겁니다. 이것이 음성인식 기능의 기본이죠.

 시리의 경우 음성데이터를 수집하고 그 수집한 데이터를 토대로 발음의 정확도를 더욱 세분화시킵니다. 90% / 80% / 70%의 구분 경계를 99% / 98% / 97%로 잘게 나뉜다는 것이고, 그렇게 사용할수록 인식률이 좋아지게 됩니다. 이것은 시리의 서비스를 지속하면 할수록 더욱 정확하게 나타나게 되는 것이죠.

 이것은 억양을 인식하는데도 사용이 되어집니다. 어느 지방이나 고유의 억양이 있죠. 그것은 지방이 아니라 사람 개개인도 다 다르게 나타납니다. 그 억양 데이터를 잔득모아서 비슷한 것끼리 모으게 됩니다. 사용량이 많을 수록 데이터는 늘어나고 비슷할 억양들이 모이고 모이다보면 그 집합은 다른 비슷한 집합과도 뭉치게 되면서 촘촘한 그물같은 데이터가 만들어지게 됩니다. 결국 다양한 억양을 인식할 수 있게 되는 것이죠. 이것은 패턴을 모으는 것인데 아래에서 더 자세히 알아봅시다.





언어


 수집된 데이터는 언어를 수집하는데 사용되어집니다. 정확히 말하자면 언어의 패턴입니다. 이것은 위에서 말한 발음/인식과 비슷한데요, 언어라는 것은 일정한 패턴에 의해 사용되어집니다.

 '오늘 날씨가 추워?'와 '추워? 오늘 날씨'는 같은 뜻을 지녔습니다. 시리는 이것을 구성을 정확하게 파악하여 '오늘', '날씨', '추워'의 뜻의 추려냅니다.

 '오늘 날씨가 추워?', '내일 날씨는 추워?'에서 다른 것은 '오늘'과 '내일'입니다. 이 구성만 바꾸면 다른 뜻이 되죠. '추워?'가 빠지면 오늘 날씨를 묻는 물음이 됩니다. '오늘 날씨'만 빠지면 '추워'가 되고 지금 춥다는 것이 되죠.

 '오늘', '내일', '날씨', '추워'이 4가지만으로도 많은 조합을 얻을 수 있습니다. 단어를 조합하고 문장을 만들었을때 조합 구성에 따라 일정한 언어의 패턴이 나는 것입니다. 물론 이 패턴 데이터는 굉장히 거대합니다. 그러나 시리는 이미 이 페턴 데이터를 사용하여 문맥을 이해하고 있죠. 그리고 이미 방대한 데이터에 수집한 다양한 패턴들을 계속해서 추가하게 되면 억양처럼 언어의 사용에 있어서 시리는 더욱 유연해집니다. 그 패턴을 통해서 더 많고 조밀한 언어를 알아들을 수 있게 되니까요. 대신에 그 패턴을 활용하여 답을 하는데는 오랜시간이 걸릴지도 모르겠습니다. 그것을 음성으로 사용자에게 전달을 해야하니까요.





울프람 알파




 정말 시리가 언어의 패턴을 사용하는지에 대해 의구심이 들지도 모르겠습니다. 여기에 대한 답이 '울프람 알파'에 있습니다.

 시리는 울프람 알파 엔진을 사용하여 검색을 합니다. 그런데 이 울프람 알파 자체가 패턴을 기반으로한 정보제공을 하고 있습니다. 질문 또한 마찬가지입니다. 예를 들어 '세상에서 가장 큰 동물은?'이라는 질문이나 '태양은 지금 어디에 있어?' 같은 질문에 대하여 정확하게 답을 해줍니다. 그 답뿐 아니라 연관된 정보들까지 말이죠. 이것은 패턴을 이용한 연산과 그 연산을 통한 정보의 패턴을 이용한 답의 제공으로 가능한 것입니다.

 시리 또한 마찬가지 입니다. 덕분에 시리의 음성 패턴 데이터를 텍스트로 변환하고, 그 텍스트를 이용하여 울프람 알파로 검색이 가능하도록 되어 있는 것입니다. 대신에 위에서 말했듯이 울프람 알파가 아닌 시리가 직접적으로 언어의 패턴 정보를 사용하여 답을 할 순 없습니다. 울프람 알파는 정보의 패턴을 모두 텍스트화 해두었기에 정보를 보여주는 것이 가능하지만, 시리는 수집된 언어 패턴을 정보화하여 음성, 텍스트화 되지 못했기 때문입니다.

 이것이 좀 더 발전하면 어떻게 될까요? 언어의 패턴 정보를 이용하게 되면 다른 언어를 인식하는 것도 가능해집니다. 시리가 한국어 서비스를 지원하게 되면 질문을 했을때 그 질문에 대한 정보 패턴을 펼쳐보면 영어로 질문했을 때의 문장도 찾아낼 수가 있습니다. 언어만 다를 뿐 같은 같은 패턴으로 작동을 하니까요. 그렇게 되면 시리를 이용하여 한글로 질문을 하더라도 울프람 알파의 결과물을 얻어낼 수 있습니다. 물론 영어로 된 정보로요. 그것은 텍스트가 아니라 음성을 사용했을때 데이터를 더 빨리 끌어모을 수 있기 때문에 시리의 발전이 비약적일 수 있습니다.





시리의 가능성


 이 음성, 언어 데이터를 시리가 계속해서 수집을 하면 어떻게 될까요? 우리가 영화에서나 보던 인공지능에 가까워지는 것입니다. 다양한 패턴을 연산하여 조합하고 답을 내놓게 된다면 더 정확하게 인식하고 다양한 대답을 이끌어 낼 수 있다는 것이죠. 이 패턴을 사용할수록 조밀해지고 다양해질 것입니다.

 그리고 모아둔 언어 패턴을 애플은 어떤 제품에든 활용을 할 수 있습니다. 좀 더 궁극적이고 구체화를 시켜보자면 장애인이 휠체어를 음성으로 조종할 수 있다거나, 집안의 모든 것을 음성으로 조작하는 등의 기술들을 구현하는데 쓰일 수 있다는 것입니다.

 좀 무서운 이야기이기도 하지만 애플은 그런 것들을 위해, 하나의 거대한 데이터 베이스 보유하기 위해 음성 데이터를 계속해서 수집하고 있습니다. 그것은 시리의 무한적인 가능성을 예상하게 합니다.


 애플은 2012년에 13개 언어를 추가 지원한다고 밝혔습니다. 이 언어들이 공개가 되어지면 애플이 얼만큼 정보를 가지고 있는지에 대한 것도 어느정도 알 수 있지 않을까 싶습니다.