ai/Deep Learning(16)
-
Fine Tuning (미세조정) , EarlyStopping, ModelCheckpoint
tf.reset_default_graph() 기본 CNN구조 (architecture) 1. Traning Data Set 2. Input Layer 3. convolution Layer [특성 (4차원) ] (1) conv (2) relu (3) pooling Layer 4. 3번 x a 5. Flatten Layer ( 2차원 ) 6. hidden Layer 7. output Layer 8. T, Y 비교 ( update는 당연히 미분이 아닌 back propagation ) 많은 양의 Data가 있어야지 학습이 잘되요 ! → 현실적으로 그렇게 많은 data를 수직하기 쉽지 않아요!! 그러면 어떻게 하나요? Data Augmentation (데이터 증식) → overfiting을 많이 줄일수 있이요 ..
2021.10.05 -
pretrained network, Transfer Learning (전이학습)
이전에 작업한 "MNIST"는 gray-scale 이었어요 → 속도도 빠르고 단순한 image였기 때문에 (convolution layer3개)+(pooling layer)+(FC layer) = 높은정확도(99%) = GPU가 아닌 CPU (1시간이내) 하지만, 실무에서 사용하는 데이터(image)는 (1) size가 커요 + color = 1개 image의 용량이 크고 학습도 잘 안되요 (2) convolution Layer, pooling layer 가 많이필요해서 시간↑ (3) cpu로는 학습이 안되요! → gpu를 사용 (그래도 오래걸려요) → hyperparameter(내가 조절하는 작업들)을 하기 위해 상당히 오랜시간이 걸릴수 밖에 없어요!! → pretrained network을 이용하면 ..
2021.10.05 -
Data Augmentation (데이터 증식)
Data Augmentation (데이터 증식) - 강아지&고양이 전체 data : 25000 (학습20000개) → 80~85% accuracy → 강아지&고양이 data를 4000개로 학습 진행 (학습2000개) → 77% accuracy → data가 적어지면 overfitting 결국 정확도가 떨어진다 overfitting을 피하려면 어떻게 해야하나요 ? 1. L2 Regularization (L2규제) : model을 수정해서 overfitting을 완화, overfitting을 강제로 조절해서 규제하는 편법?이다 2. Data Augmentation (데이터 증식) : 조금씩 움직여 변화한 사진들을 증식 data량을 증가 → overfitting을 감소 하지만 전가의보도(모든문제해결)은 아니에..
2021.10.01 -
Image Data Generator (cat & dog ver)
Image DataGeneration 사용방법 (CSV보다 느리나 memorie면에서 효율적이다) →CSV형식으로 image를 변환시키지 않고 어떻게 하면 학습할 수 있을까요? →Image Data Generator(발전기) 를 폴더(directory)라 DataFrame으로부터 data를 가져올수 있는 Generator →flow_from_directory(함수) 를 이용해 폴더로 부터 이미지를 불러오는데 labeling을 자동으로 할 수 있어요!! Image Data Generaor는 폴더로부터 땡기는거라 폴더를 제대로 만들지 않으면 사용하기 힘들다 google drive는 스토리지를 이용하면 되나 비용이 발생해 local에서 사용 local pc 1. Jupyter Home (python_ml) 2..
2021.10.01 -
cat & dog tf2.0 ver
## CSV 파일을 이용해서 Kaggle Dogs vs. Cats 전체 이미지 학습 import numpy as np import pandas as pd import tensorflow as tf from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Flatten, Dense, Conv2D, MaxPooling2D, Dropout from tensorflow.keras.optimizers import Adam, SGD, RMSprop import matplotlib.pyplot as plt from sklearn.model_selection import train_test_split from sklearn.pr..
2021.09.30 -
Dog & Cat img → csv
Deep Learning은 학습 데이터가 많아야 해요! → 현실적으로 이렇게 많은 data를 구할수 있나요? → 많은양의 data를 구하기 힘들어요 데이터량이 작아요 = 일반적으로 (1000 ~ 10,000) 사이의 data "Dog vs Cats예제" → 이진분류 (binary classfication) 실사 이미지로 멍멍이와 고양이 사진이 제공 1. kaggle에서 down 2. train.zip down -고양이사진 12,500장 -멍멍이사진 12,500장 "지금까지 CSV파일을 이용해서처리" → 제공된 이미지 file을 이용해서 CSV파일을 만들어 보아요 단점 : 이미지가 많으면 csv file 크기 ↑ 메모리 로딩이 안될수 있어요 추가적인 modul이 필요 → 설치 & 코드 작성 csv만드는 작..
2021.09.30