Trend
speechify는 문서나 기사, PDF 및 이메일 등의 텍스트를 음성으로 변환하여 읽을 수 있는 TTS(Text-to-Speech) 기능을 제공하고 있습니다. 또한 광학 문자 인식 기술을 사용하여 책이나 인쇄된 텍스트를 오디오로 변환할 수 있습니다. 사진으로 찍은 텍스트에 speechify를 사용하면 음성으로 읽어주는 것이죠.
한 소년은 해리 포터를 읽고 싶었지만 매번 세 번째 페이지를 넘기지 못하고 도서관을 떠날 수밖에 없었습니다. 소년을 위해 아버지는 일과를 마친 오후에 책을 읽어주셨습니다. 난독증 환자들은 문장을 읽는 데에 암산으로 4자리 숫자의 나눗셈 방정식을 푸는 것과 같은 에너지를 소모합니다. 하지만 듣기는 그보다는 훨씬 적은 에너지를 소모하기 때문에, 소년은 그제야 책을 이해할 수 있게 되었죠.
Speechify는 난독증 환자였던 Cliff Weitzman이 대학생이었을 때 처음 구상한 비즈니스였습니다. 그는 책 읽기를 어려워했던 유년 시절, 듣기를 통해 독서 경험을 개선했던 경험을 토대로 speechify를 창업했죠. 그는 오디오북을 지원하지 않는 많은 교과서와 유인물, PDF를 읽을 수 있도록 speechify를 시작했습니다.
그리고 최근 들어 TTS 기술에 대한 주목도가 높아지면서, 조금 다른 방면으로 이 기술의 가치가 드러나기 시작했습니다. 이 글에서는 전 세계 유튜버들이 주목하는 TTS 기술, 그중 완성도 높은 기술력을 자랑하는 speechify의 TTS 과정에 대해 설명합니다.
유튜브 제작자들은 영상의 시청 가독성을 높이기 위해 자막과 음성을 활용합니다. 일부는 본인의 목소리를 직접 사용하여 넣기도 하겠지만, 많은 영상 제작자들이 TTS 기능으로 생성된 음성을 사용하기도 합니다.
유튜버들이 TTS로 ‘만들어진 목소리’를 영상에 넣는 이유는 일반적으로 아래와 같습니다.
Speechify는 입력된 데이터를 인공지능을 활용해 처리한 뒤 선택한 음성으로 변환 및 출력하는 과정을 거칩니다. 이후에는 사용자의 필요에 맞춰 출력물에 커스터마이징을 입력할 수 있습니다. 아래에서 텍스트 음성 변환 프로세스를 위해 Speechify 앱에 문서나 웹페이지 등의 텍스트를 업로드한 이후, TTS 과정을 자세히 분석해 보겠습니다.
Speechify는 NLP 알고리즘을 통해 입력 텍스트를 분석합니다.
NLP(자연어 처리:Natural Language Processing)란, 인간의 언어를 이해하고 해석하는 방법을 컴퓨터에 가르치는 것과 관련된 인공지능 분야를 의미합니다. 특히 오디오 전사 또는 자동 음성 인식을 목적으로 한 NLP는 인간과 기술이 함께 적용되는 산업 전반에서 다양하게 활용되고 있습니다.
자동 음성 인식은 정확도를 목표로 NLP 모델을 활용합니다. 원래 음성인식 분야에서 컴퓨터의 한계는 음의 높낮이를 판단하는 수준에 그쳐있었습니다. 하지만 이제 알고리즘은 오디오 샘플에서 패턴을 감지하고, 다양한 언어의 소리를 통해 화자가 말한 단어의 의미를 결정할 수 있게 되었습니다. 최근에는 딥러닝 신경망을 활용하여 훨씬 더 정확하면서, 사람의 감독이 덜 필요한 출력을 생성할 수 있게 되었습니다.
Speechify의 NLP 모델 역시 단어와 문장의 의미와 맥락을 식별할 수 있게 되었습니다. 같은 숫자라도 이것이 날짜를 의미하는지, 수치를 의미하는지 분석하고 이해할 수 있게 되었죠. 궁극적으로 텍스트의 구두점과 안정적인 구조를 이해하고 문장을 받아들일 수 있는 것을 목표로 합니다.
텍스트를 음성으로 바꿨다면, 출력을 위해 다양한 음성 중에서 사용자가 희망하는 타입을 고를 수 있습니다. 다양한 엑센트나 언어, 성별에 따라 결정할 수 있죠.
음성이 선택되면 신경망과 규칙 기반 알고리즘의 조합을 사용하여 입력된 텍스트를 음성으로 변환하기 시작합니다. 신경망은 음성 언어의 대규모 데이터 세트에서 훈련되어 입력 텍스트의 의미와 맥락을 정확하게 반영할 수 있습니다. 또한, 올바른 발음을 이해하기 위해 내장된 사전을 활용하기도 합니다.
인공지능을 기반으로 한 오디오 처리에는 많은 양의 고품질 데이터를 필요로 합니다. 여러 시나리오를 토대로 학습한 사용자 지정 음성 데이터가 필요하죠. 머신러닝을 위한 음성 데이터에는 일반적으로 응답 형식의 스크립트나 즉흥적인 대화와 같은 시나리오가 포함됩니다.
수집된 데이터는 라벨링 작업을 거쳐 학습용 데이터로 가공되어야 하며, 디지털 오디오 형식으로 샘플링하여 디지털화하는 과정이 필요합니다. 일반적으로 오디오를 레이어나 타임스탬프 등으로 분할하는 과정을 거칩니다. 물론 이 과정에서도 인공지능의 도움을 받을 수도 있지만, 상황에 따라 정확도가 떨어지는 문제가 있을 수 있습니다. 특히 음성 데이터는 전문 작업자가 필요한 대규모 작업이 될 수도 있습니다.
만약 원하는 것을 찾을 수 없거나, 직접 만들어야 할 경우 데이터헌트와 같은 데이터 수집/가공 파트너와 협업하여 학습용 데이터를 제작 및 가공할 수도 있습니다.
텍스트 음성 변환 프로세스를 마치고, 입력 텍스트의 음성 버전이 제작되었습니다. 이 음성은 Speechify의 모바일/데스크톱 앱에서 재생하거나 오디오 파일로 다운로드할 수 있습니다.
출력된 음성의 속도나 피치를 조정하거나, 특정 단어나 구문에 쉼표나 강조를 추가할 수도 있습니다. speechify는 다양한 방식으로 TTS 출력물에 사용자 지정 기능을 제공합니다.
Speechify의 Transcribe 기능은 오디오 콘텐츠를 서면 텍스트로 자동 변환하는 도구입니다. 일반적으로 Transcribe 기능은 아래와 같은 용도로 사용하고 있습니다.
또한, 최근에는 이 기능을 유튜브의 자막 생성에 사용하기도 합니다. 음성만으로 제작된 영상에 Speechify를 사용하면 쉽고 간편하게 자막으로 사용할 수 있는 텍스트로 변환할 수 있죠.
Speechify의 Transcribe 기술을 완성하는 구성 요소는 크게 기능과 개선의 영역으로 나눌 수 있습니다.
기능: 자동 음성 인식(ASR) 및 화자 분할
개선: 신경망, NLP, 오류 수정 알고리즘
앞서 설명한 대로 인공지능 기반 음성 처리는 대규모 데이터를 필요로 합니다. Speechify 역시 다양한 악센트나 언어, 음성 스타일과 구어 데이터로 구성된 대규모 데이터 세트를 통해 학습한 모델을 사용합니다. 여기에는 공개적으로 사용 가능한 음성 데이터도 있을 것이며, Speechify의 독점 데이터 세트도 포함되어 있을 것입니다.
예를 들어 Mozilla의 Common voice 데이터 세트와 같은 오픈 소스 음성 말뭉치도 음성 처리에 사용할 수 있습니다. 또한 뉴스 방송이나 팟캐스트 및 기타 소스의 오디오 녹음 데이터 역시 음성 처리 학습 데이터로 사용할 수 있습니다.
Speechify의 신경망은 다양한 억양이나 방언, 말하기 스타일의 뉘앙스와 복잡성을 학습할 수 있도록 크고 다양한 음성 언어의 샘플을 제공합니다. 또한 Speech to Text 및 Text to Speech 모델을 교육하도록 특별히 설계된 독점 데이터 세트를 수집하고 사용하고 있습니다. 독점 데이터세트를 통해 모델을 교육함으로써, 특정 유형의 콘텐츠나 애플리케이션에서 더 잘 작동할 수 있도록 모델을 최적화했죠. 따라서, Speechify는 논문이나 뉴스 등 약어와 숫자, 전문 용어들이 포함된 문서에서도 원활하게 데이터를 처리할 수 있습니다.
요약하자면….
음성 인식 학습 데이터의 핵심은 여러 화자가 녹음한 오디오 파일 세트라는 것입니다. 통화 녹음이나 팟캐스트, 오디오북 등의 구어 소스도 포함되어 있어야 보다 정확한 결과를 샘플링할 수 있죠. 단순히 언어를 알려주는 게 아니라 문맥이나 성격, 분위기를 알려주는 것이기 때문에 훨씬 더 복잡한 데이터 세트가 필요합니다.
데이터헌트는 인공지능 데이터 구축 전문가들과 함께 스타트업부터 대기업까지 믿고 만족할 수 있는 데이터를 만들어왔습니다. 대규모로 쌓인 음성 데이터 속에서 학습에 적합한 원석을 찾기 위해 전처리/가공 과정까지 완벽하게 수행했었죠. 데이터헌트가 만든 정확도 99%의 데이터와 함께라면, Speechify를 뛰어넘는 글로벌 음성 인식 플랫폼의 탄생도 멀지 않았으리라 자신합니다. 정교하고 차별화된 데이터 구축 전략, 데이터헌트가 함께합니다.