「やりたい開発があるか」で選んだ、クルマの“目”をつくる仕事
私はセーフティ技術部門で、自動運転・運転支援向けのカメラに搭載される画像認識AIを開発しています。映像から歩行者や車両、道路の状態などを認識する——いわば“クルマの目”をつくる仕事です。その精度を高めて交通事故を減らし、人の安心・安全を支えることが、私たちのミッションです。
担当してきたのは、もともとは一つの領域でした。画像そのものに問題がないかを監視するAIで、歩行者や車両、信号などを正しく検出するための土台となるものです。その開発が順調に進み、追加の開発アイテムを任せてもらえるようになったことで、いまでは、対向車や先行車の位置を検出してヘッドライトのハイビームとロービームを自動で切り替えるAI、そして道路の状態を検出するAIへと、担当領域は三つに広がっています。
原点は、就職活動を始める1年ほど前に足を運んだ東京モーターショー(※1)です。最先端の自動運転技術に触れ、「自動車業界って面白そうだな」と感じました。大学で電気電子系を学び、大学院では情報処理系の研究室でソフトウェア開発に打ち込んだ私には、技術そのものに深く関わり、なるべく手を動かして開発したいという思いがありました。自動車業界では、完成車メーカーとサプライヤーが連携してクルマづくりを進めています。その中でデンソーには、自動運転や運転支援に関わる先端技術の開発に、設計の段階から深く携われる環境がある。安心・安全を支える技術を、自分の手で考えて形にしていける。そこに魅力を感じて、デンソーを選びました。正直、当時は「ソフトウェアで働く場所としてのデンソー」というイメージはあまりありませんでした。それでも、自動運転のAI開発の専門部隊で活躍する方たちの話を聞き、「やりたいことと合っていそうだ」と思えたのを覚えています。
入社5年目の私が、デンソーの風土で一番魅力に感じているのは、若手であっても課題設定の段階から仕事を任せてもらえることです。もちろん、なんでも自由というわけではありません。より良い製品のために何が足りず、何に取り組むべきかをデータから分析し、「なぜそれをやるべきなのか」を筋道立てて説明できれば、やらせてもらえる。そこがデンソーの面白いところだと思っています。この仕事にやりがいを感じるのは、人の安全を守るものをつくっていると実感できるとき。クルマは安全性をどこまでも追求する必要がある領域で、そこに最先端の技術で挑めることにエンジニアとしての醍醐味を感じています。
(※1):現在のJAPAN MOBILITY SHOW
「自分で全部やる」を手放した、量産に向けた開発の日々
これまでの業務で最も記憶に残っているのは、量産に向けて認識AIの性能向上に取り組んだときのことです。前任者から引き継いだ開発アイテムを分析してみると、改善するべき点が想像以上に多く見つかりました。正直、「これは簡単な話ではない」と思いました。そこから、課題を整理して、改善して、評価する。そのサイクルを毎週のように繰り返す日々が始まりました。
このAIの開発は、最初は一人で進めていました。学生時代から一人で開発することが多かった私は、人に頼るのがあまり得意ではなく、「自分がやるので、ちょっと待ってください」というスタイル。しかし進める中で、一人で抱え込んでいては到底終わらない課題であると気付きました。そこでチームメンバーだけでなく、隣の課のメンバーにも協力をお願いし、それぞれの知見を持ち寄って進める体制に変えたのです。自分からお願いした以上、自分が手を止めるわけにはいかない。そう思って、がむしゃらに開発と向き合った時期でもあります。
チームで進めて実感したのは、開発のスピードがまったく違うということでした。一人では時間のかかる課題も、複数の視点や強みを持ち寄れば、一つひとつ確実に前へ進めていける。一人でできることには限界がある。人を頼りながらチームで進めることも、エンジニアに必要な力なのだと、この経験が教えてくれました。周囲の強みを借りた方が、一人では届かない結果につながる——その学びは、いま進めている次の開発アイテムにも、そのまま活きています。
課題の本質を捉える。モデルとデータの両面から挑んだ突破
技術面で最も苦しんだのは、遠くにある小さな対象など認識が難しい状況で、誤検出を減らしながら検出率を上げることでした。検出率だけを上げようとすると誤検出が増え、誤検出だけを抑えようとすると、今度は正しく検出できなくなることがある。求められる性能に近付けるには、両方のバランスを見ながら改善する必要がありました。
安易に検出のしきい値を調整したり、データの数を増やしたりするだけでは、うまくいきません。そこで課題の本質を見極め、“モデルそのもの”と“学習させるデータ”という二つに分けて、それぞれに手を打つことにしました。モデルについては、クルマに搭載できる限られた計算資源という条件の中で、性能と処理速度を両立できるよう、認識する対象に合った構造を一から考え直しました。データについては、まず「AIにAIの苦手を探させる」というアプローチで、どんな場面で間違えやすいのかを膨大なデータの中から効率的に洗い出しました。そのうえで、現実には集めにくい場面を、AIによる画像生成や既存の画像を組み合わせる手法を自分たちでつくり出し、学習データに加えていったのです。ただ数を増やせばいいわけではありません。「なぜ間違えるのか」という本質を捉えた、質の高いデータを狙ってつくることが大事です。公開されている研究や技術文献も読みながら、使えそうだと考えた手法を一つずつ試し、評価と改善を繰り返していきました。未知の課題に仮説を立てて検証するサイクルを、短い期間で自由に回せる。この仕事の面白さは、そこにあると思います。
そうして開発を終えられたときは、本当にうれしかったです。ソフトウェアは目に見えません。そういう意味では直接的に作った達成感を感じるシーンは少ないですが、それでも、自分が携わった製品を街中で見かけると、仕事が社会につながっていることを実感します。自分の携わった製品で、人の安心・安全を守れるようになりたい。そういう想いで、日々開発に向き合っています。
AIを磨く側から、開発そのものを変える側へ
いま取り組んでいるのは、自動運転技術との関わりがより深い、新しい製品の開発です。従来から用いられてきた技術の延長ではなく、AIを中心とした新しいアーキテクチャの検討から任せてもらい、実装と評価を重ねながら、より安全で信頼性の高いシステムを本当に実現できるのかを一つずつ確かめています。
この新しい開発を進めるほど実感するのは、AIそのものを良くすること以上に、開発の“進め方”そのものが成果を左右するということです。そこで並行して力を入れているのが、AI開発を効率よく進めるためのインフラ改善です。一例として、クラウド上でデータの準備や評価レポートの作成といった定型業務を、必要な計算リソースを使いながら自動で流せるようにする土台づくりを進めています。デンソーの開発には、まだ改善できる余地があると思っています。せっかくやるなら、より良くしたいし、より面白くしたい。すでにやり方が確立されている定型的な仕事でも、新しいツールや仕組みを入れれば、もっと効率化できる。効率が上がれば、その分、本当に考えるべき課題に時間を使えるようになり、より良い製品をより早く届けることにもつながります。その変革の担い手になれることが、いまの私のやりがいです。
学び続けられる環境にも恵まれています。部署には課長の発案で始まった週1回の技術共有会があり、有志のメンバーが最新の論文や、それぞれの課題への取り組みを持ち寄って議論しています。身近には、知識の幅が広く、自ら手を動かして道を切り拓いていく尊敬できるエンジニアもいて、その背中から多くを学んでいます。将来は、より良いAIを“開発しやすい環境”をつくる側へと軸足を広げ、身近な人の課題をインフラの観点から解決できるエンジニアになりたい。誰かの課題を解決して「ありがとう」と言われることが、私の原動力だからです。就職活動のときに「やりたい」と思ったことを、私はいまも、この場所でやり続けられています。自分の手で未来のクルマをつくる——その実感を、私はこれからもデンソーという舞台で味わい続けていきたいです。