본문 바로가기
C.W.K.
Stream
Lesson 04 of 07 · published

Keras 3가 이룬 전환

~8 min · origin

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

모델 코드는 두고 실행 엔진만 바꾼다

Keras 3의 핵심은 여러 백엔드를 지원한다는 목록 자체가 아니야. 같은 모델 코드를 TensorFlow, PyTorch, JAX 사이에서 옮길 수 있게 했다는 점이 중요해. PyTorch Lightning처럼 사용법을 다듬은 도구도 기반 프레임워크에는 묶여 있지만, Keras 3 모델은 주요 세 프레임워크 위에서 그대로 실행할 수 있어. 이 이동성을 가능하게 하는 층이 keras.ops야. NumPy와 닮은 공통 연산을 호출하면 현재 선택된 백엔드의 구현이 실행돼.

백엔드는 KERAS_BACKEND 환경 변수에 jax, torch, tensorflow 가운데 하나를 지정해 선택해. 반드시 import keras보다 먼저 설정해야 해. Keras를 불러온 뒤에는 해당 프로세스의 백엔드가 고정되므로 스크립트 중간에서 바꾸려 해도 동작하지 않아.

Code

keras.ops — 백엔드를 잇는 공통 연산 계층·python
# keras.ops — the universal operation layer
import keras

# These work identically on TF, PyTorch, or JAX:
x = keras.ops.matmul(a, b)
y = keras.ops.nn.softmax(logits)
z = keras.ops.image.resize(img, size=(224, 224))

External links

Exercise

Keras 3와 백엔드 하나를 설치해(pip install keras tensorflow). 다섯 줄짜리 스크립트에서 keras.config.backend()를 출력하고 keras.ops.zeros((3, 3))를 만들어봐. 그다음 KERAS_BACKEND=torch를 설정한 새 프로세스에서 다시 실행해.

Progress

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

댓글 0

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

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