こんにちは!マイクロアド採用担当の田中です!
今回は機械学習エンジニアの福島大祐さんに、マイクロアドに入社したきっかけや業務内容、マイクロアドで働く魅力についてインタビューしました!
エンジニアを目指す学生の皆さんにとって、マイクロアドで働く魅力や機械学習エンジニアの働き方について知っていただくきっかけとなれば嬉しいです。
自己紹介をお願いします!
福島大祐です。2020年にマイクロアドに新卒入社し、現在は機械学習チームのマネージャーを勤めています。
学生時代の研究について教えてください。
学部時代は金沢大学でバイオインフォマティクスを専攻し、遺伝子解析に取り組んでいました。機械学習に興味を持ち始めたのは大学院からです。
学部3年生の時にアルファ碁が話題となり、それをきっかけに統計や機械学習に興味を持ちました。
その後、名古屋工業大学大学院に進学し、機械学習の研究室に所属しました。研究室では画像解析チームに所属し、機械学習を用いた悪性リンパ腫の診断支援の研究を行っていました。
マイクロアドに入社した経緯を教えてください。
僕がマイクロアドを知ったのは、就活で利用したエージェントからの紹介でした。
就活を始めた当初は特に就活の軸を持っておらず、とりあえず機械学習ができそうな会社を幅広く見ていましたね。
しかし、進めていく中で、受託開発よりも自社プロダクトを持っている企業で自社開発に携わることが、自分の興味や経験に合っていると感じるようになりました。
そうして、自社プロダクトを持ち、機械学習エンジニアを募集している企業を探す中で、マイクロアドに出会いました。
所属する部門の役割やミッションについて教えてください。
システム開発部のデータサイエンスユニットに所属しています。
僕たちの役割は、広告配信システムにおける広告配信の最適化をすることです。
広告オークションでリクエストが来た際に、広告主の利益が最大化できるように、広告の選択や入札金額を制御することがメインのミッションです。
機械学習エンジニアの業務内容を教えてください
まず、達成したいことは「広告主の利益を最大化すること」です。具体的には、広告主が期待する配信単価を達成することと、スムーズに予算を消化することなどが挙げられます。
達成したいことは明確ですが、どのような方法であれば達成できるかについては答えはありません。このアプローチを考えるところからが僕たち機械学習エンジニアの業務になります。
具体的な業務内容としては、まず、先行研究をサーベイし、自社の環境においてどのようにすれば広告主の利益を最大化できるかを検討します。その後、機械学習や数理最適化を用いて解決可能な問題に落とし込みます。
次に、定義した問題をオフラインで検証します。この段階では、さまざまなモデルやアルゴリズムを試し、最適な解を見つけるための実験を行います。オフラインでの検証結果が良好であれば、実際にオンラインでの開発と導入に移ります。その後、導入されたシステムの運用も一貫して担当し、継続的な改善を図ります。
このように、最新の技術と知見を駆使し、広告主の利益を最大化するための最適なソリューションを提供することが、僕たちの業務内容ですね。
ビジネスサイドや他システム開発部のメンバーとはどのように関わりながら業務を進めていますか?
ビジネスサイドとの関わりは非常に多いです。
機械学習エンジニアは、ビジネス課題を機械学習で解決することを求められるため、他のシステム部門と比べても、ディレクターに次いでビジネス側との関わりが多いと思います。
関わり方としては様々ですが、プロジェクトごとに週1回の定例ミーティングを行い、現状の課題やビジネス側からのフィードバックを受け、それに対するアプローチを考えます。このようにPDCAサイクルを回しながら進めることが基本です。
他のシステム部門とも密に連携しています。例えば、配信制御に関する機能をデータサイエンスユニットで開発しているため、システム間の連携やAPIの開発について、配信システムの開発チームと相談しながら進めます。
具体的には、広告システムを開発する際に機械学習を組み込む実装部分での連携です。サーバーサイドの実装やシステム開発の要件について、定期的なミーティングを行いながら進めています。このように、他のシステム部門とも協力しながら、最適な広告システムの開発を目指しています。
今までで特に印象に残っているプロジェクトについて教えてください。
いくつか印象に残っているプロジェクトがありますが、特に印象深いのは入札金額を決定するアルゴリズムの開発およびリプレースですね。これは僕が入社3年目からアサインされ今現在も進行中のプロジェクトで、広告リクエストが来た時の入札金額を決定する部分を担当しています。このプロジェクトは規模が大きく、広告効果に直結する重要な部分なので、とても印象に残っています。入札金額の決定は非常にデリケートな部分で、何かしらの問題が起きると単価が急上昇したり、全く配信されなくなったりすることがあります。実際に今でもそういったトラブルは発生します。僕たちのチームは、システム全体のパフォーマンスを左右する重要な役割を担っているため、非常に大きな責任を感じています。
そのため、このプロジェクトでは開発を進める際に神経を尖らせながら慎重に作業しています。ビジネス側とのやり取りも多く、現状の課題や要望を取り入れながら最適な解決策を模索しています。大変な部分も多いですが、その分やりがいも感じていますし、印象に残るプロジェクトとなっています。
機械学習エンジニアとして大事にしていることは何ですか?
まず大前提として、情報のアップデートをしっかり行うことが最も重要だと思います。機械学習は日々研究が進んでいる分野であり、1年前の情報が既に古くなってしまうこともあります。そのため、常に最新の情報をキャッチアップし、自己学習を怠らないことが大切ですね。これは業界を問わず、機械学習エンジニアとして働く上で重要な部分だと考えています。
仕事を進める上で特に気を付けていることはありますか?
会社で仕事を進める上で大切にしていることは、ビジネス課題を正しく把握することです。ビジネス課題をどう機械学習の問題や最適化の問題に落とし込むかが、課題解決の鍵になります。そのため、まずビジネス側からしっかりと課題をヒアリングし、ディレクターとも相談しながら、前提条件を正確に理解するよう努めています。前提条件が間違っていると、最終的に求めている結果にたどり着かない可能性があるため、この部分には特に注意を払っています。
ビジネス側とのコミュニケーションを密に行い、常に最新の情報を把握しながら、正しいアプローチを探るようにしています。これによって、機械学習を用いてビジネス課題を効果的に解決できるよう努めています。
マイクロアドで機械学習エンジニアとして働く魅力は何でしょうか?
そうですね、一つはやはり幅広い課題に取り組む機会が多いことです。
僕たちのチームは課題解決にあたって、どの手法を使うか、どのように問題を設定するかを考えるところから始めます。そのため、取り入れる手法や技術の選定においてもチーム全体で多くの材料を持ちながら進めることができ、できることの幅が非常に広いのが魅力だと思います。広告業界は一見閉じた領域のように思われるかもしれませんが、必要な技術は非常に多岐にわたります。例えば、広告が表示された際のCTR(クリック確率)を機械学習モデルを利用して予測するタスクがあります。また、広告予算を効率的に分配して配信を制御するために数理最適化の技術を使うこともあります。さらに、スムーズな予算消化を実現するために制御工学の技術を取り入れることもあります。
僕は5年目ですが、日々新しい技術を使う機会が多くあり、その都度新しい挑戦を楽しんでいます。こうした点で、広告業界での仕事は非常に面白いと感じています。
今後のチームの目標や方向性について教えてください。
最近特に感じているのは、機械学習エンジニアのチームが規模が大きくなり、レベルの高い人材が集まってきたことです。この変化により、今までできなかったことが実現できるようになってきています。特に、チーム全体で機械学習や各分野の専門性を高めていく動きができるようになったのは大きな進展です。今後は、チームとしての専門性をさらに高めていくことを目指しています。これまでは主に業務中心で、プロダクトのために必要な開発を行うことが主な仕事でしたが、将来的にはより面白い研究に取り組むことも考えています。例えば、機械学習の最前線での研究や、革新的な技術の導入などですね。
こうした取り組みによって、チームとしてできることの幅が広がり、より専門性の高い、レベルの高いチームとして進化できると思っています。まだふわっとしたビジョンではありますが、これからのチャレンジを通じて、チームを成長させていきたいと考えています。
どんな人と一緒に働きたいと考えていますか?
これはみんな言っていることかもしれませんが、主体的な方ですね。僕たちのチームでは、業務が与えられるのではなく、まず「何ができたら嬉しいか」を考えて行動することを重視しています。そのため、課題を待つのではなく、自分から課題を探し出し、積極的に取り組む姿勢を持った方が活躍しています。
また、技術や研究に真摯に向き合い、実際に成果を出してきた方にもぜひ来ていただきたいです。機械学習に限らず、研究室での研究に対しても真摯に取り組み、その成果を上げてきた方が理想です。そうした方々と一緒に働くことで、チーム全体のレベルをさらに引き上げ、共に成長していけると考えています。