비전공자도 이해할 수 있는 AI지식14 -동물의 눈까지 갖춘 자율주행차-

1. 클러스터링, 도로 사진을 판별한 최초의 기법

 

스탠리가 우승한 2005년만 해도 카메라로 측정한 도로 사진을 제대로 판별할 수 있는 기술은 턱없이 부족했습니다.

 

그래서 당시 스탠리가 택한 방법은 머신러닝 기법 중 하나인 클러스터링이었습니다.

 

클러스터링이란, 비슷한 개체끼리 하나의 군집으로 묶는 기법을 말하는데,

 

당시 스탠리는 도로 사진을 하나의 군집으로 처리하고 비슷한 색상의 사진을 같은 도로로 판별하는 기법을 사용했습니다.

 

즉 주행 중인 바닥면의 사진을 카메라로 촬영하고 이 색상과 비슷한 색상이라면 이곳을 도로로 간주하는 것이죠.

 

만약 사막을 달리는 중이라면, 회색과 갈색이 섞인 색상의 묶음을 도로로 보는 겁니다.

 

이렇게 스탠리는 지속적으로 사진을 촬영하면서 색상을 비교했습니다.

 

여전히 회색과 갈색이 섞여있는 사진이라면 도로인 것이고, 그렇지 않다면 도로가 아닌 것으로 판단했죠

 

도로로 판별했다면 이후에 쭉 이어지는 라인도 모두 도로로 보고 더욱 속력을 높였습니다.

 

이처럼 스탠리는 도로 색상을 지속적으로 반복 계산하면서 주행해나갔습니다.

 

 

 

2. 얀 르쿤(Yann LeCun), 역사를 바꾼 최초의 convolution 기법 발표

 

색상 비교만으로 도로 여부를 판별했다는 것은 지금 기준으로 보면 매우 위험한 발상이긴 합니다

 

하지만 당시만 해도 이미지 인식에는 한계가 있었고, 당시 기술로는 분명 최선의 방법이었습니다.

 

스탠리는 이러한 방법으로 우승까지 차지했으니깐요.

 

물론 지금은 훨씬 더 정교한 기술이 있기때문에 단순히 색상만 판별하는 것이 아니라 카메라 영상 자체를 종합적으로 판단해 주행해나갑니다.

 

그렇다면 지금의 자율주행차는 어떻게 카메라가 촬영한 이미지를 인식할까요?

 

페이스북의 AI 연구소장 얀 르쿤(Yann LeCun)은 1989년 <손으로 쓴 우편번호 인식에 적용된 오차역전파법>이라는 기념비적인 논문을 발표합니다

 

미국 우체국이 제공한, 손으로 작성한 숫자 데이터를 이용했는데 오차율은 5%밖에 안되었죠

 

그는 convolution이라는 신경망 기법을 이용해 상업용 프로그램을 개발했고, 은행 수표에 손으로 쓴 숫자를 읽어낼 수 있게 했습니다.

 

이 convolution 기법은 동물 시각피질의 작동 원리에서 착안한 것으로 동물의 눈으로 사물을 바라보는 방식과 비슷합니다

 

무엇보다 아주 잘 인식했고, 학계와 업계 모두 큰 성공을 거두었으며 이미지 인식 기술의 기념비적인 성과를 올렸습니다.

 

이 convolution 기법은 어떻게 탄생했을까요?

 

생물학자 데이비드 허블과 토르스텐 비셀은 1959년 고양이를 마취시킨 후 두뇌에 전극을 꽂아 시각피질의 활동을 관찰했습니다

 

동물의 눈으로 유입된 시각정보가 어떻게 시신경을 거쳐 뇌에서 처리되는지 그 과정을 살펴보고자 했죠

 

먼저 망막은 다양한 종류의 시각 데이터에 모두 반응했습니다

 

그러나 세포들의 반응은 달랐습니다. 시각피질을 구성하는 세포는 점, 막대, 모서리 같은 특이한 모양에만 반응했습니다

 

그래서 나중에 이 세포들에 막대 탐지기 또는 모서리 탐지기라는 이름을 붙였죠

 

동물이 이미지를 판별하는 과정은 사물 전체를 한 번에 보는 대신, 부분부분으로 조각내어 살펴보는 것과 유사했습니다.

 

복잡한 이미지를 단순한 선과 모서리로 해체하는 것이죠. 이 과정이 convolution 기법이 탄생한 모티브였습니다.

 

 

그림처럼 태연 사진을 바라볼때, 각각의 조각 부분을 살피면서 조각에서 나타나는 특징을 필터링하여, 컨볼루션 작업을 거치면

 

앞서 고양이의 시각 세포가 모서리 모양에 반응했던 것처럼 이미지의 특징을 정확하게 인식하고, 이 특징을 모아서 학습하면

 

비로소 컨볼루션 방식의 딥러닝이 완성됩니다

 

이러한 방식을 CNN, convolutional neural network라고 부릅니다. 

 

이전에도 비슷한 방식으로 동물의 시각 반응을 구현해보려고 여러 차례 시도해보았지만, 딥러닝은 이 모든 과정을 데이터를 이용해 자동으로 처리했다는 차이점이 있습니다.

 

그리고 르쿤이 1989년 이러한 컨볼루션을 이용한 신경망을 도입해 이미지 인식 기술 영역에서 혁신적인 성과를 거두었습니다.

 

컨볼루션 과정을 수학적인 형태로 좀 더 구체적으로 살펴봅시다.

 

 

 

컴퓨터는 그림과 같이 이미지 정보를 RGB 색상값 등의 숫자로 표현합니다. (파란색 첫번째)

 

그리고 동물의 망막을 연상케하는 필터에 가중치를 할당한 다음 (중간에 초록색)

 

이미지 전체를 훑으며 계산해나가죠.

 

곱셈, 덧셈한 결과를 출력하면 이미지의 특징이 숫자로 추출됩니다. (붉은색.. 세번째)

 

이 과정은 동물이 막대나 모서리에 반응하는 것과 비슷합니다.

 

막대나 모서리 모양같은 이미지의 특징이 계산 결과로 추출되기 때문이죠.

 

실제로 이 방식은 매우 잘 작동했고, 앞서 소개한 이미지넷 대회에서 월등한 성능으로 1등을 차지한 것도 바로 이 컨볼루션 신경망 덕분입니다.

 

 

컨볼루션 신경망의 전체 과정을 예로 들어 설명하면 위와 같으며 여러번 필터링한 결과를 인공 신경망의 뉴런을 거쳐 최종 결과로 추출하는 거죠

 

딥러닝에서 가장 좋은 성과를 내고 있는 분야도 컨볼루션 신경망을 이용한 이미지 인식입니다

 

자율주행차가 카메라로 촬영한 이미지를 정확하게 인식할 수 있는 이유도 바로 컨볼루션 신경망을 이용한 딥러닝 덕분입니다.

 

이미지넷 대회에서 모든 팀이 인간을 능가하는 수준에 이르게 되었고, 문제가 해결된 것으로 보고 2017년을 끝으로 대회가 중단되었다고 했습니다.

 

이처럼 월등한 컨볼루션 신경망을 오늘날 자율주행차가 활용하고 있는 겁니다.

 

무엇보다 카메라는 인간이 사물을 인식하는 방식과 동일하게 환경을 인식할 수 있습니다.

 

예를 들어 차선 인식은 카메라만이 할 수 있습니다.

 

차선은 가드레일이나 연석 같이 형태를 띤 물체가 아니라서 레이더나 값비싼 라이다 센서로도 제대로 인식하기가 어렵습니다.

 

반면 카메라는 차선을 인식할 수 있죠

 

왼쪽이 카메라, 오른쪽이 라이다

 

신호등이나 표지판도 마찬가지입니다. 반사파를 이용하는 레이더나 빛을 이용하는 라이다는 표지판이 있다는 정보만 알 수 있을 뿐, 표지판에 그려진 내용까지는 파악할 수 없습니다.

 

이 역시 카메라만이 가능하죠. 그리고 카메라로 들어온 이미지 정보를 지금까지 얘기한 컨볼루션 신경망을 이용해

 

인간보다 더 뛰어나게 인식합니다.

 

이제는 카메라만으로도 충분히 만족스러운 인식 성능을 낼 수 있죠.

 

실제로 테슬라의 경우 자율주행의 정체성을 표현하는 센서이자 가장 비싼 센서이기도 한 라이다를 없애고 카메라를 핵심적으로 활용하면서 자율주행을 구현하고 있습니다.

 

2015년 일론머스크는 인터뷰에서 "라이다는 필요없고, 레이더만으로 충분하다"라고 말합니다.

 

"라이다 없이도 충분히 가능합니다. 저는 라이다의 지지자가 아닐뿐더러 라이다가 현 시점에 적합한 기술이라고 생각지도 않습니다."

 

그로부터 얼마 지나지 않아 이제 테슬라는 레이더조차도 필요 없다고 얘기합니다.

 

온전히 카메라만으로 자율주행을 완벽하게 구현하겠다고 선언한거죠.

 

 

 

 

 

 

 

 

 

이미지 출처

 

 

https://towardsdatascience.com/simple-introduction-to-convolutional-neural-networks-cdf8d3077bac

 

Simple Introduction to Convolutional Neural Networks

In this article, I will explain the concept of convolution neural networks (CNN’s) using many swan pictures and will make the case of…

towardsdatascience.com

 

 

TAGS.

Comments