
영어 음성-텍스트 시스템에서 단어가 인식되는 방식
Eric King
Author
Speech-to-Text(STT), 즉 Automatic Speech Recognition(ASR)은 음성 언어를 텍스트로 변환하는 기술입니다. 겉보기에는 음성에서 단어를 인식하는 과정이 단순해 보일 수 있습니다. 사람이 말하면 시스템이 들은 내용을 적는 것처럼 보이기 때문입니다. 그러나 실제로 이 과정은 특히 영어에서 복잡합니다. 이 글에서는 STT 시스템에서 단어가 인식되는 방식을 설명하며, 일반적인 단어 인식 과정, 영어의 고유한 특성, 문맥의 역할, 그리고 현대 시스템의 기술적 구현에 초점을 맞춥니다.
1. 음성-텍스트에서의 일반적인 단어 인식
높은 수준에서 보면, STT 시스템의 단어 인식은 언어 전반에 걸쳐 공통된 파이프라인을 따릅니다.
-
오디오 캡처 음성은 연속적인 오디오 신호로 기록됩니다. 이 신호에는 언어 정보뿐 아니라 배경 소음, 화자 특성, 환경적 영향도 함께 포함됩니다.
-
특징 추출 원시 파형은 음성 소리를 더 잘 표현하는 특징으로 변환됩니다. 일반적인 특징에는 Mel-Frequency Cepstral Coefficients(MFCCs) 또는 log-Mel 스펙트로그램이 있습니다. 이 특징들은 시간에 따라 주파수 전반에 에너지가 어떻게 분포하는지를 포착하며, 사람이 소리를 지각하는 방식과 밀접하게 일치합니다.
-
음향 모델링 시스템은 오디오 특징과 기본 음성 단위(음소 또는 서브워드 단위 등) 사이의 관계를 학습합니다. 이 단계는 *어떤 소리가 발화되고 있는가?*라는 질문에 답합니다.
-
어휘 매핑 인식된 음성 단위는 발음 사전 또는 학습된 서브워드 표현을 사용해 단어로 매핑됩니다.
-
디코딩 마지막으로 시스템은 오디오와 학습한 언어 규칙을 바탕으로 가장 가능성이 높은 단어 시퀀스를 탐색합니다.
이 일반적인 과정은 대부분의 언어에 적용되지만, 영어는 몇 가지 고유한 난점을 추가로 가져옵니다.
2. 다른 언어와 비교했을 때 영어의 특수성
영어는 음성 인식에 큰 영향을 주는 방식으로 많은 언어와 다릅니다.
2.1 불규칙한 철자와 발음
스페인어나 일본어 같은 언어와 달리, 영어는 철자와 발음의 대응이 약합니다. 예를 들어:
- though, through, thought, tough는 형태는 비슷하지만 발음은 매우 다릅니다.
- 같은 소리가 여러 방식으로 철자화될 수 있고(see, sea, scene), 같은 철자가 서로 다른 소리를 낼 수도 있습니다(현재형과 과거형의 read).
이런 불규칙성 때문에 발음 규칙만으로는 충분하지 않으며, 학습된 패턴과 문맥의 중요성이 커집니다.
2.2 동음이의어와 유사 동음어
영어에는 소리는 같지만 의미와 철자가 다른 동음이의어가 많습니다.
- to / too / two
- there / their / they're
음성에서는 이 단어들이 음향적으로 동일합니다. 시스템은 올바른 단어를 선택하기 위해 주변 단어와 문법 구조에 의존해야 합니다.
2.3 강세, 축약, 연음
구어 영어는 문어 영어와 크게 다를 때가 많습니다.
- 기능어가 축약됩니다(going to → gonna, want to → wanna).
- 단어 경계를 넘어서 소리가 이어집니다(next please → /neks pliːz/).
어조가 핵심 어휘 역할을 하는 중국어(만다린) 같은 성조 언어와 비교하면, 영어는 강세와 리듬에 크게 의존하며, 이것이 또 하나의 복잡성을 더합니다.
3. 단어 인식을 돕는 문맥 활용
영어 음성은 소리 수준에서 모호성이 높기 때문에, 정확한 단어 인식을 위해 문맥이 필수적입니다.
3.1 국소 문맥(주변 단어)
현대 STT 시스템은 단어를 고립된 상태로 인식하지 않습니다. 대신 단어 시퀀스의 확률을 고려합니다.
- I want to ___ a car → buy가 by나 bye보다 훨씬 가능성이 높습니다.
이 국소 문맥은 동음이의어와 불명확한 발음을 구분하는 데 도움이 됩니다.
3.2 문법 및 구문 문맥
문법은 강한 제약을 제공합니다. 예를 들어:
- She ___ going home → is가 are보다 가능성이 높습니다.
언어 모델은 대규모 텍스트 코퍼스에서 이러한 패턴을 학습하여, 문법적으로 타당한 문장을 더 선호하도록 만듭니다.
3.3 의미 및 주제 문맥
더 높은 수준의 의미도 중요합니다. 주제가 기술이라면 server, model, API 같은 단어의 가능성이 높아집니다. 일부 시스템은 다음과 같은 방식으로 동적으로 적응합니다.
- 도메인 특화 언어 모델 사용
- 사용자 이력이나 애플리케이션 문맥 통합(개인정보 보호 장치 포함)
3.4 장거리 문맥
고급 모델은 문장 전체, 심지어 문단까지 고려할 수 있어, 국소 정보만으로는 해결되지 않는 모호성을 해소하는 데 도움이 됩니다. 예를 들어 앞선 문장이 시제, 주어, 주제를 설정해 이후 단어 선택에 영향을 줄 수 있습니다.
4. 단어 인식의 기술적 구현
4.1 전통적 시스템: HMM + GMM
초기 STT 시스템은 다음의 조합을 사용했습니다.
- Hidden Markov Models(HMMs): 시간 시퀀스 모델링
- Gaussian Mixture Models(GMMs): 음향 특징 분포 모델링
이 시스템들은 음소 사전, 명시적 언어 모델 같은 수작업 설계 구성 요소에 크게 의존했습니다.
4.2 딥러닝 기반 음향 모델
현대 시스템은 GMM을 다음을 포함한 심층 신경망(DNN)으로 대체합니다.
- Convolutional Neural Networks(CNNs)
- Recurrent Neural Networks(RNNs)
- Transformers
이 모델들은 오디오 특징에서 음소 또는 서브워드 단위로의 복잡한 매핑을 직접 학습하여, 소음과 화자 변이에 대한 강건성을 크게 향상시킵니다.
4.3 엔드투엔드 모델
CTC(Connectionist Temporal Classification), RNN-Transducer, attention 기반 encoder-decoder 모델과 같은 엔드투엔드 아키텍처는 다음 방식으로 파이프라인을 단순화합니다.
- 오디오를 문자, 서브워드, 또는 단어로 직접 매핑
- 수작업 발음 사전에 대한 의존도 감소
서브워드 단위(Byte Pair Encoding 또는 WordPiece 등)는 희귀 단어와 철자 변이를 더 효과적으로 처리하므로 영어에 특히 유용합니다.
4.4 디코딩과 빔 서치
추론 시 시스템은 빔 서치를 사용해 여러 가능한 단어 시퀀스를 탐색하고, 다음을 기준으로 가장 가능성 높은 시퀀스를 선택합니다.
- 음향 우도
- 언어 모델 확률
이 균형 잡기는 영어 음성의 모호성을 해소하는 데 매우 중요합니다.
5. 추가 요인과 향후 방향
5.1 화자 및 억양 다양성
영어는 매우 다양한 억양(미국식, 영국식, 인도식, 싱가포르식 등)으로 말해집니다. 현대 STT 시스템은 다양한 데이터셋으로 학습하고 화자 적응 기법을 사용해 이를 해결합니다.
5.2 소음과 실제 환경 조건
배경 소음, 중첩 발화, 마이크 품질은 모두 인식에 영향을 줍니다. 음성 향상(speech enhancement)이나 소음 강건 학습 같은 기법은 실제 환경에서 성능을 개선합니다.
5.3 문맥 인식 및 멀티모달 STT
미래 시스템은 점점 더 음성을 다음과 같은 다른 신호와 결합합니다.
- 화면에 이미 표시된 텍스트
- 사용자 상호작용
- 시각적 단서
이러한 멀티모달 문맥은 단어 인식 정확도를 더욱 향상시킬 수 있습니다.
Conclusion
영어 Speech-to-Text 시스템의 단어 인식은 소리를 단어에 단순히 맞추는 것 이상입니다. 불규칙한 발음, 모호성, 연음을 처리해야 하며, 동시에 여러 수준의 문맥을 활용해야 합니다. 현대의 딥러닝 및 엔드투엔드 모델은 정확도를 크게 향상시켰지만, 문맥 인식 기반 이해는 여전히 핵심 요소이며 특히 영어에서 더욱 중요합니다. 모델이 계속 발전함에 따라 STT 시스템은 더 정확하고, 더 적응적이며, 인간 수준의 음성 언어 이해에 더 가까워질 것입니다.
