인공지능이 버즈워드(Buzz word)로 뜨면서, 100명에게 ‘인공지능’의 정의를 묻는다면 적어도 100개 이상의 답변을 얻을 것이다. 한 가지 주목할 점은 인공지능 기술과 서비스를 주요 거대 IT기업이 주도해 나가는 양상을 보이고 있다는 것이다. 그 중에서도 아마존의 인공지능 분야에 대한 혁신 움직임은 단연 두드러진다. 본 칼럼에서도 작년 ‘클라우드가 선사한 인공지능 기술의 자유와 기회‘, ‘개발자들을 위한 인공지능 기술시대‘, ‘클라우드, 현실 세계에 스며들다‘ 등의 글을 통해 관련 내용을 다루었다.
본 칼럼에서는 연초를 맞아 3회에 걸쳐 아마존이 바라보는 인공지능 기술에 대해 소개함으로써, 향후 기술 변화에 단초를 제시해 보고자 한다.
■ 인공지능의 진입 장벽을 낮추다
딥러닝(Deep Learning)으로 대변되는 인공지능 기술 시스템 구축과 관련된 프로젝트는 대용량 컴퓨팅을 요구한다. 그 동안 기업 IT 워크로드의 대부분이 기존 데이터센터 환경에서 클라우드로 옮겨가고 있는 추세다. 이에 발맞춰 인공지능에서 다루는 데이터 크기가 커지고 모델 트레이닝이 잦아짐에 따라, 아마존웹서비스(AWS)는 고객의 수요에 따라 CPU 및 스토리지, 그리고 GPU 같은 컴퓨팅 자원을 활용할 수 있는 자유를 제공하고 있다.
자율 주행을 위한 컴퓨터 비전 시스템부터 미국 식품의약국(FDA)이 승인하는 의료이미지 처리, 넷플릭스 동영상 추천, 핀터레스트의 이미지 검색 등은 AWS 클라우드 시스템을 기반으로 한다. 아마존닷컴의 경우, 추천 엔진으로부터, 머신 러닝에 기반한 주문 배송 예측을 통한 물류 센터의 로봇 활용에 이르기까지 고객의 구매 사이클에 걸쳐 시간을 단축하는 혁신을 이루고 있다. .
아울러 아마존 에코와 같은 음성 인식 기반의 스마트 홈 기기와 음성 서비스 지원 기기 확대를 통한 새로운 경험을 현실로 제공하고, 최근에는 딥러닝 기술과 컴퓨터 비전을 통한 계산대가 없는 오프라인 가게인 아마존고(Go)를 선보이기도 했다. 이처럼 AWS는 아마존 및 고객 모두에게 인공지능의 핵심 서비스를 제공하고 있다.
■ 아마존 AI의 3계층 기술 스택 옵션
AWS가 클라우드를 만든 기본적인 이유는 돈이 많든 적든, 기업의 규모가 크든 작든 상관없이 클라우드를 통해 누구나 동등한 성공 기회를 얻도록 하기 위함이다. 인공지능도 동일하다. AWS는 가능한 많은 개발자들이 직접 인공지능 기반 서비스를 만들 수 있도록, 아마존의 수천 명의 엔지니어가 얻은 전문 지식을 서비스화 시켜 클라우드 이점을 결합함으로써, 기술 수준에 따라 다양한 기술 스택 중 하나를 선택할 수 있게 해주고 있다.
아마존 인공지능(Amazon AI) 기술 스택은 AWS 인프라와 상위 애플리케이션 서비스를 포함해 아래와 같은 3개의 주요 계층으로 나뉜다.
먼저, AI 모델을 구현하는 데 필요한 기술 능력을 보유하고 있지 않거나 데이터가 부족한 개발자를 위해 최고 수준에서 인공지능 서비스를 제공한다. 자신의 애플리케이션에 인공지능을 활용해 보고자 하는 개발자를 대상으로 한다. 최근 AWS는 이미지 인식을 통한 사물 및 얼굴 분석 서비스인 아마존 레코그니션(Amazon Rekognition), 텍스트에서 음성 합성을 위한 아마존 폴리(Amazon Polly) 및 대화식 채팅 봇 구축을 위한 자동 음성 인식 및 자연 처리 서비스인 아마존 렉스(Amazon Lex)를 공개했다.
한 단계 아래에는 기존 데이터를 보유한 고객이 맞춤형 모델을 구축하고자하는 경우, 직접 AI 데이터 트레이닝 및 모델 구축, 관리의 어려움을 제거하는 플랫폼을 제공한다. 맞춤형 선형 모델에 대한 예측을 위한 아마존머신러닝(Amazon Machine Learning) 은 데이터 기반 머신 러닝 일괄 처리 및 실시간 처리 기능을 제공한다. 또한, 아마존 EMR(스파크 및 스파크 ML 지원)을 통해 데이터를 처리하는 것도 가능하다. 마지막으로 정교한 인공지능 분석 시스템을 구축하려는 학자 및 데이터 과학자를 위한 오픈소스 AI 프레임워크인 아파치 MXNet, 텐서플로우, Caffe, Theano, Torch 및 CNTK와 같은 엔진을 손쉽게 사용할 수 있는 딥러닝용 이미지를 제공한다. 이를 기반으로 아마존 EC2(Elastic Compute Cloud)의 새로운 인스턴스 타입에는 맞춤형 고성능 인텔 프로세서 및 FPGA(Field-Programmable Gate Array)를 활용할 수 있게 됐다. 특히, 아마존 EC2의 신규 GPU 인스턴스 타입인 P2를 통해 수백 개의 GPU를 활용할 수 있게 되었다. 또한 아파치 MXNet은 클라우드를 통한 GPU 성능의 선형 확장성과 성능에 탁월성을 보여, 이를 기본 딥러닝 엔진으로 아마존에서 직접 투자하고 있다.
■ 서버리스(Serverless) AI 시대가 온다
AWS는 애플리케이션을 함수 단위로 쪼개서 실행 할 수 있는 AWS 람다(Lambda) 서비스를 출시하면서, 서버리스 아키텍처 시대를 열었다. 애플리케이션을 배포 및 운영해야 할 서버의 존재가 없어짐에 따라, 2년이 넘는 동안 다양한 애플리케이션 아이디어가 쏟아져 나왔다. 원래 AWS 자원의 변경이 일어나는 이벤트에 따라 간단한 동작을 수행하려는 기능에서 출발해서, API 게이트웨이 서비스와 AWS가 원래(서버 관리 필요 없이) 제공하던 아마존 S3, 아마존 DynamoDB 같은 빌딩블록을 이용하여 서버리스 애플리케이션 모델을 구성할 수 있게 되었다.
앞서 언급한 아마존 레코그니션, 폴리, 렉스 같은 인공지능 서비스는 AWS람다와 연동 및 API 결합을 통해서 손쉽게 서버리스 애플리케이션의 빌딩 블록으로 활용 가능하다.
예를 들어, 아래 AWS 서비스 아키텍처는 라즈베리 파이와 웹캠을 활용하여 문 앞에 손님이 우리 가족이거나 친구인지를 확인해주는 간단한 초인종 시스템이다. 이미지를 Amazon S3에 업로드 하고 이를 얼굴 인식 서비스를 통해 확인 한 후, 목소리로 안내를 해주는 시스템이다. 이를 데이터베이스에 담거나 모바일 앱으로 전달하는데 필요한 모든 빌딩 블록은 AWS 클라우드의 서버 관리가 전혀 필요 없는 관리형 서비스 들이다.
즉, 이러한 서버리스 아키텍처는 향후 인공지능 기반 스마트 애플리케이션을 개발 및 배포할 때 서버 관리 부담을 줄여주고 더 빠르고 민첩하게 기능을 추가할 수 있도록 할 것이다.
최근에는 한 걸음 더 나아가 람다 함수를 병렬 컴퓨팅 및 인공지능 학습에도 활용해 높은 성능을 보여준 사례도 나오고 있다. 다음 편에서는 AWS가 제공하는 다양한 옵션을 통해 밑으로부터 어떻게 모두를 위한 인공지능 플랫폼을 활용할 수 있는 지와 마지막으로 서버리스 AI 시대에서 개발자가 좀 더 민첩하고 빠르게 인공지능을 결합한 스마트 애플리케이션을 어떻게 개발 및 배포할 수 있는지에 대해 자세히 소개하고자 한다.
※ Disclaimer- 본 글은 개인적인 의견일 뿐 제가 재직했거나 하고 있는 기업의 공식 입장을 대변하거나 그 의견을 반영하는 것이 아닙니다. 사실 확인 및 개인 투자의 판단에 대해서는 독자 개인의 책임에 있으며, 상업적 활용 및 뉴스 매체의 인용 역시 금지함을 양해해 주시기 바랍니다. 본 채널은 광고를 비롯 어떠한 수익도 창출하지 않습니다. (The opinions expressed here are my own and do not necessarily represent those of current or past employers. Please note that you are solely responsible for your judgment on checking facts for your investments and prohibit your citations as commercial content or news sources. This channel does not monetize via any advertising.)