“인공지능 분야의 안드로이드를 노리는 걸까?”
구글이 머신러닝 핵심 소프트웨어인 텐서플로우(TensorFlow)를 오픈소스로 전격 개방했다. 이에 따라 외부 개발자들도 텐서플로우를 공짜로 쓸 수 있을 뿐 아니라 프로젝트에 참여해 수정 작업까지 할 수 있게 됐다.
텐서플로우는 구글이 내부적으로 사용해온 머신러닝 시스템 '디스트빌리프'의 후속 버전이다. 특히 텐서플로우는 이전 버전보다 훨씬 범용적으로 사용할 수 있어 구글이 애지중지하는 기술로 꼽히고 있다.
과학잡지 <파퓰러사이언스>에 따르면 구글 제품 중 텐서플로우를 적용한 것도 50개를 웃돈다. DNN(Deep neural network)를 활용한 머신러닝 기술을 적용하는데는 텐서플로우가 필수적이기 때문이다. 이를테면 유튜브 동영상에서 고양이를 인식하는 등의 연산을 수행할 수 있는 것도 깊숙하게 파고들면 다 텐서플로우 덕분이다.
이처럼 텐서플로우는 구글에겐 인공지능 시대를 대비한 핵심 기술이나 다름 없다. 질문이 뒤따르지 않을 수 없다. 구글은 인공지능 시대 핵심 노하우를 왜 아무런 대가도 없이 공개하는 것일까?
■ "알고리즘보다 중요한 건 전문 엔지니어"
당연한 얘기지만 구글은 텐서플로우 소프트웨어 자체를 개방하더라도 기술 경쟁 면에서 전혀 문제가 되지 않는다고 판단했을 가능성이 많다. 영국 브리스톨대학의 넬로 크리스티아니니 교수는 월스트리트저널과 인터뷰에서 “딥러닝은 플로그앤플레이처럼 간단하게 처리할 수 있는 게 아니다”면서 “수많은 실험과 적용 과정이 수반돼야 한다”고 주장했다.
머신러닝에선 기술 못지 않게 데이터와 분석 능력이 중요하다. 구글이 이번에 텐서플로우를 공개한 건 그 부분에 대한 강한 자신감이 뒤받침돼 있기 때문이다.
월스트리트저널에 따르면 구글은 몇 년 전 자신들의 시스템이 고양이를 인식하도록 하기 위해 유튜브 동영상 1천만 개를 올리는 실험을 했다. 이런 과정을 통해 기계가 특정 사물을 확실하게 구분할 수 있도록 했다.
이런 작업을 하는 데는 수 백 만개의 매개 변수가 영향을 미치게 된다. 따라서 이런 매개 변수를 잘 처리할 수 있는 엔지니어가 있어야만 머신러닝 노하우를 제대로 축적할 수 있다.
구글 알고리즘을 손에 넣었다고 해서 금방 머신러닝 작업을 잘 할 수 있는 건 아니란 얘기다. 수많은 실험을 통해 여러 가지 시행착오를 거쳐야만 머신러닝이란 과실을 제대로 딸 수 있다.
바로 이 부분에서 구글이 텐서플로우를 공개한 두 번째 이유를 찾을 수 있다. 전 세계에 흩어져 있는 머신러닝 개발자들을 구글 생태계로 끌어들이기 위한 미끼 상품일 수도 있다는 얘기다.
이와 관련 월스트리트저널은 “구글은 좀 더 많은 연구자들이 텐서플로우를 개선하고 새로운 방식으로 적용하는 아이디어를 내놓길 기대하고 있다”고 분석했다.
과학잡지인 <파퓰러사이언스>도 비슷한 분석을 내놨다. 전세계의 다양한 연구자와 개발자들이 자신들의 용도에 맞게 적용하게 되면 자연스럽게 텐서플로우가 널리 보급될 것이란 얘기다. 그럴 경우 구글은 자연스럽게 인공지능 분야의 선두 주자로 떠오를 가능성이 많다고 이 잡지는 분석했다.
<파퓰러사이언스>는 스탠퍼드대학 컴퓨터공학과의 크리스토퍼 매닝 교수 사례를 소개했다. 매닝 교수는 3개월 전 텐서플로우를 처음 접한 지 불과 몇 주 만에 자기 강좌에 포함시키기로 결정했다.
이런 과정을 통해 텐서플로우는 머신러닝 분야의 대표적인 플랫폼으로 자리매김할 가능성이 많다는 얘기다. <파퓰러사이언스>는 아예 “구글이 텐서플로우를 인공 지능 분야의 안드로이드로 만드는 첫 발걸음을 내디뎠다고 분석했다.
■ 하드웨어 시장의 거대한 변화 신호탄
구글의 이번 조치는 하드웨어 분야에 거대한 변화가 일어나고 있다는 신호탄이란 분석도 흥미롭다. 미국의 대표적인 디지털 문화 전문잡지인 <와이어드>가 이런 분석을 내놓고 있다.
텐서플로우가 이미지 인식부터 음성인식, 언어 번역 등 다양한 머신러닝 작업을 수행할 때는 그래픽처리장치(GPU)를 장착한 기기에서 구동된다. 특히 구글은 인공지능 서비스를 훈련시킬 때뿐 아니라 구동할 때도 GPU 기반 기기를 활용하고 있다.
이 부분이 페이스북 등 다른 기업들의 머신러닝 방법과 구별되는 점이다. <와이어드>에 따르면 페이스북도 시스템 상에서 음성인식 서비스를 훈련시킬 때는 GPU를 활용한다.
하지만 페이스북 이용자들에게 얼굴 인식 기능 등을 구현해줄 때는 일반 컴퓨터처럼 중앙처리장치(CPU)를 이용한다. 이런 방식이 그 동안 머신러닝 분야의 기본 공식으로 통했다.
이런 부분에서 구글은 다른 접근법을 활용했다. 효율성을 좀 더 높이기 위해 기계 훈련 뿐 아니라 실행 단계에서도 GPU를 활용하고 있다. 이게 현재 인공지능이나 머신러닝 분야의 중요한 패러다임 변화 움직임이라고 <와이어드>가 전했다.
GPU는 엄청나게 많은 작은 데이터들을 병렬처리할 수 있는 것이 장점이다. 이 부분이 머신러닝 쪽에선 엄청난 강점이다. 앞에서 소개한 대로 구글 시스템이 고양이를 제대로 구분할 수 있도록 하기 위해 수 백 만장의 사진을 보여줄 경우를 상상해보면 쉽게 짐작할 수 있다.
하지만 실제 개인 단말기 차원에서 머신러닝이 구동될 때는 CPU 기반 데이터 센터를 통해 서비스가 제공된다. 왜 그럴까? GPU는 데이터가 계속 제공될 때에만 효율적이기 때문이다. 실행단계에서는 개인들이 데이터센터에 요청한 작업을 하나씩 처리해주는 것이 일반적이란 점을 떠올리면 쉽게 이해할 수 있다.
■ 스마트폰 단말기에서 직접 구동되는 방법은?
그렇다면 머신러닝 실행단계에서 데이터를 연속적으로 계속 보낼 수 있다면 어떻게 될까? 당연한 얘기지만 GPU를 활용해 CPU보다 훨씬 효율적으로 작업을 처리할 수 있게 된다. 구글의 최근 행보는 이런 부분과도 관계가 있다는 것이다.
머신러닝의 또 다른 과제는 스마트폰 단말기에서 바로 구동되도록 하는 부분이다. 작업을 수행할 때마다 인터넷으로 데이터센터에 접속할 필요를 줄여주기 위해서다.
관련기사
- 인간지능 대체할 머신러닝의 현재와 미래2015.11.11
- 성인영화 팬들, VR헤드셋에 '푹' 빠질까2015.11.11
- 창작자들의 꿈, ‘유튜브 스페이스 도쿄’를 가다2015.11.11
- 슈미트 “경쟁사도 구글 머신러닝 쓸 것”2015.11.11
<와이어드>에 따르면 구글은 이번에 텐서플로우를 공개하면서 이 부분에 염두에 둔 것으로 판단된다. 외부 엔지니어들이 다른 하드웨어 플랫폼에 쉽게 적용할 수 있도록 만들어놨다는 것이다.
따라서 구글은 이번 공개를 통해 내심 텐서플로우가 광범위한 하드웨어에서 휴대 가능하게 만들려는 생각을 갖고 있을 것이라고 <와이어드>가 분석했다.