용어집

Keras

모듈성, 유연성, 멀티 백엔드 지원으로 머신 러닝을 간소화하는 사용자 친화적인 Python API인 Keras에 대해 알아보세요.

YOLO 모델을 Ultralytics HUB로 간단히
훈련

자세히 알아보기

Keras는 신경망(NN)을 위한 높은 수준의 애플리케이션 프로그래밍 인터페이스(API) 로, 널리 사용되는 Python 프로그래밍 언어로 작성되었습니다. 사용자 경험에 중점을 두고 설계되어 빠른 실험을 가능하게 하고 복잡한 딥 러닝(DL) 모델 구축과 관련된 인지적 부하를 줄이는 것을 목표로 합니다. Keras는 다양한 기본 DL 프레임워크를 위한 사용자 친화적인 인터페이스로서 개발자와 연구자가 단순하고 일관된 구문을 사용해 모델을 구축하고 훈련할 수 있도록 지원합니다. 이를 통해 고급 머신 러닝(ML)에 대한 접근성을 높여 신속한 개발과 반복을 촉진할 수 있습니다.

Keras의 주요 기능

Keras는 개발 프로세스를 간소화하는 몇 가지 핵심 기능으로 인해 널리 채택되고 있습니다:

  • 사용자 친화성: 기계가 아닌 인간을 위해 설계되었습니다. Keras는 간단하고 일관된 API를 제공하며 사용자 오류에 대한 명확한 피드백을 제공합니다. 따라서 초보자의 학습 곡선이 상당히 빨라집니다.
  • 모듈성 및 구성 가능성: Keras 모델은 최소한의 제한으로 구성 가능한 빌딩 블록(레이어, 옵티마이저, 활성화 기능 등)을 연결하여 구축됩니다. 이러한 모듈성 개념 덕분에 구성 요소를 쉽게 만들고 재사용할 수 있습니다.
  • 손쉬운 확장성: 레이어, 손실 함수, 메트릭과 같은 새로운 빌딩 블록을 쉽게 추가할 수 있어 연구 및 개발에 유연하게 사용할 수 있습니다. 따라서 백엔드 프레임워크의 복잡성을 깊이 파고들지 않고도 새로운 아이디어를 구현할 수 있습니다.
  • 멀티 백엔드 지원: Keras는 다음과 같은 다양한 DL 프레임워크 위에서 실행할 수 있습니다. TensorFlow, PyTorchJAX를 포함한 다양한 DL 프레임워크 위에서 실행할 수 있습니다. 따라서 사용자는 핵심 Keras 코드를 변경하지 않고도 백엔드를 전환할 수 있으므로 배포 및 계산 환경(예: CPU 또는 GPU)에 유연성을 제공할 수 있습니다.

Keras와 다른 프레임워크 비교

Keras는 핵심 TensorFlow API나 다음과 같은 프레임워크에 비해 더 높은 수준의 추상화에서 작동합니다. PyTorch. 이러한 하위 수준의 프레임워크는 모델 아키텍처와 학습 루프를 보다 세밀하게 제어할 수 있는 반면, Keras는 사용 편의성과 개발 속도를 우선시합니다. 따라서 Keras는 표준 모델 아키텍처를 빠르게 프로토타이핑하고, 가르치고, 적용하는 데 특히 적합합니다.

이와 대조적으로 다음과 같은 프레임워크는 Ultralytics YOLO 와 같은 프레임워크는 물체 감지, 이미지 분할, 포즈 추정과 같은 특정 컴퓨터 비전(CV) 작업을 위해 특별히 제작되고 고도로 최적화되어 있는 경우가 많습니다. 이러한 전문 프레임워크는 해당 도메인 내에서 최첨단 성능을 제공하는 것을 목표로 하는 반면, Keras는 보다 다양한 신경망 유형을 구축할 수 있는 범용 툴킷을 제공합니다. YOLOv8 YOLOv10과 같은 서로 다른 모델을 비교하려면 작업별 성능 메트릭을 평가해야 하는 경우가 많습니다.

실제 애플리케이션

Keras는 다재다능하며 다양한 영역에서 활용되고 있습니다. 구현이 쉽기 때문에 산업 프로젝트와 학술 연구 모두에 널리 사용됩니다. 다음은 몇 가지 구체적인 예시입니다:

다른 일반적인 애플리케이션으로는 추천 시스템 구축, 시계열 분석 수행, 생성적 적대적 네트워크(GAN)와 같은 생성적 모델링 기법 실험 등이 있습니다.

Keras 및 Ultralytics

Ultralytics 다음과 같이 고도로 최적화된 최첨단 모델을 제공합니다. Ultralytics YOLOv8 과 같은 고도로 최적화된 최신 모델과 간소화된 모델 훈련배포를 위한 통합 플랫폼인 Ultralytics HUB를 제공하지만, 모든 ML 실무자에게는 Keras에 대한 친숙함이 여전히 중요합니다. Keras는 처음부터 다양한 신경망을 구축하는 데 대한 기초적인 이해를 제공하며, Ultralytics 제공하는 전문화된 고성능 모델을 보완합니다. Keras와 Ultralytics 서로 다른 접근 방식을 통해 인공 지능(AI)에 대한 접근성을 높이는 데 크게 기여하지만, Keras는 범용적이고 사용하기 쉬운 API를 통해, Ultralytics 효율적인 최첨단 비전 모델과 도구에 중점을 두고 있습니다. Keras로 구축된 모델은 종종 다음과 같은 표준 형식으로 내보낼 수 있습니다. ONNX (Open Neural Network Exchange)와 같은 표준 형식으로 내보낼 수 있어, Ultralytics 모델에 사용할 수 있는 모델 배포 옵션과 유사하게 다양한 플랫폼에서 상호 운용성과 배포가 가능합니다. 또한 Keras를 이해하면 보다 전문적인 라이브러리에서 설계 선택 사항을 이해하는 데 도움이 될 수 있습니다.

요약하자면, Keras는 딥 러닝 모델의 개발과 반복을 크게 간소화하는 강력한 사용자 중심 라이브러리라는 점이 돋보입니다. 사용 편의성, 유연성, 멀티 백엔드 지원에 중점을 둔 이 라이브러리는 기초를 배우는 초보자와 신속한 실험을 수행하는 전문가 모두에게 유용한 AIML 생태계의 초석이 되는 도구입니다. 자세한 가이드, 튜토리얼 및 API 참조를 보려면 Keras 웹사이트의 공식 Keras 설명서를 참조하세요.

모두 보기