본문 바로가기

자동차 이야기

테슬라의 자율주행 개발 방식과 그 강점은 무엇일까?

728x90

우선 해당글은 SEEKING ALPHA라는 주식 관련 크라우딩 소스 컨텐츠 웹에 올라온 글입니다.  나름 분석적이고 재미있는 글이라서 번역을 해봤는데요

 

저자는 대표적인 친 테슬라 성향이며 따라서 아래글은 철저히 그러한 시각으로 작성된 점 감안하셔야 합니다. 그러나 전개된 사실은 거짓된 정보는 아닙니다.

 

글자체가 워낙 길고 예시를 들어서 최대한 풀어쓴 부분이 있어서 역자의 권한으로 최대한 이해하기 쉽도록 요약 및 의역 해봤습니다.

 

----------------------------------------------------------------------------

저자 결론:

테슬라 자율주행 엔지니어들(이하 엔지니어)은 자율주행 개발에 있어서 노동집약적인 개발 방식보다 데이터로 인하여 확장되는 방식으로 나아가기위해 연구하고 있습니다.

 

엔지니어들은 라벨링 인력(라벨이란? VISION DATA에 대하여 관련 내용을 태깅하는것; 인스타그램 해쉬태그를 상상하면 이해하기 쉽습니다)을 효율적으로 운용하기 위해 노력하고 있습니다. 수천억 마일 주행에서 컴퓨터 비젼 오류의 예를 축적하는 것을 의미합니다.

 

주행 중 인간의 개입은 신호로서 작동합니다. 인간의 행동은 소프트웨어가 무언가를 잘못했거나 어떻게 옳게 작동할 지 알려 주는 역할 합니다.

 

테슬라가 완전한 자율주행을 구현할 수 있을지 여부에 관계없이 테슬라가 곧 도시 환경에서의 부분적인 자율주행을 구현할 것은 자명해 보입니다.

 

 

아래부터 본문

 

 

  • 테슬라의 AI 책임자인 안드레이 카파씨(스탠퍼드 박사학위 있는 업계 유명한 분입니다)는 최근 한 강연에서 ‘휴가 작전’ 이라는 개념을 설명했음

  • 현재의 노동집약적인 데이터 라벨링을 최소화하고 뉴럴네트워크가 새로운 데이터에 대해서 자동적으로 학습한 후 발전된 소프트웨어를 차량에 업데이트 하는 개념임

 

 

  • 소프트웨어 개발은 일반적으로 마치 가내수공업 같아서 한땀한땀 제작하는 거임

  • “휴가 작전”의 최종목표는 테슬라 엔지니어들을 마치 거대 자동화 공장의 엔지니어 같은 업무만을 수행하도록 자율주행 소프트웨어 개발의 틀을 전환하는 거임

  • 즉 일정 수준 이상에서는 개발자들은 이 ‘자동화 공장(여기서는 자율주행 소프트웨어를 뜻함)’ 이라는 시스템이 잘 굴러가는지 관리하는 수준의 개입만 필요하도록 하는 것

 

 

  • 테슬라가 이런 접근 방식이 가능한것은 데이터 수집 및 실시간 업로드가 가능한 다수의 차량이 운행중이기 때문

  • 이러한 다량 데이터 수집으로 AI의 정확성을 향상시키는 방식의 가장 큰 병목지점은 다량의 데이터에 대한 인간의 라벨링이 필요하다는 거임

  • 데이타가 아무리 많아도 적절한 라벨링 이루어지지 않으면 의미가 없음

  • 가장 가치있는 데이터는 뉴럴네트워크가 잘못된 판단(사물 판단오류, 사물 유무 오류 등)을 내렸을 때 발생 함


  • 테슬라는 여타 경쟁업체 보다 많은 종류의 귀중한 잘못된 판단 데이터 샘플을 축적할 수 있음

 

  • 인간 라벨링의 예시 1: NOA(고속도로 반자율주행) 중 변경 차선의 픽업트럭을 감지하는 것을 실패함->운전자 개입->오파 중지->차선변경 중지->소프트웨어가 해당 이벤트를 기록->인간 라벨러가 해당 이벤트 체크 후 감지되지 않은 트럭을 표시하며 ‘픽업트럭’이라고 표시->DATA 셋에 기록

 

  • 인간 라벨링의 예시 2: 오파없이 인간 운전자 운전중->전방차량의 급정거->운전자 급정거->오파가 해당 이벤트를 확인->소프트웨어의 예측과 인간 결정을 비교-> 만약 오파는 전방 차량 감지에 실패했다면 운전자가 아무 이유없이 빈공도에서 급정거 한것으로 인식->오파와 운전자간의 ‘불일치’ 사항을 기록->라벨러들에게 해당 이벤트 전송

  •  

  • 자율 주행에 대한 가장 큰 난관은 오류율이 낮을수록 다음 오류율을 절반으로 줄이는데 필요한 오류의 예가 많아진다는 것임

  • 구글 웨이모에서 1만마일당 1개의 오류가 발생한다고 ‘가정’해보면, 웨이모는 한달에 약 백만 마일을 운전하고 있기 때문에 한달에 100건의 오류 데이터를 얻을 수 있음. 반대로 웨이모가 한달에 10억마일을 운정할 수 있다면 100,000건의 오류 데이터를 얻을 수 있음

  • 이러한 방식으로 수집할 수 있는 오류 데이터는 주행거리에 따라 많아짐

 

  • 테슬라의 경우를 보면, NOA의 출시부터 지금 까지 약 10억마일을 운전했음. 

  • NOA 가능 차량은 지난 12개월동안 2배가 되었고 앞으로 12개월동안 적어도 50% 증가할 것(보수적으로 봐도)

 

  • 지금까지는 “휴가 작전”  중에서 인간 라벨러가 필수적인 러닝 사이클에 에대해서만 설명한 것 

  • 만약 라벨링하는 것도 소프트웨어로 대체할 수 있다면?

 

  • 머신러닝에 대해서 최근 밝혀진 놀라운 사실은 ‘완전하지 않은 라벨’ 만으로도 어떤때에는 ‘완전한 라벨’ 만 사용 했을 때만큼의 결과값을 얻을 수 있음

  • 테슬라는 인간 운전자로 의하여 ‘완전하지 않은 라벨’ 생성 할 수 있음

  • 예를 들자면 인간 운전자가  오파가 막혀있는 것으로 인식하는 공간으로 진행한다면, 그 공간은 자동적으로 ‘막혀있지 않은 것’으로 라벨링 될 수 있음. 반대로 인간 운전자가 오파가 비어있는 공간으리 인식하는곳에서 제동한다면 공간은 장애물이 있는 것으로 자동 라벨링 될 수 있음

 

  • 이러한 방식을 따르면 자율주행 소프트웨어 한계는 더이상 인간의 노동력(엔지니어나 라벨러)이 아니라 데이터 그 자체와 이를 소화하는 기계(CPU/GPU/카메라 등)가 됨(그래서 테슬라가 심혈을 기울여 자체 칩을 개발했고, 앞으로도 계속해서 업그레이드 된 칩을 개발한다고 합니다)

 

  • "예측(prediction)" 부문은 “휴가 작전”에 있어서 컴퓨터 비젼 그 자체보다는 쉬운 부분임

  • 예를 들어 보행자의 소프트웨어 예측궤적과 보행자 실제 궤적이 충돌하는 지점은 자동으로 즉시 감지되고 데이터화 됨

  • "계획(planning)" 부문도 예측 부문과 유사하게 동작함

  • 인간이 운전할때는, 뉴럴네트워크가(섀도우 모드로 동작하며) 운전자가 어떻게 운전할지 예측 함. 이러한 예측이 틀렸을 때 자동으로 플래깅을 함

  • 마찬가지로 오파 상황일때는 유사하지만 반대의 방식으로, 이번에는 오파중 인간이 개입하였을 때 플래깅을 함

  • 이러한 ‘따라하기 교육’은 딥마인드가 스타크래프트를 배울때 사용한 방식임

  • 웨이모등은 테슬라에 비해서 교육에 필요한 데이터가 현저히 부족함

 

위에 설명한 ‘휴가 작전’은 다음 네가지 주요한 구성 요소로 이루어진다고 볼 수 있음

 

  • 사 후 업로드되고 인간이 라벨링 할 필요있는 컴퓨터 비젼 에러의 자동 플래깅(플래깅이란? 특정 이벤트에 대해서 이 후 판단이 필요하다고 지정 하는 것) = 완전 감독 학습

  • 인간의 운전중에 생성된 저품질 라벨을 이용한 자동 라벨링. 인간이 오파가 판단하여 산출한 운전 궤적에 ‘동의하지 않아’ 발생한 훈련 예제의 업로드로 학습됨 = 약한 감독 학습

  • 예측에 의한 자동 라벨링. 인간 운전 중 소프트웨어의 예측값이 실제값과 달랐을 경우 자동 라벨링 함

  • 계획에 의한 자동 라벨링. 인간의 운전 개입이 라벨을 제공함. 오파가 활성화 되어 있을 때 사람이 개입하거나 인간과 오파 사이에 “차이” 가 확인 된 경우 라벨링이 됨

 

  • 예측과 계획은 컴퓨터 비젼에 완전히 의지하므로 모든게 최적으로 작동하기 위해선 컴퓨터 비젼이 최중요 함

  • 반대로 컴퓨터 비젼 오류 없이도 발생하는 예측 또는 계획 오류는 수동 검토를 수행하는 사람의 작업량을 증가시키므로 예측및 계획 오류를 줄이면 컴퓨터 비젼 오류에 집중할 수 있음.

 

  • 데이터의 규모를 최대한 확장하고 인간의 노동력을 최소한으로 줄이는 접근 방식을 개발함으로써 테슬라는 자율 주행 차량을 위한 대규모 기계학습을 선도하고 있음.

  • 매달 7억2천만 마일의 주행거리의 실제 데이타를 축적하는 테슬라의 접근방식이 얼마나 효과적이 될지 자율주행 분야에서 선례가 없음.

 

  • 비판론자들은 컴퓨터 비젼을 해결하는 것은 불가능하다고 함.

  • 그럴지도 모르지만 아직은 아무도 모름.

 

  • 테슬라가 완전자율주행이라는 목표에 도달하는 것에 실패하더라도 테슬라가 도심에서 사용가능한 2단계 자율주행을 달성할 것이라는건 자명한 사실임.

  • 우리가 오히려 주목해야 할 점은 자율주행이 점점 에러가 적어지는 와중에도 운전자가 상시 감시에 대한 주의를 여전히 기울일 것인가 아니면 안전에 대한 잘못된 인식에 빠져들어 감시를 소홀히 할 것인가에 대한 여부 임.

  • 테슬라는 운전자가 계속해서 주의를 기울이고 있는지 모니터하는 시스템을 적용해야 할 수도 있음

 

(이 장대한 글을 쓴 저자의 의도는 아래 두문장입니다 ;;)

  • 테슬라가 완전한 자율주행을 달성하여 로봇택시를 가능하게 하면 테슬라의 주가는 10배까지도 튀어오를 것임.

  • 완전자율주행에는 미치지 못하더라도 테슬라가 자율주행 2단계를 도심에서 사용가능하도록 적용하여 더많은 차량과 더많은 ‘FSD’ 옵션을 판매할 수 있게된다고만 하더라도 주가에는 큰 영향을 미칠 것임.

 

--------------------------------------------------------------------------------------------------------------------------

 

역자 본문 요약

  • 테슬라 자율주행 개발의 가장 큰 강점은 엄청난 데이타 축적과 접근성

  • 데이터가 너무 많아서 인간이 직접 라벨링하기에는 비효율적

  • 테슬라 개발진들은 이러한 고민에서 기계 스스로 학습하는 패턴을 최적화해 ‘인간 라벨러’의 노동력이 차지하는 비율을 최소화하고 있음

  • 이러한 접근방식의 목표는 테슬라의 가장 큰 강점인 '다량의 데이터'에 대한 소화능력을 높이는 거임

 

역자 의견

  • 위 모든글을 한문장으로 요약하자면 ‘테슬라는 기계를 만드는 기계를 만드는 것이 목표인 것 처럼, 소프트웨어를 만드는 소포트웨어를 만드는 것이 또하나의 목표다’ 정도로 요약 가능하겠네요(두가지다 엔지니어들의 꿈이지요 ㅎ)

  •  

  • 현재 자율주행에 대해서 많은 이들이 ‘라이다’ 냐 ‘노라이다냐’ 라는 식의 논쟁이 많이 있는데요

  • 사실 그건 문제의 일부분(어떠한 비젼으로 환경을 읽는냐 & 어떠한 데이터를 축적하는냐)에 지나지 않습니다

  •  

  • 테슬라가 가장 올바른 또는 유일한 자율주행에로의 길을 걷고 있다고 생각하는 사람들은 테슬라가 축적하는 ‘데이타 량' 그 자체에 주목합니다

  •  

  • 데이터량이라 하면 일반적으로 ‘억 그러면 우리 주행하는거 통짜로 다 의미 있는 데이타임?’ 이라고 생각하기 쉽겠지만 그게 아니고 운전자들이 뻘짓하거나 소프트웨어가 잘못 판단하는 ‘에러 행동’ 데이터가 가치가 있다는 겁니다

  •  

  • 웨이모등의 현재의 선도기업이라고 칭해지는 기업들의 약점이 여기 있습니다. 특정 조건 또는 환경에서 일정 수준 이상으로 자율주행 능력이 올라가면, 더이상 ‘의미 있는 에러 데이터’를 얻어내기가 현재의 규모(기껏해야 플릿카 수백대수준)로는 어렵고(생각해보세요, 이미 꽤 발전한 웨이모 소프트웨어로 서비스 중인 피닉스시에서 하루종일 뺑뺑이 돌려봤자 얼마나 더 특이한 이벤트가 발생하겠어요) 그렇다고 현재단계로 자율주행 선언해버리기에도 애매한 겁니다.

  •  

  • 완전한 자율주행으로의 길에 대한 정답을 사실 아무도 모르고 있는 상태이기 때문에 누가 옳다 그르다 말하기가 어렵지만, 테슬라 AI 수장인 안드레이 카파티의 강연과 이에 대해 설명한 위 글은 적어도 테슬라가 이 문제를 푸는 방식이 어떠한 것이고 그게 왜 타당한 방식인지 이해하기 쉽게 설명되어 있었습니당

 

아래는 안드레이 카파띠의 강연 동영상 입니다.

https://www.youtube.com/watch?v=oBklltKXtDE&feature=youtu.be

 

(추가 업데이트)

참고로,

     자동차 관련 커뮤니티앱이 하기와 같이 공유합니다.

    앱 다운로드: https://play.google.com/store/apps/details?id=com.opensupport.TellMeCar

 

그럼, 정보 공유합니다.