본문 바로가기

아마추어 chatgpt 활용기

음성인식 문제 해결 시도-5(새 음성모델을 찾아서)

반응형

pocketsphinx로 구현한 음성인식을 테스트 해보았다.

a, b, c, d, e, f를 차례대로 발음해보았다. 과연 결과는?

 

h, h, s, t, y, a로 차례대로 인식하는 결과를 나타냈다.

내 발음이 심각하게 잘못된건가...

그래도 구글에서는 어느정도 인식률은 보였는데....

비교차원에서 구글로 한번 a, b, c, d, e, f를 차례대로 발음해보았다. 과연 결과는?

 
 

h, b, s, .... 중간에 멈춤현상이 발생했다.

구글은 서버에 신호를 보내고 받는 형태로 인식을 하는 거라 잦은 멈춤현상이 발생하긴 했는데 그래도 정확도가 좋을 땐 50%이상이 나오기도 했었는데....

pocketsphinx 는 오프라인으로 음성인식을 받아오는 형태인데 속도는 확실히 빠르고 멈춤현상도 없었는데 문제는 정확도가 0%....

물로 내 발음에도 문제가 있긴 하겠지만

구글은 확실히 문장단위로 인식하게 될 시에는 뛰어난 성능을 보였는데 알파벳 낱개로 인식하는건 성능이 저하되었다.

 

Google pocketsphinx 두 음성인식모델을 행맨게임에 쓰기에는 힘들 것 같다.

 

그럼 GPT가 추천해준 두 번재로 Kaldi

Kaldi는 머신러닝과 신경망 기반 음향 모델링을 기반으로 한 오픈 소스 음성 인식 도구로 높은 정확도와 유연성을 제공하며, 강력한 개발자 및 연구자 지원을 받고 있다고 한다.

 

높은 정확도가 눈에 확 들어왔다.

 

그럼 Kaldi를 한 번 테스트 해볼까?

설치과정과 사용방법에 대해 GPT에게 물어보았다.

 

***Kaldi를 사용하기 위해서는 몇 가지 설정과 데이터 구성, 그리고 모델 학습이 필요합니다. 각 단계를 자세히 설명하겠습니다.

 

1. Kaldi 설치: 먼저 Kaldi를 다운로드하고 설치해야 합니다. Kaldi는 오픈 소스로 제공되며, 공식 Kaldi 웹사이트에서 최신 버전을 다운로드할 수 있습니다. 설치 과정은 해당 웹사이트에서 제공하는 설치 가이드를 따르면 됩니다.

 

2. 데이터 수집 및 전처리: 음성 인식 모델을 학습시키기 위해서는 대량의 음성 데이터가 필요합니다. 데이터를 수집하여 음성 녹음 파일로 저장하고, 이를 텍스트 레이블과 매칭시켜야 합니다. 또한, 데이터 전처리 과정에서 음성 신호를 특징 벡터로 변환하여 사용할 수 있는 형태로 가공해야 합니다. 이 단계는 데이터 수집, 음성 신호 처리, 레이블 작성 등을 포함합니다.

 

3. 언어 및 음향 모델링: Kaldi는 언어 모델과 음향 모델을 사용하여 음성을 인식합니다. 언어 모델은 문장의 구조와 단어의 확률을 모델링하는 데 사용되며, 음향 모델은 음성 신호와 음소 사이의 매핑을 모델링하는 데 사용됩니다. 이 단계에서는 언어 모델과 음향 모델을 구축하기 위해 학습 데이터를 사용합니다.

 

4. 모델 학습: Kaldi에서는 음성 인식 모델을 학습하기 위해 몇 가지 단계가 필요합니다. 먼저, 음향 모델 학습을 위해 기존 데이터를 사용하여 음향 특징을 추출하고, 음향 모델을 초기화합니다. 그런 다음, 추출된 특징과 정렬된 레이블을 사용하여 음향 모델을 학습시킵니다. 이후, 언어 모델 학습을 위해 텍스트 데이터를 사용하여 언어 모델을 구축합니다.

 

위 단계들을 거쳐 Kaldi를 설정하고 데이터를 구성한 후, 모델 학습을 진행하여 음성 인식 모델을 구축할 수 있습니다. 이후, 위에서 제시한 예시 코드를 사용하여 Kaldi를 이용한 음성 인식 행맨 게임을 구현할 수 있습니다.***

 

내용이 뭔가 심상치 않다. 어렵다. 매우 어렵다.

 

Kaldi를 사용하기 위해서는 오픈 소스 음성 인식 도구로, 고급 음향 및 언어 모델링을 위한 설정과 학습 데이터가 필요하다. 데이터 수집 및 전처리, 언어 및 음향 모델링, 디코딩 등의 과정을 거쳐야 한다.

 

무언가 할 게 많은 음성인식 버전이다. 사용자가 직접 언어모델 기반을 구축해야 하니

아무것도 모르는 나에게는 매우 벅찬 일이다.

 

그래서 Kaldi 구축하는 방법을 찾아보긴했는데 역시나 스크롤 내리기전에도 포기해야겠다는 생각이 들었다.

 

결국에는 다른 음성 인식 API를 찾아 나서기로 했다.

웹을 찾아보던 중 한국에서 개발한 VITO 음성인식라이브러리를 발견하였다.

구글보다 빠르고 정확한 음성인식 API 제공

문구가 눈에 딱 들어왔다. 그런데 API를 사용하기 위해서는 개발자님의 허락을 받아야 하기 때문에 겁도 없이 신청을 해보았다. 원래는 기업들 대상으로 신청을 받는다고 적혀있지만 개인으로 도전을 했다.

 
 

안 된다고 하면 안 되는 거지

기대없이 결과를 기다려야겠다.