더북(TheBook)

3.2.1 케라스, 텐서플로, 씨아노, CNTK

 

케라스는 딥러닝 모델을 만들기 위한 고수준의 구성 요소를 제공하는 모델 수준의 라이브러리입니다. 텐서 조작이나 미분 같은 저수준의 연산을 다루지 않습니다. 그 대신 케라스의 백엔드 엔진(backend engine)에서 제공하는 최적화되고 특화된 텐서 라이브러리를 사용합니다. 케라스는 하나의 텐서 라이브러리에 국한하여 구현되어 있지 않고 모듈 구조로 구성되어 있습니다(그림 3-3 참고). 여러 가지 백엔드 엔진이 케라스와 매끄럽게 연동됩니다. 현재는 텐서플로, 씨아노, 마이크로소프트 코그니티브 툴킷(Microsoft Cognitive Toolkit, CNTK) 3개를 백엔드 엔진으로 사용할 수 있습니다. 향후에는 더 많은 딥러닝 엔진을 케라스에서 사용할 수 있을 것입니다.10

▲ 그림 3-3 딥러닝 소프트웨어와 하드웨어 스택

 

10 역주 아마존 웹 서비스 팀에서 확장성이 좋은 딥러닝 프레임워크인 아파치 MXNet을 케라스의 백엔드에 추가하기 위해 작업하고 있으므로 네 번째 백엔드 엔진은 MXNet이 될 가능성이 높습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.