2021.11.19-20 에 진행된 한국음성학회 가을 학술대회 발표를 듣고 리뷰를 남깁니다.
1. 특강 - "AI 시대, 음성학의 방향" - 남호성 교수님(고려대)
- 상반기 주요 그룹, 대기업 공채 합격자 중 이공계 출신 비율이 매우 높음
- 4차 산업 혁명 : 융합의 시대. 여러 사람들이 한번에 모여있다고 융합이 일어나는 것이 아니다. 한 사람의 머릿 속에 심리학, 언어학, 수학, 전자공학, 물리학, 전산학 등등이 다양하게 있어서 융합적인 생각이 일어나는 것임.
- 언어학이 엄청나게 융합적인 학문
--> 화학시간에 물질 - 원자 - 원자핵,전자 - 원자핵은 양성자,중성자 - 쿼크
--> 이런식으로 쪼갤 수 있는 것처럼..
--> '나는 학생이다' 문장 - '나는/ 학생이다' 어절 - '나/는/ 학생/이다 ' 단어 - '나/는/학/생/이/다' 음절 - 'ㄴ/ㅏ/ㄴ/ㅡ/ㄴ/ㅎ/ㅏ/ㄱ/ㅅ/ㅐ/ㅇ/ㅣ/ㄷ/ㅏ' 음소
--> 음성으로 보면 - 모음에만 국한해서 본다면 - 'ㅏ' 라는모음 - '아' 라는 해부학적인 성대 모습. 입모양으로 필터링하는 과정으로 '아'라는 음성이 만들어짐. - 성대에서 나는 소리 sin 곡선으로, 제일 낮은 음부터 해서 합치면 소리가 나옴 - 어떤 소리인지 모르는 상태에서 사람의 입이라는 필터를 거치면 결국은 'ㅏ' 라는 모음이 만들어진다.
--> sin 곡선 - 푸리에 급수에서 오른쪽 cos 동그라미 부분은 여러가지 sin 곡선들. 성대 부분을 의미.
- An 은 그냥 곱하기. 1이나 0.5.. 입모양이 어떻게 곱하면 증폭이 커지고 증폭이 줄어드는지.. vocal tract 중 입모양에 해당되는 부분이 An
- sin 곡선을 또 물리적으로 보면, "F = ma" 라는 운동방정식 + 여러 힘의 법칙 중 하나인 스프링의 법칙이 합쳐져서 이러한 sin 곡선을 만들어낼 수 있음
--> 두 자석에 코일을 감아놓고 돌림 - 코일이 수력발전기처럼 돌아감 - 교류전기가 만들어짐 - sin곡선이 만들어짐
--> sin 곡선의 주파수가 - 터빈이 얼만큼 빨리 도는지에 따라서 빠르거나 느린 sin 곡선 만들수 있음
(RLC 회로는 전기 회로중 저항, 코일, 축전기로 이루어진 회로 : 이 회로는 교류가 흐르면서 시간에 따라 전류의 세기와 방향이 변해도 각 순간마다 회로의 모든 점에서 흐르는 전류가 동일하다.)
- 저항, 텐서, 코일. 세개를 적절하게 배열.
- 23.3Hz : 교류전기의 source. 이 소스에서 전기가 발생 - RLC 회로를 적절하게 통하면 어떤 주파수 때는 output sin 곡선이 약하게, 어떤 주파수 때는 강하게 - filter 역할을 함 - 사람의 입에서 source filter - circuit theory 와 같음
- 회로 자체의 교류전기의 source 부분을 성대, 회로부분을 입모양이라고 할 수 있음
--> 음성 입력이 들어가서 '나는 학생이다' 라는 text 가 나오면 - "음성인식"
--> 음성 입력이 들어가서 '홍길동' 이라는 사람이 나오면 - "화자인식"
--> '나는 학생이다' 라는 텍스트가 들어가서 소리가 나오면 - "음성합성"
--> 이런식으로 음성이 AI 중에서 언어부분이 끝판왕. AI 를 만드는 이유 - 궁극적인 목표는 사람을 대체할 수 있는 대화를 할 수 있는 것 만들기 라고 생각할 때, 언어, 음성이 한 중심이다. 음성학이 AI 의 주인.
- 언어 - 음성언어, 문자언어 - 과학 공학으로 가면 신호처리. 자연어처리.
- 학생들 - 5년 공부가 아깝지 않을 공부를 해라. 올인해서 대학원 공부해서 나중에 아깝지 않을 공부하기.
2. 음성공학 발표 3편
1) 전체 맥락과 깊이별 분리 합성곱을 이용한 Conformer 기반 음성 인식기의 순방향 모듈 개선 - 정승훈님, 김홍국님 (광주과학기술원 AI 대학원)
1. 서론
음성인식 연구 동향
- 은닉 마르코프 모형 기반 기존 음성 인식 모델은 발음모델, 음향모델, 언어모델로 구성되어 있으며 이 세 가지 구성요소를 각기 다른 목적함수로 독립적으로 학습함
--> 이로 인해 모델이 복잡하고 상호간에 독립을 가정하기 때문에 전체 맥락을 볼 수 없음
- 이 후엔 위 세 요소를 하나로 합쳐 음성과 전사 간의 관계를 학습하는 종단형 음성 인식기가 활발히 연구됨
- 종단형 음성인식 시스템은 크게 3가지
1) Attention 인코더-디코더 구조
- 음향 프레임에서 문자 시퀀스로의 매핑을 직접 학습하며 조건부 독립 가정이 없기 때문에 CTC 모델보다 더 나은 성능을 보임
- 그러나 노이즈가 많은 환경에서 성능이 좋지 않고 입력 발화가 길 때 초기 학습이 잘 되지 않음
2) Connectionist Temporal Classification(CTC)
- 라벨의 반복과 'blank' 라벨을 사용하여 출력이 없는 라벨을 식별
- 손실은 순방향-역방향 알고리즘에 의해 효율적으로 계산될 수 있지만, 모든 프레임에 대한 목표를 예측하고, 라벨들이 서로 조건부 독립이라 가정하는 단점 존재
3) RNN-Transducer(RNN-T)
- CTC를 확장한 개념으로 출력을 위해서 이전 RNN 출력을 다시 입력으로 사용하는 자기회귀 RNN 을 사용함
- 본 논문에서는 Attention 인코더-디코더 구조에 CTC를 결합하여 둘의 장점을 취한 Joint CTC-Attention 인코더-디코더 모델을 기반으로 함
연구동기
- 기존 Joint CTC-Attention 인코더-디코더 모델은 순환 신경망을 기반으로 만들어짐
- 하지만 순환 신경망은 병렬 연산을 제한하여 메모리 제약으로 긴 발화에 취약함
- 반면 주의집중(Attention) 메커니즘은 입력, 출력 시퀀스의 길이에 상관없이 전역 의존도를 모델링해줄 수 있음
- Transformer 는 순환 신경망 대신 자기-주의집중(self-attention)을 활용하여 음성 인식 분야에서 순환 신경망보다 더 뛰어난 성능을 보임
- 하지만 자기-주의집중 메커니즘은 국소적 특성을 잘 반영하지 못한다는 단점이 존재
- 따라서 Conformer는 RNN-T 기반 모델에서 Transformer 인코더에 합성곱 레이어를 적용하여 단점을 보완함
- 또한 ContextNet은 합성곱 레이어 기반 음성 인식 모델에 Squeeze-and-Excitation(SE) 모듈을 활용하여 부족한 전체 맥락을 모델링하고 깊이별 분리 합성곱을 활용하여 파라미터의 효율성을 극대화하며 성능을 향상시킴
- 이러한 연구 동향에 힘입어, 본 논문에서는 Transformer 기반 음성 인식 모델에 이와 같은 합성곱 레이어 기반의 모듈을 적용하여 음성 인식 성능이 향상된 모델을 제안함
2. 배경
관련 연구
- Li et al. [1] 은 기존 Transformer 기반 인코더-디코더 모델의 인코더에 합성곱 레이어를 적용하고, 자기-주의집중 대신 선형 자기-주의집중(linear self-attention)을 사용하여 Transformer 보다 더 좋은 성능을 보임
- Winata et al. [2] 은 훈련 속도가 빠르고 메모리 효율적인 low-rank transformer(LRT) 를 제안함
- Xu et al. [3] 은 Dense systhesizer attention(DSA) 의 주의집중 범위를 현재 중심 프레임 주변의 국소 범위로 제한하는 Local dense synthesizer attention(LDSA) 를 제안하여 국소 미 전역 정보를 동시에 추출함
- Fujita et al. [4] 은 자기-주의집중 대신 경량 합성곱 레이어(Lightweight Convolution)와 동적 합성곱 레이어(Dynamic Convolution)를 사용하여 학습 시간을 줄임
-Ren et al. [5] 은 Transformer 기반 모델의 순방향 모듈에서 선형 레이어 대신 합성곱 레이어를 활용하는 FastSpeech 를 제안하여 음성합성 분야에서 좋은 성능을 보임
3. 모델 구조
전반적인 구조
- Joint CTC-Attention 인코더-디코더 구조에서 인코더는 입력 발화를 연속적인 특징 값들로 바꾸고 디코더는 인코더의 출력 값과 입력 전사를 활용해 출력을 만듦
- 본 논문에서 제안한 모델은 합성곱 신경망 프론트엔드, E개의 인코더 블록, D개의 디코더 블록, 그리고 CTC로 구성되어 있음
- 디코더 블록은 기존 Transformer와 동일
- 인코더 블록은 전체 맥락과 깊이별 분리 합성곱을 이용한 Conformer 블록(CGD)로 구성됨
인코더 구조
- 인코더는 12개의 동일한 블록으로 구성됨
- 각 블록은 멀티헤드 자기-주의집중 모듈과 합성곱 모듈, 깊이별 분리 합성곱과 SE 레이어로 구성된 두 개의 순방향 모듈(DSFFN) 으로 구성됨
- 각 모듈은 잔차 연결(residual connection)과 레이어 정규화(layer normalization)를 적용 : LayerNorm(x+Subblock(x))
- 이러한 잔차 연결을 용이하게 하기 위해 모델이 모든 레이어는 256차원으로 설정함
멀티헤드 자기-주의집중 모듈 (MHSA)
- 주의집중 함수는 query와 key-value 쌍을 출력에 매핑 하는 것으로 설명할 수 있음
- 출력은 가중치 합으로 계산되는데, 가중치는 해당 key와 query의 호환성(compatibility) 함수로 구해짐 (본 논문에선 내적 활용)
- 입력으로 dk 차원의 query(st-1), key(hi)와 dv차원의 value(hi) 를 가지며 query 와 key 의 스칼라곱을 계산하고 루트 dk 로 나눈 값에 소프트맥스 연산을 적용해 value 에 대한 가중치를 얻음
- 멀티헤드 주의집중은 query, key, value를 각각 h번 선형 변환한 후 병렬적으로 주의집중 메커니즘을 수행
- 이는 모델이 다양한 위치에서 다양한 표현 공간의 정보를 집중하게 해 줌
- 이 때 더불어 상대적 위치 인코딩을 멀티헤드 자기-주의집중 모듈에 결합해 다양한 입력 길이에 더 잘 일반화할 수 있도록 함
합성곱 모듈
- 본 논문에서 활용한 합성곱 모듈은 Conformer 의 합성곱 모듈과 동일함
- 합성곱 모듈은 gated linear unit(GLU)과 점 합성곱(Pointwise convolution)으로 이루어진 게이팅 메커니즘을 활용함
- 그 뒤를 깊이별 합성곱(Depthwise convolution)과 배치 정규화(Batch normalization), 점 합성곱, 드랍아웃이 따름
깊이별 분리 합성곱과 SE 모듈 활용한 순방향 모듈
- 본 논문에서 제안하는 순방향 모듈은 합성곱 레이어가 음성 인식 분야에서 뛰어난 성능을 보이고 있다는 점을 고려하여 선형 레이어 대신 합성곱 레이어를 사용함
- 이 때 파라미터 효율성을 고려하여 깊이별 분리 합성곱을 이용
- 또한 순방향 모듈에서도 전체 맥락을 파악하기 위해 SE 레이어를 추가함
- 활성화함수로는 합성곱 모듈과 마찬가지로 Swish 활성화함수를 사용함
디코더 구조
- D = 6 개의 동일한 블록으로 구성됨
- 디코더는 멀티헤드 자기-주의집중 모듈과 기존 순방향 모듈에 추가로 인코더의 출력에 대한 멀티헤드 주의집중을 수행하는 모듈을 가짐
- 인코더와 같이 각 모듈에 잔차 연결을 사용하고 레이어 정규화를 적용함
- 디코더의 멀티헤드 자기-주의집중 모듈에서는 현재 위치보다 뒤에 있는 요소에 주의집중을 적용하지 못하도록 마스크를 씌움
4. 실험
실험 구성
* 학습 데이터
- 46K개의 문장 쌍이 있는 zeroth Korean 데이터셋 (95.7시간)
- 입력 특징으론 80차 Mel-filterbank 를 사용함
* 옵티마이저
- β1 (모멘텀관련) = 0.9, β2 (RMSprop관련) = 0.98, ϵ (앱실론, 0으로 안나누게 해주는 작은 값)= 10^-9 를 파라미터로 갖는 Adam 사용
- 또한 아래 식에 따라 변화하는 학습률을 사용, 학습률은 첫번째 warmup 스텝동안 스텝 수에 비례하여 선형적으로 증가하고, 그 이후로는 스텝 수의 역제곱근에 비례하여 감소. warmup 스텝 = 25000 을 사용
* 정규화(Regularization)
- 잔차 드랍아웃(residual dropout) : 모듈의 각 출력이 입력으로 사용되거나 정규화 되기 전 + 각 인코더, 디코더 스택에 임베딩과 위치 인코딩을 더할 때 드랍아웃 적용
- 라벨 스무딩 : 학습이 진행되는 동안 앱실론 = 0.1 값을 갖는 라벨 스무딩 적용
* CTC 손실의 가중치는 0.3으로 설정함
모델 구성
* 모델 파라미터
- 인코더와 디코더의 블록 모두 채널 수를 256으로 멀티헤드 자기-주의집중 모듈의 헤드 수를 4로 설정함
- 인코더 블록 합성곱 모듈의 합성곱 레이어의 필터 크기는 15로 설정함
- 순방향 모듈의 중간 채널 수는 2048로 설정함
- 비교를 위한 Transformer(S)는 채널 수와 헤드 수를 각각 256, 4로 설정했으며 Transformer(L)는 512, 8로 설정함
5. 결과
실험 결과
- Transformer(L) 모델은 1.2%의 CER을 보이는 반면, 본 논문에서 제안된 모델은 0.8%의 CER로 상대적으로 33%를 개선함
- 제안된 모델의 파라미터 수는 기존의 Transformer(L) 모델 대비 44%로 경량화됨
- 뿐만 아니라 인코더가 Conformer이고 디코더가 Transformer인 모델에 비해 파라미터 수는 큰 차이가 없지만 성능은 CER 기준 20% 개선됨
Ablation Study
- 본 논문에서 제안한 전체 맥락과 깊이별 분리 합성곱을 이용한 순방향 모듈에서 SE 레이어를 제외했을 때 CER 이 12.5% 증가함
- 이후 깊이별 분리 합성곱 대신 일반 합성곰을 사용했을 때 CER 기준 11% 감소하지만 파라미터 수는 2배 가까이 증가함
6. 결론
Conclusion
- 본 논문에서는 Transformer 기반 모델과 합성곱 레이어 기반 모듈들이 음성인식에서 좋은 성능을 보이고 있다는 점을 눈 여겨 SE 레이어와 깊이별 분리 합성곱을 이용하여 Conformer 기반 음성 인식기의 순방향 모듈을 개선함
- 최종적으로 Transformer(L) 모델에 비해 CER이 33% 감소하고 모델 크기는 오히려 경량화됨
- 뿐만 아니라 Conformer 인코더 + Transformer 디코더 모델에 비해서도 CER 이 20% 개선됨
- 이를 통해 순방향 모듈에서 선형 레이어 대신 깊이별 분리 합성곱 레이어가 쓰일 수 있고 SE 레이어가 자기-주의집중과 함께 쓰여도 좋은 성능을 보여줄 수 있음을 보여줌
'기타' 카테고리의 다른 글
2021 한국음성학회 가을 학술대회 리뷰 (3) (0) | 2021.12.05 |
---|---|
Intel Korea AI Technical Workshop 2021 리뷰 (0) | 2021.11.24 |
2021 한국음성학회 가을 학술대회 리뷰 (1) (0) | 2021.11.19 |
댓글