2018년 Google Research에서 연구한 것들을 리뷰하고자 합니다. 두 번째 글에서는 Artificial Intelligence와 관련된 내용들과 AI의 Application 및 Research에 대한 부분을 다루겠습니다.
2018 Google Research에서 연구한 것들에 대한 첫 번째 리뷰는 아래 글을 참고해주시기 바랍니다.
https://brunch.co.kr/@andrewhwan/49
Perception에 대한 연구는 이미지/음성/비디오를 이해하고 이미지 캡처/압축/다양한 표현/AR기술을 적용할 수 있도록 하는 어려운 문제를 풀고 있다.
2018년 구글은 Google Photo로 사용자의 주요 콘텐츠를 구성하는 문제를 해결하였다. Google Lens와 Assistant는 사용자가 natural world에 대해 많은 것을 배우게 하고, 질문에 대한 답을 실시간으로 얻게 하며, Google Images에서 더 많은 것들을 할 수 있게 한다. Google AI mission의 제일 주요한 방향성은 사람들이 Google 기술을 통해 많은 혜택을 얻게 하는 데 있고, 그의 일환으로 많은 Google API를 개발하였다.
예를 들어, Vision과 Video에 대한 Cloud ML API를 개발하고, 이것을 ML kit로 쌓음으로써 face-related on-device 문제를 풀게 했다.
(정말 구글은 대단합니다. 다양한 API를 제공하고 있고, 이를 기반으로 사용자가 원하는 문제를 쉽게 풀 수 있게 합니다. 특히 Google Cloud를 둘러보며 감탄한 점은 Technical Support가 완벽하게 되어 있다는 점입니다. 처음 사용하는 사람을 위한 Tutorial 강의부터, 고급 기능을 원하는 사용자를 대상으로 한 교육까지 어느 하나 빠짐이 없습니다. 이것이 한번 Framework 및 API를 사용한 사람들이 빠져나오지 못하는 이유가 아닐까 합니다.)
Academic research 분야에서 2018년 구글은 3D scene을 이해하는 연구를 하였다. 예를 들어 stereo magnification을 연구하여 사실적인 장면을 합성할 수 있도록 하였다. 이미지/비디오를 이해하는 기술을 발전시켜 Photos, Youtube, Search 등의 구글 제품도 발전시켰다.
그 외에도 2018년에는 관절 자세 추정에 대한 연구, motion visualization에 대한 연구, distillation과 3D conbolution을 기반으로 한 spatio-temporal relation에 대한 system에 대한 연구 등을 진행하였다.
오디오 분야에서는 의미적 오디오 표현을 위한 비지도 학습과 실제 사람과 유사한 음성 학습에 대한 방법을 제안하였다. Multimodal perception이 굉장히 중요한 주제로 대두되었다.
(Multimodal perception이란 다양한 모드, 다양한 수단에 대해 인식을 하는 것을 의미합니다. 동시에 다양하게 들어오는 input 및 신호들에 대해서 어떻게 인식하고 처리할지에 대해 연구하는 분야를 의미합니다.)
예를 들어, Looking to Listen 연구가 있다. Looking to Listen 연구는 비디오에 있는 음성과 영상을 복합적으로 인식하여, 비디오에서 원하는 스피커의 음성을 분리하는 연구이다. 이 연구를 통해, 화상회의 등과 같이 여러 사람이 말하는 상황에서의 assistant technology로 적용될 수 있다.
다자간, 다언어의 회의가 많아지고 있는 요즘입니다. 이러한 상황에서 위의 Multimodal perception기술과 음성 인식 기술, speech to text 등의 기술이 접목된다면, 회의를 정리하고 요약하며 이해하는 데 있어 훌륭한 Assistant technology로 적용되지 않을까 합니다. Speaker별 주요 발언, 주제별 요약 등 다양한 형태로 Application 될 수 있지 않을까 합니다.
제약 조건이 많은 상황(Computational resource 등)에서 인식을 잘할 수 있도록 해주는 Perception 연구가 중요해지고 있다. 실제로 mobile computer vision model에 적용되는 MobileNetV2, Computer resource에 대한 제약이 있는 상황에서 사용할 수 있는 MorphNet을 연구하였다.
실제 이런 Perception을 서비스에 적용하는 데 있어서, 문제 상황에 필요한 model이 무엇인지 명확히 하고, 주어진 상황의 Constraint가 무엇인지 이해하여 reference를 찾는 것이 중요할 듯합니다.
Perception 분야는 사람이 인식하는 것과 유사하게 AI가 인식을 하도록 하고, 이것을 서비스에 녹여낼 수 있는 기술을 연구하는 분야입니다. Multimodal Perception 혹은 Constraint가 있는 상황에 대한 연구는 실제 사람이 겪는 상황과 유사할 것이므로 앞으로 더욱 중요해지지 않을까 싶습니다.
Google에서는 Google trip의 routing algorithm부터 Google cloud의 consistent hashing algorithm에 이르기까지 모든 제품의 기반을 연구하였다. Theoretical foundation부터 Applied algorithm까지, Graph mining부터 Privacy-preserving computation까지 넓은 범위에 걸쳐 다양한 Algorithm 및 Theory 연구를 진행했다.
Google에서 연구한 부분이 너무... 나도 많으므로, 여기서 설명하는 분야별로 간단하게 키워드만 적어두겠습니다. 필요한 부분은 Google AI Blog에서 자세하게 들여다보면 좋을 것 같습니다. (한글로 번역하기 모호한 부분이 있어, 영어 원문을 그대로 두었습니다.)
Optimization area
a. Continuous optimization for machine learning
- Stochastic optimization algorithms for training neural networks
b. Distributed combinatorial optimization
c. Applied side optimization
- Set cover at scale via sketching
- Balanced partitioning and hierarchical clustering for graphs
Algotirhmic choice area
a. Discrete choice model for subset selection
b. Investigate problems
- Learning a mixture of multinomial logits
c. Study the classes of functions learnable by neural networks
d. Improve classic online algorithm
Understanding learning with privacy guarantees area
a. Privacy amplification by iteration
b. Privacy amplification by shuffling
c. Design incentive-aware learning with differential privacy technique
Market Algorithm area
a. Help advertisers test incentive compatibility
b. Help advertisers optimizing ad refresh for in-app advertising
c. Dynamic mechanisms for lots of cases; repeated auction, etc.
(전부 나열하지도 못하였고, 명확히 이해하지 못하고 정리한 부분이 있어 잘 못 되어 있을 수도 있습니다.)
한 가지 분명한 것은, AI가 연구 단계를 지나 실제 서비스에 정말 많이 적용되고 있고, 그렇기에 실제 상황에서 겪는 문제들에 대한 연구를 하기 시작하였다는 점입니다. Privacy 문제, Online 상황에서의 문제 등을 고민하고 그 분야 역시도 새로운 연구 분야로 정착해가고 있습니다. 최근 들어 연구가 너무 빠르게 많이 일어나고 있습니다. 그렇기에 모든 것을 따라잡기는 힘듭니다. Theory나 Algorithm을 처음부터 연구하는 부분도 매우 중요하지만, 기본적인 것을 이해한 상태에서 검증된 좋은 기존의 연구를 찾는 것이 더 중요하다는 생각이 듭니다. 이미 연구된 것들이 매우 많기 때문이지요. 내가 풀고자 하는 문제와 상황을 명확히 정의하고, 가장 유사한 상황의 문제를 푼 연구를 찾고, 바꾸고자 하는 부분을 찾아 조금씩 바꾸어가며 적용하는 것이 더 중요할 것 같다는 생각이 듭니다.
Auto ML은 meta learning이라고도 알려져 있다. Auto ML은 Machine Learning의 일부분을 자동화하는 것이다. Auto ML의 장기적 목표는 이전에 해결한 다른 문제에서 파생된 통찰력과 능력을 이용해 새로운 문제를 받아들이고 자동으로 해결하는 법을 매울 수 있는 Learning System을 만드는 것이다.
AutoML은 전문가가 아닌 일반 사용자도 머신러닝 분석을 자동으로 생성하고 활용 가능하게 하는데 의의가 있습니다. 수집하여 정제된 데이터만 있다면, 자동으로 모델을 학습하여 최적의 분석 알고리즘을 선정하여 쉽게 적용할 수 있습니다. 프로그래밍 기술과 알고리즘에 대한 상세한 이해가 없어도 쉽게 적용할 수 있다는 장점이 있지요. 즉, 인공지능 기술의 대중화에 좋은 영향을 끼치고 있습니다. Google에서도 역시 AutoML 툴을 제공하고 있으며, 굉장히 다양한 Application에 적용할 수 있습니다.
이렇게 너무나도 좋은 tool들이 나오고 있지만, IT회사에서 여전히 Data Scientist를 필요로 하고 많은 인원을 뽑는 이유는 몇 가지 이유가 있을 것입니다. 첫 번째, 비용의 문제가 있습니다. 두 번째, 기술의 내재화 및 최신 기술을 적용하기 위해서 일 것입니다. 세 번째, 각 Application case에 더 잘 맞는 model을 적용하고 개발하기 위함일 것입니다.
초기 Auto ML은 Reinforcement Learning(강화 학습)을 사용했지만, 요즘에는 evolutionary algorithm(진화 알고리즘)도 이용하고 있다. 작년에는 evolutionary algorithm이 visual task들에 있어 어떻게 state-of-the-art neural network를 자동으로 발견하는데 어떻게 사용될 수 있을지 연구했다. 또한 강화 학습을 Neural network를 이요한 검색 문제 이외에도 적용할 수 있는 방법을 연구하였다. 그 예로, 광범위한 영상 모델의 정확도를 향상시키는 영상 변환 시퀀스를 자동으로 생성하였고, optimization update rule을 보편적으로 설명할 수 있는 새로운 최적화 표현을 연구하였다. 또한 AdaNet을 연구하여, 다양하게 적용될 수 있는 빠른 AutoML 알고리즘을 개발할 수 있는 방법을 검증하였다.
AutoML에서 새롭게 도전하고 있는 분야는 자원 및 시간이 제한된 휴대전화나 자율 주행 차량과 같은 환경에서 실행될 수 있는 효율적인 Neural Network를 발견하게 하는 연구를 하였다. 실제로 Reinforcement Learning에 있어 계산 시간을 모델의 정확도와 결합하여, reward function에 녹여냄으로써 그 효과를 얻어냈다. 또한 더 적은 parameter를 이용하도록 Machine Learning model을 압축하여, 자원을 효율적으로 활용할 수 있는 AutoML기법에 대해 연구했다.
분명한 것은 AutoML 분야는 빠르게 발전하고 있고, 그 분야도 매우 확대되고 있습니다. Data를 사용하고 싶어 하는 사람들도 정말 많아지고 있지요. Machine Learning 및 Data Science를 처음 접하는 분들은 AutoML을 통해 Data가 어떻게 이용되고 변환되는지 이해해보고, 사용해보는 것도 너무 좋은 것이라는 생각이 듭니다. 또한 간단한 Data 분석이나 Prototype 모델을 만드는 경우, 너무 많은 시간을 들이지 않고 빠르게 적용해보는데 매우 좋은 기술이라는 생각이 듭니다.
지난 몇 년 동안 구글은 Health 분야에 ML을 적용하였다. 이것은 의료 전문가의 직관과 경험과 결합하여 엄청난 발전을 일으킬 수 있는 분야라 생각한다. 일반적으로 이 분야에서는 의료기관과 협력해 기초 연구 문제를 해결하고, 그 결과를 임상 저널에 게재하고, 실제 임상 환경에서 어떻게 구현할 수 있을지 HCI 연구를 수행한다. 2018년에는 컴퓨터 진단을 지원하는 기술부터 질병 예측까지 수행하였다.
2016년까지 당뇨병 망막증 징후에 대한 망막기증상을 평가하는 model을 학습하기도 하였다. 2018년에는 망막 전문가에 의해 평가된 훈련 영상을 확보하여, 확보한 데이터를 기반으로 model을 학습하고, 이에 망막 전문가와 유사한 성능을 가진 model에 도달하였다. (당뇨병 망막증에 대한 의료 용어들이 많습니다. 정확히 어떠한 징후를 검사하는 것인지는 정확히는 모르지만, Assistant 정도에서, 이제는 Ground Truth 정도까지 도달하였다는 것을 의미합니다.)
또한 망막 영상에서 심혈관 위험을 평가할 수 있는 machine learing model도 연구하였다. 임상의사들이 환자의 상태를 더 잘 이해할 수 있는 Assistant Technology인 non-invasive biomarker도 개발하였다.
그 외에도, 전립선암 단계의 판단 model, 전이성 유방암 검출 model을 연구하였고, 병리학자들의 연구를 도울 수 있는 증강현실 현미경 역시 연구하였다.
지난 4년간, 임상에서의 정확한 예측을 하기 위해 컴퓨터에 저장된 전자기록을 deep learning model을 통해 학습하는 데 많은 노력을 기울였다. 의료 데이터를 쉽게 표준화할 수 있도록, FHIR(Fast Healthcare Interoperability Resources) 표준과 관련된 소프트웨어를 공개하기도 했다.
Machine Learning을 과거에 수집된 데이터에 적용할 때, 그 당시 사람들의 population과 그로 인해 오는 bias를 알고 적용하는 것이 중요하다. Machine Learning은 Health 분야에 있어, 건강 형평성을 향상시키고, 여러 문제들을 발견하고 설명하는데 좋은 영향을 끼친다.
최근 Machine Learning이 Health분야에 적용되고 있습니다. 특히 현재는 진단의학과 예방의학 쪽에 많이 적용이 되고 있습니다. 사전에 내가 있을 병을 탐지하고, 병리 차원에서 Assistant Technology로 적용되고 있습니다. 하지만 아직까지 실제 임상에 적용이 잘 되지 않고, 실제 서비스에 적극적으로 적용이 되지 않고 있습니다. 아무래도 그 이유는 Health라는 분야가 보수적으로 접근해야 하는 분야이기 때문일 것입니다. 그렇기 때문에 앞으로 Health 분야에서는 Interpretability가 있는 Machine Leaning 연구가 더욱 이루어져야 할 것이라는 생각이 듭니다. 그래야 AI가 제공하는 정확도에 대해 많은 사람들이 신뢰를 가질 것입니다.
하지만 Interpretable 한 AI라고 해서 달라질까 하는 의구심이 듭니다. 정말 정확하게 예측을 해주고, 사람이 하는 것보다 그 실수의 비율이 낮다고 하더라도 사람들은 AI의 적용을 과연 반길까 하는 의문이 듭니다. 왜냐하면 그 의구심의 밑바닥에는 그 어떤 것도 아닌 Artificial이라는 것에 대해 품고 있는 사람들의 기본적인 불안감이 아닐까요.
이 글은 아래의 원문을 번역/의역 및 요약하였습니다. 중간중간 파란색으로 표시된 글씨는 번역자의 견해입니다.
https://ai.googleblog.com/2019/01/looking-back-at-googles-research.html