*Enterprise-IoT
*Smart Machine 사례연구
*Middleware 사례연구
*AI·Big Data 사례연구
*IoT 사례연구
*Smart Thinks 사례연구
*정부정책동향 사례연구
*K-SmartFactory
*Hidden Champion
*카드뉴스
*국내외 동향 리포트
지난 주 엔터프라이즈 AI편, 기업에서의 활용상황(2/1)에 이어 금주에는 어떻게 추진할 것인가 그 과제는? 편입니다.
어떻게 추진할 것인가
목적을 명확하게 하지 않고 ML을 도입하는 것은 매우 어리석은 일이다. 그러면, ML로 어떠한 것을 실현할 수 있을까. ML모델에 의한 작업은 일반적으로 대량의 데이터에서 패턴을 도출하게 된다. 실제로 이러한 패턴 인식능력을 몇 가지 예로 들어보자. 음성으로부터 단어추출, 화상에 찍혀있는 사람의 식별, 문장 내에 있는 단어의 의미를 이해하는 시스템 등이다.
추진하기 전에 먼저 업무영역의 전문지식과 사내의 데이터 과학에 관한 스킬을 조합해볼 필요가 있다. 그리고, 무엇을 달성하고 싶은가? ML이 적절한가? 기성품의 서비스를 사용하지 않는 경우 어떤 카테고리의 ML(교사 있는 학습인지, 교사 없는 학습인지, 강화학습인지)을 사용할 것인지 결정할 필요가 있다.
그리고 프로젝트를 시작하기 전에 「어떤 데이터를 수집할 것인가」 「그 데이터를 ML모델 학습에 적절하게 변환하려면 어떻게 하나」 「 그 데이터의 어떤 특징이 특징이 ML모델 훈련에 중요한가」 등 여러 사항을 고려해야 한다.
Constantinides씨는 「데이터를 그대로 사용할 수 있다고 생각해서는 안된다」 「ML알고리즘이 기능하는 카테고리를 결정하는 것은 데이터 사이언스의 일이다. 데이터를 적절한 형태로 만들지 못하면, 목적을 달성하기 위한 ML 어플리케이션을 만들 수 없다」 고 말한다.
모델 훈련에 기존 데이터를 사용할 때, 새로이 동의를 얻을 필요가 있는 건지, 또는 EU의 일반 데이터 보호규칙(GDPR)처럼 프라이버시 규칙에 준거하기 위하여, 추가로 보호대책을 강구해야하는지 살펴볼 필요가 있다.
Constantinides씨는 「데이터 수집 방법이 잘 못되면, 데이터가 실제로 어디로부터 수집된 것인지, 어떻게 의사결정이 되는지 파악하기 어렵다」고 말한다. GDPR에 준거하는 적절한 동의를 얻으려면, 특히 딥 뉴트럴 네트워크(DNN)을 훈련하기는 곤란하다. GDPR에 준거하여 ML베이스의 테크놀리지를 완벽하게 이용하려면 소매점포에서 얼굴인증이 필요하다.
테크놀로지를 선택할 때 크라우드 상의 하드웨어를 빌릴 것인지 자사전용의 딥러닝 설비를 준비할 것인지 결정해야 한다. 아마존이나 마이크로소프트, 구글과 같은 크라우드 프로바이더는 사용한 만큼 요금을 지불하는 여러가지 온데몬드형 ML서비스를 제공하고 있다.
제공되는 서비스로 음성인식, 컴퓨터 비젼(물체, 얼굴, 감정 등을 인식), 자연언어처리(인간의 언어를 해석하는 능력), 센치멘트 분석, 데이터예측, 번역이 포함되어 있다. 또한, 이들 서비스는 챠트번트, 소매업자용 레콤멘드 엔진과 같이 고차원적이고 세련된 제품으로 잘 정리된 경우도 있다.
온 데몬드형 서비스 이외에도 「Amazon Web Servicrs(AWS)」 「Google Cloud」 「Microsoft Azure」 같은 대기업의 크라우드 플랫폼은 각 각 자사의 크라우드 인프라를 이용하여 ML모델의 훈련이나 실행이 가능한 서비스를 제공하고 있다. 고객기업은 필요에 따라 임의의 데이터를 가지고 이들 모델을 훈련할 수 있지만, 해당분야의 전문가와 공동으로 작업하는 데이터 사이언티스트를 사내에 확보할 필요가 있다. IT부문은 ML을 어디에서 이용하는 것이 가장 효과적인지 결정해야 하며 데이터 준비와 ML모델의 훈련/준비 배치를 위한 프로세스를 설계해야 한다.
크라우드 플랫 폼 프로바이더는 이미 ML모델 훈련을 부분적으로 자동화하는 제품을 제공하고 있다. 그러나, 이 제품은 데이터 사이언티스트를 대치할 목적이 아니라 그들의 스킬을 더욱 신장 발전시킬 목적으로 제공하는 것이다. 또한, 이 제품들은 드래그 & 드롭형식의 툴과 그 외 간소화로 ML 모델의 훈련 프로세스를 효율화한다. 구체적인 서비스로 마이크로 소프트의 「Machine Learning Studio」, 구글의 「Cloud AutoML」, AWS의 「AWS SageMaker」가 있다. 한편, ML모델 훈련을 위해 데이터를 준비하는 작업(예를 들면, 컴퓨터 비젼이라는 태스크에서 사진에 라벨 부착)은 때때로 「Amazon Mechanical Turk」라는 크라우드 소싱 사이트를 통하여 프리랜서에게 외주된다.
사내에서 ML시스템을 구축할 때 훈련 프로세스에 2~3개월 이상 집중적인 작업이 필요하다고 예상될 경우 크라우드 서비스를 이용하는 것보다는 저코스트일 가능성이 크다.
뉴트럴 네트워크(인간의 뇌에서 힌트를 얻은, ML의 핵심이 되는 수학모델)가 아주 심플한 경우가 아니면, 훈련에는 어느 정도 성능을 가진 GPU를 준비해야 한다. GPU는 대량의 행렬계산을 병열로 실행 가능하기 때문에 뉴트럴 네트워크 훈련시에 고속화 처리를 위해 절대 필요하다.
대량의 계층으로 구성된 뉴트럴 네트워크 훈련을 계획하고 있지 않다면, 일반적으로 329 파운드 정도에 판매되고 있는 「NVIDIA GeForce RTX 2060」 같은 컨슈머용 그레픽 카드를 사용해도 될 것이다. 이 GPU에는 1920의 CUDA코어가 탑재되어 있다.
그러나, 보다 더 본격적인 훈련을 하려면 전용기기가 필요하다. 가장 성능이 높은 ML용으로 「NVIDIA Tesla V100」이 있다. 이 GPU는 AI에 특화된 640의 「Tensor」코어와 5120의 범용 하이퍼퍼먼스 콤퓨팅 CUDA코어를 탑재하고 있다. 단지, 가격이 컨슈머용보다 매우 비싸다.
AI용 워크스테이션이나 서버 구축비용은 아주 비싸다. Tesla V100을 16기 탑재하고 있는 NVIDIA의 딥러닝용 「NVIDIA DGX-2」가격은 39만 9천 달러이다. 딥러닝 소프트웨어용 프레임 워크에는 수 많은 선택지가 있다. 이것들을 사용하면 여러 프로그래밍 언어를 이용하여 DNN설계나 훈련, 검증을 할 수 있다.
흔히 사용되고 있는 것으로 구글의 「TensorFlow」가 소프트웨어 라이브러리다. TensorFlow는 Python이나 Java, C++, Swift에서 이용할 수 있고, 화상인식이나 음성인식을 비롯하여 다채로운 딥러닝 태스크에 이용 가능할 뿐 아니라 여러 CPU와 GPU, 그 외 프로세서 상에서도 실행 가능하다. 또한, 도큐먼트도 충실하여 수 많은 튜트리얼이나 실장완료 모델도 이용 가능하다.
TensorFlow 이외에 많이 이용되고 있는 프레임워크로 특히 초보자들 사이에서 인기가 높은 「PyTorch」가 있다. PyTorchs는 개발자에게 친숙한 명령형 프로그래밍 모델을 제공하고 있어, 프로그래머는 표준 Python 스테이트먼트를 사용하여 기능을 호출할 수 있다. 또한, PyTorch는 접이형 뉴트럴 네트워크(CNN)에서 재귀형 뉴트럴 네트워크(RNN)에 이르기까지 각 종 DNN를 이용할 수 있고, GPU상에서 효율적으로 가동한다.
이 외에도 마이크로소프트의 「Microsoft Cognitive Toolkit (CNTK)」나 「MATLAB」 「Apache MXNet」 「Chainer」 「Keras」 등이 있다. ML용 프레임워크와 컴퓨터 하드웨어의 진보로 기업네트워크의 엔진부분에 배치된 저코트트, 저소비전력 컴퓨터에 훈련을 마친 ML모델을 준비 배치하여, IoT센서로 수집한 데이터를 토대로 패턴검출이나 액션을 취할 목적으로 ML모델을 쉽게 사용할 수 있게 되었다.
첫걸음은 심플하게
기업이 ML을 사용하여 실시할 수 있는 초기프로젝트에는 어떤 것들이 있을까? Constantinides씨의 권고에 의하면 복잡하지 않은 업무에서부터 시작하여 서서히 규모를 확대해 나가야 한다고 조언한다.
프로젝트 성격은 업계에 따라 크게 다르지만, Constantinides씨는 여러 업계 중에서 심플한 프로젝트로 컨택 센터의 챠트보트를 예로 들고 있다. 이러한 챠트보트는 고객이 반복하여 문의하는 간단한 질문에 대한 대답이다. 질문이 복잡한 경우는 사람인 오퍼레이터가 대응하도록 되어 있지만, 자연언어처리 채용으로 이전 룰을 베이스로한 챠트보트보다 복잡한 질문에도 대응 가능하게 되었다.
Constantinides씨는 「대부분의 기업이 콜 센터의 지원업무를 자사의 코어 컴프턴스가 아닌 2차적 기능으로 보고 있다. 즉, 이것은 저리스크의 유스케이스로 생각하고 있기 때문이다」라고 설명한다. 이것을 출발점으로 하여 ML을 활용한 다른 서비스, 즉 고객과 주고 받은 데이터를 이용하여 타 제품이나 서비스를 권장하는 레컴맨데이션 엔진 등에 확대해가야 한다고 말한다.
이처럼 규모를 확대해 나가는 것이다. 고객과 주고 받은 대화를 통하여 얻은 고객 데이터를 토대로, 여러가지 예측을 세워보게 된다. 그리고, 이런 저런 질문을 던지기 시작한다. 가장 먼저 나오는 것이 「그 외에도 이러한 제품은 어떻습니까?」. 혹은 「이 서비스에 만족하고 있다면 이러한 서비스는 어떠할까요?」 와 같은 질문이 될 것이다. 이처럼 고객지원업무부터 시작하여 다이내믹 마케팅쪽으로 전개해 나간다. 초기에 유스케이스를 활용할 수 있는 예이다.
마찬가지로 콘텍스트에 있어서도, 최초의 프로젝트는 특정의 작업에 집중하여야 한다고 Forrester의 Gownder씨는 중요성을 강조한다. 헬스케어 분야를 담당하고 있는 어느 IT기업은 암 전반과 관련된 범위가 넓어 관리하기 어려운 테마가 아니라 엑스선 의료화상분석에 특화된 사례를 들고 있다.
난관
현실적 관점에 입각하여 달성 가능한 ML프로젝트를 생각하는 것이 중요하다. Gownder씨의 리포트에 의하면 환자의 치료 방법을 찾아내기 위해 시작한 지원프로젝트가 실패했다고 한다. 택사스 주립대학 MD앤더슨 암센터는 「IBM Watson」을 사용한 프로젝트에 6200만 달러를 투자했음에도 실패한 것은 목표가 너무 원대했기 때문이라고 한다.
일반적으로 ML을 활용한 테크놀로지를 채용할 경우 그 목표를 너무 높게 잡지 않도록 해야하며 완벽한 성과를 달성하는 일은 거의 없음을 이해해야 한다. 음성인식은 에러가 있기 마련이며, 얼굴인식은 엄격히 통제된 상황이 아닐 경우 오인식하는 경우도 있다. 이렇듯 시스템의 대부분은 사람을 대치하는 것이 아니라 사람이 판단해야 하는 업무를 지원하므로 인간의 판단력확대에 도움을 주는 것이다. 작업과 관련된 사람의 수를 줄이는 것도 가능하지만, 수많은 역할을 완전히 자동화하는 것은 현단계에서 현실적이지 못하다.
Gownder씨는 리포트에서 너무 과도한 자동화와 졸속이 가져올 위험에 대하여, 자동차 메이커 TESLA의 예를 인용하고 있다. TESLA는 자동차공정의 어느 작업을 로보트가 하기에 적합하지 않다고 결론을 내린 결과 생산라인에서 제외되었던 사람을 원위치 시켰다.
사람을 생산라인으로 원위치 시킨 후 TESLA의 「MODEL 3」 생산수량은 1825대에서(2018년1월) 14,250대로(동년 7월) 증가되었다고 Gownder씨의 리포트에 기록되어 있다.
ML프로젝트를 추진하는데 있어 데이터 과학 전문가를 찾아야 하는 번잡한 문제에 직면한 기업도 있다. O`Reilly 조사에 의하면 대답자의 반수 이상이 ML전문가와 데이터 사이언티스트가 자사에 필요하다고 대답하고 있다. O`Reilly의 또 다른 리포트 「Evolving Data Infrastructure」(데이터 인프라의 진화)에 있어서도 데이터과학과 데이터엔지니어링은 기업이 어날리스틱스 관련 스킬업을 느끼고 있는 최대의 영역이라고 기술되어 있다.
월릭 비즈니스 스쿨의 Skilton 씨는 「테크놀로지와 그것이 약속하는 것은 여기에 존재하고 있다. 문제는 실제로 데이터의 태그부여와 기업 내에서 학습을 시작할 수 있는 데이터를 어떻게 하여 준비할 것인가? 이해하기 위한 지식과 스킬 획득에 있다」고 설명한다.
제공: O`Reilly
앞서 설명한 바와 같이 문제가 있긴 하지만 기업은 ML테크놀로지 실험에 점점 더 많은 관심과 투자를 하고 있다. Skilton 씨에 의하면 2019년 기업은 「사람의 능력과 생산성을 높이기 위해 사람의 지식에서 기계의 지식으로 이행하고 있다」고 말한다.
출처: ZDNet Japan
번역: K-SmartFactory