[개발이야기#022] 내가 해보고 싶은 것 - 나만의 AI 비서 / 2. 텍스트를음성으로(TTS)[postingcuration]

in #kr5 days ago


안녕하세요 가야태자 @talkit 입니다.

오늘은 지난 번 STT주제에 이어서 TTS의 이론을 조금 알아 보겠습니다.

그전에 이글은 #postingcuration 프로젝트의 지원을 받으면서 글을 쓰고 있습니다.

관심 있는 분은 태그를 누르셔서 다른 분들의 글도 많은 응원 부탁 드립니다.

다음으로 이전 글의 소개 입니다.

어제도 쓰고 싶었지만, 사천 본가에 있어서 글을 못적었습니다.

인공지능과 자율주행에 관하여 - https://steemit.com/kr/@talkit/019-ai-postingcuration

STT의 이론적인 이야기 - https://steemit.com/kr/@talkit/019-ai-1-sttpostingcuration

STT를 실제로 구동 - https://steemit.com/kr/@talkit/021-ai-1-sttpostingcuration

이 글로 처음 들어 오신 분들은 위의 글도 한번 봐주시면 감사하겠습니다.

자 이제 본 격적으로 TTS를 시작 하겠습니다.

지난 번에 설명드린, STT라는 놈이 사람의 음성을 텍스트로 변환하는 기술이라면,

TTS는 반대 기술 입니다. 텍스트를 사람의 음성으로 변경해주는 기술이죠 ^^

TTS의 주요 사용처

  • 지하철 버스의 안내방송 시스템
    지하철 버스의 안내 방송은 요즘은 TTS와 사람의 목소리를 동시에 서비스하고 있습니다. TTS가 많아지고 있는 추세 입니다.
  • 오디오 북 시스템
    오디오북은 조금 다른 것이 사람들의 목소리를 녹음해서 만드는 경우도 많아서 ^^
  • 네비게이션의 안내 음성
  • 인공지능 개인 비서의 응답 메시지

TTS기술의 변화

  • 비인공지능 TTS - 사람의 음성을 음절 단위로 녹음을 하고 텍스트와 1:1매칭을 한다음에 붙여서 출력하는 기존 시스템 입니다.
  • 인공지능 TTS - Text와 음성을 동시에 학습 시키고, 텍스트 파일을 음성으로 변환하고, 비 인공지능 TTS에 비해서 확장성이 큽니다.

요즘도 좋은 발음들을 위해서 비인공지능 TTS를 사용하고 있지만, 인공지능 TTS도 많이 따라온 상태 입니다.

현재 비 인공 지능 TTS는 제 관심 분야가 아니어서 이번 글에서 인공지능 TTS에 관해서 좀 더 알아보겠습니다.

TTS의 기본 동작 원리

TTS 시스템은 텍스트를 음성으로 변환하는 여러 단계를 거칩니다. 기본적인 과정은 다음과 같습니다:

텍스트 분석 (Text Analysis):

입력된 텍스트에서 문장, 단어, 구두점 등을 분석합니다.
줄임말, 숫자, 기호 등을 사람이 이해할 수 있는 단어로 변환합니다.
이를 통해 텍스트의 의미를 파악하고 음성 합성을 준비합니다.

발음 변환 (Phonetic Conversion):

문자를 소리의 단위인 음소 (Phoneme)로 변환합니다. 음소는 발음의 기본 단위로, 예를 들어 "apple"은 /æ/ /p/ /əl/로 변환됩니다.

프로소디 처리 (Prosody Processing):

단순히 글자를 소리로 변환하는 것뿐만 아니라, 자연스러운 억양, 리듬, 강세를 추가합니다.
이 과정에서 문장 구조, 구두점 등을 고려하여 어디서 멈추고, 어디서 강조해야 할지 결정합니다.

음성 합성 (Speech Synthesis):

분석된 텍스트 정보를 기반으로, 실제 음성을 합성합니다.
이때 선택된 음성 데이터베이스나 인공지능 기반의 모델을 사용해 음성 파일을 생성합니다.

챗GPT가 알려준 내용으로 TTS의 처리 과정은 위와 같이 이루어 진다고 합니다.

이러한 과정에서 TTS 모델이 발전을 하였는데 AI 기반 TTS 시스템은 주로 딥러닝 기술을 활용합니다. 여기서 중요한 기술 중 하나가 딥러닝 음성 합성 모델입니다. AI 기반 TTS 시스템은 주로 Tacotron, WaveNet, FastSpeech 같은 모델을 사용해 고품질의 음성을 생성합니다.

그래서 다음 글에서는 실제로 TTS엔진을 선행학습한 아이를 가져와서 실행해 볼 계획입니다.

물론 STT처럼 두가지 방향으로 진행하겠습니다.

돈이 들더라도 구글의 API를 이용해보는 방법과 비교적 부정확하겠지만 직접 AI 모델을 이용해서 TTS 엔진을 구현해보겠습니다.

그럼 다음 시간에 뵙겠습니다.

감사합니다.



Posted through the ECblog app (https://blog.etain.club)

Sort:  

[광고] STEEM 개발자 커뮤니티에 참여 하시면, 다양한 혜택을 받을 수 있습니다.

TTS에 관한 좋은 글 감사합니다~! ^^