* Flow를 사용하지 않고, fit_generator에서는 generator만 호출하면 됩니다. Flow를 쓰고싶은 경우에 이렇게 쓰면 된다는 것을 보여주는 글입니다.

 

우리가 만든 모델이 오버피팅되어 있다면, 해결방법 중 하나는 훈련셋의 데이터 양을 늘리는 것입니다. 

케라스에서는 이에 대하여 ImageDataGenerator로 간편한 data augmentation 기능을 제공해주고 있죠.

만약 우리가 디렉토리에 클래스별로 예쁘게 구분을 잘 지어놨다면 flow_from_directory 를 사용하면 되겠지만, 현실은 그렇지 않은 경우가 많은데요

이럴때는 그냥 flow 를 사용하시면 됩니다.

위의 사진처럼 간단하게 사용하시면 됩니다.

중간에 있는 datagen.fit은 featurewise기능이나 ZCA_whitening을 사용할 때 해주어야 되는 기능인데요. 이 두개의 기능을 사용하지 않는다면 굳이 쓸 필요는 없습니다.

ZCA 화이트닝은 다음과 같습니다.

 

이렇게 ImageDataGenerator 객체를 만들어둔 뒤, model.fit_generator내부에서 사용을 해주시면 됩니다.

 

Reference

 https://keras.io

 

'# Machine Learning > Keras Implementation' 카테고리의 다른 글

keras Custom generator - 1  (1) 2019.07.29
TTA(test time augmentation) with 케라스  (2) 2019.07.01
Keras callback함수 쓰기  (0) 2018.12.23
CNN visualization code (3)  (0) 2018.11.26
CNN visualization code (2)  (0) 2018.11.26