Abstract
- Markush 구조를 분류하기 위한 방법을 테스트
- Macro F1 comparisonn
- fixed-feature extraction (0.701 ± 0.052)
- end-to-end CNN (0.928±0.035)
Introduction
- Optical Chemical Structure Recognition (OCSR) : Chemical Structural Formulae (CSF)를 이미지로부터 기계언어로 변환하는 것
- Incomplete CSF (Markush)를 필터하는 것으로 OCSR 성능을 향상시킬 수 있다
- CSF에서 다양함을 표현학히 위한 기호나 구조를 _Markush Indicator_라고 하며, 일반적인 표현 방식이 없다
- Markush 인식이 어려운 이유
- 이미지 별로 픽셀 크기가 다름
- 하나의 Markush indicator만 존재하더라도 Markush임
- 낮은 Region-of-Interest(ROI)-to-Image ratio
- 전문가만 라벨링 가능
- Markush 분류에 필요한 새로운 방법 더 나아가 end-to-end 딥러닝 방법 또는 fixed-feature extraction 중 효과적인 방법을 확인해본다
Related Work
- Fixed-feature extraction 방법은 ORB (Oriented FAST and Rotated BRIEF) feature detector를 사용하여 CNN과 비교하였다.
- Image를 비트 문자열로 해싱하며 거리 비교가 가능
Methodology
- 2개의 이미지 처리 파이프라인을 만들어 분석 실험을 수행
Datasets
- Primary dataset: CSF 이미지로 구성되며, 하나의 이미지에 다수의 CSF에 글이나 표와 같은 다른 구조물도 포함될 수 있다. Elsevier 출판물로 부터 추출 되는 경우들을 포함한다
- 분류 기준
- A: Complete substances (108 images)
- B: Images containing at least 1 Markush structure (122 images)
- C: Images that contain only Markush structures. (42 images)
- Task에서 A는 True, B와 C는 False이다
- Auxiliary Dataset
- 5117 complete structure images and 317 images containing at least one Markush structure
Dataset Problems
- Low Signal-to-Noise ratio
- Large Image Size Variance
- Small Dataset
- Pixel Scale Variance
- Weak Annotation (images only have labels for the entire image.)
Data Annotation
- 상기 문제를 해결하기 위해 관심 영역을 pixel-level로 주석한다.
- Fig.3 해당 주석의 분포
- Fig.4 주석 예시
- Table.1 데이터 통계
Patch generation
- Large Image Size Variance 문제 해결을 위해 이미지를 두 종류 격자의 패치 단위로 나누어 CNN을 학습하는데 활용
- Fig. 5 처럼 격자간 offset을 주어 하나의 패치 모서리에 오는 픽셀은 다른 격자에서는 중심으로 배치
- 패치는 이미지에서 잘라내고 Markush indicator 포함 여부에 따라 "Markush" 또는 "Non-Markush"로 분류
- Markush annotation 영역의 포함 여부로 이진 분류를 수행하며 annotation 영역이 50% 미만만 포함된 경우는 포함하지 않는다.
- CNN(224 또는 299)은 이러한 개별 패치에 대해 학습되었다.
- Fig 3에서 볼 수 있듯이 이는 대부분의 주석이 패치 내부에 완전히 들어맞아 정보가 손실되지 않음
Fixed-Feature Method (ORB)
- 딥러닝과 비교하기위해 ORB를 feature detector로 활용
- 이미지의 키포인트를 출력하여 다른 이미지와 비교 (Fig. 7)
- Markush indicator를 포함하는 많은 패치를 사용하여 수행
- 정보
- 이미지의 키포인트의 수
- 이미지 간 매치 수
- 매치에 대한 거리
- 키포인트의 픽셀 위치
- 위 정보를 XGBoost를 활용하여 분류 진행
Deep Learning Method
- 활용 모델
- ResNet18: 데이터의 가벼움 때문에 가장 얕은 18 모델을 선정
- InceptionV3: Elsevier에서 화학 이미지로만 사전학습된 모델 존재
- 사전 학습과 데이터
- ImageNet (Fig. 8)
- USPTO(curated by Elsevier, fig. 9): 10k CSF & 10K non-CSF
- 미세 조정
- Primary data로 학습
- 분류기(FC) 제외하고 얼리고 학습
- 모든 파라미터 학습
- 사전처리 및 데이터 증강
- RGB 세 채널에 대해 회색조 채널을 세 번 복사
- 증강
- random perspective shift
- random posterization
- random sharpness or blur
- Hyperparameter tuning
- 결국 최적의 하이퍼파라미터는 각 구성마다 다르므로 모든 구성에 동일한 하이퍼파라미터를 사용하는 것은 공평하지 않습니다.
- 하이퍼파라미터 최적화를 위해 Optuna 라이브러리를 사용하여 F1 을 최적화
- 25번 샘플링을 통해 최적의 hyperparameter를 찾음
- 상기 과정을 5번 반복하여 오차 범위를 계산
- Result metric: Macro F1 사용
Result
- Baseline(ORB)
- 두 번째로 낮은 결과를 기록했으며, patch-level 결과는 제공되지 않음
- Layers
- 분류기만 학습한 것보다 전체 모델의 parameter를 업데이트한 것이 0.145, 0.195 및 0.20 F1 score 개선을 보여주었다. 이는 사전 훈련으로 학습된 필터가 Markush 구조를 구별하는 데 적합하지 않을 수 있다고 생각할 수 있다.
- Architecture
- IV3 IN FM은 R18 IN FM보다 0.028 높은 매크로 F1 점수를 기록
- Pretraining
- FC만 및 전체 모델 구성 모두에서 ImageNet 사전 훈련 모델이 USPTO 사전 훈련 모델보다 더 나은 성과
- ImageNet 사전 훈련으로 학습된 필터가 매우 강력하여 ImageNet 도메인 외부에서도 적용될 수 있다는 것
- ROC curve
- IV3 IM FM 은 patch-level이므로 primary test data set, ORB는 image-level 이므로 auxiliary dataset에 대한 결과로 직접적인 비교는 불가능하지만 성능 차이가 매우 커서 훨씬 우수함
- False positive rate가 거의 0인 지점에서 true positive rate는 약 0.7로 patch-level의 평가가 전체 이미지 평가에 대한 성능을 향상 시켜주었다.
- 이미지당 평균 9.52개 Markush indicators가 존재하므로 이미지 하나를 평가할 때 9.52 번 기회가 있음을 시사한다.
- Error Investigation
- ORB
- 희귀한 markush indicator의 경우 매칭이 좋지 않음 (Fig. 11)
- 이미지 크기 변동에 대해 매칭이 잘 수행되지 않음 (Fig. 12)
- ORB
- Error Investigation
- CNN
- Fig. 13의 경우, Markush 구조와 관련된 텍스트를 포함하고 있지만 실제로 Markush 지표가 있는 CSF는 포함되어 있지 않으므로 잘못된(False)으로 레이블이 지정되어야 합니다. "구조"의 가장자리에 있는 R이 분류에서 가장 중요한 역할을 했음을 보여주며, 중앙에 있는 거의 동일한 R은 분류에 거의 기여하지 않았습니다. Markush 구조에서 "R" 지표는 항상 CSF의 가장자리에 위치합니다.
- Fig. 14의 경우, 주목도 맵은 "물결선"이 분류에 주로 기여하고 있음을 나타냅니다. "물결선"은 매우 일반적인 Markush 지표이지만, 한쪽만 연결되었을 때만 그렇습니다. 이 경우, 두 원자 간의 결합을 나타내는 특별한 방법입니다.
- Fig. 15의 경우, Markush indicator가 패치에 부분적으로만 포함되었기 때문에 발생합니다.
- Fig. 16의 경우, 주목도 맵은 지표 주변의 픽셀이 분류에 가장 중요했음을 보여줍니다. 그러나 패치는 여전히 "거짓"으로 레이블이 지정되었습니다. 왜 이런 일이 발생했는지는 불분명합니다
- CNN
Discussion
기존 문헌에서는 이 연구와 동일한 목표를 달성하는 방법을 설명하지 않기 때문에 다른 연구와의 성능을 직접 비교할 수 없습니다. 최고의 모델은 패치 수준과 이미지 수준, 그리고 더 큰 보조 데이터셋에서 모두 0.90 이상의 매크로 F1 점수를 기록했습니다.
Limitations
- 적은 데이터 수
- 모델에 다른 입력 크기 차이로 인한 성능 편차
- auxiliary test data에서 반복 평가 수행하지 않음
- Fig 15와 같이 패치 레이블링의 근본적인 문제 존재