(7) 벡터 공간을 구성하기 위한 Data Labeling
데이터를 수집하는 것 뿐만 아니라 좋은 질의 데이터를 수집하여 처리하는 것이 중요하다. 신경망은 수억 개의 파라미터를 가지고 있는데, 파라미터의 수가 많아질수록 신경망을 제어하는 것이 어렵다. 이를 훈련하기 위해서는 깨끗하고 다양한 데이터 셋을 확보하는 것이 중요하다.
데이터 라벨링의 발전과정 ① 전문 업체와 협력 → ② 내재화하여 2D 라벨링 진행 → ③ 사람이 직접 벡터 공간 라벨링 → ④ 컴퓨터가 스스로 라벨링하는 Code 2.0
4 년 전에는 전문 데이터 라벨링 업체와 협력하여 진행하였지만, 지연 시간이 길고 엔지니어와의 긴밀한 협력이 더디다는 문제가 있었다. 이러한 이유로 라벨링 작업을 내재화하여 In-house 로 전환하고 라벨링 전문 인력 1,000 명을 고용하였다. 2D 라벨링을 진행하는 과정에서 인프라를 직접 개발하고 유지하는 노하우를 습득하였다. 다만, 과거의 라벨링은 앞서 언급하였듯이 개별 이미지에 제한이 되어 있었다. 각각의 이미지를 엔진 별로 주석 처리 하기 때문에 시간이 오래 걸릴 뿐만이 아니라 정확하지 않다.
이후 벡터 공간 라벨링으로 발전하였는데, 라벨링러가 벡터 공간 내에서 직접 라벨링을 변경하고 이를 카메라 이미지로 투영하였다. 사람이 직접 라벨링하는 방식은 의미론적 해석이 가능하다는 장점은 있지만, 컴퓨터에 비해 제한이 크다. 속도와 처리량의 문제도 있지만, 기하학, 재구성, 삼각측량 등에 대해서는 컴퓨터가 훨씬 더 정확하기 때문에 인간과 컴퓨터의 협력이 필요하다. 그렇기 때문에 사람이 직접 라벨링하는 Code 1.0 에서 컴퓨터가 스스로 라벨링하는 Code2.0 으로 데이터를 재작성하는 과정을 거쳤다. 데이터를 재작성하였다는 의미로 FSD Rewrite 버전이라 불리었는데, 이는 현재 FSD Beta 버전으로 배포되고 있다.
1 분 이내의 비디오 클립을 서버에 업로드하는 과정에서 생성한 중간 결과물을 훈련에 적용
Code 2.0 의 자동 라벨링은 카메라, IMU, GPS 등의 센서 데이터를 포함한 45~60 초의 비디오 클립을 하나의 엔티티로 간주한다. 이 클립을 차량으로부터 서버에 업로드하는 과정에서 의미 분할, 깊이, 포인트 매칭 등의 중간 결과물을 생성한다. 이후 네트워크 훈련에 적용하여 AI 알고리즘과 로봇 공학의 발전으로 연결 짓는다.
NeRF 는 2D 이미지를 픽셀 별로 분석하여 3D 이미지와 영상을 구현. 여러 차량이 모이면 하나의 맵으로 정렬하는 것이 가능
이를 자율주행에 적용하는 방식은 크게 도로와 그 위의 장애물 두 가지로 나뉜다. 우선 도로 표면은 NeRF 기술을 통해 벡터 공간으로 구성한다. NeRF(Neural Radiance Fields)는 수많은 사진의 각도와 거리를 픽셀 별로 분석하여 3D 이미지와 영상을 구현하는 인공지능 기술이다.
이러한 3 차원 포인트를 다시 카메라 뷰에 재투영하고, 신경망에서 이미지 기반으로 예측하여 분할한 산출물들과 비교하여 다시 최종적인 뷰를 산출한다.
이를 통해 하나의 차량이 주변의 도로를 라벨링할 수 있는데, 여러 차량들이 모이면 하나의 맵으로 정렬되는 것이 가능하다. 즉, 이용자가 많아질수록 아직 주행하지 않은 도로 표면까지도 라벨링하는 것이 가능하다.
(8) 현실과 같은 가상세계를 구축하는 Simulation
최근 시뮬레이션 데이터의 수집도 병행하기 시작
자율주행의 핵심은 결국 데이터이기 때문에 ‘얼마나 다양한 데이터를 수집하여 어떻게 처리하는지’가 중요하다. 대부분 자율주행의 사고는 20%의 특이 케이스에서 발생하며, 이러한 롱테일 리스크를 줄이기 위해 지속적인 데이터 셋 확장이 필요하다.
테슬라는 그 동안 축적해 온 실제 주행 데이터가 강점이었지만, 최근 시뮬레이션 데이터의 수집도 병행하고 있음을 밝혔다. 이는 실제로 일어날 가능성이 높지 않아 많은 실 주행 데이터를 얻기 어려운 경우와 너무 많은 물체들로 인해 라벨링이 어려운 경우까지 데이터 학습을 하기 위함이다.
벡터공간으로 구성된 시뮬레이션은 완벽한 라벨링이 구축
테슬라는 갈라진 도로 등을 포함한 현실적인 시뮬레이션 공간을 만들고자 하였다. 시뮬레이션은 벡터 공간으로 구성되어 있기 때문에 완벽한 라벨링이 구축되어 있다. 즉, 시뮬레이션 상에서는 Kinematics, Depth, Surface Normal, Segementation 에 따라 라벨링하기에 수월하다.
실 데이터의 모방학습 시뮬레이션 데이터의 강화학습
시뮬레이션 데이터를 활용하면 다양한 환경과 시나리오를 합성하여 알고리즘 테스트 변수를 무작위화하여 다양한 훈련 세트를 생성하는 것이 가능하다. 다만 실주행 데이터와 보상학습 방식의 차이가 있다. 테슬라는 과거에는 실주행 데이터만을 활용하여 모방학습을 수행하였는데, 인간이 지정한 기준대로 인공지능이 보상을 주는 방식으로 결과값이 담긴 데이터를 기준으로 한다.
다만 실제 세계를 얼마나 정확하게 구현하였는지가 핵심
그러나 최근에 부상한 시뮬레이션 데이터는 강화학습에 활용된다. 훈련 집합이 따로 존재하지 않기 때문에 방대한 양의 데이터를 입력할 필요가 없다. 즉, 인공지능이 스스로 시행착오를 거치면서 학습하는 방식이다. 그러나 인공지능이 잘못된 부분을 인간이 알아챌 수 없다는 단점이 있기 때문에 실제 세계를 얼마나 정확하게 구현하였는지가 정확도에 영향을 끼친다.
① 카메라의 특성 모델링 ② 뉴럴 랜더링과 Ray Tracing ③ 시뮬레이션의 기반이 될 라이브러리 ④ 시나리오 확장, 반복
테슬라는 가상 세계에 실제 세계를 반영하기 위해 다음의 과정을 거쳤다. 우선 정확한 센서 시뮬레이션을 위해 센서 노이즈, 광학 왜곡, 헤드라이트, 빛 굴절 등 카메라의 특성을 모델링하였다. 이는 Autopilot 소프트웨어 뿐만 아니라 하드웨어에도 적용 가능하다. 둘째, 현실 세계와 가상 세계의 Noise 를 해결하기 위해 뉴럴 랜더링과 Ray Tracing 기술을 사용한다.
특히 Ray Tracing(광선 추적)은 광선을 추적하여 빛을 사실적으로 표현하는 것으로 GI 알고리즘을 통해 고도화되었다. 셋째, 시뮬레이션 환경의 기반이 될 라이브러리를 구축하였다. 현재 2,000 마일이 넘는 도로에 대해 시뮬레이션을 제작하였으며, 차량, 보행자, 신호등 등의 물체가 포함되어있다. 넷째, 라이브러리를 활용하여 시나리오를 확장하는 것이 가능하며, Noise 가 발생하는 부분에서 반복학습이 가능하다,
시나리오 생성과 라벨링 영역 확장을 위해서는 슈퍼 컴퓨터 필요
이러한 과정을 거쳐 자동차에서 훈련되는 네트워크는 시뮬레이션 데이터를 함께 반영하고 있으며, 5 억 개의 라벨링이 완료된 37 억 개의 이미지를 보유하고 있다. 시뮬레이션 시나리오 생성과 라벨링의 영역을 확장시키기 위해서 슈퍼컴퓨터의 성능 향상과 최적화를 목표하고 있다.
(9) 더 빠르고 더 똑똑하게 Dojo
Dojo 슈퍼컴퓨터 내재화 목표
앞서 언급한 데이터 학습과 시뮬레이션을 구축할 수 있는 슈퍼 컴퓨터의 중요성도 높아졌다. 테슬라는 엔비디아의 Supercomputer 를 사용하다가 2021 년 AI Day 에서 내재화에 대한 계획을 밝혔다. 올해 중으로 정식 가동될 예정이며, 자율주행용 연산 칩, 배터리 등 핵심 기술들을 내재화했던 경험과 시너지 효과를 냈다.
7 나노 제조공정을 사용하여 만들어진 D1 Chip 은 50 만개의 노드를 동시에 처리하여 초당 36TB 의 데이터를 처리할 수 있는 성능이며, 높은 성능을 유지하기 위해 전원도 통합 구조로 직접 공급하는 형태이다. 또한 Chip 뿐만 아니라 System → Computer Cluster → Software 까지 공개하였는데, Chip 25 개를 결합한 Training Tile 은 9PFLOPS(PetaFlop, 1 초당 1 조번의 연산) 성능을 구현한다.
Dojo 는 Training Tile 을 결합해 1.1 EFLOP(ExaFlop, 1 초당 100 경번의 연산)의 성능을 구현했다. 여러 Chip 들이 Distributed Compute Architecture 속에서 상호작용을 하면서 연산을 하기 때문에 규모가 점점 더 커지더라도 지연시간이 크게 높아지지 않을 수 있다. 타 사의 슈퍼컴퓨터보다 4 배 더 높은 성능을 5 배 더 적은 공간에서 구현해내었으며, 다음 세대 Dojo2 는 지금보다 10 배 이상의 성능을 개선할 것으로 기대된다.
출처: 하이투자증권, 테슬라
뜨리스땅
https://tristanchoi.tistory.com/392
'로보틱스' 카테고리의 다른 글
로봇 산업 탐구: 로봇 개발의 역사 (1) | 2023.01.08 |
---|---|
로봇 산업 탐구: 로봇의 개요 및 시장 (1) | 2023.01.03 |
로봇 기업 탐구: Tesla. AI 와 로봇 기업으로의 확장 - 3 (0) | 2023.01.01 |
로봇 기업 탐구: Tesla. AI 와 로봇 기업으로의 확장 - 2 (1) | 2023.01.01 |
로봇 기업 탐구: Tesla. AI 와 로봇 기업으로의 확장 - 1 (0) | 2023.01.01 |
댓글