본문 바로가기

Python/DeepLearning12

Fine Tuning 파인 튜닝은 트랜스퍼 러닝 후에 하는 방법이며 트랜스퍼 러닝 후 조금 더 개선이 가능한지 해보는 방법 학습된 모델 그 상태에서 추가로 학습을 시키되 좋은 모델의 일부분을 우리 데이터로 학습 가능토록 변경한 후에 학습시키는 방법 model.summary() 현재 학습 가능한 데이터는 우리가 추가한 데이터들 뿐 1. 베이스 모델 전체 레이어를 학습 가능 상태로 변경 base_model.trainable = True model.summary() 이전의 False로 막아둔걸 True로 돌려준다 훈련 가능 파라미터의 데이터갯수가 거의 전체인걸 확인 할 수 있다 2. 베이스 모델의 전체 레이어 수를 확인 len(base_model.layers) 154 베이스 모델의 레이어 갯수는 총 154개 3. 레이어수를 확인했.. 2024. 4. 19.
Transfer Learning - 전이학습 (학습된 모델 가져와 응용하기) 트랜스퍼 러닝 학습이 잘 된 모델을 가져와서 우리의 문제에 맞게 활용하는것, 학습이 잘 된 모델의 베이스 모델만 가져온다(헤드 모델은 빼고) IMG_SHAPE = (128, 128, 3)base_model = tf.keras.applications.MobileNetV2(input_shape = IMG_SHAPE, include_top=False, weights='imagenet') MobileNetV2 모델을 로드하고 초기화하여 파라미터 안에 새로운 정보를 입력받는다 input_shape 은 모델의 입력 이미지의 크기를 지정하며 미리 128x128 사이즈의 컬러이미지라고 변수지정을 해줬다 include_top 은 상단 레이어를 포함할지의 여부를 묻는 것인데 False 로 선택하면 모델의 기본적인 피처 추.. 2024. 4. 19.
딥러닝 - ImageDataGenerator import tensorflow as tf from tensorflow.keras.preprocessing.image import ImageDataGenerator from tensorflow.keras.models import Sequential from keras.layers import Conv2D,MaxPooling2D from keras.layers import Flatten,Dense ImageDataGenerator는 이미지 데이터를 전처리하거나 증식할 때 사용하는 도구로서 회전, 이동, 확대, 축소, 뒤집기 등 다양한 변형을 사용하여 훈련 데이터의 다양성을 높여 모델의 일반화 성능을 향상시킬 수 있다 또한 픽셀 값의 스케일링, 정규화, 이미지 크기 조정도 가능하다 flow_from_dire.. 2024. 4. 18.
딥러닝 - Convolutions, MaxPooling 컬러이미지든 그레이스케일이미지든 전부 처리 가능한 인공지능 개발을 위해 4차원으로 reshape 한다 X_train = X_train.reshape( 60000, 28, 28, 1) X_test = X_test.reshape(10000, 28, 28, 1) 모델링 from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Conv2D,MaxPooling2D, Flatten, Dense Conv2D 는 컨볼루션(합성곱) 연산을 수행하는 레이어 작은 필터를 이동하면서 합성곱을 수행 이를 새로운 이미지로 변환한다 필터의 수, 크기, 스트라이드등을 설정 가능하다 MaxPooling2D 는 데이터의 크기를 줄이고 특징을 간소.. 2024. 4. 18.
딥러닝 - 모델 Save, Load 1. 모델을 폴더로 저장하는 방법 model.save( 'my_model' ) 1 - 2. 불러오기 my_model = tf.keras.models.load_model('my_model') my_model.predict(X_test) 이상없이 작동된다 2. 파일로 저장하는 법 model.save('my_model.h5') 2 - 2. 불러오기 my_model2 = tf.keras.models.load_model('my_model.h5') my_model2.predict(X_test) 이상 없이 작동 된다 3 . 가중치를 파일로 저장하는 법 len(model.get_weights()) 4 model.save_weights('my_model_weights.h5') 3 - 2. 불러오기 my_model3 = .. 2024. 4. 18.
딥러닝 - 이미지분류 3) Confusion Matrix, Acrruracy 딥러닝 - 이미지 분류 1) Data Preprocessing 이런 형태의 이미지를 gray scale image라고 한다 흔히 말하는 흑백 이미지라고 생각하면 되겠다 자세히는 흑과 백 사이의 색들이 조합된 이미지 즉 회색으로 표현한것이라 그레이 스케일 이미지인 hani08.tistory.com 딥러닝 - 이미지 분류 2) 모델 생성 및 확인 from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense, Flatten def build_model() : model = Sequential() model.add( Flatten( ) ) model.add( Dense( 128, 'relu' ) ) model.ad.. 2024. 4. 18.