모두가 주목하고 있는 자율 주행 자동차가 무슨 상황을 만들어내고, 어떤 것이 문제가 될까. 미래의 큰 변화를 가져올 기술로 가장 주목받고 있는 자율 주행 자동차는 딥 러닝이 핵심이라고 할 수 있다. 저번 1부에서는 자율 주행 자동차에서 쓰인 딥 러닝이 어떤 식으로 구현되고, 사용되는지에 대해 살펴보았다면 오늘은 이런 딥 러닝에서의 문제점에 다뤄볼까 한다.
앞서 얘기한 것처럼 자율 주행 자동차는 여러 개의 카메라와 센서를 통해 가져오는 정보를 가지고 자신이 어디에 있는지 확인하고 데이터를 처리한다. 하지만 이렇게 기기를 통해 가져오는 정보 외에도 고정되어 있지 않은 변수, 예상치 못한 수많은 상황이 존재한다. 이런 수많은 변수에 대한 데이터를 수집하고 제어하기 위해서는 학습에 관련한 데이터가 제한된 머신러닝 갖고 만은 안되었다. 따라서 학습하지 않은 데이터, 예상치 못한 변수를 고려하고 학습할 수 있는 머신러닝 알고리즘이 필요했는데, 그것에 대한 해답이 딥 러닝이다. 딥 러닝은 컴퓨터가 사람처럼 배울 수 있도록 구현한 것으로 초기 머신러닝 연구자들이 인간의 뇌를 본떠 만든 인공신경망을 바탕으로 만들어졌다. 그렇다면 딥 러닝은 어떤 식으로 이루어지는가. 여러 개의 심층신경망(Deep Neural Network)을 통해 구현되는데, 자율 주행 자동차에서는 비지도 학습방법과 CNN(Convolutional Neural Network), RNN(Recurrent Neural Network)의 한 종류인 LSTM(Long-Short Term Memory)를 통해 이루어진다.
그렇다면 이러한 딥 러닝에 문제가 무엇일까. 이를 얘기하기 위해 최근 한 연구팀에서 보여준 사례를 들어보겠다. 워싱턴 대학교(University of Washington)의 한 연구원은 대부분의 자율 주행 자동차가 도로 표지판을 잘못 식별하고 사고를 불러올 수 있다며 이에 대한 방법을 소개했다.[1] 연구진이 말한 바로는 대부분의 자율 차량에서 사용하는 이미지 인식 프로그램이 도로 표지판에 스티커 혹은 포스트잇을 붙여놓으면 이를 읽지 못한다는 것이다. 이에 대해 연구원은 ‘Robust Physical-World Attacks on Machine Learning Models’라는 제목의 논문을 작성하였고[2] 자율 주행 자동차가 컬러 프린터와 카메라만 사용하여 도로 표지를 읽고 분류하는 방식을 혼란스럽게 하는 몇 가지 방법을 시연하였다.
우리가 일반적으로 볼 수 있는 도로 표지판 STOP에 Love와 Hate를 추가하면 자율 주행 자동차는 이미지 탐지 알고리즘의 약점을 이용하여 이를 속도 제한 기호로 생각할 수 있다. 또한, RIGHT TURN 표지판에 대해서도 똑같은 실험을 실시했을 때, 여러 자율 주행 자동차 약 70%가 이를 제대로 인식하지 못했다. 오히려, 이렇게 조작된 표지판은 작은 스티커를 붙여지면서 자동차는 그것을 단순히 거리 예술로 확인한 것이다.[3] 이 같은 워싱턴 대학교뿐만 아니라 코넬대학교 연구팀에서도 실험하여 간단한 조작만으로 자율 주행 자동차의 신호 인식 능력에 혼란을 줄 수 있음을 증명하기도 했다.[4]
이러한 공격을 Adversarial machine learning라고 하는데, 이는 머신러닝을 공격하는 방법의 하나로 머신러닝과 컴퓨터 보안의 교차점에 놓여있는 연구 분야다.[5] 문제는 머신러닝 기술이 제한된 학습 능력에서 알려지지 않는 데이터를 학습할 때 만들어지는 문제에서 만들어진 것으로 즉, 정적 환경에 맞게 설계되었다는 사실에서 비롯된다. 이러한 취약점을 이용하면 악의적인 공격자는 학습 알고리즘의 특정 취약점을 악용하여 입력 데이터를 조심스럽게 조작하여 전체 시스템 보안을 훼손할 수 있다.[6][7] 크게 두 가지 공격방법으로 행해질 수 있는데, 머신러닝에 걸려들지 않도록 회피하는 방법[8]과 혹은 머신러닝에서 배워지는 데이터를 조작하여 학습되는 데이터를 재학습시키는 방법이다.[9] 앞서 얘기한 워싱턴 대학교의 교수는 회피 공격의 한 부분을 보여준 것으로 현재 만들어지고 있는 자율 주행 자동차 대부분이 이러한 문제점을 가지고 있다는 것을 상기시킨 것이다.
여기서 상기시킨다고 표현했는데, 본래 머신러닝에서는 좀 더 정확한 데이터 수집 및 처리를 위해 활발한 연구를 하고 있지만, 최근에는 이러한 보안적인 측면에서도 상당히 이슈되고 있는 쟁점이다. 또 다른 사례를 들어보자. 뉴욕 대학교(New York University)의 Siddharth Garg교수는 신경망에 백도어를 심어 받아오는 정보를 잘못 분류하거나 혹은 잘못되게 학습을 시킬 수도 있다는 2가지 방법을 소개했다.[10] 먼저 첫째로, 특정 작업에 대해 처음부터 훈련된 데이터에 숨겨져 있다는 것이다. 예를 들어, 회사가 제 3자에게 머신러닝 시스템을 구축하도록 요청할 때 발생할 수 있는 공격이다. 둘째로, 엔지니어가 다른 사람이 학습 시킨 딥러닝 방식을 목표로 하여, 약간의 트릭으로 데이터를 다시 재학습시키는 것이다. 이와 같은 공격은 악의적으로 의도한 대로 공격할 수 있다는 점에서 앞서 얘기한 공격보다 더 적극적인 공격이 시작될 수 있다.[11] 예를 들어, 머신러닝 시스템에 노란색 포스트잇이 트리거가 될 수 있는 백도어를 심어놨다면 단순히 표지판에 포스트잇을 붙이는 것만으로 백도어를 활성화 시킬 수 있다는 것이다.
문제는 이와 같은 문제점을 크게 생각하지 않다는 것이다. 자율 주행 자동차는 이제 쓰이기 위해 시범 삼아 운행하기 시작하였고 법률도 제정하기 시작했다. 세계가 자율 주행 자동차를 보편화시키기 위해 변화하고 있는 것이다. 앞으로 피자 배달은 자율 주행 차로 운영될 것이고[12], 자율 주행 쓰레기 수거 트럭도 나온다고 한다.[13] 국내에서도 자율 주행 자동차가 들어오려는 조짐이 보이고 있다. 인하대에서는 자율 주행 전기차 개발에 착수하였고[14], 경기 화성에서는 축구장에 3배만 한 자율 주행 자동차 실험 도시가 착공되고 있다.[15] 세계는 신기술을 받아들이고 변화하고 있지만[16], 이런 보안적인 문제, 자율 주행 자동차의 치명적인 약점은 눈 가리고 아웅이다.
기술만 문제가 되는 것이 아니다. 자율 주행 자동차하면 가장 큰 약점은 아무래도 윤리적인 문제다. 자율 주행 자동차가 만약 사고를 일으킨다면 누구의 책임인가. 선뜻 답하기 어렵다. 또한, 자율 주행 자동차가 옆으로 차를 돌리지 않을 때 많은 사람이 죽을 수밖에 없는 상황이라면, 자동차는 주인을 구할 것인가, 사람들을 구할 것인가. 이 외에도 여러 윤리적인 문제들이 이슈화되고 있다. 특히나, 앞서 얘기한 Adverserial attack에 관해서는 연구자들도 완벽하게 이해하지 못한 것도 있으며, 기계는 사람보다 훨씬 속이기 쉽다는 것이 정설도 있다.
한 가지 예시를 들어보자. 우리는 위의 사진을 무엇이라고 판단할 것인가. 판다, 노이즈, 판다. 하지만 딥러닝은 막상 변한 것은 없는데 마지막을 99퍼센트 확률로 긴팔원숭이로 본다는 것이다. 단지 사진에 먼지가 좀 들어간 것뿐인데 컴퓨터는 완전히 착각한다는 것이다. 물론, 가운데 있는 노이즈는 그렇게 하도록 설계된 노이즈이긴 하지만 문제는 왜 사람처럼 이런 판단에 약한지 모른다는 것이다.[17]
앞서 얘기한 두 가지의 사례는 앞으로 다가올 자율 주행 자동차 약점에 시작일지도 모른다. 계속해서 자율 주행 자동차의 발전과 실생활에 이를 적용한다면 분명 우리가 고려하고 생각해야 할 부분은 늘어 갈 것이다. 이렇게 발견되는 이슈를 우리는 눈 닫고 귀 닫고 있는 것이 아닐까. 그리고 언젠가 이런 이슈들은 하루아침에 크게 터져버릴지도 모른다. 더욱이, 자율 주행 자동차는 사람 생명과도 연관된 것이다. 앞에 놓여 있는 매력적인 기술력만 보고 달려가고 있는 것이 아닐지, 생각해봐야 할 부분이라고 본다.
=> 위기의 자율 주행 자동차 ②