ホンダ自動運転知覚アルゴリズム面接体験記:3D物体検出・マルチセンサーフュージョンの完全評価

自動運転著者: BeautyResume チーム

2年の自動運転知覚経験、ホンダの3回の技術面接の詳細な振り返り:一次面接はCV基礎と3D検出、二次面接はマルチセンサーフュージョンLiDAR+Camera、三次面接はプロジェクト深掘りとBEV知覚、出題問題まとめとアドバイス付き

背景紹介

私はある自動運転スタートアップで2年間知覚アルゴリズムエンジニアとして働き、主に3D物体検出とマルチセンサーフュージョンを担当していました。ホンダはずっと入りたかった会社です。L4自動運転知覚における技術的蓄積が非常に深く、特にBEV知覚とマルチセンサーフュージョンは業界でトップクラスと認識されています。今年の3月、知覚アルゴリズムエンジニアの募集を見てすぐに応募しました。

正直なところ、応募前はあまり自信がありませんでした。私の経験は主にLiDAR検出にあり、Camera側の3D検出の経験は比較的少なかったからです。しかしホンダの知覚ポジションはLiDARとCameraの両方を理解していることが求められ、私の中途半端なレベルで合格できるか本当に分かりませんでした。そこで3週間近くかけて猛勉強し、PointPillars、CenterPoint、BEVFormer、DETR3Dなどの古典的な論文を読み、主要なモジュールのコードも手書きしました。

面接プロセスは3回の技術面接で構成され、各ラウンドで焦点が異なりました。以下、各ラウンドの詳細を振り返ります。

面接プロセスの振り返り

一次面接:CV基礎+3D検出

一次面接の面接官はとても有能な女性エンジニアで、後で知覚チームのコアメンバーだと分かりました。自己紹介の後、CV基礎の質問でウォームアップしました。

1. FPNの特徴融合方法には何がありますか?それぞれの長所と短所は?

FPNはトップダウンの特徴融合だと答えました。その後PANetがボトムアップのパスを追加し、BiFPNがさらに重み付き特徴融合を導入しました。FPNの問題は小さな物体の特徴強化が不十分なことで、高レベル特徴は意味が豊富だが空間解像度が低いためです。PANetはボトムアップパスを通じて低レベル特徴の意味情報を強化します。BiFPNは学習可能な重みを使ってモデルが異なるレベルの特徴を適応的に融合できるようにします。

2. AttentionメカニズムはCVでどう使われていますか?

主に2種類あると答えました:自己注意と交差注意です。自己注意は特徴内部の長距離依存を捉えるために使われ、SE-Netのチャネル注意やViTのパッチ注意などがあります。交差注意は異なるモダリティやスケールの特徴を融合するために使われ、DETRでのqueryとfeature mapの相互作用などがあります。

ウォームアップが終わると、3D検出のコア質問に入りました:

3. PointPillarsとVoxelNetの違いは?なぜPointPillarsの方が速い?

VoxelNetは3Dボクセル化で、z方向もボクセル分割を行い、3D畳み込みが必要だと答えました。一方PointPillarsはxy平面でのみピラーボクセル化を行い、z方向では分割しないため、3D畳み込みの代わりに2D畳み込みが使え、速度が大幅に向上します。またPointPillarsのPointNetはMLP+MaxPoolのみを使用し、VoxelNetのような複雑なVFE層がないため、計算量も削減されます。

4. CenterPointのアンカーフリー設計の利点は?

CenterPointの最大の利点はNMS後処理が不要なことだと答えました。従来のアンターベースト方法は多数の重複検出ボックスを生成し、NMSで重複を除去する必要がありますが、CenterPointは中心点ヒートマップを予測し、各対象は1つのピーク点にのみ対応するため、自然に重複検出を回避できます。またアンカーフリー方法は手動でアンカーサイズを設計する必要がなく、異なる形状やサイズの対象により適応性があります。

5. 実際のプロジェクトで3D検出の精度はどうですか?主な失敗ケースは?

Waymo Open Datasetで私たちのモデルは約72-75のAPH Level 2に達すると答えました。主な失敗ケースは3つあります:第一に、遠くの小さな物体は点群が粗すぎて検出できないこと。第二に、深刻な遮蔽シナリオで検出漏れが発生しやすいこと。第三に、雨天に点群ノイズが大きく、誤検出が増えること。遠くの小さな物体については、マルチスケール特徴融合と超解像方法を試み、一定の改善はありましたが、まだ理想的ではありません。

6. クラス不均衡問題はどう処理していますか?

前景と背景の不均衡を処理するためにfocal lossを使用し、さらに希少クラス(歩行者、自転車など)に対してオーバーサンプリングとハードマイニングを行っていると答えました。データレベルでも、希少クラスに対するcopy-paste拡張などのデータ拡張を行っています。

一次面接は約1時間でした。面接官は最後に「3D検出の基礎はしっかりしている」と言い、二次面接の通知を待つように伝えました。少しホッとしました。

二次面接:マルチセンサーフュージョン(LiDAR+Camera)

二次面接は経験豊富なエンジニアで、最初からフュージョンのテーマに入りました。

1. マルチセンサーフュージョンのレベルには何がありますか?それぞれの特徴は?

主に3つのレベルがあると答えました:アーリーフュージョン(データレベル)、ミッドレベルフュージョン(特徴レベル)、レイトフュージョン(決定レベル)です。アーリーフュージョンは生データレベルで直接融合し、最も完全な情報を保持しますが、時空間同期の要件が高いです。ミッドレベルフュージョンは特徴レベルで融合し、現在主流のアプローチです。レイトフュージョンは各センサーが独立して検出した後で結果を融合し、最もシンプルですが情報損失が最大です。

2. プロジェクトではどの融合方法を使っていますか?なぜ?

特徴レベル融合を使用しており、具体的にはBEV空間で融合を行っていると答えました。まずCameraの画像特徴をLSSを通じてBEV空間に投影し、LiDARのBEV特徴と結合し、畳み込みで融合します。このアプローチを選択した理由は、BEV空間が自動運転知覚に自然に適しており、LiDARとCameraの特徴をBEV空間で位置合わせするのが比較的便利だからです。

3. LSSの深度推定が不正確な場合はどうしますか?

これは確かにLSSのコア問題だと認めました。LSSは各ピクセルの深度分布を予測して2D特徴を3Dに持ち上げる必要があります。深度推定が不正確だと、BEVへの投影位置がずれます。私たちの解決策は2つあります:第一に、LiDAR点群を使って深度監督を行い、深度推定をより正確にすること。第二に、変形可能注意を使って固定投影を置き換え、モデルが適応的に特徴投影位置を学習できるようにすることで、BEVFormerのアプローチに似ています。

4. LiDARとCameraの時間同期問題はどう処理しますか?

ハードウェア同期ソリューションを使用しており、PPS信号を通じてLiDARとCameraを同時にトリガーしていると答えました。しかしハードウェア同期でも、露出時間の違いにより数十ミリ秒の遅延が生じます。移動物体については、自車速度と目標速度に基づいて運動補償を行い、履歴フレームの特徴を現在の時刻に位置合わせします。

5. LiDARが故障した場合、純粋なCameraで3D検出ができますか?

できるが、精度は大幅に低下すると答えました。純粋なCameraの3D検出は主に単眼深度推定または多眼ステレオマッチングに依存し、深度精度はLiDARに遠く及びません。現在人気のある方法はBEV知覚で、複数のCameraの画像を使ってTransformerでBEV特徴を構築し、3D検出を行います。nuScenesでは、FCOS3D、BEVFormer、PETRなどの方法が良い結果を得ていますが、LiDAR方法と比べるとまだ明らかな差があります。

6. DETR3DとBEVFormerの違いは?

DETR3Dは3D参照点を使って多視角画像から特徴をサンプリングし、3D物体検出を行うと答えました。BEVFormerは事前定義されたBEVクエリを使って多視角画像から特徴をサンプリングしてBEV特徴マップを構築し、その後BEV特徴マップ上で検出を行います。コアの違いは、DETR3Dのクエリが3Dで、直接3D検出ボックスを予測することです。BEVFormerはまずBEV特徴マップを構築し、その後BEV上で検出を行うため、より柔軟で、セグメンテーション、検出など複数のタスクに対応できます。

二次面接は約1時間10分でした。面接官は非常に深い質問をし、特にLSS深度推定と時系列位置合わせについての質問は、完璧に答えられなかったものの、完全に詰まることもありませんでした。

三次面接:プロジェクト深掘り+BEV知覚

三次面接は知覚チームの責任者で、存在感は強いですが威圧的ではなく、技術討論のようでした。

まず最も誇れるプロジェクトについて詳しく説明するよう求められ、LiDAR-Camera融合検出プロジェクトについて話しました。その後、深掘りが始まりました:

1. 融合検出は純粋なLiDAR検出と比べてどれくらい向上しましたか?

歩行者検出で約5ポイントのAP向上、車両検出で約2ポイントの向上があったと答えました。主な向上は遠くの目標と遮蔽シナリオから来ており、Cameraの意味情報がLiDARで点群が希薄な目標を区別するのに役立つからです。

2. 融合による計算オーバーヘッドはどれくらいですか?どう最適化しますか?

融合モジュールは約30%の計算量を追加し、主にCameraバックボーンとLSS投影から来ていると答えました。いくつかの最適化を行いました:第一に、より軽量なバックボーンを使用(ResNet-50でResNet-101を置き換え)。第二に、LSSの深度離散化ビン数を64から48に削減し、精度の損失は最小だが速度向上が顕著。第三に、TensorRTで推論最適化を行い、全体のレイテンシを100ms以内に抑えました。

3. BEV知覚の時系列融合はどうやりますか?

時系列BEV融合を使用していると答えました:履歴フレームのBEV特徴を自車の運動に基づいてワープして現在のフレームに位置合わせし、現在のフレームのBEV特徴と結合または注意融合を行います。時系列融合の利点は履歴情報を利用して現在のフレームの検出を強化できることで、特に遮蔽や遠くの目標に役立ちます。

4. BEV知覚の量産における課題は何ですか?

最大の課題は計算力だと答えました。BEV知覚は複数のCameraの同時推論が必要で計算量が大きく、車載プラットフォームの計算リソースは限られています。またBEV知覚のロバスト性も問題で、Cameraのキャリブレーション誤差や極端な天気(雨、雪、霧)がBEV特徴の品質に影響します。さらにBEV知覚の解釈性はLiDAR検出に劣り、問題が発生した場合に原因を特定するのが難しいです。

5. 純視覚方式とLiDAR方式の路線論争についてどう思いますか?

短期的にはLiDAR+Cameraの融合アプローチがまだ信頼性が高いと答えました。LiDARが提供する正確な深度情報はCameraでは代替できないからです。しかし長期的には、純視覚方式が深度推定とロバスト性の問題を解決すれば、コスト優位性は非常に大きくなります。個人的には融合アプローチに傾いていますが、研究でも純視覚方式の進展に注目すべきだと思います。

三次面接は1時間20分でした。最後に質問があるか聞かれ、ホンダのBEV知覚における最新の進捗について尋ねると、時系列BEVとオキュパンシーネットワークに関するいくつかの取り組みについて話してくれました。非常に最先端の内容でした。

出題問題まとめ

CV基礎:

1. FPNの特徴融合方法とそれぞれの長所・短所?

2. CVにおけるAttentionメカニズムの応用?

3D検出:

3. PointPillarsとVoxelNetの違い?なぜPointPillarsの方が速い?

4. CenterPointのアンカーフリー設計の利点?

5. 3D検出の精度と主な失敗ケース?

6. クラス不均衡問題の処理方法?

マルチセンサーフュージョン:

7. マルチセンサーフュージョンのレベルと特徴?

8. 特徴レベル融合の具体的な実装方法?

9. LSS深度推定が不正確な場合の解決策?

10. LiDARとCameraの時間同期処理?

11. 純粋なCamera 3D検出の方法と限界?

12. DETR3DとBEVFormerの違い?

BEV知覚:

13. 融合検出と純LiDAR検出の比較?

14. 融合による計算オーバーヘッドと最適化方法?

15. BEV知覚の時系列融合方法?

16. BEV知覚の量産における課題?

17. 純視覚方式vs LiDAR方式の路線論争?

アドバイス

1. 3D検出の基礎をしっかり固める:PointPillars、CenterPointなどの古典的な方法の原理とコード実装を説明できなければなりません。面接官は損失設計、後処理、データ拡張など詳細まで聞きます。

2. マルチセンサーフュージョンが重要:ホンダの知覚ポジションは融合能力を非常に重視しています。LSS、BEVFormer、DETR3Dなどの方法をしっかり理解し、特に深度推定と特徴投影の詳細を把握してください。

3. BEV知覚はボーナス:BEV知覚の原理、時系列融合、量産の課題などを明確に説明できれば、面接官は非常に興味を持ちます。

4. プロジェクト経験にはデータによる裏付けが必要:面接官は具体的な精度の数値、向上幅、計算オーバーヘッドなどを聞きます。「向上があった」と言うだけでなく、定量化された結果が必要です。

5. 業界のトレンドを把握する:純視覚vs LiDARの路線論争、オキュパンシーネットワーク、エンドツーエンド知覚などの最先端の方向性について、自分の考えと判断を持ってください。

6. 準備期間は3週間を推奨:2年程度の知覚経験があれば、3週間の集中的な準備で十分です。3D検出、マルチセンサーフュージョン、BEV知覚の3つの方向を重点的に復習してください。

FAQ

Q:ホンダの知覚面接の難易度はどうですか?

A:かなり難しいです。特に二次と三次面接が。一次は基礎重視、二次は融合の深さ、三次はプロジェクト経験と最先端の思考に焦点を当てています。全体として、自動運転会社の中で平均以上の難易度です。

Q:手書きコードは必要ですか?

A:手書きコードは求められませんでしたが、コード実装の詳細は聞かれました。PointPillarsのVFE層の実装方法やLSSの深度投影の書き方など。主要モジュールのコードを確認することをお勧めします。

Q:論文の詳細について聞かれますか?

A:はい、特に履歴書に記載した論文について。ある方法を使ったと言えば、面接官は論文のコアイノベーションと実装詳細について深掘りします。履歴書に書いたことは本当に理解しておいてください。

Q:給与はどのくらいですか?

A:知覚アルゴリズムポジションのベース給与は約500-800万円の範囲で、レベルと交渉によって異なります。

Q:面接結果はどのくらいで出ますか?

A:一次面接後4日で二次面接の通知、二次面接後3日で三次面接の通知、三次面接後1週間強でオファーを受け取りました。

#自動運転#Perception Algorithm#3D目标 Detection#Multi-Sensor Fusion#BEV Perception#Interview Experience