본문 바로가기

Python/EfficientNet

(2)
EfficienNet(2) 직전 글에서 생각했던 문제 중 2)와 3)을 다루는 글이다. 1)pooling의 방법을 잘 못 한것은 아닌가? 2)이미지의 색상에 따라 다르게 받아들이는 것일까? 3)Augmentation을 시행할 때 특성을 잃어버리는 것은 아닐까? 위의 사진처럼 모두 같은 사과 사진에 필터를 씌워 blue, green red로 분류해두었고, augmentation을 이용해 데이터를 증폭시켰다. 이후 모델을 만들었다. 중간에서 보면 한가지 의아한 것이 있다. 분명 'red', 'green', 'blue'인데 classes는 왜 '4'인가...? 이 부분은 나중에 다뤄야 할 것 같다. 위에서는 EfficientNet을 이용했으며, accuracy를 보면 알 수 있듯, 색상이 다를 경우에 CNN은 잘 분류를 해준다. 그렇다..
EfficientNet(1) 간만의 포스팅이다. CNN으로 Classification을 만들었다. 필자가 하고자 했던 것은 얼굴 사진으로 얼굴이 건조한지 아닌지를 분류하고 싶었다. (정확히 말하자면, 얼굴의 각질의 유무를 구분하고 싶었다.) 이미지를 통한 분류 작업이었기 때문에 CNN으로 눈을 돌렸다. 우선, CNN의 여러가지 기법을 찾아보았다. 간단한 기법인 줄 알았지만 역사도 길고, CNN기법에서도 여러가지가 있다는 것을 링크에서 확인했다. 그 중 가장 많이 보고 들었던 VGG-16을 처음으로 시도해보았다. 이미지 데이터가 있어야 했기에 데이터는 구글과 네이버에서 크롤링을 진행했다. 쓸만한 데이터가 각질을 포함한 얼굴 부분, 각질이 없는 얼굴 부분 각각 150개정도밖에 나오지 않았다. training set의 class별 최소 ..