Artificial Intelligence
[DL] CRNN
inee0727
2022. 10. 28. 11:42
(step 1) convolution 연산을 통해 특징 추출
(step 2) 추출된 피쳐맵을 열 벡터 단위로 나눠 시퀀스 형태로 변환
(step 3) 길이가 긴 시퀀스 입력을 gradient vanishing 문제 없이 처리할 수 있는 bi-LSTM 모델을 이용해 각 벡터에 대한 글자 예측값 출력
(step 4) CTC 알고리즘을 통해 중복문자와 공백 등을 제거한 후 최종 단어 예측값 출력
1. Feature Sequence Extraction
- CNN에 의해 전체 이미지의 전체 representation을 추출한 다음 시계열 데이터의 각 구성 요소를 인식하기 위해 local의 심층적인 feature를 수집
⇒ 시계열 데이터의 길이 변화에 영향을 받지 않기 위해 sequential representation에 깊은 feature을 전달
2. Sequence Labeling
- Map-to-Sequence 네트워크에 입력되기 전에 모든 이미지를 동일한 높이로 조정
- Convolution layer와 Recurrent layer 사이의 다리 역할을하는 “Map-to-Sequence”
- feature vector는 feature map상의 좌측에서 우측으로 생성
- map-to-sequence하는 이유는? RNN에 전해주기 좋은 형태의 백터로 Flatten
3. Transcription
- RNN에 의해 만들어진 프레임 별 예측을 label sequence로 변환하는 과정