AI 실현을 위한 필수 요소
상태바
AI 실현을 위한 필수 요소
  • 선연수 기자
  • 승인 2019.07.26 08:35
  • 댓글 0
이 기사를 공유합니다

[테크월드=선연수 기자] 

 

 

인공지능(AI)과 머신러닝은 빠른 속도로 상업화에 활용되고 있다. 기가옴(GigaOm)이 발간한 'AI at the Edge : A GigaOm Research Byte' 보고서에 따르면, 대규모 AI 학습 모델에 사용된 컴퓨팅의 양은 평균적으로 100일 마다 두 배씩 늘어, 지난 6년간 30만 배 증가한 것으로 나타났다.

AI 관련 기사들이 쏟아져 나오면서 엔지니어링과 개발자 커뮤니티들의 열띤 개발이 계속되고 있으며, 결과적으로 삶과 비즈니스를 변화시킬 AI 제품과 서비스를 제공하기 위한 개인이나 기업 간의 경쟁으로 이어지고 있다. 이런 성장 열풍 속에서 AI 개발자는 다양한 설계 방식들 사이에서 고민하게 되며, AI 워크로드를 실행할 프로세서 기술을 선택·조합하는 것이 주를 이룬다. 이 글을 통해 기술적인 복잡성을 간소화시키고 실용성, 성능, 비용 효율을 높이는 최적의 AI 컴퓨팅 설계법에 대한 가이드를 제시한다.

 

진화하는 AI 환경

지금까지의 머신러닝은 거대한 컴퓨팅 팜(Farm)인 클라우드에 초점이 맞춰져 개발돼 왔다. 그러나 머신러닝 컴퓨팅은 점점 기존의 클라우드에서 벗어나 효율성, 속도, 개인정보보호, 보안 등을 이유로 데이터가 수집되는 에지 디바이스(Edge-Device)에 가까워지고 있다. 이런 변화는 컨셉트카, 자율주행차, 헬스케어, 스마트시티, 산업용 IoT(IIoT, Industrial Internet Of Things) 등의 분야에 새로운 커넥티드 디바이스가 등장함으로써 더욱 가속화되고 있다.

이처럼 AI 컴퓨팅이 민주화(Democratize)되는 모습은 전 세계 데이터 네트워크에서 더 많은 지능을 창출하려는 움직임과 에지 서버 출하량의 증가 추세를 통해서도 확인할 수 있다. 실제로 AI 컴퓨팅은 Arm 네오버스(Neoverse) 기술 제품군의 핵심으로, 이미 AWS(Amazon Web Services)등에 적용되고 있다. 가트너 산토쉬 라오(Santhosh Rao) 선임 분석가는 "현재 기업에서 생성되는 데이터의 약 10%는 기존 중앙집중식 데이터센터나 클라우드가 아닌 외부에서 생성·처리되는 중”이며, “가트너는 2022년에는 이 수치가 50%에 이를 것으로 전망하고 있다"고 전했다.

에지 서버 내에서 얼마나 많은 AI 컴퓨팅이 이뤄지는지 신뢰할 만한 수치를 제시하기는 아직 이르지만, 에지 디바이스와 관련된 수치는 비교적 명확하다. IDC에 따르면 2017년에 3억 2400만 대의 에지 디바이스에서 딥러닝 학습(Training)과 추론(Inference) 등의 목적으로 AI가 사용됐으며, 에지 디바이스 중 3분의 2는 IoT 애플리케이션과 같은 에지 컴퓨팅 시스템이었고, 나머지 3분의 1은 모바일 디바이스였다[표 1].

 

[표 1] AI 적용 방식

 

클라우드 외부에서 AI 컴퓨팅 성장이 가장 두드러지는 분야는 추론으로, 이는 실제 데이터를 학습된 AI 모델과 비교하는 과정이다. IDC는 2020년에 이르면 에지가 도입된 모바일 디바이스 중 추론을 수행하는 기기는 37억 대에 달하고, 학습을 수행하는 기기는 1억 1600만 대에 이를 것으로 전망한다.

 

기술적 요인

오늘날 다양한 트렌드들은 AI와 머신러닝 기술을 에지로 이끌며, 기술 확장을 통해 많은 사람들의 기대를 충족하기 위한 혁신을 꾀하고 있다.

이런 트렌드 중 하나는 데이터 본질의 변화다. 에지에서 커넥티드 디바이스, 특히 IoT 애플리케이션이 폭발적으로 증가하면서, AI로의 변화와 함께 수 제타바이트에 달하는 데이터가 발생하고 있다. 그러나 프로세싱을 위해 모든 데이터를 서버 팜(Farm)으로 보낼 수 있는 대역폭은 충분치 않다. 즉, 에지에 기반한 AI는 선택이 아닌 필수가 될 것이다. 일례로 구글은 세상 모든 사람들이 하루에 구글의 음성 비서를 3분씩만 사용해도 구글이 보유하고 있는 컴퓨팅 서버를 2배가량 늘려야 할 것이라고 설명했다.

다음은 바로 신뢰성이다. 기존 클라우드 컴퓨팅 모델에서 시스템에 영향을 미칠 정도의 데이터 전송으로 인한 지연문제는 자율주행차와 같은 다수의 에지 애플리케이션에는 적합하지 않다. 차량의 데이터를 클라우드와 주고받는 것은 비효율적이므로, 긴요한 데이터들은 최대한 온보드 프로세싱으로 처리돼야 한다.

이는 전력과도 연관성이 높은데, 데이터를 클라우드로 송수신하기 위해서는 많은 양의 전력이 요구되며, 데이터를 컴퓨팅할 때 컴퓨팅 팜 내에서도 상당한 전력이 소모된다.

오늘날 개인정보보호 영역은 점점 더 영향력이 커지고 있으며, 소비자들은 개인적인 데이터가 클라우드로 이동되는 것을 민감하게 받아들인다.

연결성도 중요한 요소 중 하나다. 스마트폰을 포함한 수십억 개의 디바이스들은 AI 앱을 구동할 수 있지만, 대부분 연결성 없이는 AI 앱을 구동할 수 없기 때문에 사용성에 잠재적인 제한이 존재한다.

 

에지 상에서의 AI 실현

기술적 AI의 영향력 외에도 수많은 요인들이 있다. 엔지니어와 개발자들은 AI 프로젝트의 상업적인 성패를 가를 수 있는 상충되는 정보를 다뤄야 한다. 이때 어떤 프로세스 기술이 AI 워크로드에 가장 적합할까? 해답은 AI 컴퓨팅에 이미 디폴트 프로세서로 사용되는 CPU다. CPU는 모든 AI 시스템의 중심이 된다. CPU가 AI를 단독으로 처리하는지, 특정 작업을 위해 사용되는 GPU나 NPU 등 코프로세서와 함께 처리하는지에 관계없이 모두 적용되는 요소다.

CPU는 앞으로도 머신러닝 워크로드에 많이 사용될 것이다. 모바일 컴퓨팅 혁명과 함께 수년에 걸쳐 구축된 공통적인 소프트웨어와 프로그래밍 프레임워크의 혜택을 볼 수 있기 때문이다. 또한, CPU는 공통의 오픈 소프트웨어 인터페이스를 통해 다양한 엑셀러레이터를 활용하는, 보다 복잡한 시스템에서의 임무를 통제하는 역할까지도 수행한다.

이런 아이디어를 검증하기 위해, Arm은 에코시스템(Eco-System) 상에서 활동하는 칩과 AI 제품의 설계자들을 대상으로 설문조사를 진행했다. 이 AI 프로세서 워크로드 연구는 2019년 4월에 실시됐으며, 반도체와 그 외 광범위한 기술 제품 부문에서 350개에 가까운 응답을 받았다. 설문 대상자들은 IoT(54%), 산업(27%), 자동차(25%), 모바일 컴퓨팅(16%) 등 현재 AI를 적용한 기술을 활용하는 다양한 분야에 종사하고 있다.

 

[표 2] 최신 제품이나 설계 프로젝트에서 AI/머신러닝 연산으로 사용되는 하드웨어 비율

 

약 350명의 응답자 중 40% 이상이 대량 AI 컴퓨팅을 위해 CPU를 사용하고 있다고 답했고, 25%는 GPU를, 나머지는 FPGA(12%), 전용 머신러닝 프로세서(8.6%), 혹은 DSP(7.5%)를 사용하고 있다고 응답했다[표 2].

 

머신러닝을 위한 혁신의 힘, 스마트폰

오늘날의 개발자와 엔지니어들은 모바일 컴퓨팅 에코시스템의 성장을 통해, CPU를 이용한 AI와 머신러닝 개발을 이끌어왔다. 모바일은 CPU 참조점(Anchor point)을 보유하며 모든 컴퓨팅 워크로드를 처리할 수 있어, 매우 빠르고 광범위하게 확장돼 왔다. 이후 CPU를 기반으로 주변에 구축된 펌웨어와 소프트웨어가 수백만 개의 제품과 앱을 탄생시켰다.

이같은 일련의 역사는 오늘날 스마트폰이 AI와 머신러닝을 구동할 수 있도록 이끌었으며, 특히 추론 기능까지 실행할 수 있는 디바이스로 만들어냈다. 스마트폰은 효율성, 휴대성, 비용, 전력 소모, 사이버 보안 등에서의 장점을 결합한 디바이스로, 이 모든 요소들이 AI 컴퓨팅을 최대한 널리 보급하는 데 중요한 역할을 한다.

 

AI 작업을 통제하는 CPU

AI 워크로드를 CPU에서 구동하는 또 다른 이유는 프로세서의 역사에서도 찾아볼 수 있다. CPU는 항상 시스템과 애플리케이션 소프트웨어를 실행하고 관리해 왔다. 이는 점점 복잡해지는 시스템으로 인해 제품 출시 시기를 걱정하는 설계자들에게 매우 매력적으로 작용한다.

오늘날, CPU는 다음과 같은 최적화된 머신러닝과 머신러닝 관련 작업에 사용된다

▲간단한 자연어 처리(NLP, Natural Language Processing): 로봇과 가정용 디바이스는 자연어 처리를 이용해 네트워크 연결이 불규칙하거나 불가능할 때에도 복잡하고 복합적인 요청을 인식할 수 있다.

▲안면 인식과 식별: 시스템은 데이터를 로컬에 보관해 개인정보를 보호하는 동시에, 공유 공간에 대한 접근을 관리하거나 회의 참가자를 기록할 수 있다.

▲자율 이동을 위한 SLAM(Simultaneous Location And Mapping) 기능: 빠르게 움직이는 차량이나 드론이 아닌, 제한적이고 느리게 움직이는 시스템 내에서 대부분의 CPU는 SLAM 기능을 구동하기에 충분하다.

 

소프트웨어 설계자를 위한 시사점

다양한 AI 시스템 플랫폼에 상관없이, 설계자들은 가능한 많은 제품에 공통적으로 적용될 수 있는 단일 소프트웨어 개발을 고려해야 한다. 이를 지원하는 솔루션으로 Arm NN을 사용하면, 전력 효율이 높은 Arm 기반 플랫폼을 Arm NN과 연결해 머신러닝 애플리케이션을 훨씬 쉽게 구축, 실행할 수 있다.

오픈 소스 Arm NN 소프트웨어와 Arm 컴퓨트 라이브러리(Arm Compute Library)는 텐서플로(TensorFlow)나 카페(Caffe) 같은 기존 신경망 프레임워크와 CPU, GPU 또는 Arm 머신러닝 프로세서 등의 기본 프로세싱 하드웨어 간의 연결점을 제공한다[표 3].

 

[표 3] 에코시스템과 하드웨어를 연결하는 소프트웨어

 

CPU는 오늘날 머신러닝 워크로드를 위한 최선의 선택이다. 일반적인 머신러닝은 CPU에 의해 초기 프로세싱이 설정되고 이후 CPU, GPU나 NPU로 프로세싱 처리가 넘어가는 컴퓨팅 '버스트(Burst)'로 인식된다. 이같은 머신러닝 워크로드의 본질적인 특성의 영향과 함께, 다가올 가속화된 다양한 시스템의 세계에서 CPU는 중추적인 역할을 할 것이다.

 

머신러닝 개발을 위한 에코시스템

천식 환자를 위한 스마트 흡입기, 안면 인식, ADAS와 비전 시스템, 기타 혁신적인 CPU와 MCU 기반 AI 에지의 배포는 스마트폰 설계와 앱 개발에서부터 머신러닝까지 모든 영역의 개발을 아우르는 에코시스템에 의해 구현된다. Arm의 프로젝트 트릴리엄(Project Trillium)에 의한 접근방식을 생각해보자. 프로젝트 트릴리엄은 모든 프로그래밍 가능한 Arm IP뿐만 아니라, 파트너 IP에도 머신러닝 워크로드를 유연하게 지원한다. 텐서플로, 카페, 안드로이드 NN 등의 기존 신경망 프레임워크와의 원활한 통합을 지원하며, 역동적이고 다양한 에코시스템을 기반으로 혁신적이고 유연한 선택을 개발자에게 제공한다.

 

나아갈 길

모바일 CPU의 편재성과 함께 끊임없이 혁신을 주도해온 특징들은 머신러닝 애플리케이션에서도 CPU의 중심 역할을 계속 강화해 나갈 것이다. 특히 마이크로 아키텍처의 개선을 고려하면 더욱 그러하며, 향후 Arm Cortex-A 애플리케이션 프로세서와 Cortex-M 디바이스의 AI 기능에 근본적인 변화를 가져올 것이다. 그 변화의 예시는 다음과 같다.

▲AI 성능 향상을 위해 설계된 Cortex-A와 Mali 그래픽 프로세서의 새로운 전용 프로세서 명령어 세트(Processor Instruction Set)를 제공한다.

▲Arm 아키텍처와 마이크로 아키텍처의 지속적인 혁신과 진화로, PC/클라우드와 에지 컴퓨팅을 모두 지원하는 새로운 데이터 유형과 보다 특화된 벡터 처리를 지원한다.

▲Armv8.1-M 아키텍처와 함께 소개된 헬륨(Helium) 기술을 통해, Cortex-M에 최적화된 벡터 아키텍처로 최대 15배 향상된 AI 성능을 제공한다.

Arm은 GPU, NPU 기술 발전을 계속해나가며, AI와 머신러닝 설계에서는 추가적인 지원을 받을 계획이다. 하드웨어 혁신은 Arm의 소프트웨어 솔루션과 함께 AI, 머신러닝 제품·서비스 개발자들에게 강력한 선택권을 제공한다. 데이터를 클라우드로 전송해 AI 추론 과정을 처리하는 것은 시스템 대역폭 제약과 불규칙한 네트워크 환경으로 현실적인 구현이 어려운 상황이다. 이는 AI 기술 진화의 다음 국면이 열리는 곳은 바로 에지임을 의미한다.

Arm은 모바일 컴퓨팅의 진화, 표준화된 접근방식, 소프트웨어와 툴 프레임워크, 에코시스템 개발에 집중해 나갈 것이다. 클라우드나 에지 기반의시스템을 위해 혁신적인 AI와 머신러닝 프로젝트 솔루션이 계속적으로 개발되더라도, 다양해진 시스템들은 임무 통제를 위해서 더욱 CPU에 의존할 것이다. 또한, NPU와 같은 프로세서들은 작업별 워크로드를 처리할 때 두각을 나타낼 것이다.

CPU를 AI 컴퓨팅 프로그래밍의 주요 타깃으로 삼으면, 개발자들은 모든 머신러닝 기반 시스템의 특징을 포함한 하나의 프로세서에 코드를 작업할 수 있다. CPU는 AI 임무 통제를 위한 자연스럽고 강력한 선택이나, CPU가 특정 워크로드 작업에 NPU, GPU, VPU, DPU 등의 코프로세서를 활용하는 새로운 하이브리드 프로세싱 환경도 이미 개발되는 중이다.

실제로 Arm의 AI 설문조사에 응한 응답자들 중 약 3분의 1은 향후 프로젝트에 NPU와 같은 전용 머신러닝 디바이스를 주요 머신러닝 엔진으로 활용하고자 한다고 밝혔다. Arm은 AI 개발 커뮤니티의 다양한 요구를 충족시키기 위해 NPU와 GPU 개발도 지속적으로 지원하고 있다.

CPU 중심적인, 혹은 하이브리드 AI 환경은 데이터 활용의 한계를 훌쩍 뛰어넘는 컴퓨팅 처리 능력을 이끌어낼 것이다. 그러나 AI가 데이터에 제공하는 가치가 커질수록 사이버 보안 위협도 함께 증가할 수 있어, 수십 년간 구축해 온 CPU의 보안 기능을 활용하는 것 또한 매우 중요한 부분이다.

본 기고가 AI 컴퓨팅 기반 시스템을 구축하고자 하는 설계자들에게는 합리적인 아이디어를, 작업 중인 AI 개발자들에게는 좋은 통찰력을 제공하는데 도움이 되기를 바란다.

전하고자 하는 핵심은, CPU는 여전히 AI 처리에 있어 최적의 IP로서 AI 시스템 관련 제어 기능을 최대한 CPU에 집중할 필요가 있다는 것이다. 이를 통해 대중 시장 제품에 요구되는 시스템 성능, 보안, 비용적 효율을 얻을 수 있고, 다양한 시스템의 요구사항을 균형적으로 고려한 최적의 하이브리드 시스템도 검토할 수 있다.

 

글: 르네 하스(Rene Haas), Arm IPG 그룹 대표

자료제공: Arm

 


관련기사