주제 : 손 x-ray로 성별 예측하기
기획 배경 : 의학적으로 골간 간격이나 석회화 정도로 성별판단이 가능하지만 의사들도 쉽지 않다는 점에서 딥러닝을 이용하여 빠르고 정확한 예측을 하기위해 시작하게 됨.
프로젝트 내용 :
-
데이터 준비 : kaggle에서 RSNA Bone Age 데이터셋을 이용함.
- https://www.kaggle.com/kmader/rsna-bone-age
- 데이터의 수 : 사진 약 12000여장
- 손 x-ray 사진 예시와 csv 예시
-
데이터 확인 :
- csv를 보고 데이터의 특성이 될 수 있는 boneage와 male 중 male(True/False)을 선택함
- data(male)가 balance를 이루므로(=female의 수와 male의 수가 비슷) accuracy를 metrics로 결정
-
모델 설계 :
-
train,val,test set으로 나눔
-
version1. 모델 구성
-> epoch=20, optimizer=adam
-> train acc=0.6886 / val acc=0.6379 / test acc=0.6552
=> 데이터의 수가 적다고 판단하여 data augmentaion을 적용 + epoch또한 늘리기로 결정 -
결론 : human level error - 현직 의사들의 acc가 약 88% 부근이고 코드 상 최고 acc가 약 80%인 점으로 볼 때
모델에 약간의 수정을 더하면 human lever error를 따라잡을 수 있겠다는 생각을 했다.
위의 문제 해결 방법으로는 더 큰 네트워크를 만들거나 여러 하이퍼파라미터를 조정하는 방법이 있다.
- kaggle에서 모든 코드를 작성하였고, keras를 사용함.
- 결론의 human level error의 출처는 NCBI PubMed.gov - El Morsi DA, AI Hawary AA, 2013 Jan