• X
  • Facebook
  • RSS

ここが面白いよ、リクルートのデータ組織。ユーザーの“背中を押す”ようなレコメンドの設計手法に、ばんくしさんが迫る!

結婚・就職・住まい・飲食・旅行など、さまざまなライフイベントや生活者の日常に関わるサービス運営から多くのデータが集まるリクルートでは、どのようにデータを活用してサービスに生かしているのでしょうか? 自身もデータ組織をマネジメントした経験のある“ばんくし”こと河合俊典さんが、リクルートの機械学習エンジニアにデータ利活用の取り組みについて聞きました。

ばんくしさんが聞いてみた リクルートのデータ組織が取り組む、「背中を押す」レコメンド作り

リクルートには、展開する数多くのサービスを通して日々数百テラバイト以上のユーザーデータが蓄積されています。そうしたデータをもとに、リクルートのデータ組織ではユーザーによりよい選択肢を示す機械学習モデルを作成し、日々改善しています。

今回は、HR(人材)サービスの領域で機械学習エンジニアとして活躍してきた羽鳥冬星さんと、現在は不動産サービスの領域でデータサイエンティストとして働く池上顕真さんに、リクルートのデータ組織や各サービスから得られるデータの特性について語っていただきました。インタビュアーは、さまざまな企業でデータ組織のマネジメントや立ち上げに携わってきた“ばんくし”こと河合俊典さんです。

※この記事は株式会社リクルートによるタイアップ広告です。

📢 記事の最後に Amazonギフトカードプレゼントの告知 があります。ぜひ最後までお読みください。👀✨

全く違う部署から「相談させてほしい」とメッセージが……横展開を通じて深まる技術

ばんくし  お2人のこれまでの仕事で、代表作と言えるような成果はありますか?

羽鳥  HR領域のサービスにおいて企業と求職者のマッチング精度を、求人情報と職務経歴書というテキストデータを使って向上させたことでしょうか。

ばんくし  興味深いですね。具体的にどう解決したのか教えてください。

羽鳥  どちらの情報もテキストで記述されていますが、生のテキストという非構造データを機械学習モデルで埋め込むことは、処理時間やセキュリティの観点でなかなか厳しい状況でした。そこでテキストをまずトークナイズし、レコメンドモデルを作るにあたって有用そうなトークンを「キーワード」という形で1〜3万件抽出しました。

ここまで絞れば、テキストから個人情報を含まない形で情報を抽出でき、それを現実的な時間でかつ安価に処理できます。職務経歴書から「Python」「機械学習」といった関連しそうな用語を取り出してキーワードの集合を作り、同様に求人情報側でもキーワードの集合を作ってどれぐらいマッチしているかを見ていくと、とてもいい特徴量が作れました。

羽鳥さん近影

羽鳥 冬星(はとり・とうせい)さん

株式会社リクルート プロダクト統括本部 プロダクト開発統括室 データ推進室 データテクノロジーユニット アジリティテクノロジー部 アジリティアナリティクスグループ シニアデータサイエンティスト

ばんくし  そういう成功した取り組みは、すぐ他のサービスでも採用されるのですか?

羽鳥  そうですね。まず『リクルートエージェント』で検証を行ったところマッチングの確率がかなり上がったんです。そこから『リクナビNEXT』にも適用したい、ほかのHR領域のサービスにも同じ技術を展開したい、と次々に広がりました。

さらに社内でプレゼンしたところ、全く違う部署から「取り入れたい」「相談させてほしい」とメッセージが来て、今ではさまざまなサービスに展開されています。

池上  うまくいった取り組みは部署を超えてどんどん横展開されていくところが、リクルートらしさの1つかもしれません。

ばんくし  確かに。どうせならそのモデルに自分の名前を付けておけばよかったかもしれないですね(笑)。池上さんの代表作はなんでしょうか?

池上  『SUUMO』に同じ物件ばかりが表示されないように処理するシステム開発を担当しました。その際、精度が良くなるように機械学習を導入したことですね。

不動産のサービスでは、同一の物件が複数の仲介会社によって重複して掲載されることがあります。そこで機械学習を活用して一種の名寄せというか、同じ物件を1つにまとめる機能を実装しました。入稿される物件のデータ数が1日に数百万オーダーになるので、サービス品質のため数時間で名寄せが完了するよう計算量を削減したり並列化したりの工夫が必要でした。

ちなみに、これを実現するには、データを個別に確認しながら地道に「この地域では、住所をこう表記するんだな」と見ていく必要があります。京都や札幌のように独特な住所がありますから。

ばんくし  沖縄にもありますね。住所の表記はどのサービスでも課題になります。しかも入力されたデータが一定ではなかったり、同じ住所でも建物の階数や部屋が違って「別の物件」ということもあったりしますよね。

池上  その通りです。「一致」とは何か? という定義を考えるところから作りました。

池上さん近影

池上 顕真(いけがみ・けんしん)さん

株式会社リクルート プロダクト統括本部 プロダクト開発統括室 データ推進室 データテクノロジーユニット データサイエンス・機械学習エンジニアリング部 機械学習エンジニアリンググループ マネジャー

仕事と「やりたいこと」を根気強く結びつける、リクルート流の人材育成術

ばんくし  羽鳥さんの「マッチングにおけるテキスト情報による精度向上」についてあらためて聞きたいのですが、処理の高速化まではどのようなプロセスで解決したんですか?

羽鳥  やはり生のテキストから情報を抽出するのが大変だったので、キーワードを導入することで高精度かつ現実的な時間で処理できるようになったことが大きな成果ですね。さらに、社内の競技プログラミングにすごく強い人から教えてもらったアルゴリズムを適用したところ、レイテンシがほとんど問題にならないほど速く処理できるようになりました。

僕はもともとKaggleばかりやっていてこの手の高速化アルゴリズムはあまり知らなかったのですが、どんな技術でも「強い人」が必ず社内にいて、そうした人たちから解決策を教えてもらえるのはリクルートのすごくいいところだと感じます。

ばんくし  社内勉強会のような場もあるんでしょうか?

羽鳥  そうですね。実は今日も京大の佐藤竜馬先生が書かれた『深層ニューラルネットワークの高速化』の輪読会をやろうという話がちょうど立ち上がったところです。

ばんくし  あれはいい本ですね。

池上  業務の中でもサービスごとに分析のレビュー会があり、サービスをまたいで「こんな例があるよ」とアドバイスやノウハウを教えてもらうこともありますね。

ばんくし  話を伺っていると、いろいろなところで知識が反響しあってコラボレーションを生み、組み合わさることで大きなインパクトをもたらしているように感じます。その勉強のモチベーションはどこから来るのでしょう。みんな「成果」を出したいからでしょうか?

池上  リクルートではやりたいことを積極的に主張するボトムアップの文化があって、逆に1年目から「君はどうしたいの?」って上司にすごく聞かれるんですよ。

ばんくし  その問いかけは有名ですね(笑)。

河合さん近影

ばんくし / 河合 俊典(かわい しゅんすけ)さん

Sansan、Yahoo! JAPAN、エムスリー、CADDiを経て、2023年5月よりエムスリー株式会社3代目VPoEに就任。業務の傍ら、趣味開発チームBolder’sの企画、運営、開発者としての参加や、XGBoostやLightGBMなど機械学習関連OSSのRust wrapperメンテナ等の活動を行っている。

池上  なので「これを学びたいです」と言いやすい文化もありますし、その土壌があるからこそスキルアップに貪欲な人が多いように思います。

ばんくし  やりたいことをやり、周囲の人たちと一緒になって知識を吸収して、その結果として成果が上がるというシステムがあるのはいいと思います。一方で「やりたいこと」とキャリアとのバランスはどのように取っているのでしょうか?

池上  そこは上司の腕の見せどころですね。メンバーと半期ごとに「Will-Can-Must」シート*1をもとに会話して、仕事と「やりたいこと」を結びつけています。リクルートはもともと人材事業から始まった会社なので、今も人材育成にものすごく労力を割いているんです。特に、メンバーそれぞれの育成計画を策定することにかなり時間をかけますね。

また、データ組織の規模が大きいので、キャリアパスも多様です。データサイエンティストからマネジャーへというコースもあれば、スペシャリストとしてステップアップしていく人もいます。技術戦略を立てるテックリードの方向に進んだり、PMに興味を持つ人もいたり、法務部に異動してデータへの知見と法律的な観点の両面からプロダクトをレビューする側に回ったりする人もいました。

ばんくし  データサイエンティストから法務への異動は面白い。技術者としてやりたいことと、事業としてやるべきことがかみ合うのは、エンジニアにとって幸せな環境ですね。

池上  うまくいきそうなときにメンバーをアサインするスピードが早いのも特徴で、レンタル移籍的に「このメンバーの業務ウェイトを一時的にこっちのプロジェクトに回しましょう」というリソースの調整も、本人と合意の上で柔軟に行っています。最初はレンタル移籍でもそのうち本人が「このサービスが面白い」となったら、改めて相談の上でそのまま異動になることもあります。

「一生の一度の買い物」をどのように機械学習するのか

ばんくし  リクルートのサービスならではのデータの面白さはどんなところにあるのでしょう?

池上  量の多さと幅の広さですね。サービスごとに1日数百テラバイトという規模のデータが集まるので、「こういった行動傾向がある」という利用者群を抽出できます。そこから、「こういうモデルにこういう特徴量を入れるといいのではないか」と精度の高い仮説を立てることもできます。

羽鳥  量が多いと処理に時間がかかるので、工夫のしがいもありますね。データのサイズが小さければ、どんな書き方をしてもある程度は処理を回せますが、大きくなるとデータの特性に合わせた最適な処理を考える必要があります。

頑張ったときにレバレッジがとんでもなく効くのは、大きなサービスがありデータ量が多い会社ならではだと思います。細かなテクニックだけで処理が何百倍も高速化されることがありますから。

ばんくし  最近は技術も成熟して、だからこそ技術でレバレッジを効かせることが難しくなっていますが、リクルートにはそのデータ量ゆえにレバレッジポイントがあるということなんですね。

ばんくし  リクルートのサービスから得られるデータで興味深いのは、その量だけでなく暮らしのデータ、もっと言えば人生に関わるデータを持っていることですね。

私もYahoo! JAPANという大きなサービスにいた頃、Web検索やeコマースといったインターネット上の行動に関するデータを扱っていました。それはそれで興味深かったのですが、リクルートでは人間の一生というと大げさかもしれませんが、結婚や転職や転居といったライフイベントに関わるデータがあるわけですよね。

池上  そうですね。私は住まいだけでなく人材系のデータを見ることもあるのですが、ユーザーの特徴や傾向が全然違っていて興味深いなと感じることがあります。

一般的に不動産はやはり「一生に一度の買い物」なので、2回・3回と購入するケースはまれです。ですから機械学習の特徴量に「何度目の購入か」を入れることもあまりありません。ですが、転職はもうちょっと頻度が高いですね。

ばんくし  不動産は常にコールドスタートですが、人材系だと「前回の転職と同じ傾向」が見えるはずですね。

羽鳥  人材は人材で意思決定までのリードタイムが長いという特徴もあります。例えばECサイトで商品を閲覧してから購入するまでは長くて数時間だと思いますが、人材サービスではレコメンド情報を見て、応募して、書類選考して、面接して、内定をもらうまでに数カ月から半年といった期間がかかります。その上、各地点で行動の主体が切り替わっていきます。

そうしたプロセスの長い行動の全容をレコメンドの時点でうまく予測することは難しく、だからこそやりがいがあると思います。

ばんくし  ECだとシンプルに以前と似たものを購入したいケースも多いので、レコメンドに機械学習を選ばない選択肢もあり得ます。一方で、意思決定までの距離が遠く、難しい部類の分野には、機械学習の価値があると感じる瞬間がありますね。

社会の変化を機敏に読み取るデータサイエンティストの仕事

ばんくし  ユーザーの意思決定の距離が遠く、改善のための良い打ち手が浮かばなかった時は、どういった対応をしていますか?

池上  統計的な数字だけを見ていても分析の難しい部分がありますし、そもそもデータの量が多過ぎて網羅的に全部を試すこともできません。ビジネスロジックの制約もあります。

そのため、1つのサンプルをもとに「n=1」で仮説を立てることもよくありますね。内製のデータ可視化ツールを見ながら、みんなで「こういう特徴量はどうだろう」とアイデアを出していきます。100事例くらい見て人間が学習しながらモデルに落とし込む感じです。

ばんくし  人間AIですね。先ほど話に出た分析レビューでは、そういった仮説にもお互い意見を出し合ったりするのですか?

池上  レビュー会に持って行ったら「それ、別のサービスでやったけどうまくいかなかったよ」「え?」なんてこともありますね。それはそれで新たな気付きですし、実はデータの差やサービスの特徴による違いからうまくいくこともあります。面白いですね。

羽鳥  やはり日々勉強ですね。モデルを作ることはユーザー理解につながっていますが、この先もユーザーの行動を完全に理解することはできないでしょう。

池上  社内では「全ての人がロジカルに、合理的に考える」という前提に立ったアイデアがよく出てきますが、全部が全部そうではありませんよね。

例えば部屋を借りる場合に、私なら家賃やらいろいろな条件を星取表に書き出して「よし、ここだ」と決めるんですけど、実際は『SUUMO』にランディングして物件を1つ2つ見ただけで決められる人もいらっしゃいます。ネットは入口として使うだけで、不動産屋さんに相談しながら決めたい人も多いですね。

ばんくし  そんなときは「数件だけ見て決める人」に対するモデルと「そうではない人」向けのモデルを、それぞれ特徴量をうまく作ってモデリングしたりするのですか?

池上  過去に『SUUMO』のアプリで、ユーザーの検討深度に応じて表示するコンテンツを出し分けるという取り組みをしたことがあります。いろいろな情報を見たい検討初期の人には物件の量を多めに出し、検討がある程度進んで理想が決まってきた中期の人には「おすすめ」をピンポイントで出したり、お気に入りの物件をたくさん入れてくれた人にはリテンションしたりという感じです。

羽鳥  セグメントごとに分けていくといいモデルになると思うんですが、今度は運用が大変になってしまいます。ですので、今はどちらかというとグローバルなモデルを作る方向を目指しているのでしょうかね。

池上  2〜3年のスパンで、1つにしておく方がよかった、いややっぱり分ける方がよかったという行ったり来たりがあるように思います。ただし「前にだめだったから、やらなくてもいい」とはなりませんね。ビジネスの状況も2〜3年で変わっていくものですから。

ばんくし  ビジネスの状況もですが、ユーザーの行動も変化しますね。コロナ禍やそれ以降のタイミングで行動は変わりませんでしたか?

池上  おそらくどのサービスもそうだったと思いますが、コロナ禍でのモデルのドリフト(精度の低下)は想像をはるかに超えるものでした。「モデルの精度が悪くなったけれど何でだろう? 傾向が全然変わっているじゃないか」って。

羽鳥  あの時期はあまりに人々の動向が変わったのでモデルの前提が覆り、社内の多くのデータサイエンティストが阿鼻叫喚していた記憶があります。

ただ、機械学習モデルがドリフトしているかどうかをモニタリングして、検知することはできます。コロナ禍でも、求人動向が変わったのでそれに合わせて特徴量の傾向を変えるなどの手を打っていました。データを常日頃見て、何が起こっているかを観察してエンハンスしています。

ばんくし  社内には「これが活用できたらもっと面白いのに」というデータもまだ眠っているのでしょうか?

羽鳥  たくさんあります。1日に数百テラバイト以上のデータがETLされてきますから。

ばんくし  社会の変化に合わせてモデルを改善できるのは機械学習エンジニアの仕事の面白さですよね。経済の状況や人間の行動を見ているわけで、その営みはいわば社会学のようなものかもしれません。

どんな機械学習モデルがユーザーの「背中を押す」のか

ばんくし  リクルートの事業には、お2人が携わっている仕事や住まいなどの「ライフイベント」に関するものと、美容院の予約のように日常的に繰り返される「ライフスタイル」に関するものがありますね。発生頻度の低いライフイベントを機械学習で予測することは、ライフスタイル領域より難しいように思えます。

私はeコマースやニュースサイトのレコメンドのように、短いスパンで1日に何度も行われるイベントを扱う経験が多かったのですが、やはりスパンが長くなるほど提供価値のばらつきが大きくなるような印象がありました。

池上  確かに、eコマースやライフスタイル事業のように、短いスパンで何度も起こる出来事の方がレコメンドには向いているだろうと思います。

そういう意味でライフイベント系のレコメンドについて、最近は「解釈性や説明性、納得感をユーザーにどう提供できるか」をよく考えます。一生に一度の買い物でいきなり「あなたにはこの家がぴったりです」と言われても「なんで?」となりますよね。その時は併せて「ぴったりである理由」を出してあげるといいのではないかと考えています。

羽鳥  一生に一度のイベントであるほど説明してほしくなりますよね。LLMの登場によって、レコメンドや広告に説明性を加えることもやりやすくなるように思います。

ばんくし  家を買うようなイベントの場合、コールドスタートで何も分からない状態ですから、納得感を持っていただくことは重要ですし、取り組みがいのあるタスクですね。

ばんくし  これまでの機械学習では「何でこうなったの?」とユーザーに問われても「モデルがそう言っているから」以上のことがうまく答えられませんでした。特に検索のようなサービスはユーザー行動のスパンが短いこともあり、ある行動から次の行動へとつながる理由がうまく紐付くことはあまりありませんが、ライフイベントではそうしたつながりも見いだせそうですね。

1つのアイデアですが、不動産のレコメンドで別のライフイベントのデータから説明性を高めることはできそうです。例えば、結婚式のデータから「思い出の挙式場までバスで10分」だとか「列席した親戚の家に近い」とか。僕はそういうのに弱いので、すごくうれしいですね。

羽鳥  なるほど面白いですね。そういった「ユーザーの背中を押してあげる何か」があれば決断できる、という側面は確かにあるかもしれません。

ただ、一方で気をつけたいのは、異なるサービスのデータを組み合わせることで、ユーザーが思ってもみなかった形で情報がつながってしまうことです。便利になる反面、ユーザーにとっては「知らないうちにこんなデータまで使われてるのか」と感じられることもありますので。当社でそうしたデータのクロスユースの仕組みを取り入れるときは、社内の標準審査プロセスを通し、パーソナルデータ指針をもとにプライバシー観点からも問題がないかを確認しています*2

ばんくし  世の中のほとんどのレコメンドは「候補をたくさん出して、最後に人が選ぶ」ものですが、ライフイベントでは候補がそもそも少なく、全ての希望条件を満たすものに出会うのはなかなか難しい。そんなときに「あなたにぴったりである理由」という説明を示すことができれば、決断を後押しして納得感のある選択ができるようになるかもしれませんね。

── みなさん興味深いお話をありがとうございました。

▶️ 記事の最後に「Amazonギフトカードプレゼントの告知」があります。ぜひ最後までお読みください。

📃 リクルートではデータエンジニアを積極募集中!📊

データ推進室によるデータ利活用の取り組みやリクルートに興味を持っていただけたなら、ぜひ技術ブログや採用サイトをご覧ください。

Recruit Data Blog

Recruit Data Blog

データ推進室で働くメンバーのさまざまな取り組みを掲載しています。

データ推進室採用サイト

データ推進室採用サイト

仕事の内容、働き方などさまざまな情報を掲載しています。

社員と直接話せるカジュアル面談にご興味がある方は登録フォームへ!

最新情報は 株式会社リクルート データ推進室 公式X をフォロー! 技術イベントは 株式会社リクルート 公式connpass からご参加ください。

🎁 Amazonギフトカード1,000円分が100名に当たる! リクルートに関するアンケート 📝

本記事の公開にあわせて、はてなによるプレゼントキャンペーンも実施します。

下記に掲載する「リクルートに関するアンケート」に回答いただいた方のうち100名様に、1,000円分のAmazonギフトカードをプレゼントいたします。アンケートは必要回答数に達したところで終了しますので、お早めにご回答ください。

  • Amazonでは本キャンペーンについての問い合わせを受けておりません。
  • Amazon.co.jpは、本キャンペーンのスポンサーではありません(株式会社はてなによるキャンペーンです)。
  • Amazon、Amazon.co.jpおよびそのロゴは、Amazon.com, Inc.またはその関連会社の商標です。

🔗 関連記事:リクルートのデータエンジニアの活動をチェック👇

はてなニュースでは、リクルートのデータ組織・データエンジニアに取材したタイアップ広告を継続的に掲載しています。興味のある取り組みをお読みください! 👀✨

hatenanews.com

hatenanews.com

hatenanews.com

📢 データ推進室以外の部署や旧リクルート各事業会社のタイアップ広告もぜひチェック! 気になる記事を見つけてださい。🖱️🔍

リクルートカテゴリーの記事一覧

リクルートの取り組みを紹介した記事一覧

テクノロジーの力でさらなる価値を生み出すリクルートの取り組みにフォーカスした記事シリーズです。

[タイアップ広告] 企画・制作:はてな
取材・構成:高橋 睦美
撮影:関口 佳代

*1:参照:リクルートマネジメントソリューションズ人材育成・組織開発 お役立ち情報・用語集「Will Can Mustとは? フレームワークを活用するメリットや目標設定方法を解説

*2:参照:株式会社リクルート プライバシーセンター「パーソナルデータのサービス横断での活用(クロスユース)