Keras(5)
-
[Keras] EarlyStopping 및 Model 저장하기
리마인드 한다는 개념으로 해보고 있다. torch를 하다가 keras를 하니까 좀 편한 것 같기도 하다 ㅎㅎㅎ from keras.callbacks import EarlyStopping from keras.callbacks import ModelCheckpoint 아래와 같이 EarlyStopping과 ModelCheckpoint를 어떤 것을 모니터링할지를 설정한다. es = EarlyStopping(monitor='accuracy', mode='max', verbose=1, patience=500) mc = ModelCheckpoint('best_model.h5', monitor='accuracy', mode='max', save_best_only=True) 모델을 어떻게든 원하는대로 만든다. 이때 c..
2020.11.21 -
[Keras] Weighted Cross Entropy 적용하는 방법
keras에서 weighted binary crossentropy를 적용할 때 방법을 공유하고자 한다. 바로 sklearn의 class_weight를 활용하는 것이다. from sklearn.utils import class_weight weights = class_weight.compute_class_weight('balanced', np.unique(train_y), train_y) weights = {i : weights[i] for i in range(2)} weights ## {0: 0.6254180602006689, 1: 2.493333333333333} class_weight에 어떻게 보면 고정된 weight를 주는 방법이다. 더 나은 방법은 아마도 batch_size마다 weight를 계산..
2020.11.21 -
[Visualization] keras 결과물(history) 시각화하는 함수
keras를 사용하면 쉽게 결과물들을 저장을 할 수 있다. 이런 식으로 metrics에 제공하는 함수나, 함수를 만들면 fitting 할 때 저 부분들에 대해서 epoch 마다 저장을 해준다. model.compile(loss = keras.losses.BinaryCrossentropy(label_smoothing = 0.0), optimizer = adam, metrics =['accuracy',get_f1]) 실제로 fit을 하게 됬을 때, validation_data를 넣으면 `val_accuracy` 와 `val_get_f1` 형태로 저장이 된다. history = model.fit(train, train_y, validation_data=(valid, valid_y), ) 다음과 같이 dict ..
2020.11.21 -
[Pytorch] torch에서 모델 summary 확인하는 방법
pytorch에서 keras처럼 summary를 정리해주는 함수가 있어서 공유한다. 찾다 보면 좋은 툴이 많은 것 같다(굳굳) Keras처럼 파라미터 개수랑 용량을 제공해준다! import torch from torch import nn from torchsummary import summary as summary_ from torch.nn import functional as F class MnistModel(nn.Module): def __init__(self): super(MnistModel, self).__init__() # input is 28x28 # padding=2 for same padding self.conv1 = nn.Conv2d(1, 32, 5, padding=2) # feature..
2020.08.25 -
[Pytorch] Pytorch를 Keras처럼 API 호출 하는 방식으로 사용하는 방법
파이토치에서 케라스처럼 API를 만들어서 하는 경우를 발견하게 돼서 공유한다. 실제로 이 규격에 맞춰서 LSTM도 만들수도 있을 것 같다(조금 복잡할 것 같기도 하지만) 기존 코드를 조금씩 바꿔서 해봤고, 아래에는 Custom Dataset에 대해서 새로 만들어서 진행해봤다. 이런 좋은 코드를 공유해주신 다른 분들이 고맙고, 나도 조금 수정을 해서 공유를 한다. 다들 즐거운 코딩하시길! Library Load import torch from torch import nn from torch import optim from torch.autograd import Variable from torchsummary import summary as summary_ import pkbar import warnings..
2020.08.25