Deep Learning

[Paper] Read Like Humans: Autonomous, Bidirectional and Iterative Language Modeling for Scene Text Recognition

ju_young 2022. 3. 4. 21:08
728x90

Abstract

  • 본 논문에서는 다음과 같은 언어 모델의 한계에 대한 주장을 제시한다.

1) 함축적인 언어 모델링

2) 단일 방향의 feature 표현

3) noise input으로의 언어 모델

  • scene text recognition을 위한 자율적이고 양방향이며 반복적인 ABINet을 제안한다.

1) 명시적인 언어 모델링을 수행하기위해 언어 모델과 시각 모델 사이의 gradient 흐름을 막는다.

2) 언어 모델로써 BCN(bidirectional cloze network)는 양방향 feature 표현을 기반으로 한다.

3) noise input의 영향을 완화할 수 있는 언어 모델에 대한 반복적인 수정 실행 방법을 제안한다.

  • 반복적인 예측의 앙상블을 기반으로 라벨링되지않은 이미지를 효율적으로 학습할 수 있는 self-training method를 제안한다.

Introduction

  • 심리학의 관찰을 통해 언어 모델링이 자율적이고 양방향이며 반복적이라는 human reading에 대한 세 가지 가정을 할 수 있다. (autonomous, bidirectional, iterative)

1) 청각장애인과 시각장애인 모두 완전히 기능적인 시력과 언어를 개별적으로 가질 수 있기 때문에, 시각과 언어 사이의 학습의 독립성을 해석하기 위해 autonomous라는 용어를 사용한다. 또한 autonomous는 독립적으로 학습된 언어 지식이 시각에서의 문자 인식에 기여할 수 있는 시각과 언어 사이의 좋은 상호작용을 나타낸다.

2) 문자 context 추론은 읽기 어려운 문자를 공백으로 볼 수 있기 때문에 cloze task처럼 동작한다. 그래서 예측은 읽기 어려운 문자의 양쪽에 읽기 쉬운 또렷한 문자의 어떠한 단서를 사용할 수 있다.

3) 인간은 인식된 결과를 반복적으로 고치는 것으로 예측 confidence를 향상시키는 진보적인 전략을 사용한다.

 

  • fig 1. (a)와 같이 결합된 model은 문자 관계를 잘 학습하는지 알 수 없다.
  • fig 1. (e)와 같은 양방향 model을 합친 model은 단일 방향 model 보다 두 배의 정보를 얻을 수 있지만 언어의 특징은 실질적으로 단방향 표현이기 때문에 그렇게 강력하진 않다. 또한 앙상블 모델은 계산, parameter 모두 expensive해진다는 것을 의미한다.
  • fig 1. (d)는 error recognition이 noise로 누적되고 다음 prediction을 위한 input으로 받는 auto-regression을 수행하기 위한 language model 표준이다.
  • fig 1. (e)에서는 Transformer architecture를 채택하기위해 auto-regression을 포기하고 parallel-prediction이 채택된다. 하지만 noise input은 parallel-prediction에서도 여전히 존재한다.
  • fig 1. (b)는 visual model과 language model을 분리한 model로써 두 model 사이의 blocking gradient flow(BGF)를 하고 language model이 언어의 규칙을 명시적으로 학습할 수 있게한다.
  • fig 1. (c)는 두 개의 단일 방향 model을 합치는 것의 딜레마를 없앤 language model로써 새로운 BCN(bidirectional cloze network)를 고안하였다.
  • BCN은 문자들 양쪽의 access를 control하기위해 attention mask를 지정하는 것으로 context의 왼쪽, 오른쪽 모두 공동으로 조절된다. 또한 여러 단계에 거친 access는 정보 유출을 방지하기위해 허용되지 않는다.
  • fig 1. (b)는 language model을 위한 iterative correction 실행을 제안한다. ABINet의 output들을 language model에 feeding을 반복적으로 하면 prediction은 계속해서 수정되고 unaligned-length 문제는 어느 정도의 크기까지 완화될 수 있다.

2. Related Work

2.1 Language-free Methods

  • 일반적으로 CTC 기반, segmentation  기반 method와 같은 language-free method들은 문자들 사이의 관계를 고려하지 않고 visual feature들을 활용한다.
  • 언어의 정보다 부족하기 때문에 language-free method들은 low-quality 이미지들에서 recognition을 잘 해결할 수 없다.

2.2 Language-based Methods

- vision과 language 사이의 내부 상호작용

  • language expression을 향상시키려는 시도 중 일부 연구는 semantic으로부터 추가적인 loss가 발생하는 multiple loss를 도입하였다. 그 중, SEED(Semantics enhanced encoder-decoder)는 추가로 semantic 정보를 가져오는 RNN 학습을 guide하기 위해 pre-train된 FastText model을 사용하는 것을 제안한다. 본문에서는 자신들의 방법이 라벨링되지않은 텍스트에서 language model을 직접 pre-train하는 것이라고 한다.

 

- language feature의 표현

  • ensemble bidirectional model은 본질적으로 unidirectional feature representation이다.

 

- Execution manner of language models

  • Transformer 기반의 method는 parallel-execution에서 우수하며, 각 time step의 input은 시각적 특징 또는 시각적 특징의 예측으로부터의 문자 embedding이다.
  • 본문의 method들도 parallel 실행을 하지만 parallel language model에서 존재하는 noise input의 문제를 완화하기위해 노력한다.

 

3. Propsed Mehod

3.1 Vision model

  • fig 3.을 보듯이 vision model은 하나의 backbone network와 하나의 position attention module로 구성되어있다.
  • ResNet과 Transformer가 feture extraction network와 sequence modeling network로써 적용된다.

  • position attention module은 visual feature를 병렬적으로 문자 확률로 바꾼다.

3.2 Language Model

3.2.1 Autonomous Strategy

  • language model은 input으로 문자의 확률 벡터를 받고 예상되는 문자의 확률 분포를 output하는 spelling correction의 독립적인 model로 여겨진다.
  • 학습 gradient flow는 input vector들에서 BGF(blocking gradient flow)된다.
  • language model은 라벨링되지 않은 텍스트 데이터로부터 별도로 학습될 수 있다.
  • BGF는 model이 언어 지식을 학습하도록 한다.

 

3.2.2 Bidirectional Representation

  • input 문자를 making하는 것 대신, attention mask를 지정하는 BCN을 제안
  • BCN은 L개의 layer를 가지는 transformer decoder의 변형이다.
  • BCN의 각 layer는 fig 4. 처럼 multi-head attention과 residual connection을 따르는 feed-forward network와 layer nomalization이 연속된다.
  • multi-head attention에서의 attention mask는 "seeing itself"를 방지하기위해 고안되었다.
  • no self-attention은 time step들을 거쳐 부족한 정보를 피하기위해 BCN에 적용되었다.
  • multi-head block들에서의 attention operation을 수식으로 표현하면 다음과 같다.

    - $Q$; 첫 번째 layer에서 문자 순서의 positional encoding, 그렇지 않으면 마지막 layer의 output

    - $K, V$: character probability

    - $W_l$: linear mapping matrix

    - $M$: attention mask의 matrix

 

3.2.3 Iterative Correction

  • fig 2. 를 보면 blur, occlude된 환경때문에 실제로 visual model에서 "SH-WING"를 얻어야하는데 "SH-VING"으로 얻는다. 여기서 "V"는 noise이고 예측의 confidence에 악영향을 준다. 이처럼 visual model에서 증가하는 error prediction들에 따라 language model에 대해 더 어렵게하는 경향이 있다.
  • noise input의 문제에 대응하기위해 iterative language model을 제안한다.
  • 첫 번째 iteration에서는 visual model으로부터 얻은 probability prediction
  • 그 다음 iteration은 마지막 iteration에서의 fusion model에서 나온 probability prediction
  • Transformer 기반의 method들에서는 unaligned-length 문제가 있는데 이 문제는 padding mask에 의해 일어난다. iterative language model은 이런 문제를 visual feature와 linguistic feature을 여러 번 융합시킴으로서 완화할 수 있고 예측된 텍스트 길이 또한 서서히 수정된다.

3.3 Fusion

  • 개념적으로 vision model은 이미지를 train하고 language model은 다른 modality에서의 텍스트를 train한다.
  • visual feature와 linguistic feature를 align하기위해 final decision에 대해 gated mechanism을 사용한다.

3.4 Supervised Training

    - $L_v, L_l, L_f$: 각각 $F_v, F_l, F_f$에 대한 cross entropy loss

    - $i$: iteration

    - $\lambda$: balanced factor

 

3.5 Semi-supervised Ensemble Self-training

  • self-training의 기본적인 아이디어는 우선 pseudo labeling을 수행하고 추가된 pseudo label을 가지고 re-train하는 것이다. 그렇기 때문에 높은 quality의 pseudo label로 구성하는 것이 핵심이다.
  • noise pseudo label을 filtering하기위해 text instance 내 문자의 최소 confidence가 text certainty으로 선택되고 각 문자의 iterative prediction은 noise label의 impact를 smooth하게 하기 위한 ensemble로 간주한다. 그래서 다음과 같은 filtering function을 정의한다.

    - $C$: text instance의 최소 certainty

    - $P_m(y_t)$: m번째 iteration에서 t번째 문자의 probability distribution

728x90