데이터 증강 - 회전

한 논문 (https://www.mdpi.com/1424-8220/20/17/4849) 에 따르면, 소규모 데이터셋 이미지 증강 시 회전을 시도했을 때 성능 향상 폭이 다른 기법보다 눈에 띄게 컸다고 한다. 따라서 증강을 위해 이미지를 회전 시켰다. 그리고 Negative sample 들은 증강 하지 않은 채로 시도

사용한 데이터셋 분포 (증강 수행됨)

0 (점자블록 파손부) 1 (보도블록 파손부) 2 (자전거도로 파손부)
Train set 7701 10720 11292
Validation set 1487 2332 2437
Test set 1604 2292 2462

학습 결과

results.png

confusion_matrix_normalized.png

epoch 수를 이전 100 회에서 300회로 늘렸다.

학습이 진행되면서 지표가 개선되고는 있으나 개선 속도가 더디다고 판단된다.

cosine learning rate scheduler 를 사용하면 잠정적으로 수렴하는 데 도움이 된다고 (1 & 2) 하지만

애초에 입력 자체가 학습에 비효율적이라고 생각한다.

문제점 (Issues)

image.png

image.png

바운딩 박스 좌표 회전 후 얻은 새로운 xmin, xmax, ymin, ymax 값으로 바운딩 박스를 다시 정하는 과정에서 불필요하게 넓은 범위를 경계로 정하게 되는 문제.

원본 바운딩 박스 크기가 이미지에서 차지하는 비율이 클 수록 해당 오차도 커지며 따라서 이상적인 이미지 경계를 벗어나 패딩에 걸치게 된다. 해당 예외가 그렇게 많지는 않으므로 일단 무시했으나, 정확한 예외의 개수를 확인해 보지는 않았으므로 개선의 여지가 있다고 생각한다.

어찌 됐던 해당 예외를 무시하고도 이미지 증강과 epoch 횟수를 늘리면서 이전보다 더 높은 성능 수치를 기록했다.