C.W.K.
Stream
Lesson 01 of 07 · published

.keras 포맷

~8 min · serialize

Level 0Keras 도제
0 XP0/97 lessons0/20 achievements
0/120 XP to next level120 XP to go0% complete

.keras 포맷은 weights + architecture + metadata 가 한 zip 모양 파일에 다 들어있고, 그 파일 한 개가 어느 backend 에서든 로드돼. 거기에 deploy 용 weight-only 저장, subclass layer round-trip 시키는 custom-object registration, TF SavedModel / TFLite handoff 용 model.export() 까지.

파일 하나에 모델 통째로

Keras 3 의 표준 저장 포맷이자 권장 포맷. .keras 는 사실 zip 아카이브야 — 안에 세 가지가 들어있어: architecture (사람이 읽을 수 있는 config.json), weights, 그리고 optimizer 상태. 세 번째가 핵심인데, optimizer 의 momentum 이랑 learning-rate schedule 까지 같이 저장되니까 학습을 멈춘 그 지점에서 정확히 이어서 재개할 수 있어. 학습된 파라미터만이 아니라 "학습 과정" 자체가 살아남는 거야.

왜 zip 모양이 중요하냐면

config 가 그냥 JSON 이라서 들여다보고 디버깅하기 쉬워. unzip -l my_model.keras 하면 tensor 하나 로드 안 하고도 내용물이 보여. 로드가 실패하면 config 열어서 저장된 layer 그래프를 그대로 확인할 수 있어 — 역공학해야 할 불투명 바이너리 덩어리가 없는 거지. weight 는 backend-agnostic array 로 저장돼서, 이 트랙 나머지가 전부 이 위에 세워져 — 같은 파일이 TensorFlow·PyTorch·JAX 어디서든 로드돼. save 랑 load 는 각각 메서드 한 줄이야, 아래처럼.

Code

.keras 모델 통째로 저장 / 로드·python
# Save the complete model
model.save("my_model.keras")

# Load it back
loaded_model = keras.models.load_model("my_model.keras")

External links

Exercise

작은 model 학습. .keras 로 저장. unzip -l 로 파일 구조 검사. 다시 로드, weight 가 numpy.allclose 로 정확히 일치 확인.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.