목록Study (Programming)/Tensorflow-Keras (4)
akaSonny
Custom Datagenerator로 Multiple Input 넣기 오늘 깨달은점 generator로 multi input을 사용해본 적이 없었다 ..그냥 데이터를 직접 넣을 때는 model.fit(x=[x1, x2], y=y) 이런 식으로 사용하면 됐는데 generator는 어떻게 하지 ???? 에서 뇌정지 찾아보니 대부분 custom이 아닌 ImageGenerator 관련 방법이라 찾는데 애 좀 먹었다. 1. 모델 만들기 일단 다음과 같이 2개의 입력값을 가지는 모델을 생각해보자. input1 = tf.kears.layers.Input(shape=(64, 64)) input2 = tf.kears.layers.Input(shape=(64, 64)) def network(inputs): x = Den..
나는 항상 모델 훈련을 하면 전체 에폭이 돌고, 모델 저장을 해서 테스트를 했는데, 생각해보니 "마지막에 저장된 모델이 과적합돼서 오히려 성능이 떨어진 모델을 사용하는게 아닐까..?" 하는 의문이 들었다. 그래서 훈련 중 두 가지 처리를 시도해보았다. 훈련 중 모델 저장하기 EarlyStop 사용하기 1. 훈련 중 모델 저장하기 - tensorflow.keras.callbacks.ModelCheckpoint() tf.keras.callbacks.ModelCheckpoint() filepath, monitor: str = 'val_loss', verbose: int = 0, save_best_only: bool = False, save_weights_only: bool = False, mode: str =..

딥러닝을 처음 시작하면, 가장 먼저 만나게 되는 데이터셋인 MNIST. MNIST (Modified National Institute of Standards and Technology database): 손으로 쓴 숫자들로 이루어진 대형 데이터베이스 이런 숫자들을 분류하는 것을 목적으로 훈련을 시켜보자! (tensorflow 2.0 이상 버전) #1. 필요한 라이브러리 import import numpy as np import tensorflow as tf import tensorflow.keras import utils from tensorflow.keras.datasets import mnist from tensorflow.keras.models import Model from tensorflow.k..
딥러닝 모델을 만들다 보면 내장되어 있는 함수 말고 내가 원하는 loss function을 만들어야 할 때가 있다. 사실 꼭 필요하진 않지만,, 모델의 목적에 따라 바꿔쓸 때가 생긴다. 뭐 경진대회 용이면 대회에 쓰는 score를 loss function으로 사용해서 그 점수가 좋아지도록 학습 방향을 설정한다던가.. 할때 ? 가장 먼저 큰 틀은 다음과 같다. import tensorflow.keras.backend as K def custom_loss_function(y_true, y_pred): loss = ... return loss 원하는 함수를 위와 같이 만들어준다. 이 때 입력인자는 실제값과 예측값을 순서대로 받기! 변수명은 상관없음 그리고 모델을 complie 할 때, loss 부분에 이 함수..