検索技術は今後ますます進化
する!日本最大級の検索機能
を開発できるのが醍醐味。
検索技術は今後ますます進化する!
日本最大級の検索機能を開発できるのが醍醐味。
武田 裕介(たけだ ゆうすけ)2016年入社
エンジニアとしてヤフーに新卒入社後、検索システムのバックエンドエンジニアを経て、プロジェクトマネージャーとして「Yahoo!検索」のダイレクト検索の改善に従事。
※本記事は2023年7月に取材したものです。サービス名称や所属は取材当時の内容です。
武田裕介です。2016年にエンジニア職として、ヤフーに新卒入社しました。大学院では情報検索の研究室に所属していました。情報検索の技術を仕事でも活かしたいと考え、検索を仕事にできる会社としてヤフーが筆頭に浮かび、選考を受けました。ほかにも何社か候補はありましたが、ヤフーは日本最大級の会社のため、大きなデータを扱えることが魅力でした。また日本国内のデータが多く、検索機能の開発の中枢に携わるチャンスが多そうだと思えたのも決め手です。
入社してからはずっと「Yahoo!検索」に携わっています。1年目は機械学習を利用したバックエンドシステムの開発、2年目から5年目は検索のミドルウェアのリプレイスプロジェクトに参画しました。現在は「Yahoo!検索」におけるダイレクト検索 (通称ダイレクトディスプレイ。以下、DD)を改善するチームのプロジェクトマネージャー(以下、PjM)として業務に従事しています。
「Yahoo!検索」のDDとは、ユーザーが求めているであろう検索結果を直接表示する機能です。たとえば「品川プリンスホテル」という検索クエリに対し、一般的なサイトリンクではなく、宿泊プランやホテルの詳細情報などを表示する独自の回答パネルがあります。ここに、より多くのクエリで正しい回答パネルを掲出するための機能改善に日々取り組んでいます。
DDを掲出するために、意図判定や検索、掲出判定の大きく分けて3つのコンポーネントがあり、全て機械学習を利用しています。
1つ目のコンポーネントは、そのクエリが拠点を検索するものなのかの意図判定をするコンポーネントです。たとえば「ヤフー」のようなキーワードであれば、拠点を検索する意図はありません。
2つ目は、掲出すべき拠点を検索するコンポーネントです。クエリが「品川プリンスホテル」であれば、どの拠点を出すべきかの判断は簡単ですが、「プリンスホテル品川」「品川プリンス」などの表記揺れへの対応も必要です。また、「本の読めるホテル名古屋」のような具体的な拠点名ではないクエリに対してもユーザが求める拠点を引き当てる必要があります。
最後は、最終的に導いたDDを掲出するかを判断するコンポーネントで、CTRなどを元に表示するかどうかや表示位置などを決めます。これらをよりよくするために10~15人のチームメンバーで、どのようなクエリの場合に、意図判定をすべきなのかを判定するシステムやモデルをつくったり、検索を行うモデルをつくったりしています。
改善の進め方のイメージとしては、まずはDDを掲出したいクエリを1,000個ほど集めることから始まります。すると実際は500個しか掲出できていない場合もあり、残り半分はなぜ出せていないのかを分析し、それに対して必要な対応、たとえば口コミから検索に使えるキーワードをとってきたり、新たにデータを集めて検索エンジンの精度を高めたりなどして、問題を1つずつ潰していきます。
PjMとしての自分の役割は、プロジェクトの目標を達成に導くことです。そのために案件管理や施策立案・技術調査から、実際の開発やレビューにいたるまで、プロジェクトの完遂に必要な作業はすべて行います。DD掲出率はサービスの目標にもなっていますし、直接売上にもつながる部分のため、会社への貢献を肌身をもって感じられ、やりがいがあります。
午後はだいたい会議が入っているため、朝と夕方に作業時間を確保し、コーディングの修正やチームメンバーのコードレビューなどをしています。会議が多いものの、目標はDD掲出率の改善と明確なため、会議で検討の方向性がずれることは少なく、ほかのプロジェクトに比べると調整や意思決定にそこまでの難しさはないかもしれません。
今のプロジェクトはKPIの数値があるので、達成のための課題感を可能な限り精緻に分析し、一番課題感が大きな箇所から着手するようにしています。以前は「このへんを改善したほうがよさそう」とあたりをつけながら進めていたように思いますが、「これをやれば何ポイント上がる」という具体的な数値を意識することで、意思決定や優先順位の判断もしやすくなり、効率的な開発ができて、成果も出しやすくなっています。
改善のために1,000個程度のクエリを集めてきたら、チームメンバーにも見てもらうだけでなく、可能な限り自分でも確認し、一部は上長や意思決定者にも見てもらいます。ただ結果を見るだけではどうしても課題感や難易度の肌感がつかみにくいため、分析に時間をかけ、改善に活かせるようなプロセスを日頃から意識しています。
「Yahoo!検索」のミドルウェアの開発プロジェクトが印象に残っています。もともとアメリカのYahoo! Inc.(日本のヤフーとは資本提携終了)で開発したシステムを使っていましたが、全面的にシステムをリプレイスすることになり、検索の中枢といえるシステムをほぼ1からスクラッチでつくり上げました。
プロジェクトが立ち上がったタイミングで参画しましたが、当時は入社2年目だったので技術も未熟でした。しかもリプレイス前のシステムはかなりレガシーだったので、仕様も難解で解読に時間がかかり、新システムへの置き換えは大変でした。先輩からコードレビューを受けつつ、ひたすらスキルを磨きましたね。リリースまで3年以上かかった大規模プロジェクトで、最終的にはシステムの技術責任者にまでなりました。リリースしたときは本当に感慨深く、チームメンバーとハイタッチで喜びました(笑)
さきほど紹介したミドルウェアのリプレイスプロジェクトを通して、かなり成長できたと思います。システムの仕様も変わっているため、検索結果がビジネスに及ぼす影響も大きいです。「どのように意思決定を行い、プロジェクトを推進するか」「一時的な売り上げの減少についてどこまで考慮するか」など、開発以外の事業的な視点も得られました。途中、検索広告の売上が立たなくなるトラブルが起きて冷や汗をかいたこともありましたが、大変な分、学びも大きかったです。
また、技術責任者やPjMと、エンジニアから立場が変わったことで、ある程度プレッシャーも大きくなりましたが、それによって見る範囲が広がって貢献や影響度合いも大きくなり、成長につながっていると感じます。
社内には検索に関する知識が豊富な人が多く、エンジニアとして学べることが多い環境です。また大量のデータを使って改善に取り組めるのもいいところです。機械学習はモデルはもちろん、やはりデータの量と正確さが大事。データ量が多く、精度の高い開発をしやすいのはエンジニアにとって望ましい環境です。
働き方でいうと、コロナ禍でフルリモートワークが解禁になったのもよかった点です。日本全国どこでも働けるようになったので、結婚を機に東京から大阪へ引っ越しました。コアタイムなしのフルフレックス制なので時間の融通も利きやすく、ワークライフバランスがとれています。
LINEとヤフーは別会社だったので、意思決定のスピードなどにも違いがあったように思います。今後はLINEヤフーとしていかにバランスをとりながら新しい風を起こしていけるのか、私自身が当事者でもありますが、カルチャーの融合も期待しているポイントです。
また、一つの会社になることによって扱えるデータが増えるため、検索エンジンの性能は間違いなく上がるでしょう。LINEにはスポット検索やレビューを書き込めるサービス「LINE PLACE」があります。たとえば「LINE PLACE」の口コミだけに「このお店にはハッピーアワーがあります」という情報があったとき、データ連携によって「Yahoo!検索」でも「ハッピーアワー」のワードで検索したときに該当のお店を掲出できるようになります。これは一例ですが、データが増えることで、サービス向上やユーザーの課題解決をしやすくなるのは楽しみです。
サービスに貢献し、ユーザーの課題解決につながるようなことをしたい思いが根底にあります。自分ができる貢献は、やはりデータを用いた改善や技術的な側面からのアプローチなので、今後も追及する技術の方向性は変わらないでしょう。とはいえ、データに強いこだわりがあるわけではなく、あくまでやりたいのはサービスに貢献することであり、技術はその手段だと考えています。
PjMの立場としては、会社への貢献を最大化することを考えながら成果を出せるチームづくりを加速させていきたいです。チームメンバーにはさまざまな経験を積んでもらえるよう、新たなチャレンジも積極的にサポートしていきたいですね。それが結果的に会社の成長にもつながっていくと思います。
情報検索技術の領域では、ChatGPTをはじめとする生成AIを活用して口コミから情報を抽出するなど、従来のシステムだと難しかったことにも取り組もうとしていく動きがあります。まだ不確定な部分が多いですが、今後の技術の進化が非常に楽しみな分野です。
加えて、会社としても規模が拡大し、新たにいろいろつくり上げていく非常に貴重なタイミング。これまでも各社に優秀な人材が大勢いて、多様な仕事があって、大量のデータがありましたが、一つの会社になることによってさらに多くのプロフェッショナルと仕事ができるようになり、扱う仕事の種類も増え、より多くのデータを使って課題解決ができるようになります。影響を与えられるユーザーの数も激増し、情報技術を扱うエンジニアとしては、このうえなくワクワクする環境だと思います。そんな環境に身を置けるのが一番の魅力ですし、個人的にも今後さまざまな人と一緒に働けるのを心から楽しみにしています。