Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥

チャットボットを用いた新たな宿探し体験の提案 / DEIM2022_recruit

チャットボットを用いた新たな宿探し体験の提案 / DEIM2022_recruit

2022/2/28_第14回データ工学と情報マネジメントに関するフォーラム(DEIM2022)にて、薬師寺と田口が発表した資料です

Recruit

June 06, 2022
Tweet

More Decks by Recruit

Other Decks in Technology

Transcript

  1. 2 Copyright © Recruit Co., Ltd. All Rights Reserved. 本日のアジェンダ


    1. 会社・サービス概要
 2. 取組紹介
 a. 検索条件の代替提案 
 b. 宿のおすすめポイントのアピール 
 c. 宿に対する質疑応答 
 3. おわりに

  2. 3 Copyright © Recruit Co., Ltd. All Rights Reserved. 自己紹介


    • 氏名 :田口 正一
 • 所属 :データ推進室 データテクノロジーラボ部 
 • 略歴:2016年リクルート入社
 • 主な業務内容:
 ◦ 技術シーズからPoCに繋げる活動全般
 ▪ 起案 - 環境構築 - コーディング - 提案 - PoC
 • 本内容の担当機能
 ◦ 検索条件の代替提案

  3. 4 Copyright © Recruit Co., Ltd. All Rights Reserved. 自己紹介


    • 氏名 :薬師寺 政和
 • 所属 :データ推進室 データテクノロジーラボ部 
 • 略歴:2016年リクルート入社
 • 主な業務内容:
 ◦ データソリューションのR&D、ビジネス適用
 ◦ リコメンド開発
 • 本内容の担当機能
 ◦ 宿のおすすめポイントのアピール
 ◦ 宿に対する質疑応答

  4. 7 Copyright © Recruit Co., Ltd. All Rights Reserved. 1.

    会社概要
 株式会社リクルート 

  5. 9 Copyright © Recruit Co., Ltd. All Rights Reserved. •

    エリア等必要な条件を指定、宿をオンラインで検索/予約できるサービス 
 • 宿だけでなく移動手段、ゴルフ等体験の予約も可能 
 1. じゃらん - サービス概要

  6. 10 Copyright © Recruit Co., Ltd. All Rights Reserved. 1.

    じゃらんボット - サービス概要
 • じゃらんnet上で、チャット形式で要件確認、商品提案を行うチャットボット 
 • 旅行代理店における窓口予約をイメージしている 
 • 機能・接客フローは代理店窓口経験者のチャット接客を元に設計 
 10 JLN内のバナー等から開始 旅行商品の要件をチャットで確認 旅行商品を提案
  7. 11 Copyright © Recruit Co., Ltd. All Rights Reserved. 1.

    旅行代理店窓口を利用する/しない理由
 • 宿泊予約を検討する際に、旅行代理店の高い接客力を理由に窓口を利用するカスタマがいる。 
 • 一方で地理的・時間的な制約で店舗での相談をしない層もいる。 
 • ヒトのような接客をオンラインで24時間365日提供することで、上記制約に縛られず窓口利用のような 体験を創出できる可能性がある 
 (株)JTB 総合研究所「新しい技術やサービスの広がりとライフスタイルに関する調査」 
 https://www.tourism.jp/tourism-database/survey/2018/06/technology-lifestyle/ 

  8. 12 Copyright © Recruit Co., Ltd. All Rights Reserved. 1.

    チャットボット全体観と今回の内容
 今度のお休みで温泉旅行 に行きたい! 
 予算的には〇〇円くらいで 考えよう
 お部屋に温泉がつい てたら気楽かも。 
 送迎してくれるか な?
 ゆったりできる宿 がいいな
 夕食付きもいいけど、評判 はどうかな? 
 子供連れでも大丈夫か な?
 サウナはどんな 感じかな?
 日程やエリアなどの要 望のヒアリング 
 必要に応じて条件の 緩和・変更
 質問応答による疑問 解消
 気になるポイントにつ いてのアピール 
 感覚的な条件での検 索
 その他の機能 
 宿泊時に検討する項目 
 実現に必要な機能 
 本内容のスコープ 
 • 旅行の宿泊予約の検討においてヒトのような接客を実現するには多岐にわたる機能が必要である。 
 • 本日は①検索条件の代替提案、②宿のおすすめポイントのアピール、③宿に対する質疑応答の3つの機能について 絞って紹介いたします。
 宿がヒットしやすい別の条 件で再検索します! 
 露天風呂が評判でこんなク チコミもあります! 
 無料の送迎バスがありま す!
 ①検索条件の代替提案 
 ②宿のおすすめポイントのアピール 
 ③宿に対する質疑応答 

  9. 13 Copyright © Recruit Co., Ltd. All Rights Reserved. 本日のアジェンダ


    1. 会社概要
 2. 取組紹介
 a. 検索条件の代替提案 
 b. 宿のおすすめポイントのアピール 
 c. 宿に対する質疑応答 
 3. おわりに

  10. 14 Copyright © Recruit Co., Ltd. All Rights Reserved. 温泉

    駐車場 2.a 検索条件の代替提案
 希望通りにならなくても、なるべく希望 をかなえてくれる提案が欲しい 
 条件(単語)特徴量から重要度を 
 推定する問題として解く 
 指定した条件での検索結果が0件の場合は自動 で条件緩和、新たな条件で宿を提案 
 - 指定した条件で宿が1つも見つからなかった場合、自動で条件を変更して再提案を行う 
 - 宿が見つかるよう&なるべくカスタマーの希望に沿うように条件を変更/削除する 
 ご案内できる宿がな かったので、条件 A,B,C,Eではいかが でしょうか? 
 
 〇〇というお宿でし たらご案内可能で す
 条件A,B,C,Dでお宿 をお探しですね。 
 Fine Tuned BERT + α f(x1) f(x2) f(x3) f(x4) f(x5) 朝食付 xxx yyy lightGBM .g(f(x1)) .g(f(x2)) .g(f(x3)) .g(f(x4)) .g(f(x5)) 重要度順に並び替え、低い 順に変更候補とする 
 指定された条件群 
 
 ホテル
 

  11. 15 Copyright © Recruit Co., Ltd. All Rights Reserved. >〇〇という場所で、A,B,Cという条件で宿を探し

    て欲しい
 >>A,Bがあるとご案内できる宿がなくなっててしま うので、F,G,Hという条件に変更してもよろしいで しょうか?
 >であればVもお願いしたい
 >>かしこまりました
 2.a 検索条件の代替提案 - データ
 - 過去オペレーターが実際に対応した内容から条件に該当する部分を抽出、人力で重要度を振る 
 - ユーザにとって重要度の高い条件を特定できるようにした 
 >〇〇という場所で、A,B,Cという条件で宿を探し て欲しい
 >>他に条件はございますか?
 > Dも欲しい
 >>DがあるならEはどうでしょう
 > それもお願いします
 
 実際の発話例
 条件部分抽出
 A, B, C, D, E
 C, F, G, V, H
 A: 1, B: 2, C: 1, D: 3, E: 3
 採点
 C:1 , F:2 , G:3, V:3 , H:3
  12. 16 Copyright © Recruit Co., Ltd. All Rights Reserved. 2.a

    検索条件の代替提案 - モデル
 特徴量群
 bert特徴量
 tf-idf特徴量
 発話内における条件登場 順
 スコア
 条件群
 源泉掛け流し
 部屋で夕食
 コンビニ近く
 部屋風呂
 朝夕食付き
 2.2
 1.5
 1.7
 1.8
 2.0
 - 旅行領域で学習済みのpre-trained bert, tf-idf, 条件の登場順(最初の方が優先度が高い条件であ るという仮説に基づく)で特徴量を作成 
 - 上記3種の特徴量を結合、lightGBMで回帰問題として解く 
 lightGBM

  13. 17 Copyright © Recruit Co., Ltd. All Rights Reserved. -

    指定された条件で宿が見つからなかった際に本ロジックが起動 
 - 各条件の優先度スコアを算出し、低い順に変更候補とする 
 - 変更後条件でも見つからなければ条件を削除する 
 必須要件なので計算対象 外
 2.a 検索条件の代替提案 - 実際の動き(例)
 スコア
 指定された条件群
 源泉掛け流し
 日光(必須要件)
 大人2名(必須要件)
 部屋風呂
 朝夕食付き
 2.2
 必須要件なので計算対象 外
 1.8
 2.0
 条件変更優先度の 決定
 1: 部屋風呂
 2: 朝夕食付き
 3: 源泉掛け流し
 bert+αを
 lightGBMに投入
 変更内容案の決定(例)
 源泉掛け 流し
 日光(必 須要件)
 大人2名 (必須要 件)
 露天風呂
 朝夕食付 き
 ①
 源泉掛け 流し
 日光(必 須要件)
 大人2名 (必須要 件)
 部屋風呂
 夕食付き
 ②
 源泉掛け 流し
 日光(必 須要件)
 大人2名 (必須要 件)
 ③
 朝夕食付 き
 削除

  14. 18 Copyright © Recruit Co., Ltd. All Rights Reserved. ①必須要件なので計算対

    象外
 2.a 検索条件の代替提案 - ルールベースの採用
 - 予想外の挙動が許容できない箇所にはルールベースを採用 
 - ①旅行における必須(みなし)要件は変更の対象外 
 - ②変更対象はモデルで決めるが、変更内容はオペレーターで定める 
 - ③なるべく要望に沿うため最初は変更、無理なら削除というルールを追加し、信頼性を担保 
 スコア
 指定された条件群
 源泉掛け流し
 日光(①必須要件)
 大人2名(①必須要件)
 部屋風呂
 朝夕食付き
 2.2
 ①必須要件なので計算対 象外
 1.8
 2.0
 条件変更優先度の 決定
 1: 部屋風呂
 2: 朝夕食付き
 3: 源泉掛け流し
 bert+αを
 lightGBMに投入
 変更内容案の決定(例)
 源泉掛け 流し
 日光(必 須要件)
 大人2名 (必須要 件)
 ②露天風 呂
 朝夕食付 き
 ①
 源泉掛け 流し
 日光(必 須要件)
 大人2名 (必須要 件)
 部屋風呂
 ②夕食付 き
 ②
 源泉掛け 流し
 日光(必 須要件)
 大人2名 (必須要 件)
 ③
 朝夕食付 き
 ③削除

  15. • 全てをモデルだけで解決することはできない • 生かせる業務知識があるなら混ぜ込むのが良い ◦ 条件を外すことで旅行が成立しなくなる可能性があるものは削除対象外 ▪ (子ども)人数、日付、バリアフリー関連、ペット、目的地等 ◦ 条件変更内容はオペレーターさん用マニュアルに準ずる

    ▪ ダブルルーム→プール有りとかに変更されても困る ▪ 妥当な変更先は多数あるわけではないため、十分記述可能 ◦ 組み合わせで宿数が相当絞られる条件については優先して削除を行う ▪ シティエリア&客室露天風呂 ▪ 温泉エリア&プール付き宿 ▪ 厳しい必須要件が存在する場合(バリアフリー等)は削除を多くする 取組紹介 - 代替提案 - ルールベースモデル
  16. 20 Copyright © Recruit Co., Ltd. All Rights Reserved. 2.a

    代替提案機能のサンプル
 オペレーターよりも早く代替案の提案が可能(数秒程度) 
 
 ホテル
 

  17. 21 Copyright © Recruit Co., Ltd. All Rights Reserved. 2.a

    これから
 • 条件削除時のコミュニケーションの取り方 ◦ なぜ削除したのか、なぜこの方がいいのか、を納得してもらいたい • 他条件によって厳しくなる条件の扱い ◦ 温泉地×ビーチ近くはかなり両立しづらい(=検索結果激減の原因) • 単独で厳しい条件が登場した場合の挙動の改善 ◦ ペット可/車いす対応は外せない要件 ◦ 上記対応している宿数は決して多くない • 選択肢の提示 ◦ どの条件を削除すると何件在庫があるかを提示、変更/削除する条件を選びやすくしたい ◦ オペレーターでも判断に迷うケースがあるため、カスタマーが選択できる形にしたい ▪ 必須/削除対象についてはオペレーター間で共通認識がある ▪ それ以外の条件は与えられた前提だけでは判断しきれないシーンも多い • オペレーターでも意見が割れるとのこと
  18. 22 Copyright © Recruit Co., Ltd. All Rights Reserved. 本日のアジェンダ


    1. 会社概要
 2. 取組紹介
 a. 検索条件の代替提案 
 b. 宿のおすすめポイントのアピール 
 c. 宿に対する質疑応答 
 3. おわりに

  19. 23 Copyright © Recruit Co., Ltd. All Rights Reserved. 2.b

    宿のおすすめポイントのアピール
 宿を提示するタイミングで、クチコミから検索条件に該当する&高評価ポイントを提示することで予約時の 納得感につなげることを目指した。 
 温泉が有名でお部 屋にも温泉がありま す!
 送迎もあります! 
 ご飯がおい しくて評判 です!
 和室で落ち着いて 過ごすことができま す!
 子供連れ でも安心 です!
 観光地までのアクセ スも良好です! 
 人間が自然と行う物事の魅力を伝え る機能を再現・自動化したい 
 単語ごとに「該当箇所かつポジティブか」の二値分 類を行う系列ラベリングとして解く 
 家族 旅行 で 宿泊 し まし た 。刺身 が 新鮮 で かなり 美味し い ! スタッフ の 心温まる 接客 姿勢 が 素晴らし か っ た で す 。部屋 に お 風呂 が つい て います ! 子連れ の 方 も 多く 気楽 でした 。 過度 に 干渉 さ れる こと も なく、 気持ち の 良 い 接客 でした ! 
 
 美味しい ! スタッフ 接客 の 心温まる 0 1 1 1 1 Fine TuningしたBERT 0 クチコミから高評価ポイントを抽出しお すすめポイントとして提示する 

  20. 24 Copyright © Recruit Co., Ltd. All Rights Reserved. 2.b

    宿のおすすめポイントのアピール:データ概要
 • スパン抽出のタスクに用いられるSQuADデータの形式を参考に、クチコミの特性に対応したアウト プットができるように改良。 
 • クチコミの書き方は人により異なり、文節が句点とは限らなかったり一つの文中に複数該当箇所が 存在するケースがある。 
 家族 旅行 で 宿泊 し まし た 。刺身 が 新鮮 で かなり 美 味しい ! スタッフ の 心温まる 接客 姿勢 が 素晴らし か っ た です 。部屋 に お 風呂 が つい て います ! 子連れ の 方 も 多く 気楽 でした 。過度 に 干渉 さ れる こと も な く、 気持ち の 良い 接客 でした !
 駅 も すぐ な ので アクセス は 抜群 です ね ★ 
 部屋 が 広く て 私 的 に は 大 満足 です ★
 とても のんびり 過ごす こと が でき 、 従業 員 の 方 も 親 切 で 大 満足 な 旅行 と なり まし た ♪
 こちら の 朝食 は きちんと 調理 さ れ た 煮物 など 用意 さ れ て い て 、 特に 朝 は 和食 派 で しっかり 食べ たい 方 に オススメ です !
 contexts
 question
 「接客」に関する
 高評価箇所はどこか?
 「アクセス」に関する
 高評価箇所はどこか?
 answers
 スタッフ の 心温まる 接客 姿勢 が 素晴らし か っ た です 。
 過度 に 干渉 さ れる こと も なく、 気持ち の 良い 接客 で した !
 駅 も すぐ な ので アクセス は 抜群 です ね ★ 

  21. 25 Copyright © Recruit Co., Ltd. All Rights Reserved. 全て

    、 2.b 宿のおすすめポイントのアピール:モデル概要
 • 旅行領域に特化したデータで学習した独自の学習済みBERTをファインチューニングすることでモデ ル学習を実施。
 • 機械学習モデルを用いることで、継続的に増え続けるクチコミに対しても追加のアノテーションなしで アピール文を生成することが可能。 
 旅行領域に特化したデータで学習したPreTrained BERT 
 サービス は 勿論 において 刺身 が 新鮮 …
 1
 1
 接客 1
 1
 1
 1
 0
 0
 0
 question
 contexts
 <該当箇所かつ高評価>であ るかの二値分類
 「サービスは勿論、全てにおいて満足!」 
 満足 1
 ! 1
 …
 answers

  22. 26 Copyright © Recruit Co., Ltd. All Rights Reserved. 2.b

    宿のおすすめポイントのアピール:サンプル
 条件として指定している項目について、ポジティブな箇所をアピール 

  23. 27 Copyright © Recruit Co., Ltd. All Rights Reserved. 本日のアジェンダ


    1. 会社概要
 2. 取組紹介
 a. 検索条件の代替提案 
 b. 宿のおすすめポイントのアピール 
 c. 宿に対する質疑応答 
 3. おわりに

  24. 28 Copyright © Recruit Co., Ltd. All Rights Reserved. 2.c

    宿に対する質疑応答
 宿を予約する際に確認したいポイントについて、同じチャットインターフェース上で一問一答形式で質問応 答を行う。
 チェックインは何時 までできますか? 
 送迎はしてくれます か?
 ペットと泊ま れますか? 
 最寄り駅はどこです か?
 駐車場あ ります か?
 周辺にご飯食べる ところありますか? 
 宿を予約する際に、気軽に問い合せ がしたい
 入力された質問文をテキスト分類によ り、どんな質問かを判別して回答 
 質問応答API
 入力されたテキストが質問かどうかを判別してする ことで、検索条件などの入力があったとしても対応 ができるように設計 
 質問判定
 モデル
 送迎してくれま すか?
 質問分類
 モデル
 最寄り駅まで無 料の送迎バスが あります 
 発話は 質問
 Yes
 分類した結果に基づき適切 な回答を返却

  25. 29 Copyright © Recruit Co., Ltd. All Rights Reserved. 2.c

    QA機能を設計する際のポイント
 QA機能を設計する際に下記ポイントを考慮して、機能設計を実施した。 
 各宿泊施設ごとに個別の回答 を用意する必要がある。 
 データベースで管理されていな い感覚的な質問に対しても回 答を行いたい。 例)「子供連れ でも大丈夫ですか?」など 
 入力文に対して複数の分類モ デルが必要であった。
 宿泊施設の情報を管理している DBを参照し、回答を自動で生 成。
 クチコミを解析し、入力文につい て言及している類似センテンスの 抽出および事実性判定を行うモ ジュールを利用。
 分類モデル自体は同じものを利 用し、各モデルごとにデータおよ び出力を変えることで開発および 管理コストが最小限に抑える。 
 質問分類
 モデル
 質問判定
 モデル
 YesNo判別 モデル
 本モジュールではYes/Noで回答できる 質問のみ対応している。 
 入力された文章がどんな質問かを判別するための 
 テキスト分類モデル 
 全て同じインターフェースで完結させるために、 
 入力が質問なのか要望を入力するかを判別するためのモデル 
 感覚的な質問へ回答するためのモジュール用に、 
 質問がYes/Noで回答できる質問かを判別するモデル。 
 データベースを参照することで、全宿泊 施設に対して回答を自動で生成 

  26. 30 Copyright © Recruit Co., Ltd. All Rights Reserved. 2.c

    QA機能の回答サンプル
 予約を検討してる段階で同じインターフェース上で気になるポイントについて質問応答 

  27. 31 Copyright © Recruit Co., Ltd. All Rights Reserved. 本日のアジェンダ


    1. 会社概要
 2. 取組紹介
 a. 検索条件の代替提案 
 b. 宿のおすすめポイントのアピール 
 c. 宿に対する質疑応答 
 3. おわりに

  28. 32 Copyright © Recruit Co., Ltd. All Rights Reserved. まとめ:チャットボット全体観と今回の内容


    今度のお休みで温泉旅行 に行きたい! 
 予算的には〇〇円くらいで 考えよう
 お部屋に温泉がつい てたら気楽かも。 
 送迎してくれるか な?
 ゆったりできる宿 がいいな
 夕食付きもいいけど、評判 はどうかな? 
 子供連れでも大丈夫か な?
 サウナはどんな 感じかな?
 日程やエリアなどの要 望のヒアリング 
 必要に応じて条件の 緩和・変更
 質問応答による疑問 解消
 気になるポイントにつ いてのアピール 
 感覚的な条件での検 索
 その他の機能 
 宿泊時に検討する項目 
 実現に必要な機能 
 本内容のスコープ 
 • 旅行の宿泊予約の検討においてヒトのような接客を実現するには多岐にわたる機能が必要である。 
 • 本日は①検索条件の代替提案、②宿のおすすめポイントのアピール、③宿に対する質疑応答の3つの機能について 絞って紹介いたします。
 宿がヒットしやすい別の条 件で再検索します! 
 露天風呂が評判でこんなク チコミもあります! 
 無料の送迎バスがありま す!
 ①検索条件の代替提案 
 ②宿のおすすめポイントのアピール 
 ③宿に対する質疑応答 
 再掲

  29. 33 Copyright © Recruit Co., Ltd. All Rights Reserved. おわりに


    データテクノロジーラボ部では本チャットボットに限らず、
 カスタマ・クライアントの体験を向上するような新しいUI/UXを創造し
 リクルートひいては世の中の新しいスタンダードをつくっていくこと
 を目指しています。

  30. 34 Copyright © Recruit Co., Ltd. All Rights Reserved. おわりに


    ご静聴ありがとうございました