목록Ai/DL (22)
UOMOP
1. 각종 모듈 호출 import os import cv2 import numpy as np import pandas as pd import tensorflow as tf import matplotlib.pyplot as plt from sklearn.model_selection import train_test_split from tensorflow.keras.models import Model from tensorflow.keras.layers import Input, Dense, Conv2D, BatchNormalization, Dropout, \ Flatten, Activation, MaxPooling2D, GlobalAveragePooling2D from tensorflow.keras.optimi..
1. 각종 모듈 호출 import os import cv2 import numpy as np import pandas as pd import tensorflow as tf import matplotlib.pyplot as plt %matplotlib inline from sklearn.model_selection import train_test_split from tensorflow.keras.datasets import cifar10 from tensorflow.keras.utils import to_categorical from tensorflow.keras.preprocessing.image import ImageDataGenerator from tensorflow.keras.models impor..
Normalization 일반적으로 CNN입력 값으로 Pixel값 변환을 위해 0~1 사이의 값으로 변환하거나, 채널별 z score변환(평균0, 표준편차1)적용 feature_center가 True이면 R, G, B 각 픽셀 값에서 개별 채널들의 평균 픽셀 값을 빼서 평균을 0으로 함. feature_std_normalization을 Ture이면 R, G, B 각 픽셀 값에서 개별 채널들의 표준편차 값으로 나눔. rescale=255.0 각 픽셀 값을 0~1 사이의 값으로 만들기 위해서 보통 255.0으로 나눔. feature_center을 통해서 각 채널의 평균을 구하고 feature_std_normalization을 통해서 각 채널의 표준편차를 구한다. 이후, 각 채널의 픽셀 값들에 {(x - 채널..
brightness_range data_gen = ImageDataGenerator(brightness_range=(0.1, 0.9)) show_aug_image_batch(cat_3dim, data_gen, 5) data_gen = ImageDataGenerator(brightness_range=(1.0, 2.3)) show_aug_image_batch(cat_3dim, data_gen, 5) channel_shift_range data_gen = ImageDataGenerator(channel_shift_range=150.0) # -150~150사이 하나의 수를 골라 픽셀 값에 더해준다. show_aug_image_batch(cat_3dim, data_gen, 5)
1. 각종 모듈 및 함수 호출 import numpy as np import pandas as pd import os import cv2 import matplotlib.pyplot as plt from tensorflow.keras.preprocessing.image import ImageDataGenerator %matplotlib inline def show_image(image) : plt.figure(figsize = (8,8)) plt.imshow(image) plt.axis("off") def show_aug_image_batch(image, data_generator, how_many) : image_4 = np.expand_dims(image, axis=0) data_generator.f..
Data Augmentation(데이터 증강) : CNN 모델의 성능을 높이고, overfitting을 극복할 수 있는 가장 좋은 방법은 다양한 우형의 학습 이미지 데이터의 양을 늘리는 것이다. 데이터 증강은 다양한 유형의 학습 이미지 데이터의 양을 늘리는 것이지만, 실제 개수를 늘리는 것이 아니라, epoch마다 변형된 image가 학습하는 데 사용되는 것이다. iteration이 돌 때마다 사진이 변형되는 것이지, 사진이 여러 개 생기는 것은 아니다. 공간(spatial) 레벨 변형, 픽셀(pixel) 레벨 변형을 분류가 되며, keras의 대표적인 Augmentation으로는 ImageDataGenerator가 있다. 1. 각종 모듈, 함수 호출 import numpy as np import pan..