반응형

원인

  1. HDF5 형식이 레거시로 분류됨:
    • Keras에서 모델 저장 시 사용되던 HDF5 파일 형식(.h5)은 이전부터 널리 사용되었지만, 현재는 Keras 고유의 새로운 파일 형식(.keras)이 권장됩니다.
    • 새로운 형식은 확장 가능성과 Keras의 최신 기능과의 호환성을 고려하여 설계되었습니다.
  2. model.save() 기본 설정:
    • 기본적으로 model.save()를 호출하면 모델이 HDF5 형식으로 저장되며, 이는 최신 권장사항과 맞지 않기 때문에 경고가 발생합니다.

해결 방법

1. Keras 기본 형식 사용

Keras의 최신 형식(.keras)으로 모델을 저장하도록 코드를 수정하세요.

# 모델을 Keras 기본 형식으로 저장
model.save('my_model.keras')

or

keras.saving.save_model(model, 'my_model.keras')

 

2. HDF5 형식을 명시적으로 사용할 경우 - keras3에서 deprecated

여전히 HDF5 형식을 사용하려면, 다음과 같이 파일 형식을 명시적으로 지정하세요. 하지만 keras3에서는 deprecate되었습니다.

# HDF5 형식을 명시적으로 설정
model.save('my_model.h5', save_format='h5')
 

3. 기존 코드와의 호환성 확인

기존 코드나 협업 환경에서 .h5 형식이 필요한 경우에는 HDF5를 유지할 수 있지만, 새로운 프로젝트에서는 .keras 형식을 사용하는 것이 좋습니다.


요약

  • 원인: HDF5 형식은 구식(레거시)으로 간주되며, Keras의 새로운 기본 파일 형식이 권장됨.
  • 해결 방법:
    1. 새로운 형식 .keras를 사용:
      • model.save('my_model.keras').
      • keras.saving.save_model(model, 'my_model.keras')
    2. HDF5 형식을 명시적으로 지정: model.save('my_model.h5', save_format='h5'). - keras3 deprecated
  • 권장 사항: Keras 고유의 새로운 형식으로 전환하여 최신 기능과의 호환성을 유지하는게 좋습니다.
728x90
반응형

+ Recent posts