본문 바로가기
A.I/Deep Learning

딥러닝/ Fine Tuning(파인 튜닝) 을 하기 위한 코드와 설명

by healingmau 2022. 6. 16.

 

Fine Tuning(파인 튜닝) 을 하기 위한 코드와 설명

 

파인튜닝(Fine Tuning)이란?

Transfer Learning을 이용해 학습한

상태에서 베이스 모델의 파라미터를

미세하게 조정하는 것으로~

 

Frozen Layer 범위에 변화를 주거나

컴파일에 변화를 주어 추가로

학습을 시키는 것을 말합니다.

 

1. base_model을 학습 가능토록 만든다.

base_model.trainable = True

 

model.summary()

 

summary()로 확인하기

 

 

2. 몇번째 레이어까지 학습 불가능하게 할지 정한다.

 

base_model.layers
len(base_model.layers)

 

길이를 구해봅니다.

 

end_layer = 130

for layer in base_model.layers[ : end_layer ] :
  layer.trainable = False

 

model.summary()

 

summary()로 다시 확인해 봅니다.

 

 

# 모델 컴파일하기
model.compile(Adam(0.0001), 'categorical_crossentropy', ['accuracy'])

# 아까 학습한거에서 이어서 학습하도록 한다.
epoch_history = model.fit(train_generator, epochs=20, validation_data=(X_val, y_val), callbacks=[cp, csv_logger])

# 모델 평가하기
model.evaluate(X_test, y_test)

 

모델을 컴파일하고

평가 합니다.

 

힐링아무의 코딩일기 힐코딩!!

댓글