1% 의 금융 데이터로 학습시킨 모델로 10% 테스트 데이터에 대해 추론을 시키는 경우
from the scratch (Aihub 금융 train) | transfer learned
(Aihub 금융 train) | |
IC2015 bbox hmean | 0.0000 | 할필요없음 |
1% bbox hmean | 0.9317 | 할필요없음 |
10% bbox hmean | 0.9303 | 할필요없음 |
10% 의 금융 데이터로 학습시킨 모델로 100% 테스트 데이터에 대해 추론을 시키는 경우
from the scratch (Aihub 금융 train) | transfer learned
(Aihub 금융 train) | |
IC2015 bbox hmean | 0.0029 | 0.0000 |
10% bbox hmean | 0.8930 | 0.9625 |
100% bbox hmean | 0.8429 | 0.9415 |
•
10% from the scratch
nohup tools/dist_train.sh \
configs/textdet/dbnet/dbnet_resnet18_fpnc_20e_aihubfinance10of100.py \
2 > nohup.out &
Bash
복사
train
cp work_dirs/dbnet_resnet18_fpnc_20e_aihubfinance10of100/epoch_20.pth \
pretrained/dbnet_resnet18_fpnc_20e_aihubfinance10of100_sparkling-cloud-104.pth
nohup tools/dist_test.sh \
configs/textdet/dbnet/dbnet_resnet18_fpnc_20e_aihubfinance10of100.py \
pretrained/dbnet_resnet18_fpnc_20e_aihubfinance10of100_sparkling-cloud-104.pth \
2 > nohup.out &
Bash
복사
eval
11/28 19:12:01 - mmengine - INFO - Epoch(test) [3250/3250] AihubFinance10of100/icdar/precision: 0.9538 AihubFinance10of100/icdar/recall: 0.9713 AihubFinance10of100/icdar/hmean: 0.9625 AihubFinance100of100/icdar/precision: 0.9253 AihubFinance100of100/icdar/recall: 0.9582 AihubFinance100of100/icdar/hmean: 0.9415 IC15/icdar/precision: 0.0000 IC15/icdar/recall: 0.0000 IC15/icdar/hmean: 0.0000
Bash
복사
eval res
python3 -m mmocr.ocr \
--det-config configs/textdet/dbnet/dbnet_resnet18_fpnc_20e_aihubfinance10of100.py \
--det-ckpt pretrained/dbnet_resnet18_fpnc_20e_aihubfinance10of100_sparkling-cloud-104.pth \
data/det/aihub_finance/part_10of100/imgs/IMG_OCR_6_F_00964.png \
--img-out-dir work_dirs/dbnet_resnet18_fpnc_20e_aihubfinance10of100 \
--pred-out-file work_dirs/dbnet_resnet18_fpnc_20e_aihubfinance10of100/output.pkl \
--device cpu
Bash
복사
io
python3 -m work_dirs_utils.pkl2json \
work_dirs/dbnet_resnet18_fpnc_20e_aihubfinance10of100/output.pkl \
work_dirs/dbnet_resnet18_fpnc_20e_aihubfinance10of100/output.json
Bash
복사
jsonify
200장 랜덤 샘플링
cnt | 비고 | |
모집단 | 5,000장 | 전체 데이터의 5% |
샘플링 | 5,000장 중 180장 | |
문제가 발견된 문서 | 180장 중 36장 | 검사한 데이터 중 약 20% |
무작위로 180장을 샘플링해서 직접 레이블링을 확인했습니다. 그 중 36장의 문서에 결함이 발견되었습니다. 이건 심각한 수치입니다. 데이터를 레이블링하고 아무도 검수하지 않고 그대로 사용했다고 볼 수 있습니다. 전체 5만장 데이터로 확장을 해 보면, 전체 데이터 중 1만장에 결함이 있을 것으로 예상됩니다. 아래는 레이블링이 잘못된 파일들입니다. → 유니독스로부터 don’t care 가 있을 것이며, 10% 데이터가 아니라 100% 데이터에서 샘플링해 보라고 응답받음 → 최근에 업로드주신 80% 데이터에서 100장 정도를 샘플링하여 검증하는 시간을 가졌습니다. 말씀 주신 don't care 를 암시하는 정보를 raw json 파일에서 발견할 수 없었습니다. 그리고 설사 don't care 클래스 bounding box 가 레이블되어있다고 하더라도, 왜 don't care 클래스로 분류되어야 하는지 의문인 bounding box 들이 계속 발견됩니다