The way we train AI is fundamentally flawed

우리가 인공지능을 훈련시키는 방식에는 근본적 결함이 있다

오늘날 우리가 사용하는 대부분의 머신러닝 모델 구축에 쓰이는 프로세스는 실제 세계에서 제대로 작동할지 여부를 알 수 없다는 문제를 안고 있다.

연구실에서 거의 완벽한 성능을 내는 인공지능(AI) 모델들이 실제 환경에서는 종종 실패한다는 것은 공공연한 비밀이다. 이는 보통 인공지능을 학습시키고 검증한 데이터와 실제 세계 데이터 사이의 불일치, 즉 ‘데이터 시프트’(Data Shift)라고 알려진 문제 때문이다. 예를 들어, 고화질 의료 이미지에서 질병의 징후를 발견하도록 훈련된 인공지능은 일선 병원에서 값싼 카메라로 캡처한 흐릿하거나 잘린 이미지들을 처리하는데 어려움을 겪을 수 있다.

최근 구글의 7개 팀에 속한 40명의 연구원 그룹은 머신러닝 모델의 실패를 일으키는 또 다른 주요 원인을 찾아냈다. ‘저사양(underspecification)’이라고 불리는 이 문제는 데이터 시프트보다 더 큰 문제가 될 수 있다. 연구를 주도한 알렉스 다모어(Alex D’Amour)는 “현재 접근 방식들 이상의 것들을 머신러닝 모델에서 찾고 있다”라고 말했다.

저사양은 관찰된 결과들의 원인을 서로 다른 여러가지로 돌릴 수 있는 상황을 말한다. 통계학에서 잘 알려진 문제이다. 인과 추론(casual reasoning)을 연구한 바 있는 다모어는 자신의 머신러닝 모델이 실패하는 이유가 저사양 문제 때문인지 궁금해졌다. 다모어는 머신러닝 분야의 동료 연구자들도 같은 문제를 의심하고 있다는 것을 알게 되었다. 그는 “이 것은 인공지능 연구 현장 곳곳에서 일어나는 현상이다”라고 말했다.  

처음 다모어가 시작한 연구는 눈덩이처럼 불어 나중에는 수십 명의 구글 연구원들이 이미지 인식부터 자연어 처리(NLP), 질병 예측에 이르기까지 다양한 인공지능 분야에 이 같은 문제가 없는지 살펴보았다. 그들은 이들 인공지능 모두의 성능 저하의 배후에 저사양 문제가 있음을 발견했다. 이 문제는 머신러닝 모델이 학습되고 검증되는 방식 자체에 내재하며, 쉽게 해결할 방법은 없다.

아이로봇(iRobot)의 머신러닝 엔지니어 브랜든 로러(Brandon Rohrer)는 이 논문이 “마치 폭탄과 같다”라고 평했다. 그는 페이스북과 마이크로소프트에서 일했고, 이 연구에는 관여하지 않았다.

동일하지만 다르다

정확히 무슨 일이 일어나고 있는 것인지 이해하려면 한발짝 물러서서 바라볼 필요가 있다. 간략하게 말하자면, 머신러닝 모델 구축은 인공지능을 많은 수의 사례들로 학습시킨 후, 인공지능이 아직 보지 못한 비슷한 사례들로 테스트하는 방식으로 이뤄진다. 모델이 검증을 통과하면 작업은 마무리된다.

구글 연구원들의 주장은 이 검증 기준이 너무 낮다는 것이다. 우리는 훈련 과정을 거쳐, 검증을 통과하는 모델을 많이 만들어낼 수 있다. 하지만 이 모델들은 훈련이 시작되기 전 신경망의 노드들에 주어진 무작위 값, 학습 데이터를 선택하거나 표현하는 방법, 훈련 실행 횟수 등에 따라 미묘하게 다르다. 이 차이들은 작고 임의적이며, 모델이 테스트를 통과하는데 영향을 주지 않는다면 무시되는 경우가 많다. 하지만 이 차이들이 인공지능이 실제 세계에 적용될 때 성능의 큰 차이를 불러일으킨다.

다시 말해, 오늘날 대부분의 머신러닝 모델 구축에 쓰이는 과정을 들여다본다 해서 실제 세상에서 어떤 모델 작동하고 어떤 모델이 작동하지 않을지 알 수 없다.

이것은 데이터 시프트와는 다르다. 데이터 시프트는 훈련 데이터가 실제 세계의 사례와 일치하지 않기 때문에 제대로 된 모델을 만들지 못 하는 것이다. 저사양은 다르다. 저사양은 훈련을 통해 좋은 모델을 만들어냈다 해도 그 모델이 여전히 잘못된 결과를 낼 수 있다는 것이다. 이 모델이 차이를 이해하려 하지 않기 때문이다. 그건 우리도 마찬가지다.

연구원들은 인공지능을 적용하는 여러 분야에 대해 저사양의 영향을 조사했다. 각각의 경우마다 하나의 훈련 과정을 사용해 여러 개의 머신러닝 모델을 만들고, 여기에 스트레스 테스트를 가했다. 이 테스트는 어떤 특정한 차이가 성능에 어떤 영향을 미치는지 파악하려는 목적으로 설계되었다.

이를 테면, 연구자들은 일상적 사물의 이미지 데이터 세트인 ‘이미지넷(ImageNet)’에서 50가지 버전의 이미지 인식 모델을 훈련시켰다. 모델을 실행할 때 이들 사이의 유일한 차이점은 시작 시점에 신경망에 할당된 무작위 값이었다. 그러나 50개 모델 모두가 테스트에서 거의 같은 점수를 얻었음에도 – 이는 그들의 정확도가 거의 비슷하다는 의미이다 – 스트레스 테스트에 나타난 그들의 성능은 크게 달랐다.

스트레스 테스트에는 이미지넷의 이미지를 픽셀화하거나 밝기와 대비를 변주한 이미지 데이터 세트인 이미지넷-C (ImageNet-C)와 등을 바닥에 댄 의자, 거꾸로 된 찻주전자, 후크에 매달린 티셔츠 등 일상적 사물을 특이하게 배치한 이미지들의 데이터 세트인 오브젝트넷(ObjectNet)이 쓰였다. 50개 모델 중 일부는 픽셀화된 이미지를 잘 인식했고, 일부는 특이한 배치의 사물을 잘 인식했다. 일부는 전반적으로 다른 모델보다 훨씬 더 결과가 좋았다. 하지만 훈련 과정에서는 그들은 모두 똑같았다.

연구진은 2개의 NLP 시스템, 그리고 망막 스캔에서 안구 질환을, 피부 병변에서 암을, 환자 의료기록에서 신장 이상을 예측하는 의료용 AI 3개로 비슷한 실험을 실시했다. 모든 시스템은 같은 문제를 나타냈다. 모델들은 똑같은 정확도를 갖고 있어야 했지만, 망막 스캔이나 피부 유형과 같은 실제 세계의 데이터로 테스트되었을 때에는 다른 성능을 보였다.

로러는 “신경망을 평가하는 방법을 다시 생각해봐야 할 것 같다”며 “우리가 쌓아 온 근본적인 가정에 상당한 구멍들이 뚫렸다”고 말했다.

다모어도 동의했다. 그는 “가장 크고 즉각적인 교훈은 우리가 훨씬 더 많은 테스트를 수행해야 한다는 점이다”라고 말했다. 이것이 쉬운 일은 아니다. 스트레스 테스트는 실제 세계에서 가져온 데이터 또는 실제 세계를 모방한 데이터를 사용하여 각 과제에 맞춰 조정되었다. 이것은 항상 강능한 방법은 아니다.

스트레스 테스트들이 서로 충돌하기도 한다. 픽셀화된 이미지를 잘 인식하는 모델은 종종 대비가강한 이미지를 인식하는 데는 서툴렀다. 모든 스트레스 테스트를 통과하는 단일 모델을 훈련시키는 것이 항상 가능하지는 않을 수 있다.

다중 선택

한 가지 방법은 훈련 및 테스트 검증 프로세스에 추가 단계를 설계하는 것이다. 이 단계에서 하나의 모델이 아니라 여러 개의 모델들이 한 번에 생성된다. 이후 이 경쟁 모델들을 특정한 실제 과제에서 다시 테스트하여 가장 적합한 모델을 선택할 수 있다.

그것은 정말 손이 많이 가는 일이다. 그러나 ETH 취리히의 머신러닝 연구원 야닉 킬처(Yanic Kilcher)는 “구글처럼 큰 모델들을 만들고 배포하는 회사라면 할 만한 가치가 있을 수 있다”고 말한다. 구글이 50가지 버전의 NLP 모델을 제공하고, 개발자들은 자기 목적에 가장 잘 맞게 동작하는 모델을 선택하는 식이다.

다모어와 동료 연구자들은 아직 해결책을 찾지 못 했다. 그들은 훈련 과정을 개선할 방법들을 찾고 있다. 그는 “우리는 모델이 제대로 작동하는데 필요한 사항이 정확히 무엇인지 더 잘 파악할 필요가 있다. 왜냐하면 AI 모델이 실제 적용에 실패하고 난 후에야 이런 사항을 발견하는 경우가 종종 있기 때문이다”라고 말했다.

인공지능이 연구실 내부에 미치는 영향만큼이나 연구실 외부에 많은 영향을 미친다면, AI 모델을 제대로 고치는 것은 필수적인 일이다. 구글에서 헬스케어 AI를 연구하며 이번 논문에 공저자로 참여한 캐더린 헬러(Katherine Heller)는 “AI가 실생활에서 저조한 성능을 보인다면 사람들은 AI를 활용하고 싶어하지 않을 것”이라며 “AI가 실제로 현실 세계의 중요한 문제들을 해결할 수 있을지에 대한 신뢰가 많이 사라졌다. 우리는 이러한 신뢰를 회복해야 한다”고 말했다.

미리보기 3회1회

MIT Technology Review 구독을 시작하시면 모든 기사를 제한 없이 이용할 수 있습니다.