Machine Learning 및 예측 분석은 현대 비즈니스에 수립되고 필수적인 요소이지만, AI 분야에서 그 규모를 가능한 최대로 확장한다. 즉, 다시말하여 Deep Learning이 가능하도록 구성하는 것이다.
Deep Learning이 매우 복잡한 문제를 해결함과 동시에 정교한 기술을 필요로 하는 작업을 수행할 수 있다면 이러한 Deep Learning이 보다 원활하게 작업이 수행될 수 있는 환경을 구축하는 것이 데이터 과학자와 해당 분야 엔지니어들에게 큰 과제가 된다. 따라서 이 Deep Learning을 지원하는 프레임 워크는 모두 다른 목적으로 제작이 되었지만 그 고유한 기능은 같게 제공한다.
1. TensorFlow
Google 팀에서 개발했으며 2015년 오픈소스로 공개되었다. AI 분야 전문가라면 가장 인기있는 딥러닝 라이브러리 중 하나로서 2세대 머신러닝 시스템으로도 불리는 TensorFlow는 Python 기반 라이브러리로 여러 CPU 및 GPU와 모든 플랫폼에서 사용할 수 있다. 또한 C++, 통계에서 주로 활용되는 R과 같은 다른 언어도 지원하며 Deep Learning을 직접 작성하거나 keras와 같은 라이브러리를 사용하여 직접 작성할 수 있다.
2. Theano
'최초'의 Deep Learning 라이브러리 중 하나인 Theano는 Python 기반이며 CPU 및 GPU 수치계산에 매우 유용하다.
Theano는 Tensorflow와 마찬가지로 저수준 라이브러리로서 딥러닝 모델을 직접 만들거나 그 위에 래버 라이브러리를 사용하여 프로세스를 단순화 할 수 있다. 하지만 확장성이 뛰어나지 않아 다중 GPU 지원이 부족하다는 단점이 존재하지만, 범용적으로 Deep Learning을 할 때 전 세계의 많은 개발자가 여전히 사용하고 있는 프레임워크이다.
3. Keras
Keras는 Theano나 TensorFlow에서 작동할 수 있도록 구성할 수 있다. Python 기반으로 작성되었으며 매우 가볍고 배우기 쉬운 프레임워크다. TensorFlow와 Theano가 저수준의 라이브러리이기 때문에 모델 만드는 것이 어렵다. 하지만 Keras를 통해서 코드 몇 줄이면 신경망을 만들 수 있다.
4. Caffe
Caffe는 버클리대학 연구소(BVCL)에서 개발한 딥러닝 라이브러리로서 표현/속도 및 모듈성을 염두해 두고 개발되었다. Python 인터페이스를 가지고 있는 C++ 라이브러리며, CNN을 모델링할 때 기본 어플리케이션으로 찾는다. 이 라이브러리를 사용하면 'Caffe Model Zoo'에서 미리 훈련된 여러 네트워크를 바로 사용할 수 있다는 장점이 있는데 CNN 모델링이나 이미지 처리문제 해결에 관심이 있다면 이 라이브러리를 추천한다.
Caffe를 Facebook에선 최근 고성능 개방형 모델을 구축할 수 있는 유연성을 제공하는 가벼운 모듈식 딥러닝 프레임워크인 Caffe2를 공개했다.
'개발(Dev) 이야기 > A.I.' 카테고리의 다른 글
Deep Learning과 자율 주행 기술 (0) | 2019.08.16 |
---|---|
CNN, Convolutional Neural Network에 관하여 (1) (0) | 2019.08.07 |
Xilinx Benchmark 예제 코드 실행해보기 (0) | 2019.08.02 |
FPGA 기반의 Xilinx Alveo Card U200 장착 및 드라이버 설치과정 (0) | 2019.08.02 |
Hdf5 형식 파일이란 ? (0) | 2019.08.01 |