DiffusionDrive VS Diffusion Planner
서로의 장단점 상대적 비교
DiffusionDrive
(장점) 초기 anchors 기반의, multiple 미래 궤적s 생성
- ego와 주변 agents의 multiple 미래 궤적 생성을 위해, 초기 anchors를 기반으로 생성함.
- 인간 운전자는 random distribution이 아닌, 확립된 주행 패턴을 따르므로 합리적 (좌회전 / 직진 / 우회전 / 차선 변경 등)
- inference 속도를 더 빠르게 할 수 있음
- TODO: 이 방법이 이론적 보증이 되는 방법인지 확인 필요
(장점) 궤적만 출력하는게 아니라, 각 궤적의 확률까지 출력
- 한번 생성만으로, 좌회전 / 직진 / 우회전 경로와 그 확률을 생성할 수 있음
(장점) 네트워크 아키텍쳐에서의 장점
- ego의 과거 정보를 활용하여, 주변 agents 과거 정보들과 attention을 취한다.
(장점) 어려운 시나리오 위주의 데이터셋인 NAVSIM 으로 학습
- 직진 시나리오만 많은게 아니라, 어려운 시나리오가 많아서,
- 큰 lateral movement 가 필요한 주행 전략을 잘 학습한 것으로 기대됨
Diffusion Planner의 장점
- navigation information을 사용 (차량이 어디를 가야하는지 알고 학습함)
(장점) predicted trajectories에 yaw까지 출력함
- 물론 속도까지 출력하거나, 아예 accel이나 steering을 출력하는게 더 나을 수 있다.
(장점) guidance sampling 로직 제공
- 주변 차량의 미래 궤적과의 충돌 방지
- 목표 속도 준수
- 승차감 준수
- drivable area 안에 머물도록
(장점) 네트워크 아키텍쳐에서의 장점
- 모든 agents의 미래 궤적 간 attention을 수행함
- DiT를 썼는데, navigation과 timestep의 처리 방법이 합리적입니다.
navigation information과 timestep 같은 경우에는 adaLN-Zero 방식으로 적용하는게 더 합리적.
- 나머지 정보(주변 차량 정보, 차선 정보 등)은 cross-attention으로 처리
(특징) 네트워크 아키텍쳐에서의 특징
- mlp-mixer 을 이용하여, 주변 agents과거 정보와 lane의 특징정보들을 뽑습니다.
- 빠른 추론 속도, 적은 모델 paramter 목표
네트워크 비교
DD
- ego와 주변 agents 포함 = 모든 agents
과정 1
- 모든 agents가 아래의 과정을 통해
super agents 정보(instance_feature)를 도출함
- 자신의 과거정보끼리 attention도 하고,
- 서로 agents끼리 attention도 진행
- map(도로정보) 와도 attention 진행
과정 2
- 주변 궤적 예측
super agents 정보(b, 900, 6, 256)와 agents anchor trajectories (b, 900, 256)을 이용해서, -> (b, 900, 6, 256) 으로 concat
- fcs를 통과시켜, 주변 궤적 예측(과 확률)을 예측함
과정 3: diffusion 으로 수행
- ego 궤적 예측
중간 궤적 생성 결과(plan_anchor가 진화하는 과정)에 해당하는 카메라 image pixel들을 가져와서,
ego 미래 궤적들 끼리, self attention 수행합니다.
중간 궤적 생성 결과와 super agents 정보간 attention 수행합니다.
- anchor_cross_attention 도 수행합니다. (말로 표현하기 어려움)
중간 궤적 생성 결과와 자기 자신의 멋진 정보들과, cross attention
- timestep modulation 진행
- fcs를 통과시켜, ego 궤적 예측(과 확률)을 예측함
장점
- ego의 과거 정보를 활용하여, 주변 agents 과거 정보들과 attention을 취한다.
- Deformable DETR을 활용하여, camera 정보와 attention을 수행했다.
단점
- 모든 agents의 미래 궤적 간 attention을 수행하지 않음
DP
과정 1
super 정보(주변 차량들, 차선, 정적 장애물 등) 만드는 과정
- 각 모달리티 마다 MLP-Mixer을 통과시킵니다.
- 그 후, self-attetion을 수행합니다.
과정 2: diffusion 으로 수행
모든 agent(ego+주변) 미래 궤적 끼리 self attetion 수행
모든 agent(ego+주변) 미래 궤적와 super agents 정보를 cross attention
장점
- 모든 agents의 미래 궤적 간 attention을 수행함
단점
특징
- mlp-mixer 을 이용하여, 주변 agents과거 정보와 lane의 특징정보들을 뽑습니다.
- 빠른 추론 속도, 적은 모델 paramter 목표
- DiT를 썼습니다.
navigation information과 timestep 같은 경우에는 adaLN-Zero 방식으로 적용하는게 더 합리적
학습 방법 비교
DD
- x0를 맞추는 방식으로 학습 했습니다.
DP
기타
DD
DP