728x90
# Tuning the ANN
from keras.wrappers.scikit_learn import KerasClassifier
from sklearn.model_selection import GridSearchCV
from keras.models import Sequential
from keras.layers import Dense
우선 필요한 라이브러리들을 임포트 해줍니다.
# tensorflow로 그리드서치 하기 위해서
# 1. 모델링하는 함수를 만든다.
from keras.layers.attention.multi_head_attention import activation
def build_model(optimizer):
# 모델링
model = Sequential()
model.add(Dense(units=6,activation='relu',input_shape=(11,)))
model.add(Dense(units=8,activation='relu'))
model.add(Dense(units=1,activation='sigmoid'))
model.compile(optimizer=optimizer,loss='binary_crossentropy',metrics=['accuracy'])
return model
# 2. 그리드 서치를 위해서, 그리드서치용 클래서파이어를 만든다.
model=KerasClassifier(build_fn=build_model)
my_param = {'batch_size':[10,20,32],'epochs':[20,30,50],'optimizer':['adam','rmsprop']}
grid=GridSearchCV(estimator=model,param_grid=my_param,scoring='accuracy')
# 3. 학습 시킨다.
grid.fit(X_train,y_train)
# 4. 평가 과정
'인공지능 > 딥러닝' 카테고리의 다른 글
딥러닝 : learning rate를 optimizer에 셋팅하기. (0) | 2022.12.28 |
---|---|
딥러닝 : Tensorflow로 리그레션 문제 모델링 하는 방법 (0) | 2022.12.28 |
딥러닝 : Dummy variable trap (0) | 2022.12.27 |
딥러닝 : tensorflow로 분류의 문제 모델링 하는 방법 (0) | 2022.12.27 |
딥러닝 : fit 함수에서 배치 사이즈 (batch_size= )와 에포크(epochs=) (0) | 2022.12.27 |