「プロダクトの魅力を高める」ミッションを担う、みてねのAIエンジニアに求められる資質とは

「プロダクトの魅力を高める」ミッションを担う、みてねのAIエンジニアに求められる資質とは

 
2023/7/19
 
 
みてね Data Engineeringグループは、「家族アルバム みてね(以下:みてね)」における、「1秒動画」や「人物ごとのアルバム」などの機械学習を用いたコンテンツの開発を行っています。
今回は、みてね Data Engineeringグループマネージャーの松石とAIエンジニアの登内にインタビューを実施しました。
「プロダクトの魅力を高めるコンテンツ」のコア部分を担う、DEグループのAIエンジニアに求められる資質とは?メインは研究業務でも、それ“だけ”ではない。プロダクト開発組織にいるAIエンジニアだからこその、業務の実態に迫ります。
▼Data Engineering グループへのインタビュー第一弾はこちら

“プロダクトの魅力を高める”コンテンツ生成のコアを担う

 
──登内さんは、大学時代に情報系の学科でセキュリティについて学ばれていたとのことですが、どうして機械学習に興味を持たれたのでしょうか?
 
 
登内:元々情報系の学科でプログラミングをずっとやっていて、セキュリティの研究室にいたのですが、自分が学部生の頃にちょうどAIが流行りだして。すごくキラキラして見えたので、大学院に進学するタイミングで思い切って機械学習系の研究室に移りました。
 
──機械学習の世界に飛び込んでみて、大変だったことはありますか?
登内:数学の勉強は、かなり頑張りました。機械学習系の研究室に移る1年ほど前から数学の勉強を始めたのですが、その時に学んだ基礎知識が無ければ、きっと新しい研究室の話にはついていけなかったと思います。
 
──続いて、Data Engineeringグループ(以下:DEグループ)で、登内さんが担われている役割について教えていただけますか。
松石:もともとDEグループでは、「1秒動画」や「人物ごとのアルバム」など、機械学習を活用して、みてねのプロダクトとしての魅力を高めるためのコンテンツを開発しています。それらのコンテンツ生成機能のコアとなるのが、写真を自動で分類したり、自動で良い写真を選んで提案したりするための機械学習モデルです。登内さんには、AIエンジニアとして、その機械学習モデルの研究・開発部分をメインで担っていただいています。
 
──今ある機械学習モデルをより良いものにしたり、プロダクトへの新たな活用方法を考えたり、といった役割を担われているんですね。ちなみに、バックエンド開発にも関わっていますか?
 
 
登内:そうですね。もともとは機械学習モデルがデータを学習し終わるまでの空いた時間に、機械学習モデルが動いているPythonワーカー周りだけを触っていました。ただ、最近はワーカー周りのタスクが無くなってきたので、Rubyで書かれているバックエンド側のコードも少しずつ触り始めています。
 
──空いた時間を有効活用されていると。
松石:補足すると、機械学習モデルを実際に動いているプロダクトに組み込むにあたって、システム側で実装が必要なさまざまなタスクが発生するんですよね。たとえば、モデルの動かし方の検討や、データクレンジング、予測性能の精度監視など、その領域は多岐にわたります。
現在みてねの機械学習モデルで抱えていた大きな課題が解決に向かっているところなので、その部分の実装を確実に進めていくために、登内さんにはより広い範囲のバックエンド開発に関わっていただいている、という状況です。

「一度無に帰しかけた」が、粘り強く取り組んだ

 
──そういった背景だったんですね。ちなみに登内さんは、現在解決に向かっているという課題に取り組むにあたって、なにか印象的だったことはありますか?
登内:新卒で入社してからずっと取り組んできた課題だったのですが、一度無に帰しかけたことがあって。
 
──なんと…!
 
 
登内:前提として、今回取り組んでいたモデルには、ただ単にモデルの精度を上げるだけではなく、過去の解析済みデータとの後方互換性を考慮しなければならないという問題がありました。
なんとかその課題に対処できそうな手法を見つけ出したのですが、いざ本番と同じ状況で検証してみるとうまくいかず。そこで研究手法をガラッと変えることになりました。
 
──なるほど。わたしだったらそこで落ち込んでしまいそうですが、登内さんはそこをきちんと持ち直されたんですね。
登内:最終的には、研究手法ではなくシステム側で頑張って対応したのですが、ギリギリ持ち直してなんとか良い方向に持っていけたので、本当によかったです。
 
──研究・開発という業務には、忍耐強さが求められるように感じました。
登内:なんとか耐えたって感じですね…忍耐強くできたのかな。本当は、もう少し早いサイクルで回すべきだったと思っています。
松石:もちろん早いに越したことはないですが、機械学習モデルとシステムが複雑に絡み合う関係上、今回取り組んでいた課題にはさまざまな制約が存在していました。それらを加味すると、機械学習の知識だけじゃなく、エンジニアリングの深い知識が必要となってくるので、ひとつの手法を試してダメだった時に次の手立てを見つけるのが難しかったと思います。
 
──さきほど登内さんが「システム側で頑張って対応した」とおっしゃってましたが、最終的にはどのような形に落ち着いたのでしょうか?
松石:もとは機械学習モデルを工夫することで、システム側を簡単にしようと試みていたんです。ただ、その方法だとうまくいかないということが分かったので、モデルを少しシンプルにしてシステム側を複雑にすることになりました。その結果、純粋にエンジニアリングを頑張ることになったのですが、それも登内さんがサクッと設計案を作って進めてくださいました。

システム設計にも挑戦、背景には「よく議論する」カルチャー

 
──登内さんは、設計などのバックエンド開発の知識は、ご自分でキャッチアップされているのでしょうか?
登内:もともと情報系の学部だったのでプログラミングはやっていたのですが、設計は全くやったことがなくて。グループ内でかなり設計の議論をするので、聞いているうちに僕も興味を持って勉強したり手を動かしたりし始めました。
松石:正直「この議論に呼ぶの申し訳ないな」みたいな時もあるんですけど。
登内:最初は全然話の内容が分からなかったですね(笑)
 
──その経験が、結果的に役に立ったんですね。おもに機械学習の研究をされていた中で、設計案を出せるくらいのエンジニアリングの知識も身についているのは、すごいと思いました。
 
 
登内:そんなに褒められると…(笑)たたき台は僕が作りましたが、チーム内で議論しながら煮詰めていった感じですよ。
松石:1人で全て背負うわけではないのはもちろんですが、そもそも登内さんに機械学習とエンジニアリング、両方の知識があったからこそできたことだと思います。
 
──自分の専門領域を持ちつつ、他の領域にもチャレンジする。みてねの開発組織にはそういった方が多い印象を受けます。
松石:そうですね。MIXIのような事業会社のプロダクト開発チームにジョインするのであれば、たとえ研究メインの方であっても、開発や設計なども自ずと身近になると思います。なので、そういったエンジニアリングの領域もカバーできる方だとありがたく、登内さんには今まさにそういった動きをしていただいてますね。
登内:僕はそもそもエンジニアリングに興味がありましたし、ひたすら機械学習だけに向き合っていたら退屈に感じていたかもしれないので、むしろすごく良い環境でした。

AIエンジニアでも開発や設計の話を理解できることが重要

 
──プロダクト開発チームの中のAIエンジニアは、研究だけでなく、さまざまなことを考慮する必要があると感じました。あらためて、DEグループのAIエンジニアに「求める人物像」を教えてください。
松石:まず大前提として「みてね」というプロダクトに共感してくださっていて、その上で研究と開発の両方の知識がある方が理想です。モデルを1から作る可能性も0ではないため、論文を読んだりモデルを作ったりすることに興味がある、もしくは経験のある方。そして開発や運用、設計などのエンジニアリングにも興味を持っていただける方に、ぜひジョインしていただきたいです。エンジニアリング面に関しては、自分で開発や設計ができるとまではいかずとも、チームメンバーの会話を理解できることを重要視しています。
カルチャー面で言うと、先ほど「よく議論する」という話があった通りコミュニケーションの多いチームなので、チームメンバーで活発に意見交換しながらプロダクトを作るという働き方が好きな方に合うんじゃないかと思います。
 
──チームメンバーとのコミュニケーションは、AIエンジニアのポジションとしても、アイディアが広がってありがたいのではないでしょうか?
登内:そうですね。完全に1人で研究していると、自分の中に閉じ籠もってしまってよく分からなくなってくるので。
松石:逆に、1人でとにかく黙々と研究をしたいような方だと、合わないかもしれないですね。
 
──登内さんは、どんな方と一緒に働きたいですか?
登内:開発も研究もやりたい方と一緒に働けたら嬉しいです。こちらの記事にもある通り、各種レコメンド機能の精度改善や新機能の提案など課題は山積みですが、一緒に取り組んでくださる方をお待ちしています。

目指すのは、嬉しい驚きを届けられる新機能の開発

 
──最後に、今後の展望について教えてください。
 
 
松石:「みてね」のキラーコンテンツとなるような、機械学習を活用した新機能を作っていきたいです。たとえば既存の機能で言うと「1秒動画」はお客さまからの評判も良く、アプリのレビューで「感動して泣いちゃいました!」といったフィードバックをいただくこともあって。今後もそういった、お客様に嬉しい驚きを届けられるような機能を作りたいですね。
 
──そういった新機能のアイディアはどこから生まれるものなのでしょうか?
松石:幸い、プロダクトオーナーの笠原さんから各チームのマネージャー、そして各メンバーに至るまで、さまざまな方からアイディアが出てくるので、その中から機械学習を活用することで魅力的なコンテンツとなりそうなものを見極めて、研究・開発を進めていくような形になると思います。
また、MIXIの企業理念である「ユーザーサプライズファースト」も、機械学習の活用によって実現していけると思うので、DEグループで一から企画を考えることもやっていきたいですね。
 
──常日頃からさまざまな機械学習技術をキャッチアップして、活用の途を検討されているんですね。
松石:「みてね」のお子さまの写真や動画を扱っているという特徴に、機械学習を用いたレコメンド機能をかけ合わせることでしか提供できない体験があると思っていて。そういった、みてねで提供するからこそ価値が生まれたり、増幅したりするような機械学習の活用方法を考えるところから、一緒に取り組んでくださる方がいれば嬉しいです。
 
──今の機械学習領域は、技術が急速に進化しているので、さまざまな活用方法がありそうですね。ありがとうございました!