태그 보관물: Google

New Jupyter Environment: Colaboratory

구글이 회사 내부에서 사용하고 있던 주피터 노트북의 커스텀 버전인 Colaboratory를 공개하였습니다. Colaboratory는 연구와 교육의 목적으로 개발되었다고 합니다. https://colab.research.google.com에 접속하면 샘플 노트북이 로드되는데요. 주피터 커널이 연결되어 있지 않은 상태입니다. 커널을 연결하기 위해서 권한을 요청하면 하루 정도 지나서 메일로 승인이 되었다는 안내를 받을 수 있습니다.

Colab에서 노트북을 생성한 후에 구글 드라이브에 저장을 할 수가 있습니다. 또한 구글 드라이브에서 새 문서 버튼을 통해 Colab 노트북을 직접 만들 수도 있습니다. 또 로컬 컴퓨터에 있는 주피터 노트북을 업로드해서 다른 사람과 공유할 수도 있습니다. 막다운markdown과 라텍LaTex도 물론 지원됩니다. 또 좀 더 편리한 텍스트 셀을 제공하고 있습니다.

스크린샷 2017-10-26 오전 11.40.12

Colab 노트북의 최대 크기는 20M까지입니다. Python 2.7만 지원하고 R이나 Scala는 아직 지원하고 있지 않습니다. 재미있는 것은 대부분의 파이썬의 과학 패키지는 최신 버전을 유지하고 있는데 텐서플로와 Scikit-Learn의 버전이 좀 뒤쳐져 있네요. 하지만 스터디나 튜토리얼 세션 등에는 유용하게 사용될 수 있을 것 같습니다. 🙂

스크린샷 2017-10-26 오전 10.58.27

tf-seq2seq: open-source seq2seq framework in TF

68747470733a2f2f332e62702e626c6f6773706f742e636f6d2f2d3350626a5f64767430566f2f562d71652d4e6c365035492f41414141414141414251632f7a305f365774565774764152744d6b3069395f41744c6579794779563641

구글에서 이번주 신경망 기계번역, 즉 NMTneural machine translation를 위한 seq2seq 모델을 오픈소스로 공개하였습니다. 이 소스는 텐서플로우로 작성되어 있으며 깃허브에 공개되어 있습니다. 이 소스는 같이 공개된 ‘Massive Exploration of Neural Machine Translation Architectures‘ 페이퍼에서 사용된 코드입니다. 이 페이퍼에서 25만 GPU 시간을 들여 다양한 하이퍼파라미터 튜닝을 한 결과를 공유하고 있습니다. 어쩌면 많은 애플리케이션들이 연이어 나오는 뛰어난 알고리즘보다 이런 실험 결과를 더 목말라하고 있을지 모르겠습니다. 깃허브에 있는 tf-seq2seq 코드는 마치 일반 애플리케이션처럼 다운로드 받아 yaml로 모델을 정의하고 학습시킬 수 있습니다. 딥러닝 라이브러리들이 설정 방식에서 코딩 방식으로 빠르게 전환되더니 도메인 특화된 모델은 다시 패키지화될 수 있는것 아닌가 예상해 봅니다. 자세한 사용법은 도큐먼트를 참고하세요. 비록 한글 데이터는 없지만 구글의 선빵은 놀랍습니다. 🙂

TPU Revealed

2017-04-05_1013

구글이 자사의 데이터센터에서 사용하고 있는 머신러닝 칩셋인 TPU(Tensor Processing Unit)에 대한 성능과 구성에 대해 자세한 내용을 페이퍼공개했습니다. 페이퍼 내용을 보면 GPU/CPU 조합 보다 15~30배 가량 성능이 높다고 합니다. 개인적으로 눈길을 끄는 것은 2016년 7월에 작업한 것으로 보이는 이 페이퍼에 구글의 머신 러닝 추론inference을 위해 사용하고 있는 텐서플로우 모델 워크로드의 60%가 기본적인 피드포워드feed-forward 신경망이라는 점입니다.

스크린샷 2017-04-10 오전 1.54.39

이 수치가 거의 10개월 전의 데이터이고 텐서플로우, 즉 TPU로 서빙한 것에 국한될 수 있지만 예상외로 차이가 많은 것 같습니다. 페이퍼에서도 언급하고 있듯히 TPU의 성능 향상은 CNN을 타깃으로 하지만 실제로는 MLP가 주요 애플리케이션에 사용되고 있는 것 같습니다. 그렇다면 가중치 크기로 보아 비교적 레이어의 유닛수가 많은 MLP0은 유투브 추천에 MLP1은 광고 추천에 사용되는 것이 아닐까 조심스럽게 추측해 봅니다.

Google aquiring Kaggle

구글이 머신 러닝 경연 사이트인 캐글을 인수한다는 기사가 테크 크런치에 실렸습니다. 구글이 유투브 데이터를 이용한 대회를 하고 있지만 캐글 인수는 예상치 못한 일입니다. 캐글 사용자들에게 텐서플로우나 구글 클라우드를 더 전파하려 하는 걸까요? 아니면 형님 리더십일까요? 🙂

(업데이트) 캐글이 구글 클라우드에 합류한다고 합니다. 이를 환영하는 사람들은 대부분 실리콘 밸리 사람들인 것 같네요. 클라우드: 아마존 >>> 구글, ML+클라우드: 아마존 <<< 구글

OpenNMT: Open Source Neural Machine Translation

simple-attn

하버드 NLP 그룹과 하버드 PhD 학생인 Yoon Kim이 만든 오픈소스 신경망 기계번역 OpenNMT 가 공개되었습니다. OpenNMT 는 토치로 구현되어 깃허브에 공개되어 있으며 개발에 사용된 주요한 페이퍼들이 홈페이지에 자세히 나와 있습니다. 개인이 학습시키기에는 조금 무리가 있을 수 있으나 학습된 모델도 공개할 것이라 하니 기대를 해 봅니다. OpenNMT 개발에 번역 소프트웨어 회사인 SYSTRAN도 많은 참여를 했다고 합니다. OpenNMT의 데모를 SYSTRAN 데모 페이지에서 직접 확인해 볼 수 있습니다. 구글, 네이버 모두 신경망 기계번역을 도입했는데요. 오늘자 CNN 뉴스의 일부를 세 번역기에 모두 적용해 보았습니다. 네이버 번역기 글자수가 제한되어 있어 긴 문장을 적용하진 못했습니다. 결과는 OpenNMT 가 훨씬 자연스러운 번역을 만들어 주었습니다!

OpenNMT
opennmt

Google Translate
google_translate

Naver NMT
naverlabs_nmt

MS Ventures fund Element AI

마이크로소프트가 새로운 벤처 펀드를 운영한다고 발표하였습니다. 특히 이 펀드는 인공지능 분야에 집중될 것으로 알려졌습니다. 첫번째 펀드는 요수아 벤지오(Yoshua Bengio) 교수의 엘리먼트 AI(Element AI) 입니다. 정확한 금액을 알려지지 않았지만 지난달 구글이 엘리먼트 AI에 3백만 US달러 이상을 투자하기로 하였으므로 그에 버금가는 금액이 될 것으로 예상됩니다. 엘리먼트 AI는 수천만달러까지 펀딩을 계속 받을 예정이라고 합니다. 마이크로소프트가 OpenAI 와도 제휴하고 엘리먼트 AI에 투자까지 인공지능 분야에서 계속 잰걸음을 하는 것 같습니다. 마이크로소프트 벤처는 엘리먼트 AI 뿐만 아니라 계속 인공지능 벤처에 투자를 이어갈 예정이라고 합니다.

MXNet, DL Framework of Choice at AWS

지난 주 아마존 CTO 워너 보글스(Werner Vogels)는 AWS 에서 사용할 수 있는 딥러닝 프레임워크로 MXNet 을 추가했으며 앞으로 아마존이 MXNet 의 개발을 지원하겠다고 발표하였습니다. MXNet 은 카네기 멜론 대학과 워싱톤 대학이 시작한 이후 많은 대학과 회사들의 후원을 받고 있는 딥러닝 오픈소스 라이브러리입니다. 깃허브 활동에서도 크게 뒤쳐지지 않고 활발히 개발되고 있습니다. 특징으로는 파이썬, 줄리아(Julia), R, 매트랩(Matlab), 스칼라(Scala) 등 다양한 인터페이스를 지원하는 것이 눈에 띄입니다. 성능과 대용량 처리 부분에서도 크게 뒤지지 않는 듯 보입니다.

그럼 아마존의 데스트니(DSSTNE)는 어떻게 되는 것인지 모르겠습니다. 자체 라이브러리의 생태계를 만들어 가는 것이 역부족이라고 느낀 것일까요. 아니면 구글이 스탠포드 비전랩의  Fei Fei, Li 교수와 스냅챗의 Jia Li 를 구글 클라우드의 머신러닝 유닛을 이끌 수장으로 영입한 것이 영향을 미쳤을지도 모릅니다. 문제는 프레임워크가 아니고 클라우드 비즈니스라고 말이죠.

또 트위터가 2015년 웻랩(Whetlab)을 인수하면서 영입한 AI 연구자 다섯명이 트위터 코텍스(Twitter Cortex)를 떠난다는 소식이 있었습니다. 그 중에 업계에 비교적 잘 알려진 휴고 라로쉘(Hug Larochelle)은 구글로 자리를 옮겼습니다. 구글이 요슈아 벤지오(Yoshua Bengio) 교수가 있는 몬트리올 대학 MILA 랩에 3백만 달러(역대 최고라 하는군요)를 지원하기로 발표하면서 휴고 라로쉘이 구글의 몬트리올 랩의 리더가 되었습니다. 거기에 최근에는 OpenAI 가 클라우드 플랫폼으로 마이크로소프트의 애저(Azure)를 선택한다고 발표하니 아마존이 다급해진 것일까요. 여러모로 프레임워크로 경쟁하기 보다는 실리를 추구하는 쪽으로 선회한 것일지 모르겠습니다.

아마존의 AWS 에는 MXNet, Caffe, Tensorflow, Theano, Torch 그리고 CNTK 가 미리 설치되어 있는 딥러닝 AMI 가 있습니다. 그리고 사용자는 여전히 입맛에 맞는 프레임워크를 설치해서 사용할 수 있습니다. 하지만 앞으로 AWS RDS 처럼 관리형 딥러닝 서비스가 나온다면 MXNet 이 첫번째 후보가 될수 있을 것 같습니다.

Open Images Dataset

open2bimages

출처: 구글 리서치 블로그

구글이 동영상 데이터셋인 YouTube-8M Datasets에 이어 이미지 데이터셋 Open Images Dataset을 공개하였습니다. 오픈 이미지 데이터셋은 총 3개의 파일로 이루어져 있습니다.

이미지 데이터(images)는 훈련(training) 데이터 9,011,220개와 밸리데이션(validation) 데이터 167,057개로 이루어져 있습니다. 각 이미지에 대한 고유한 아이디와 이미지를 다운받을 수 있는 주소, 저작자 등의 정보로 이루어져 있습니다.

Chichen Itza Mexico

ImageID,OriginalURL,OriginalLandingURL,License,AuthorProfileURL,Author,Title
000026e7ee790996,https://c2.staticflickr.com/6/5769/21094803716_da3cea21b8_o.jpg,https://www.flickr.com/photos/132646954@N02/21094803716,https://creativecommons.org/licenses/by/2.0/,https://www.flickr.com/people/132646954@N02/,"dronepicr","Chichen Itza Mexico"

주석 데이터(machine_ann)는 구글 클라우드 비전(Google Cloud Vision)과 유사한 모델을 사용하여 이미지마다 한개 이상의 키워드를 등록해 놓은 파일입니다. 이 키워드 전체 목록은 깃허브에서 확인하실 수 있습니다. 각 키워드는 0에서 1까지의 확률(confidence)로 이미지와의 매칭 정도를 설명하고 있습니다.

ImageID,Confidence:Labels...
000026e7ee790996,1.0:/m/03d1rd,0.9:/m/07yr8h,0.9:/m/012ww9,0.9:/m/0d7v_,0.8:/m/0djmp,0.8:/m/0cgh4,0.8:/m/09qqq,0.8:/m/01cbzq,0.7:/m/01czv3,0.6:/m/0d5gx,0.6:/m/01_m7,0.6:/m/08g_yr,0.6:/m/0cfkj,0.6:/m/0bysjw,0.5:/m/01v4jb,0.5:/m/03g3w,0.5:/m/056wv

이 샘플 이미지의 키워드는 ‘ruins’, ‘historic site’, ‘archaeological site’, ‘maya civilization’ 등 입니다.

사람이 만든 주석 데이터(human_ann)은 밸리데이션 데이터만 제공됩니다. 사람이 주석을 달았으므로 이 정보에 대한 확신은 1.0 입니다. 즉 사람이 만든 밸리데이션 데이터는 잘못된 정보(false positive)를 정정한 것으로 누락된 정보(false negative)를 추가한 것은 아닙니다.

ImageID,Confidence:Labels...
000026e7ee790996,1.0:/m/01cbzq,1.0:/m/03g3w,1.0:/m/056wv,1.0:/m/0djmp,0.0:/m/01_m7,0.0:/m/01czv3,0.0:/m/01v4jb,0.0:/m/03d1rd,0.0:/m/08g_yr,0.0:/m/09qqq,0.0:/m/0bysjw,0.0:/m/0cfkj,0.0:/m/0cgh4,0.0:/m/0d5gx,0.0:/m/0d7v_

YouTube-8M Datasets에 이어 이미지 데이터셋까지 구글의 데이터 공개는 놀라울 뿐입니다. 그러나 이런 데이터셋을 사용하여 학습시킨 뉴럴 네트워크 모델은 설날 세배하는 사람이나 연을 날리고 팽이를 돌리는 아이들, 수능 시험을 치르는 학생들, 편의점에서 아르바이트하는 청년들, 남대문이나 고궁, 민속촌의 초가집, 홍대에서 버스킹하는 아티스트들은 잘 묘사할 수 없을 것 같습니다. 이런 데이터셋은 누가 만들어야 할까요?

Partnership on AI

partnership-on-ai

구글, 딥마인드, 페이스북, 마이크로소프트, 아마존, IBM 6개 회사가 ‘Partnership on AI‘란 단체를 발족시켰습니다. 각 회사에서 한명씩 대표(board)를 구성하게 되며 AI 연구와 윤리, 표준, 리포트, 컨퍼런스 등의 분야에 적극적인 역할을 것으로 보입니다. 공익단체라는 점에서 OpenAI를 의식하여 연합한 것인지는 모르겠습니다. 바이두(Baidu)는 끼일만도 한데 빠진 것과 딥마인드는 구글의 자회사이지만 공룡들과 어깨를 나란히 하고 있는 것이 눈에 띄입니다.

(업데이트) Partnership on AI에 대한 관심이 뜨겁습니다. 사람들은 바이두외에 애플, 트위터, 인텔 등도 빠져 있는 것을 궁금해 하고 있는 것 같습니다. 특히 OpenAI가 빠져있어서 이를 두고 미묘한 대립 기류가 있는 것은 아닌지 다양한 해석이 있습니다. OpenAI는 아마 초기 멤버로 초청받지 못한 아쉬움이 있는 듯 트위터를 통해 향후 참여를 희망한다고 이야기 했고 딥마인드측 대표인 무스타파 설리만(Mustafa Suleyman)이 이에 화답했습니다. Partnership on AI의 발표 자료를 보면 OpenAI 같은 비영리 기관도 곧 참여가 이루어 질 것으로 보입니다. 이들이 데이터 공유를 위해 뭉쳤는지 인류를 위해 뭉쳤는지는 모르겠지만 만약 OpenAI가 없었다면 기대하기 어려운 일이었지 않을까요?

(2017-01-30) Partnership on AI에 애플과 OpenAI가 합류했다는 소식입니다. 애플은 창립 멤버로 OpenAI는 이사회 구성원으로 합류했습니다. 바이두같은 회사가 합류할 가능성은 높아 보이지는 않습니다만 미국안의 파트너쉽이 되어 버린 것 같습니다.

YouTube-8M Datasets

구글이 유튜브의 8백만개나 되는 동영상 관련 데이터 셋을 공개한다고 리처치 블로그를 통해 밝혔습니다. 이미지 데이터에 비해 동영상 데이터는 부족했었는데 많은 사람들에게 반가운 소식일 것 같습니다. YouTube-8M 의 공식 홈페이지는 이곳이며 다운로드는 이곳에서 받으실 수 있습니다. 다운로드 데이터는 텐서플로우 레코드 파일 형태로 제공이 된다고 합니다. 비디오 레벨과 프레임 레벨 두가지로 제공되며 프레임 레벨은 초당 한프레임씩 뽑은 것으로 전체 데이터는 1.5테라에 이릅니다. 데이터는 이곳에서 브라우저로 간단한게 둘러 볼 수도 있습니다.