목록Python/Deep Learning (31)
군침이 싹 도는 코딩

import pandas as pd import numpy as np import matplotlib.pyplot as plt import random import seaborn as sns from prophet import Prophet # Prophet 라이브러리를 이용한 Time Series 데이터를 예측하기위해 필요한 라이브러리를 임포트해준다 from google.colab import drive drive.mount('/content/drive') import os os.chdir('/content/drive/MyDrive/Colab Notebooks/ml_plus/data') # 자신의 구글 드라이브와 마운트해주고 작업 폴더를 옮겨준다 df = pd.read_csv('avocado.csv',..

Modelcheckpoint는 에포크 시 마다 가장 좋은 모델을 저장한다 CSVLogger는 에포크 시 마다 기록을 남길 수 있다 if not os.path.exists(PROJECT_PATH + '/checkpoints/'+ model_type +'/') : os.makedirs(PROJECT_PATH + '/checkpoints/'+ model_type +'/') if not os.path.exists(PROJECT_PATH + '/log/'+ model_type +'/') : os.makedirs(PROJECT_PATH + '/log/'+ model_type +'/') # 위 두가지를 저장할 디렉토리를 만들어준다 from keras.callbacks import ModelCheckpoint from..
Fine Tuning 이란 트랜스퍼 러닝을 한 결과를 더 향상 시키기위해 frozen 시켰던 학습 데이터를 다시 학습 가능 상태로 만든 뒤 원하는 만큼을 다시 frozen 해서 모델에 그대로 재 학습 시키는 것이다 base_model.trainable = True # 학습을 다시 시키기위해 trainable 을 True로 바꿔준다 base_model.summary() >>> Conv_1 (Conv2D) (None, 7, 7, 1280) 409600 ['block_16_project_BN[0][0]'] Conv_1_bn (BatchNormalization) (None, 7, 7, 1280) 5120 ['Conv_1[0][0]'] out_relu (ReLU) (None, 7, 7, 1280) 0 ['Conv..
트랜스퍼 러닝이란 잘 만들어진 인공지능 모델을 가져와 ANN만을 뒤에 붙여 우리가 가진 데이터를 학습시키는것이다 이때 트랜스퍼 러닝에 사용할 인공지능 모델은 학습이 불가능하게 만들어야 한다 base_model = tf.keras.applications.MobileNetV2( input_shape= (128, 128, 3), include_top=False) # 위 코드는 텐서플로우의 MobileNetV2 를 사용한다는 뜻이다 모바일넷v2의 인풋 쉐입은 (96,96), (128,128), (160,160), (192,192), (224,224) 만 사용 가능하다 헤드모델을 제외하고 가져오기 위해 파라미터 include_top=False를 써준다 base_model.summary() >>> '''' bloc..

인공지능에게 학습을 시키려면 넘파이로 된 데이터를 주어야한다 이미지를 다운로드 받으면 그것을 바로 넣어주는게 아닌 넘파이로 변환시켜서 넣어줘야한다 ImageDateGenerator 라이브러리를 사용하면 된다 from tensorflow.keras.preprocessing.image import ImageDataGenerator # 라이브러리 임포트 train_datagen = ImageDataGenerator( rescale = 1 / 255.0 ) # 트레인 용 validation_datagen = ImageDataGenerator( rescale = 1 / 255.0 ) # 테스트 용 # ImageDataGenerator라이브러리를 training용과 validation용 변수로 만든다. 파라미터는 ..

# 주피터노트북이나 코랩에서 ! 느낌표부터시작하면 리눅스 명령어를 실행 # wget은 다운로드 !wget --no-check-certificate \ https://storage.googleapis.com/laurencemoroney-blog.appspot.com/horse-or-human.zip \ -O /tmp/horse-or-human.zip # 경로 지정 # 다운로드 코드의 예시 import zipfile # 필요한 라이브러리 임포트 file = zipfile.ZipFile('/tmp/horse-or-human.zip') # 메모리 지정 file.extractall('/tmp/horse-or-human') # 압축을 풀 경로 지정 # 압축풀기 코드의 예시

# 특징은 그대로 가져가고, 다운사이징하여 컴퓨터의 효율을 높이는 작업이다 컨볼루션 레이어와, 액티베이션 레이어 설정을 마친 후 피처맵을 다운사이징해 컴퓨터의 효율을 높여줄 수 있다. model.add( MaxPooling2D(pool_size = (2,2), strides = 2 ) ) # 코드는 이런식으로 사용한다
def build_model() : model = Sequential() model.add( Conv2D(16, (3,3), activation='relu', input_shape=(300,300,3) ) ) model.add( MaxPooling2D((2,2), 2 ) ) model.add( Conv2D(32, (3,3), activation='relu' ) ) model.add( MaxPooling2D((2,2), 2 ) ) model.add( Conv2D(64, (3,3), activation='relu' ) ) model.add( MaxPooling2D((2,2), 2 ) ) # ------------------------------------ model.add( Flatten() ) model...