Notice
Recent Posts
Recent Comments
Link
반응형
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
Tags
- 환급기원
- TensorFlow
- MTBE
- 문서 파싱
- OCR
- document layout analysis
- 순열
- pytorch forward
- MCTS
- metric learning
- permutations
- 티스토리챌린지
- 스페인어학습지
- 대조학습
- 딥러닝
- Python
- Monte Carlo
- pytorch
- pytorch forward 연산
- 파이썬
- document parsing
- 스터디미니
- AlphaGo
- pytorch forward 디버깅
- 강화학습
- feature vector
- 알파고
- 오블완
- pytorch hook
- text embedding
Archives
- Today
- Total
Learn And Earn
TrOCR: Transformer-based Optical Character Recognitionwith Pre-trained Models 본문
딥러닝/OCR
TrOCR: Transformer-based Optical Character Recognitionwith Pre-trained Models
Determined 2024. 11. 26. 23:11반응형
TL;DR
- 기존 AI OCR 한계점 : 이미지 이해(CNN), 문자 단위 자연어 생성(RNN), 추가 후처리 (언어모델)
- 트랜스포머 구조 TrOCR은 end-to-end로 하나의 모델로 OCR을 위한 이미지 이해, 토큰 단위 자연어 생성의 과정을 수행
- 이미지 인코더(ViT), 자연어 디코더
- 초기화를 각각 ViT 스타일 인코더, 자연어 디코더에서 하는 게 좋다고 추천함
- 뿐만 아니라 TrOCR은 합성 데이터에 사전 훈련 후, 커스텀 데이터셋에 미세 조정을 진행하면 되기 때문에
용도에 맞게 활용이 매우 용이하다는 측면에서 기여하는 바가 크다. - 성능 측면에서도 (CER) 인쇄본, 손글씨, scene-text 등 다양한 시나리오의 데이터셋에 대해서도 잘함.
TrOCR 구조
이미지 이해를 위한 ViT 스타일의 인코더와 (BeIT, DeIT), 자연어 생성을 위한 디코더 (RoBERTA)로 구성됨.
이미지 이해는 ViT같이 이미지를 패치 단위로 나누어 각각을 토큰 취급하여 처리.
디코딩은 이미지 feature, 지금까지 생성된 토큰 정보들을 기반으로 하여 다음 토큰을 자기회귀적으로 예측.
훈련 : 정말로 용이한지?
TrOCR은 텍스트 인식 학습만으로 훈련 가능하며, 텍스트-감지(bbox) 정보가 필요하지 않다.
저자는 OCR 모듈의 출력 토큰 시퀀스와 정답(GT) 토큰 시퀀스 간 CrossEntropy 손실로 훈련했다고 설명했다.
사전 훈련 : 합성 데이터셋
- 1단계: 대규모 데이터셋 학습
- 수억 개의 인쇄된 텍스트 라인 이미지로 구성된 합성 데이터셋을 사용
- 기본적인 텍스트 인식과 시각적 특징 추출 능력을 학습
- 2단계: 특정 태스크 데이터셋 학습
- 첫 번째 단계에서 학습된 모델을 초기화 상태로 사용
- 인쇄된 텍스트와 손글씨 텍스트 인식을 위한 두 개의 작은 데이터셋(각각 수백만 개 이미지)으로 학습
- 장면 텍스트(Scene Text) 인식의 경우 널리 사용되는 합성 텍스트 데이터셋 활용
미세 조정 : 커스텀 데이터셋
결과 및 고찰
Reference
반응형
'딥러닝 > OCR' 카테고리의 다른 글
CRAFT (Character Region Awareness for Text Detection) (3) | 2024.11.25 |
---|
Comments