데이터 출처 : www.kaggle.com/petersunga/make-up-vs-no-make-up
Makeup or No Makeup
Can you determine which person is wearing makeup?
www.kaggle.com
ipynb file : github.com/sangHa0411/DataScience/blob/main/Clasify_Makeup.ipynbgithub.com/sangHa0411/DataScience/blob/main/Clasify_Makeup_ImageNet.ipynb
sangHa0411/DataScience
Contribute to sangHa0411/DataScience development by creating an account on GitHub.
github.com
이번 Part3에서는 이미 학습이 된 ImageNet을 이용해서 CNN을 만들어보고 이와 Part2와의 모델을 비교해보겠습니다..
Part2와 같은 방법 같은 과정을 거쳐서 동일하게 이미지를 준비합니다.
Part2와 같은 keras의 라이브러리 함수를 불러옵니다. 거기에 추가적으로 Keras,applications 에서 VGG16 모델을 불러옵니다.
위 VGG16모델을 이용해서 Convolution Layer를 구성할 계획입니다.
그리고 VGG16모델의 입력 이미지의 크기를 지정하고 그에 따른 출력 구조가 어떻게 되는지를 파악합니다.
이 모델을 통해서 이미지의 특징을 추출하는 함수를 만들고 훈련 데이터들의 이미지들의 특성을 추출합니다.
추출한 결과는 위에서 확인한 output_shape과 같이 된 것을 확인할 수 있습니다.
이 특성들은 3차원 구조이기 때문에 1차원으로 바꾸어줍니다.
이제 저희는 Convolution Layer을 모델에 추가할 필요 없이 Dense Layer만을 모델에 추가해서 Deep Learning 모델을 만들어줍니다.
Part2와 같이 Validation Loss가 가장 작은 것을 최종 Model로 선정합니다.
아래는 그 과정과 학습 과정입니다.
이제 이 모델을 이용해서 테스트 데이터를 기반을 성능을 측정하기 위해서 테스트 이미지 데이터로부터 특성을 추출합니다.
그리고 이를 모델에 입력함으로써 성능을 측정합니다.
예상과 달리 ImageNetd을 이용했을 때 오히러 Part2보다 Validation Loss가 증가된 것을 확인할 수 있습니다.
'Deep Learning' 카테고리의 다른 글
Deep Learning - Netflix 연관 컨텐츠 파악하기 Part1 (0) | 2020.10.06 |
---|---|
Deep Learning - 트위터 감정 분석하기 Part2 (0) | 2020.10.06 |
Deep Learning - 메이크업 노메이크업 구별하기 Part2 (0) | 2020.10.06 |
Deep Learning - 메이크업 노메이크업 구별하기 Part1 (0) | 2020.10.06 |
Deep Learning - 트위터 감정 분석하기 Part1 (0) | 2020.10.06 |