취미와 밥줄사이

[Tensorflow] - ImageDataGenerator 본문

Python/tensorflow

[Tensorflow] - ImageDataGenerator

취미와 밥줄사이 2021. 3. 3. 18:09

keras is a Deep Learning library for Python, that is simple, modular, and extensible.

케라스는 파이썬을 위한 딥러닝 라이브러리이며 단순하고 모듈적이며 확장가능하다.

1. ImageDataGenerator가 하는 역할과 코드


In this tutorial, we will present a few simple yet effective methods that you can use to build a powerful image classifier, using only very few training examples --just a few hundred or thousand pictures from each class you want to be able to recognize.

이번 튜토리얼에서 우리는 매우 단순하지만 효과적인 방법을 제시할 것이다. 이 기법을 통해서 당신은 강력한 이미지 구분모델을 만들 수 있다. 매우 적은 실험을 통해서 -- 너가 분류할 수 있기를 원하는 단지 몇 백, 몇 천개의 사진으로

  • 학습을 통해서 똑똑한 인공지능을 만들기 위해서는 많은 양의 데이터가 필요하다.
  • 충분한 데이터를 통해서 학습이 진행될 수록 우리가 만든 모델은 더 정확한 구분을 할 확률이 높아진다.
  • 그러나 현실세계에서는 학습을 위한 충분한 양의 데이터를 구하기에는 많은 시간과 비용이 소모되며 가공되어진 데이터를 구하기 힘들다.
  • ImageDataGenerator는 이러한 문제점을 극복하기 위한 방법 중 하나이다.
  • ImageDataGenerator는 기존의 보유하고 있는 이미지를 증강시키는 기법이다.
*  간단히 말하자면 이미 보유하고 있는 이미지의 각도에 변화를 주거나 위치를 변환시켜 다양한 방향과 각도에 사진을 학습시키는 것이다.

2. 이미지 증강 기법


keras.preprocessing.image.ImageDataGenerator( )

실시간 데이터 증강을 사용해서 텐서 이미지 데이터 배치를 생성합니다. 데이터에 대해 (배치 단위로) 루프가 순환됩니다.

  • Prameter


 

  • featurewise_center: 불리언. 데티터셋에 대해 특성별로 인풋의 평균이 0이 되도록 합니다.
  • samplewise_center: 불리언. 각 샘플의 평균이 0이 되도록 합니다.
  • featurewise_std_normalization: 불리언. 인풋을 각 특성 내에서 데이터셋의 표준편차로 나눕니다.
  • samplewise_std_normalization: 불리언. 각 인풋을 표준편차로 나눕니다.
  • zca_epsilon: 영위상 성분분석 백색화의 엡실론 값. 디폴트 값은 1e-6입니다.
  • zca_whitening: 불리언. 영위상 성분분석 백색화를 적용할지 여부입니다.
  • rotation_range: 정수. 무작위 회전의 각도 범위입니다.
  • width_shift_range: 부동소수점, 1D 형태의 유사배열 혹은 정수

Reference


keras.io/ko/preprocessing/image/

 

Image Preprocessing - Keras Documentation

이미지 전처리 [source] ImageDataGenerator 클래스 keras.preprocessing.image.ImageDataGenerator(featurewise_center=False, samplewise_center=False, featurewise_std_normalization=False, samplewise_std_normalization=False, zca_whitening=False, zca_epsi

keras.io

 

 

blog.keras.io/building-powerful-image-classification-models-using-very-little-data.html

 

Building powerful image classification models using very little data

Sun 05 June 2016 By Francois Chollet In Tutorials. Note: this post was originally written in June 2016. It is now very outdated. Please see this guide to fine-tuning for an up-to-date alternative, or check out chapter 8 of my book "Deep Learning with Pytho

blog.keras.io