Keras는 인공 신경망을 위한 Python 인터페이스를 제공하는 오픈 소스 소프트웨어 라이브러리이다. TensorFlow 라이브러리의 인터페이스 역할을 한다. Keras는 2015년에 처음 출시되었으며, 사용자 친화적이고 모듈식이며 확장 가능한 방식으로 심층 신경망의 빠른 실험을 가능하게 하도록 설계되었다. Keras라는 이름은 고대 그리스어 단어 κέρας(keras)에서 유래했으며, '뿔'을 의미한다.
역사
Keras는 ONEIROS(Open-ended Neuro-Electronic Intelligent Robot Operating System) 프로젝트의 연구 노력의 일환으로 개발되었다. 주요 저자이자 유지보수자는 2024년까지 Google 엔지니어였던 François Chollet이다. 처음에 Keras는 독립적인 소프트웨어였지만, 이후 TensorFlow 라이브러리에 통합되었다. 버전 2.3까지 Keras는 TensorFlow, Microsoft Cognitive Toolkit, Theano, PlaidML을 포함한 여러 백엔드를 지원했다. 버전 2.4부터 3.0까지는 TensorFlow만 지원되었다. 버전 3.0(및 그 미리보기 버전인 Keras Core)부터 Keras는 다시 멀티 백엔드가 되어 TensorFlow, JAX, PyTorch를 지원한다. Keras 3는 TensorFlow 2.16부터 기본 버전이 되었지만, Keras 2는 여전히 사용할 수 있다.
특징
Keras에는 레이어, 목적 함수, 활성화 함수, 옵티마이저, 그리고 이미지 및 텍스트 데이터 작업을 위한 다양한 도구 등 일반적으로 사용되는 신경망 구성 요소의 구현이 많이 포함되어 있다. 이를 통해 심층 신경망 프로그래밍이 단순해진다. 표준 신경망 외에도 Keras는 합성곱 신경망과 순환 신경망을 지원한다. 또한 드롭아웃, 배치 정규화, 풀링과 같은 다른 일반적인 유틸리티 레이어도 지원한다. Keras를 사용하면 스마트폰(iOS 및 Android), 웹, 또는 Java Virtual Machine에서 실행되는 모델을 생성할 수 있다. 또한 그래픽 처리 장치(GPU) 및 텐서 처리 장치(TPU) 클러스터에서 딥러닝 모델의 분산 훈련을 사용할 수 있다.
채택 및 영향
Keras는 특히 머신 러닝 커뮤니티에서 가장 널리 사용되는 고수준 신경망 API 중 하나가 되었다. TensorFlow와의 통합은 많은 딥러닝 애플리케이션의 표준 도구가 되게 했다. 이 라이브러리는 사용 용이성으로 유명하며, 이는 초보자와 연구자 모두에게 인기를 얻는 데 기여했다. Keras는 생성형 AI 및 대규모 언어 모델을 포함한 다양한 인공 지능 프로젝트에서도 사용된다. 라이브러리의 유연성과 여러 백엔드 지원은 신경망을 개발하고 배포하는 데 다재다능한 선택지가 되게 한다.
같이 보기
- 딥러닝 소프트웨어 비교
- 신경망
- TensorFlow
- PyTorch
- JAX
참조
- Keras 문서 및 공식 웹사이트
- TensorFlow 릴리스 노트
- François Chollet의 출판물 및 강연