hwanikim 2024. 11. 11. 15:25

Conformer 논문

https://arxiv.org/abs/2005.08100

 

Conformer: Convolution-augmented Transformer for Speech Recognition

Recently Transformer and Convolution neural network (CNN) based models have shown promising results in Automatic Speech Recognition (ASR), outperforming Recurrent neural networks (RNNs). Transformer models are good at capturing content-based global interac

arxiv.org

 

Conformer Encoder Model Architecture

Conformer Model Encoder Architecture이다. 

 

SpecAug: 입력된 음성 신호에 대해 데이터 증강을 수행

Convolution Subsampling: 입력 시퀀스를 다운샘플링하여 차원을 줄이고, 연산 효율성을 높임

Linear: 다운샘플된 특징을 선형 변환하여 Conformer 블록에 적합한 형태로 변환

Dropout: Overfitting을 방지하고, 모델의 일반화 성능 향상

Conformer Block: Conformer Model의 핵심 구조

 

다운샘플링이란?

다운샘플링(downsampling)이란 데이터의 해상도나 샘플 개수를 줄이는 것을 의미한다. 음성 인식 모델에서는 시퀀스의 길이를 줄여 데이터의 밀도를 높이고, 연산량을 줄이는 것을 목표로 합니다.

 

구체적으로, 다운샘플링을 하는 방법과 그 의미는 다음과 같다.

 

1. 시간적 축소

  • 원래 길이가 긴 시퀀스 데이터를 더 짧은 시퀀스로 변환한다. 예를 들어, 음성 데이터가 초당 100개의 프레임으로 구성되어 있다면, 다운샘플링을 통해 이를 초당 50개의 프레임으로 줄일 수 있다. 이렇게 되면 데이터의 길이가 절반으로 줄어든다.
  • 음성 인식에서는 Convolution(합성곱) Layer를 사용하여 인접한 프레임을 하나로 합쳐 요약하는 방식으로 다운 샘플링을 수행한다.

2. 중요 정보 요약

  • 다운 샘플링은 인접한 샘플의 정보를 하나로 압축하여 중요한 정보만을 남기고 불필요한 세부 정보는 제거하는 방식이다.
  • 예를 들어, 4개의 연속된 프레임에서 주요 특징을 결합하여 하나의 프레임으로 요약하는 방식이다. 이렇게 하면 전체적인 정보는 유지하면서 시퀀스 길이를 줄일 수 있다.

 

3. 연산량 감소

  • 시퀀스의 길이가 줄어들면, 모델이 처리해야 할 데이터의 양도 줄어들기 때문에 연산량이 감소한다.
  • 특히 Self-Attention과 같은 연산은 시퀀스 길이에 따라 연산 복잡도가 크게 증가하기 때문에, 다운샘플링을 통해 연산 효율성을 높이는 것이 중요하다.

다운샘플링 예시

sequence = [A, B, C, D, E, F, G, H]

2*downsampling_sequence = [AB, CD, EF, GH]

4*downsampling_sequence = [ABCD, EFGH]

 

원래 입력 데이터가 8개의 프레임으로 구성된 데이터지만, 다운샘플링을 통해 이를 4개의 프레임 로 줄일 수 있다. 여기서 시퀀스 길이, 즉 시간 차원이 절반으로 줄어들게 된다.

 

이렇게 하면 모델이 처리해야 할 시퀀스 길이(시간 차원)가 줄어들기 때문에, 연산량이 줄어들어 계산 효율성이 높아지며 메모리 사용량도 줄어든다.

 

--수정중--