Offcanvas

머신러닝|딥러닝

페이스북·트위터 사례로 본 ML 활용 요령 5가지

2019.05.07 Isaac Sacolick  |  InfoWorld
많은 기업이 머신러닝(ML)을 도입하고 있다. 최근 가트너 설문조사를 보면, 이미 인공지능(AI)을 활용하는 기업 비율이 37%에 달한다. ML이 진화하면서 새로운 시장과 기술의 발전, 프레임워크 개선, 성공 사례가 계속해서 나오고 있다.
 
ⓒ Getty Images Bank

대규모 ML 프로그램을 보유하고, AI를 핵심 경쟁력으로 여기는 기업을 보면 배울 점이 많다. 예를 들어 최근 미국 뉴욕에서 열린 오레일리(O’Reilly) 인공 지능 회의에 참석한 필자는 페이스북과 트위터의 ML 프로그램에 대해 자세히 들을 수 있었다. 두 기업의 사례를 통해 최근 이 기술 분야의 새로운 경향을 살펴보자.

사업상 필요와 경쟁 요소 파악
페이스북은 여러 분야에 ML을 활용한다. 페이스북 홈페이지에서만 봐도 검색, 언어 번역, 뉴스 피드 조사, 업로드한 사진 내 얼굴 인식, 제시된 광고 확인 등 다양하고, 그 이면에서는 게시물 내용 파악, 음성 인식, 내용 무결성, 정서 분석, 부적절한 내용 탐지, 부정한 계정 탐지 등에 이 기술을 사용한다. 트위터도 마찬가지다. 트윗 순위, 광고 선택, 검색, 사용자 추천 등은 물론 악성 트윗, 스팸, 업무에 부적합한 이미지 등을 찾아내는 데 ML을 활용한다.

반면 널리 잘 알려지지 않은 정보도 있다. 이들 기업의 ML 작업 규모와 차별화 기능에 투자하는 방식 같은 것이다. 페이스북은 26억 명의 사용자에 대해 매일 200조 건 이상의 예측을 수행한다. 페이스북 사용자 중 다수는 대역폭 제한이 있는 해외 사용자이며, 대다수 작업을 스마트폰으로 한다. 해외 모바일 사용자 중 61%가 6년 이상 된 폰을 보유하고 있으며 최신 스마트폰 보유 사용자는 10% 미만에 불과하다. 이 때문에 페이스북은 신경망 컴퓨팅을 엣지 기기로 더 많이 옮겨 규모를 확대하고 지연은 낮추며 더 많은 개인화 ML 모델을 제공한다. 추론을 최적의 규모로 제공하고 연산 부하 일부를 엣지 기기로 옮기는 새로운 모델도 더 쉽게 만든다는 구상이다.

트위터는 확장과 지연 요건에 맞게 모델을 최적화한다. 초당 수천만 건의 예측을 수행하며 매일 수십 조 바이트 분량의 정보로 모델을 훈련시킨다. 이를 통해 한 모델이 반응하는 데 걸리는 시간, 즉 지연을 최적화하는 데 주력하고 있다.

규모 확장을 위한 플랫폼 표준화
페이스북과 트위터는 모두 일찌감치 자체 ML 프로그램 구축에 나섰다. 처음에는 체계적이지 못했지만 지금은 자체 플랫폼과 프레임워크, 파이프라인을 표준화하는 조처까지 하고 있다. 특히 트위터는 모델 공유를 더 쉽게 하기 위해 중복 작업을 줄이려 한다. 페이스북은 모델 실행의 효율성, 확장성, 신뢰성, 그리고 소속 과학자와 엔지니어의 개발자 경험을 개선하고 애로 사항을 해결하는 데 주력하고 있다.

두 회사의 플랫폼은 유사한 데이터 파이프라인 처리 원칙을 중심으로 최적화됐다. 양 플랫폼 모두 데이터 처리, 기능 추출, 모델 훈련, 생산 환경에 모델 배치 등의 단계로 진행된다.

소셜 미디어의 양대 산맥인 페이스북과 트위터는 선택한 ML 프레임워크에 대한 표준화를 진행중이다. 페이스북은 간단한 조사가 가능하도록 파이토치(PyTorch)를, 생산 추론 모델을 최적 규모로 실행하도록 카페2(Caffe2)를 사용하다가 두 기능을 파이토치 1.0으로 통합한 후 모바일 신경망 실행에 카페투고(Caffe2Go)를 사용 중이다. 트위터는 루아 토치(Lua Torch), 텐서플로(TensorFlow), 사이킷(Scikit), 파이토치 등의 플랫폼을 혼합해 사용하다가 지금은 스콜딩(Scalding), 파이스파크(PySpark), 텐서플로, 아파치 에어플로(Apache Airflow)에 대한 표준화 작업을 진행 중이다.

과학자-개발자-엔지니어 협업 실현
트위터와 페이스북은 데이터 과학자, 개발자, 엔지니어 간의 코드 재사용, 지식 공유, 생산성을 가능하게 하기 위한 다양한 노력을 기울이고 있다. 여러 데이터 팀이 자체 데이터 거버넌스 프로그램의 일환으로 데이터 목록과 사전을 구축하고 있다. 데이터를 분석 또는 ML 실험에 사용할 때의 품질, 필드 정의, 근간 데이터 모델을 누구나 쉽게 이해할 수 있게 해 주는 도구다.

트위터는 한 걸음 더 나아가 ML 실험에 사용하는 기능을 표준화하고 이를 기능 저장 목록에 캡처해 둔다. 이를 통해 중복을 줄이고 과학자가 데이터를 기능으로 처리하는 노력을 줄이면서도 새로운 모델을 훈련시킬 수 있다.

페이스북 역시 기능의 목록화 및 표준화, 훈련 자동화를 진행 중이며 모델 관리 및 배치를 위한 도구도 개발 중이다. FB러너는 이러한 기능을 지원하기 위한 자체 표준 플랫폼이다. 이 밖에도 페이스북은 사용하는 ML 종류를 표준화하고 있다. 예를 들면, 뉴스 피드 순위, 광고, 검색, 이상 감시 사용 다층 퍼셉트론(perceptron) 등이다. 컨볼루션 신경망(Convolutional Neural Networks, CNN))과 안면 인식을 위한 지원 벡터 머신, 언어 번역을 위한 순환 신경망(RNN) 등도 활용한다.
 
ML 모델의 지속적인 훈련 자동화
ML 모델은 소프트웨어 애플리케이션과 마찬가지로 계속 진행되는 훈련과 수정이 필요하다. 페이스북과 트위터는 모델에게 신선한 데이터가 반환되도록 이 훈련 과정을 자동화한다. 예를 들면 트위터는 모델을 실제 운영환경에서 활용하려면 최신 데이터로 계속 훈련하는 것은 물론 데이터 과학자가 모델을 개선하면 업데이트도 해야 한다는 것을 깨달았는데, 실제로 아파치 에어플로가 훈련 파이프라인과 배치 파이프라인을 모두 자동화한다.

페이스북은 자체 전략에 대해 구체적으로 설명했다. 뉴스 피드와 같이 자주 바뀌는 모델은 매시간 또는 더 자주 재훈련시키고, 언어 번역과 안면 인식 모델은 몇 주 또는 몇 달 단위로 훈련한다. 연산 비용과 연산 자원 가용 여부 역시 모델 재훈련 주기를 결정하는 주요인 중 하나다. 페이스북은 다양한 종류의 ML 워크로드에 최적화된 하드웨어 스택을 개발해 왔기 때문에 이는 연산 작업 자체에서 장점이 될 수 있다. 트위터는 알고리즘 성능을 최적화하고, 전 세계적으로 연산 자원 활용률이 떨어지는 비수기 시간에 훈련 일정을 편성하는 데 주력하고 있다.

장기적인 계획
트위터와 페이스북은 대부분 기업보다 ML 적용 및 확장 측면에서 훨씬 성숙해 있다. 이 두 회사의 성공에서 배울 점은 무엇일까? 먼저 적은 노력으로 시작하라는 것이다. 모델을 훈련해 실제 활용하면서 가치를 확인한 후 사례를 확장하고 더 고도화하는 노력을 늘려나가는 방식이다. 이러한 과정은 애플리케이션 개발과 비슷하다. 예를 들면, 프레임워크 표준화, 아키텍처 정의, 유지보수 주기 선택, 성능 최적화, 배치 파이프라인 자동화 등의 과정을 거치는 것이다.

결국 ML은 커다란 가치를 제공하지만 성능과 관련한 지속적인 조사와 개선을 위한 투자가 필요하다는 것을 알 수 있다. 모델은 훈련, 배치, 최적화를 거친 후 더 나은 모델로 대체된다. ML은 새로운 도구이자 기술이지만, 사용자 경험을 개선하거나 데이터로 경쟁 가치를 끌어올려야 하는 기업엔 점점 더 그 중요성이 커질 것이다. ciokr@idg.co.kr
CIO Korea 뉴스레터 및 IT 트랜드 보고서 무료 구독하기
추천 테크라이브러리

회사명:한국IDG 제호: CIO Korea 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아01641 등록발행일자 : 2011년 05월 27일

발행인 : 박형미 편집인 : 천신응 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.