케라스는 파이썬에서 제공하는 오픈 소스 인공 신경망 라이브러리이다. 재미있는 점은 범용적으로 많이 활용되는 MXNET, 텐서플로, CNTK, Deeplearning4j, 씨아노(Theano) 등을 케라스의 백엔드(backend) 딥러닝 엔진으로 사용할 수 있다는 점이다. 특히, 케라스는 텐서플로를 지원하기 때문에 케라스를 일종의 딥러닝을 위한 인터페이스로 사용할 수 있다. 또한, 고수준의 인공 신경망과 쉽고 빠른 딥러닝의 프로토타이핑도 지원한다.
▲ 그림 8-14 케라스
MXNET 역시 딥러닝을 위한, 유연하고 효율적인 라이브러리이다. 아파치 인큐베이터를 통해 발전하고 있으며, 글루온(Gluon)을 통한 인터페이싱이 가능하다. 역시나 딥러닝 계산에 GPU와 병렬 컴퓨팅을 지원한다.
H2O는 머신 러닝의 오픈 소스 라이브러리이며, 인메모리 및 분산 방식을 모두 지원한다. 계산 속도도 빠르고 확장성도 좋은 머신 러닝 플랫폼이다. GPU와 병렬 컴퓨팅을 지원하고 케라스와 유사하게 Deep Water라는 층(layer)을 통해서 H2O와 텐서플로, 카페(Caffe), MXNET 간의 GPU 인터페이싱을 지원한다.