태그 보관물: Caffe

Caffe2: Mobile first DL Framework

스크린샷 2017-04-19 오후 4.57.55

페이스북이 딥러닝 프레임워크 카페(Caffe)의 새로운 포크인 카페2(Caffe2)를 오늘 공개하였습니다. 카페2는 페이스북과 NVidia를 비롯해 많은 회사들과 협력한 결과라고 합니다. 특별히 NVidia에서도 블로그를 통해 카페2 소식을 알렸습니다. 카페를 개발한 양칭 지아Yangqing Jia가 버클리를 나와서 구글 브레인으로 갔었는데 어느새 페이스북으로 옮겼군요. 이미 작년에 카페2의 개발 소식이 흘러나왔던 것 같습니다. 카페2는 파이토치와는 다르게 모바일과 대용량 스케일의 상용 제품을 위한 프레임워크로 촛점을 맞추고 있다고 합니다. 그렇다고 파이토치와 명확하게 선을 그을 수는 없지만, 파이토치 보다는 더 성능과 다양한 디바이스 포팅에 중점을 두고 있습니다. 파이토치는 연구자들이 다양한 네트워크를 실험할 수 있는 높은 자유도가 장점입니다. 하지만 카페2와 파이토치의 저수준 라이브러리들은 앞으로 계속 머지되거나 아이디어를 공유할 것 같습니다. 바이두가 텐서플로우의 패치를 보냈는데 구글이 이를 거부했다는 소식에서 부터 구글이 사용하는 텐서플로우와 오픈소스 텐서플로우에는 차이가 있다는 것이 카페2와 함께 레딧해커뉴스에서 회자되고 있습니다.

현재 카페2가 안정화된 상태는 아닙니다. 양칭에 의하면 페이스북이 먼저 개밥먹기를 하고 있답니다. 파이썬 바이너리 패키지가 준비되어 있지 않아 설치도 번거롭습니다. 하지만 카페의 Model zoo를 이용할 수 있다는 것과 모바일 퍼스트 정책은 많은 사람들의 관심을 끌것 같습니다. OpenCL와 iOS의 Metal을 지원하려고 준비 중에 있다고 합니다.

누가 Caffe가 죽었다고 했던가요? 🙂

(업데이트) 구글 브레인의 리더 Rajat Monga 가 바로 댓글로 의견을 냈네요. 구글이 텐서플로우에 대해 감추고 있는 것은 없답니다.

또 페이스북에서 F8 행상 이후에 몇몇 대학 교수를 초빙해서 카페2에 대한 워크샵을 열 예정이라고 밝혔습니다. 이미 많은 대학의 딥러닝 커리큘럼이 텐서플로우로 가고 있어서 더 늦기전에 변화가 필요하다고 생각했을 것 같습니다.

Torchnet: dl framework wrapper

오늘 페이스북이 ICML 2016에 맞추어 토치(Torch)를 기반으로 한 딥러닝 프레임워크의 래퍼(wrapper)인 토치넷(Torchnet)을 깃허브 레파지토리페이퍼와 함께 공개했습니다. 토치넷은 루아로 작성되었으며 좀 더 쉽고 빠르게 뉴럴 네트워크를 구축하기 위해 머신러닝을 위한 코드와 로직을 재사용할 수 있도록 만들어 줍니다. 토치넷의 역할은 씨아노(Theano)의 블럭(blocks)이나 퓨얼(fuel)과 유사하다고 합니다. 재미있는 점은 토치넷의 깃허브 레파지토리가 ‘github.com/torch/’ 에 있지 않고 ‘github.com/torchnet/’ 에 위치한다는 점 입니다. 페이스북은 토치넷이 토치를 넘어서 자체적인 생태계를 구축하길 원하는 것 같습니다. 페이퍼에도 토치넷은 토치 뿐만 아니라 텐서플로우(TensorFlow)나 카페(Caffe)도 지원할 수 있다고 언급하고 있습니다.

딥러닝 패키지 비교

comparison_of_deep_learning_package

위키피디아에 딥러닝 패키지를 비교하는 페이지가 있어 소개해 드립니다. 현재 비교하고 있는 소프트웨어는 Caffe, CNTK, Deeplearning4j, MXNet, Neural Designer, OpenNN, SINGA, SystemML, TensorFlow, Theano, Torch 입니다. 이외에도 더 많은 패키지들이 있지만 점차 추가되지 않을까 합니다. 대표적인 툴들을 한 눈에 볼수 있어 참고자료로 사용하시면 좋을 것 같습니다.