Ray: 인공지능 분산 시스템

이미지
인공지능  열풍이다. 그런데 기업도 연구소도 인력이 없다. 정확히는  인공지능을 체계적으로 공부한 인력이 없다. 그러다보니 어중이 떠중이들이 전문가로 판을 치는 형세다. (물론 진짜 전문가들도 있다) 더 문제는, AI를 잘 아는 사람이라고 해도 실제로 모델개발부터 서비스 제공까지 갈 길이 너무  멀다는 점이다. 모델개발이 첫 한발이라면, 서비스를 제공하기 위해 가야 하는 길은 열걸음 아니 스무걸음, 백걸음을 걸어야 하는 상황도 발생한다. 여기에는 AI를 어떻게 잘 분산처리해서 학습할까 하는 어려움도 있다. 이를 해결하기 위해 버클리에서 Ray를 공개했다. Deep Learning 학습을 위해서 여러대의 컴퓨터 (즉 많은 GPU)를 사용설정하는 것은 생각보다 까다로운 일이다. Ray가 이를 일부분 해결해 줄 수 있기를 바란다. 원본문서:  http://bair.berkeley.edu/blog/2018/01/09/ray/

Google Cloud AutoML (구글 클라우드 AutoML)

이미지
인공지능의 세계는 정말 다양하다.  그리고 많은 영역에서 성공적으로 여러 문제들을 해결하고 있다. 그런데, 한가지 문제점이 있다. 바로 "어렵다" 라는 점. 전문가가 아니면 접근하기 힘들다는 점. 이를 극복하기 위해 나온 개념이 AutoML (Automated Machine Learning) 이다. 전문가의 도움없이 누구나 손쉽게 AI/ML (Artificial Intelligence, Machine Learning)을 이용하게 하자는 것. AutoML 에 대해서는 다시 자세히 얘기할 기회가 있겠지만, 오늘은 간단하게만. Google 역시 작년부터 이 시장에 뛰어들었다. 그 결과물로, 최근에 Google이 상용으로 내놓은 Cloud AutoML. 지금은 영상에 대해서만 가능하지만, Google의 막대한 역량을 감안하면 앞으로도 많은 서비스가 나올 것이라고 예상할 수 있다. 모든 연구자/개발자가 자유롭게 AI/ML 기술을 사용할 수 있는 날이 곧 오기를 기대한다. Google Cloud AutoML: https://cloud.google.com/automl/ 참고자료: https://techcrunch.com/2018/01/17/googles-automl-lets-you-train-custom-machine-learning-models-without-having-to-code/ https://research.googleblog.com/2017/11/automl-for-large-scale-image.html P.S. 내가 대전 모연구소에서 연구개발하는 주제 중에 AutoML 도 포함된다.

RapidMiner 가 AutoML 서비스를 상용으로 공개하다

이미지
Machine Learning은 현재 다양한 분야에서 폭넓게 사용되고 있다. 다만, 항상 ML 전문가의 경험과 지식에 의존한다는 한계점, 즉 ML 을 잘 모르는 사람이 진입하기에는 장벽이 높다는 단점이 있다. 이런 단점을 극복하기 위해 AutoML (Automated Machine Learning)이 최근들어 활발히 연구되고 있다. AutoML은 전문가 지식없이, 일반인도 쉽게 ML을 적용할 수 있게 해주는 도구다. RapidMiner는 Data Mining 도구로, GUI를 통해 손쉽게 자료분석을 도와주는 소프트웨어 패키지로, 이 분야에서는 꽤나 유명하다.  RapidMiner느느 매우 다양한 기능을 제공하는데, 최근 AutoML도 (상용으로) 제공하기 시작했다. 기업은, 역시, 돈이 될 만한 기술들은 금방 알아채고 적용한다. 원본 소개 페이지는:  https://rapidminer.com/products/studio/#auto-model YouTube 동영상은:  https://www.youtube.com/watch?v=nmRYrTeIBao

AlphaZero가 현존하는 최고수레벨의 Chess 프로그램을 이기다

이미지
체스는 1990년대 후반에 Deep Blue에 의해 이미 컴퓨터가 정복한 분야다. (다른말로 사람이 더 이상 컴퓨터 플레이어를 이기지 못한다) 이런 Chess 컴퓨터 플에이어 중 최고수 레벨의 플레이어를 Google 이 만든 AlphaZero가 이겼다고 한다. 이름에서 알 수 있듯이, AlphaZero는 AlphaGo Zero를 Chess 룰에 따라 학습시킨 녀석이다. 물론 그렇다고 너무 걱정하진 말자.  현재의 AI는 인간이 시키는 작업만 할 수 있고 (Weak AI), 스스로 목표를 설정해서 학습하지는 못하니까 (Strong AI) 터미네이터에 나오는 SkyNet이 나오려면 아직은 (아마도) 멀었다는 얘기다. 원본문서는:  https://www.theguardian.com/technology/2017/dec/07/alphazero-google-deepmind-ai-beats-champion-program-teaching-itself-to-play-four-hours

Apache MXNet도 ONNX에 참여하다

이미지
그 동안 몇 차례 소개했던, AI 프레임웍 간의 모델 교환을 가능하게 해주는 ONNX에 Apache MXNet도 함께한다고 한다. 이로써 Microsoft, Facebook, Intel에 이어 Apache까지, Google을 제외한 AI 선두주자들이 모이게됬다. 앞으로 어떤 방향으로 발전될지 기대가 된다. 원본문서는:  https://aws.amazon.com/blogs/machine-learning/announcing-onnx-support-for-apache-mxnet/

AlphaGo Zero

이미지
너무나 유명한 AlphaGo. 인간을 아직 이기지 못할 것이라는 대부분의 판단을 무참하게 격파해버린, 구글이 만든 바둑 두는 인공지능. AlphaGo 로 인해 대한민국에 인공지능 열풍이 불었다고 해도 과언이 아니다 (아니 100% 맞는 말이다) 최근 AlphaGo Zero가 발표되었다. 기존 AlphaGo와 다르게, 이전 선수들의 기보에 의존하지 않고 순수하게 게임의 룰만으로 학습된 모델이다. (기반이 되는 기술은 Reinforcement Learning, 강화학습이라고 불린다). 그림에서 보는 것처럼, AlphaGo Zero는 이세돌을 이겼던 AlphaGo Lee를 학습시작 3일만에 뛰어넘었다. 원본문서는:  https://deepmind.com/blog/alphago-zero-learning-scratch/ Nature 논문은:  https://www.nature.com/articles/nature24270?foxtrotcallback=true

Intel이 ONNX에 참여하다

이미지
얼마전 글에서 ONNX에 대해 소개한 적이 있다:  http://aiimojumo.blogspot.kr/2017/09/microsoft-facebook-onnx.html 다양하게 존재하는 DNN framework 의 모델간의 표준을 만들어 서로 호환되도록 하는 프로젝트로 Microsoft와 Facebook이 공동으로 시작했다. 최근, Intel도 이 ONNX에 참여하기로 했다고 한다. 앞으로 더 많은 기업/단체들이 참여해서, 하나의 DNN 모델로 상황에 맞는 framework을 선택해 사용할 수 있는 날이 오기를 바란다. 원본문서는:  https://ai.intel.com/intel-joins-open-neural-network-exchange-ecosystem/  

Microsoft와 Facebook이 ONNX 를 발표했다

이미지
DNN의 성공으로, 최근 DNN software library가 매우 많이 발표되고 있다. TensorFlow, PyTorch, Apache MXNet, Caffe2, 등등.. 모두 각각의 장점을 가지고 있지만, 하나의 framework에서 다른 framework으로 모델을 이동시키기 매우 힘들다는 불편함이 있다. 최근, MS 와 FB가 이 불편함을 해소하기 위해 framework 간 변환이 가능한 표준을 만들려고 하고 있다. 이름은 ONNX (Open Neural Network Exchange). 현재는 PyTorch <--> Caffe2 만 지원하지만, 향후 더 많은 framework을 지원할 예정이다. 원본문서는:  https://research.fb.com/facebook-and-microsoft-introduce-new-open-ecosystem-for-interchangeable-ai-frameworks/

DNN을 이용한 중력렌즈 (Gravitational Lens) 검출

이미지
중력렌즈 현상은 천문학에서 매우 중요한 현상 중에 하나이다. 빛이 중력에 의해 휘는 성질에 의해, 무거운 물체가 우리와 어떤 천체 (일반적으로 은하) 사이에 존재할 때 그 휨에 의해 원래는 보이지 않아야 할 그 천체가 휘어진 형태로 보이게 된다. 여기서 "보이지 않아야 할"의 의미는, 너무 멀리 있어서 어두워 원래는 보이지 않는 천체를 의미한다. 천문학에서, 멀리 있는 천체는, 동시에 오래된 천체를 의미한다. (빛의 속도가 유한하기 때문에 멀리 있을 수록 오래전에 빛을 우리가 관측하는 셈이다) 보다 자세한 내용은:  https://en.wikipedia.org/wiki/Gravitational_lens 이 현상은, 일반적으로 찾기가 매우 힘든데, 그 이유는 위 사진처럼 휘어진 형태로 나타나기도 하고, 또 그 밝기가 별에 비해 어둡기 때문이다. 최근 Nature 에 DNN을 사용해 이러한 중력렌즈를 검출하는 논문이 발표되었다. 많은 양의, 이미 검출된 중력렌즈 현상을 이용해 DNN 모델을 학습하였고, 학습된 모델을 기존 모델보다 빠르면서도 우수한 성능으로 중력렌즈 현상을 찾아냈다고 한다. 당연한 이야기지만 AI/ML 기법은 여러 과학분야에서도 매우 성공적으로 사용되고 있다는 것을 보여주는 논문이다. Nature 논문은:  https://www.nature.com/articles/nature23463?foxtrotcallback=true

StarCraft II 와 Reinforcement Learning (강화학습)

이미지
Google이 AlphaGo로 바둑계를 재패한 후, 다음 과제로 StarCraft 를 선택할 것이라는 예측은 꾸준히 있어왔다. 그 연구의 일환으로 강화학습을 이용한 SC II 플레이가 처음 공개되었다. https://www.youtube.com/watch?v=St5lxIxYGkI 영상에서 보이듯이 아직은 초보적인 수준이다. 자원을 캐고 기본건물들을 올리는 수준. 아직 복잡한 전투나 전략에 대한 모습은 보여주고 있지 않다. 원본문서는: https://deepmind.com/research/publications/starcraft-ii-new-challenge-reinforcement-learning/ 논문은: https://arxiv.org/abs/1708.04782