Last translated: 12 Jun 2025

Translation Not Available Yet

This repository's README hasn't been translated yet. Once translated, it will be easier to read and understand in your native language (中文).

After translating, add the links to README so others can view it directly.

Keras 3: 인간을 위한 딥러닝

Keras 3는 JAX, TensorFlow, PyTorch 및 OpenVINO(추론 전용)를 지원하는 멀티-백엔드 딥러닝 프레임워크입니다. 컴퓨터 비전, 자연어 처리, 오디오 처리, 시계열 예측, 추천 시스템 등을 위한 모델을 쉽게 구축하고 훈련할 수 있습니다.

  • 가속화된 모델 개발: Keras의 높은 수준의 사용자 경험(UX)과 PyTorch 또는 JAX의 즉시 실행(eager execution)과 같은 디버깅하기 쉬운 런타임 덕분에 딥러닝 솔루션을 더 빠르게 제공할 수 있습니다.
  • 최첨단 성능: 모델 아키텍처에 가장 적합한 백엔드(종종 JAX!)를 선택하여 다른 프레임워크 대비 20%에서 350%까지의 성능 향상을 누릴 수 있습니다. 벤치마크 보기.
  • 데이터센터 규모의 훈련: 노트북에서 대규모 GPU 또는 TPU 클러스터까지 확장할 수 있습니다.

신생 스타트업부터 글로벌 기업까지 거의 3백만 명의 개발자와 함께 Keras 3의 힘을 활용해 보세요.

설치

pip로 설치

Keras 3는 PyPI에서 keras로 제공됩니다. Keras 2는 tf-keras 패키지로 계속 사용할 수 있습니다.

  1. keras 설치:
pip install keras --upgrade
  1. 백엔드 패키지 설치.

keras를 사용하려면 선택한 백엔드(tensorflow, jax, torch)도 설치해야 합니다. 특정 Keras 3 기능(일부 전처리 레이어 및 tf.data 파이프라인)을 사용하려면 tensorflow가 필요합니다.

로컬 설치

최소 설치

Keras 3는 Linux 및 MacOS 시스템과 호환됩니다. Windows 사용자는 WSL2를 사용하여 Keras를 실행하는 것을 권장합니다. 로컬 개발 버전을 설치하려면:

  1. 의존성 설치:
pip install -r requirements.txt
  1. 루트 디렉토리에서 설치 명령 실행.
python pip_build.py --install
  1. keras_export 공개 API를 업데이트하는 PR을 생성할 때 API 생성 스크립트 실행:
./shell/api_gen.sh

GPU 지원 추가

requirements.txt 파일은 TensorFlow, JAX 및 PyTorch의 CPU 전용 버전을 설치합니다. GPU 지원을 위해 TensorFlow, JAX 및 PyTorch용 별도의 requirements-{backend}-cuda.txt를 제공합니다. 이 파일들은 pip를 통해 모든 CUDA 의존성을 설치하며 NVIDIA 드라이버가 사전 설치되어 있어야 합니다. CUDA 버전 불일치를 방지하기 위해 각 백엔드마다 깨끗한 Python 환경을 사용하는 것을 권장합니다. 예를 들어, conda로 Jax GPU 환경을 생성하는 방법은 다음과 같습니다:

conda create -y -n keras-jax python=3.10
conda activate keras-jax
pip install -r requirements-jax-cuda.txt
python pip_build.py --install

백엔드 구성

환경 변수 KERAS_BACKEND를 내보내거나 ~/.keras/keras.json의 로컬 구성 파일을 편집하여 백엔드를 구성할 수 있습니다. 사용 가능한 백엔드 옵션은 "tensorflow", "jax", "torch", "openvino"입니다. 예시:

export KERAS_BACKEND="jax"

Colab에서는 다음과 같이 할 수 있습니다:

import os
os.environ["KERAS_BACKEND"] = "jax"

import keras

참고: 백엔드는 keras를 임포트하기 전에 구성해야 하며, 패키지가 임포트된 후에는 백엔드를 변경할 수 없습니다.

참고: OpenVINO 백엔드는 추론 전용 백엔드로, model.predict() 메서드를 사용하여 모델 예측을 실행하는 데만 설계되었습니다.

이전 버전과의 호환성

Keras 3는 tf.keras(TensorFlow 백엔드 사용 시)를 대체하는 드롭인(drop-in) 교체로 작동하도록 설계되었습니다. 기존 tf.keras 코드를 가져와 model.save() 호출이 최신 .keras 형식을 사용하는지 확인하면 됩니다.

tf.keras 모델에 사용자 정의 컴포넌트가 포함되어 있지 않다면 JAX 또는 PyTorch에서 즉시 실행할 수 있습니다.

사용자 정의 컴포넌트(예: 사용자 정의 레이어 또는 train_step())가 포함된 경우 일반적으로 몇 분 안에 백엔드-불가지론적(agnostic) 구현으로 변환할 수 있습니다.

또한 Keras 모델은 사용 중인 백엔드와 관계없이 모든 형식의 데이터셋을 사용할 수 있습니다: 기존 tf.data.Dataset 파이프라인 또는 PyTorch DataLoaders로 모델을 훈련할 수 있습니다.

Keras 3를 사용해야 하는 이유

  • 어떤 프레임워크 위에서도 고수준 Keras 워크플로를 실행할 수 있습니다 -- 각 프레임워크의 장점(예: JAX의 확장성과 성능 또는 TensorFlow의 생태계 옵션)을 자유롭게 활용할 수 있습니다.
  • 어떤 프레임워크의 저수준 워크플로에서도 사용할 수 있는 사용자 정의 컴포넌트(예: 레이어, 모델, 메트릭)를 작성할 수 있습니다.
    • Keras 모델을 가져와 네이티브 TF, JAX 또는 PyTorch로 작성된 훈련 루프에서 훈련할 수 있습니다.
    • Keras 모델을 PyTorch-네이티브 Module의 일부 또는 JAX-네이티브 모델 함수의 일부로 사용할 수 있습니다.
  • 프레임워크 종속성을 피하여 ML 코드를 미래에도 사용할 수 있도록 합니다.
  • PyTorch 사용자: 마침내 Keras의 강력함과 사용 편의성을 누릴 수 있습니다!
  • JAX 사용자: 완전한 기능을 갖춘, 검증된, 잘 문서화된 모델링 및 훈련 라이브러리에 접근할 수 있습니다.

자세한 내용은 Keras 3 출시 공지에서 확인하세요.