Keras는 파이썬(Python)으로 작성된 오픈 소스 신경망 라이브러리입니다. 머신 러닝과 딥 러닝 모델을 쉽고 빠르게 개발할 수 있도록 설계되었습니다. Keras는 사용자 친화적이고 모듈화된 구조를 가지고 있어, 신경망을 구축하고 실험하는 데 매우 효율적입니다.
Keras의 주요 특징은 다음과 같습니다:
- 사용의 용이성: Keras는 초보자도 쉽게 사용할 수 있도록 직관적이고 간결한 API를 제공합니다. 빠른 프로토타이핑을 가능하게 합니다.
- 모듈성: Keras는 독립적인 모듈들로 구성되어 있어, 이 모듈들을 조합하여 새로운 모델을 쉽게 구성할 수 있습니다.
- 확장성: 새로운 구성요소를 쉽게 추가할 수 있어, 고급 사용자들이 특정 요구사항에 맞게 Keras를 확장할 수 있습니다.
- 다중 백엔드 지원: Keras는 TensorFlow, Theano, Microsoft Cognitive Toolkit 같은 여러 백엔드 엔진을 지원합니다. 이를 통해 다양한 플랫폼과 장치에서 Keras 모델을 실행할 수 있습니다.
Keras는 다양한 분야에서 사용되며, 주로 이미지 및 비디오 인식, 텍스트 기반 애플리케이션(예: 자연어 처리), 시계열 분석 등에 활용됩니다. 데이터 과학자, 연구원, 엔지니어들이 Keras를 사용하여 머신 러닝 및 딥 러닝 모델을 빠르게 개발하고 테스트합니다.
GN⁺: 인간을 위한 딥러닝, Keras 3.0 릴리즈
- Keras 3.0이 정식 출시됨을 발표, 5개월간의 공개 베타 테스트를 거침
- Keras 3은 JAX, TensorFlow, PyTorch 상에서 Keras 워크플로우를 실행할 수 있는 전면적인 재작성 버전
- 새로운 대규모 모델 훈련 및 배포 기능 제공
다중 프레임워크 머신러닝 환영
- Keras 사용의 이점은 높은 개발 속도, 사용자 경험, API 디자인, 디버깅 용이성에 중점
- 250만 개발자가 선택한 검증된 프레임워크로, Waymo 자율주행 차량 및 YouTube 추천 엔진과 같은 대규모 ML 시스템에 사용됨
- Keras 3는 모델 성능 최적화, 모델 생태계 옵션 확장, 대규모 모델 병렬 처리 및 데이터 병렬 처리 지원 등의 추가 이점 제공
Keras 3 API, JAX, TensorFlow, PyTorch에서 사용 가능
- Keras 3는 Keras API 전체를 구현하고 TensorFlow, JAX, PyTorch에서 사용 가능
- 내장 레이어만 사용하는 모든 Keras 모델은 지원되는 모든 백엔드에서 즉시 작동
- 기존 tf.keras 모델도 JAX와 PyTorch에서 바로 실행 가능
다중 프레임워크 레이어, 모델, 메트릭 작성
- Keras 3는 모든 백엔드에서 동일하게 작동하는 컴포넌트(커스텀 레이어, 사전 훈련된 모델 등) 생성 가능
- keras.ops 네임스페이스를 통해 백엔드 간 호환 가능한 NumPy API 및 신경망 특화 함수 제공
- keras.ops만 사용하는 한, 커스텀 레이어 및 메트릭이 JAX, PyTorch, TensorFlow에서 동일한 코드로 작동
대규모 데이터 병렬 처리 및 모델 병렬 처리를 위한 새로운 분산 API
- 대규모 모델 샤딩 문제를 해결하기 위한 새로운 분산 API 제공
- 모델 정의, 훈련 논리, 샤딩 구성을 분리하여 단일 장치에서 실행되는 것처럼 모델 작성 가능
- 데이터 병렬 처리 및 모델 병렬 처리를 위한 샤딩 레이아웃을 쉽게 지정할 수 있는 API 제공
사전 훈련된 모델
- Keras 3에서 사용할 수 있는 다양한 사전 훈련된 모델 제공
- 모든 Keras Applications 모델과 KerasCV, KerasNLP의 사전 훈련된 모델이 모든 백엔드에서 작동
모든 백엔드에서 크로스 프레임워크 데이터 파이프라인 지원
- Keras 3 모델은 JAX, PyTorch, TensorFlow 백엔드와 관계없이 다양한 데이터 파이프라인을 사용하여 훈련 가능
복잡성의 점진적 공개
- Keras API는 단순한 워크플로우부터 저수준 커스터마이징까지 다양한 사용자 프로필에 맞는 다양한 워크플로우를 지원하는 설계 원칙을 따름
무상태 API
- 모든 상태를 가진 Keras 객체는 이제 JAX 함수에서 사용할 수 있는 무상태 API를 가짐
Keras 2에서 Keras 3으로의 이동
- Keras 3은 Keras 2와 높은 수준의 호환성을 가지며, 대부분의 사용자는 코드 변경 없이 Keras 3으로 전환 가능
- 더 큰 코드베이스는 일부 코드 변경이 필요할 수 있으나, 이동을 돕기 위한 완전한 마이그레이션 가이드 제공
- Keras 2를 계속 사용하고자 하는 경우, tf_keras 패키지를 사용하거나 TF_USE_LEGACY_KERAS 환경 변수를 설정하여 Keras 2를 사용할 수 있음
GN⁺의 의견
이 글에서 가장 중요한 것은 Keras 3.0의 공식 출시와 그것이 개발자들에게 제공하는 새로운 기능들임. Keras 3.0은 JAX, TensorFlow, PyTorch 등 다양한 백엔드에서 작동하며, 대규모 모델 훈련 및 배포 기능을 개선함으로써 머신러닝 개발의 유연성과 효율성을 크게 향상시킴. 이러한 특징은 머신러닝 커뮤니티에게 매우 흥미로운 소식이며, 개발자들이 더욱 다양한 환경에서 모델을 실험하고 배포할 수 있는 기회를 제공함.
Keras: Deep Learning for humans
After five months of extensive public beta testing, we're excited to announce the official release of Keras 3.0. Keras 3 is a full rewrite of Keras that enables you to run your Keras workflows on top of either JAX, TensorFlow, or PyTorch, and that unlocks
keras.io
Training Neural Network with Keras and basics of Deep Learning
Understand neural network with Keras. Keras is a Python library having an API for working with neural networks & deep learning frameworks
www.analyticsvidhya.com
https://techvidvan.com/tutorials/keras-layers/
'07.AI' 카테고리의 다른 글
음성인식 - 서비스 - 챗봇 (Chatbot) - 기업용 챗봇 아마존 큐(Q) (0) | 2023.12.06 |
---|---|
LLM - 시각화 (Visualization) (1) | 2023.12.04 |
인공지능 - 플랫폼 - AutoML (1) | 2023.11.29 |
음성인식 - 자연어처리 (NLP) - GPT-2 (0) | 2023.11.25 |
클라우드 컴퓨팅 - IQaaS (Intelligence-as-a-service) (0) | 2023.11.24 |