Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
チャットボットを用いた新たな宿探し体験の提案 / DEIM2022_recruit
Search
Recruit
PRO
June 06, 2022
Technology
0
540
チャットボットを用いた新たな宿探し体験の提案 / DEIM2022_recruit
2022/2/28_第14回データ工学と情報マネジメントに関するフォーラム(DEIM2022)にて、薬師寺と田口が発表した資料です
Recruit
PRO
June 06, 2022
Tweet
Share
More Decks by Recruit
See All by Recruit
Balancing Revenue Goals and Off-Policy Evaluation Performance in Coupon Allocation
recruitengineers
PRO
1
33
Flutterによる 効率的なAndroid・iOS・Webアプリケーション開発の事例
recruitengineers
PRO
0
210
VPC Traffic Mirroring とOSS を利⽤した ネットワークフォレンジック基盤の構築・運⽤
recruitengineers
PRO
2
69
スタサプ ForSCHOOLアプリのシンプルな設計
recruitengineers
PRO
3
1.1k
リクルート流データ基盤塾~鶴谷と学ぶ~
recruitengineers
PRO
5
280
『SUUMO』 スマホサイト デザインリニューアルへの挑戦
recruitengineers
PRO
5
360
『リクルートダイレクトスカウト』 のリニューアルから振り返る: ビジョンドリブンの可能性
recruitengineers
PRO
3
330
負債あるモノリスのオブザーバビリティに組織で向き合う
recruitengineers
PRO
9
400
あなたの知らないiOS開発の世界
recruitengineers
PRO
4
340
Other Decks in Technology
See All in Technology
クラウドインフラ構築における.NETとその他IaCの比較
ymd65536
1
130
50以上のマイクロサービスを支えるアプリケーションプラットフォームの設計・構築の後悔と進化 #CNDW2024 / regrets and evolution of application platform
toshi0607
5
510
累計2500万着電を支える大規模 電話自動応答サービスのアーキテクチャ / Architecture of a Large-Scale Automated Phone Response Service Supporting 25 Million Cumulative Calls
ymachida
5
3.4k
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
30
15k
Microsoft 365と開発者ツールの素敵な関係
kkamegawa
0
260
LINEヤフーにおける超大規模プラットフォーム実現への挑戦と学び / Challenges and Lessons in Building an Ultra-Large-Scale Platform at LY Corporation
hhiroshell
1
650
LLMOps: Eval-Centric を前提としたMLOps
asei
4
220
情シスの引継ぎが大変という話
miyu_dev
2
460
【LT】ソフトウェア産業は進化しているのか? #Agilejapan
takabow
1
130
Amazon ECSとCloud Runの相互理解で広げるクラウドネイティブの景色 / Mutually understanding Amazon ECS and Cloud Run
iselegant
14
1.5k
日経電子版のStoreKit2フルリニューアル
shimastripe
3
190
SkiaとImpellerについて
moriya0130
0
220
Featured
See All Featured
Become a Pro
speakerdeck
PRO
25
5k
Side Projects
sachag
452
42k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
Building Your Own Lightsaber
phodgson
103
6.1k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
Done Done
chrislema
181
16k
Ruby is Unlike a Banana
tanoku
97
11k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Transcript
チャットボットを用いた 新たな宿探し体験の提案 株式会社リクルート データ推進室 データテクノロジーラボ部 田口 正一 /
薬師寺政和
2 Copyright © Recruit Co., Ltd. All Rights Reserved. 本日のアジェンダ
1. 会社・サービス概要 2. 取組紹介 a. 検索条件の代替提案 b. 宿のおすすめポイントのアピール c. 宿に対する質疑応答 3. おわりに
3 Copyright © Recruit Co., Ltd. All Rights Reserved. 自己紹介
• 氏名 :田口 正一 • 所属 :データ推進室 データテクノロジーラボ部 • 略歴:2016年リクルート入社 • 主な業務内容: ◦ 技術シーズからPoCに繋げる活動全般 ▪ 起案 - 環境構築 - コーディング - 提案 - PoC • 本内容の担当機能 ◦ 検索条件の代替提案
4 Copyright © Recruit Co., Ltd. All Rights Reserved. 自己紹介
• 氏名 :薬師寺 政和 • 所属 :データ推進室 データテクノロジーラボ部 • 略歴:2016年リクルート入社 • 主な業務内容: ◦ データソリューションのR&D、ビジネス適用 ◦ リコメンド開発 • 本内容の担当機能 ◦ 宿のおすすめポイントのアピール ◦ 宿に対する質疑応答
5 Copyright © Recruit Co., Ltd. All Rights Reserved. 1.
会社概要
6 Copyright © Recruit Co., Ltd. All Rights Reserved. 1.
会社概要
7 Copyright © Recruit Co., Ltd. All Rights Reserved. 1.
会社概要 株式会社リクルート
8 Copyright © Recruit Co., Ltd. All Rights Reserved. 1.
会社概要
9 Copyright © Recruit Co., Ltd. All Rights Reserved. •
エリア等必要な条件を指定、宿をオンラインで検索/予約できるサービス • 宿だけでなく移動手段、ゴルフ等体験の予約も可能 1. じゃらん - サービス概要
10 Copyright © Recruit Co., Ltd. All Rights Reserved. 1.
じゃらんボット - サービス概要 • じゃらんnet上で、チャット形式で要件確認、商品提案を行うチャットボット • 旅行代理店における窓口予約をイメージしている • 機能・接客フローは代理店窓口経験者のチャット接客を元に設計 10 JLN内のバナー等から開始 旅行商品の要件をチャットで確認 旅行商品を提案
11 Copyright © Recruit Co., Ltd. All Rights Reserved. 1.
旅行代理店窓口を利用する/しない理由 • 宿泊予約を検討する際に、旅行代理店の高い接客力を理由に窓口を利用するカスタマがいる。 • 一方で地理的・時間的な制約で店舗での相談をしない層もいる。 • ヒトのような接客をオンラインで24時間365日提供することで、上記制約に縛られず窓口利用のような 体験を創出できる可能性がある (株)JTB 総合研究所「新しい技術やサービスの広がりとライフスタイルに関する調査」 https://www.tourism.jp/tourism-database/survey/2018/06/technology-lifestyle/
12 Copyright © Recruit Co., Ltd. All Rights Reserved. 1.
チャットボット全体観と今回の内容 今度のお休みで温泉旅行 に行きたい! 予算的には〇〇円くらいで 考えよう お部屋に温泉がつい てたら気楽かも。 送迎してくれるか な? ゆったりできる宿 がいいな 夕食付きもいいけど、評判 はどうかな? 子供連れでも大丈夫か な? サウナはどんな 感じかな? 日程やエリアなどの要 望のヒアリング 必要に応じて条件の 緩和・変更 質問応答による疑問 解消 気になるポイントにつ いてのアピール 感覚的な条件での検 索 その他の機能 宿泊時に検討する項目 実現に必要な機能 本内容のスコープ • 旅行の宿泊予約の検討においてヒトのような接客を実現するには多岐にわたる機能が必要である。 • 本日は①検索条件の代替提案、②宿のおすすめポイントのアピール、③宿に対する質疑応答の3つの機能について 絞って紹介いたします。 宿がヒットしやすい別の条 件で再検索します! 露天風呂が評判でこんなク チコミもあります! 無料の送迎バスがありま す! ①検索条件の代替提案 ②宿のおすすめポイントのアピール ③宿に対する質疑応答
13 Copyright © Recruit Co., Ltd. All Rights Reserved. 本日のアジェンダ
1. 会社概要 2. 取組紹介 a. 検索条件の代替提案 b. 宿のおすすめポイントのアピール c. 宿に対する質疑応答 3. おわりに
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)) 重要度順に並び替え、低い 順に変更候補とする 指定された条件群 ホテル
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
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
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名 (必須要 件) ③ 朝夕食付 き 削除
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名 (必須要 件) ③ 朝夕食付 き ③削除
• 全てをモデルだけで解決することはできない • 生かせる業務知識があるなら混ぜ込むのが良い ◦ 条件を外すことで旅行が成立しなくなる可能性があるものは削除対象外 ▪ (子ども)人数、日付、バリアフリー関連、ペット、目的地等 ◦ 条件変更内容はオペレーターさん用マニュアルに準ずる
▪ ダブルルーム→プール有りとかに変更されても困る ▪ 妥当な変更先は多数あるわけではないため、十分記述可能 ◦ 組み合わせで宿数が相当絞られる条件については優先して削除を行う ▪ シティエリア&客室露天風呂 ▪ 温泉エリア&プール付き宿 ▪ 厳しい必須要件が存在する場合(バリアフリー等)は削除を多くする 取組紹介 - 代替提案 - ルールベースモデル
20 Copyright © Recruit Co., Ltd. All Rights Reserved. 2.a
代替提案機能のサンプル オペレーターよりも早く代替案の提案が可能(数秒程度) ホテル
21 Copyright © Recruit Co., Ltd. All Rights Reserved. 2.a
これから • 条件削除時のコミュニケーションの取り方 ◦ なぜ削除したのか、なぜこの方がいいのか、を納得してもらいたい • 他条件によって厳しくなる条件の扱い ◦ 温泉地×ビーチ近くはかなり両立しづらい(=検索結果激減の原因) • 単独で厳しい条件が登場した場合の挙動の改善 ◦ ペット可/車いす対応は外せない要件 ◦ 上記対応している宿数は決して多くない • 選択肢の提示 ◦ どの条件を削除すると何件在庫があるかを提示、変更/削除する条件を選びやすくしたい ◦ オペレーターでも判断に迷うケースがあるため、カスタマーが選択できる形にしたい ▪ 必須/削除対象についてはオペレーター間で共通認識がある ▪ それ以外の条件は与えられた前提だけでは判断しきれないシーンも多い • オペレーターでも意見が割れるとのこと
22 Copyright © Recruit Co., Ltd. All Rights Reserved. 本日のアジェンダ
1. 会社概要 2. 取組紹介 a. 検索条件の代替提案 b. 宿のおすすめポイントのアピール c. 宿に対する質疑応答 3. おわりに
23 Copyright © Recruit Co., Ltd. All Rights Reserved. 2.b
宿のおすすめポイントのアピール 宿を提示するタイミングで、クチコミから検索条件に該当する&高評価ポイントを提示することで予約時の 納得感につなげることを目指した。 温泉が有名でお部 屋にも温泉がありま す! 送迎もあります! ご飯がおい しくて評判 です! 和室で落ち着いて 過ごすことができま す! 子供連れ でも安心 です! 観光地までのアクセ スも良好です! 人間が自然と行う物事の魅力を伝え る機能を再現・自動化したい 単語ごとに「該当箇所かつポジティブか」の二値分 類を行う系列ラベリングとして解く 家族 旅行 で 宿泊 し まし た 。刺身 が 新鮮 で かなり 美味し い ! スタッフ の 心温まる 接客 姿勢 が 素晴らし か っ た で す 。部屋 に お 風呂 が つい て います ! 子連れ の 方 も 多く 気楽 でした 。 過度 に 干渉 さ れる こと も なく、 気持ち の 良 い 接客 でした ! 美味しい ! スタッフ 接客 の 心温まる 0 1 1 1 1 Fine TuningしたBERT 0 クチコミから高評価ポイントを抽出しお すすめポイントとして提示する
24 Copyright © Recruit Co., Ltd. All Rights Reserved. 2.b
宿のおすすめポイントのアピール:データ概要 • スパン抽出のタスクに用いられるSQuADデータの形式を参考に、クチコミの特性に対応したアウト プットができるように改良。 • クチコミの書き方は人により異なり、文節が句点とは限らなかったり一つの文中に複数該当箇所が 存在するケースがある。 家族 旅行 で 宿泊 し まし た 。刺身 が 新鮮 で かなり 美 味しい ! スタッフ の 心温まる 接客 姿勢 が 素晴らし か っ た です 。部屋 に お 風呂 が つい て います ! 子連れ の 方 も 多く 気楽 でした 。過度 に 干渉 さ れる こと も な く、 気持ち の 良い 接客 でした ! 駅 も すぐ な ので アクセス は 抜群 です ね ★ 部屋 が 広く て 私 的 に は 大 満足 です ★ とても のんびり 過ごす こと が でき 、 従業 員 の 方 も 親 切 で 大 満足 な 旅行 と なり まし た ♪ こちら の 朝食 は きちんと 調理 さ れ た 煮物 など 用意 さ れ て い て 、 特に 朝 は 和食 派 で しっかり 食べ たい 方 に オススメ です ! contexts question 「接客」に関する 高評価箇所はどこか? 「アクセス」に関する 高評価箇所はどこか? answers スタッフ の 心温まる 接客 姿勢 が 素晴らし か っ た です 。 過度 に 干渉 さ れる こと も なく、 気持ち の 良い 接客 で した ! 駅 も すぐ な ので アクセス は 抜群 です ね ★
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
26 Copyright © Recruit Co., Ltd. All Rights Reserved. 2.b
宿のおすすめポイントのアピール:サンプル 条件として指定している項目について、ポジティブな箇所をアピール
27 Copyright © Recruit Co., Ltd. All Rights Reserved. 本日のアジェンダ
1. 会社概要 2. 取組紹介 a. 検索条件の代替提案 b. 宿のおすすめポイントのアピール c. 宿に対する質疑応答 3. おわりに
28 Copyright © Recruit Co., Ltd. All Rights Reserved. 2.c
宿に対する質疑応答 宿を予約する際に確認したいポイントについて、同じチャットインターフェース上で一問一答形式で質問応 答を行う。 チェックインは何時 までできますか? 送迎はしてくれます か? ペットと泊ま れますか? 最寄り駅はどこです か? 駐車場あ ります か? 周辺にご飯食べる ところありますか? 宿を予約する際に、気軽に問い合せ がしたい 入力された質問文をテキスト分類によ り、どんな質問かを判別して回答 質問応答API 入力されたテキストが質問かどうかを判別してする ことで、検索条件などの入力があったとしても対応 ができるように設計 質問判定 モデル 送迎してくれま すか? 質問分類 モデル 最寄り駅まで無 料の送迎バスが あります 発話は 質問 Yes 分類した結果に基づき適切 な回答を返却
29 Copyright © Recruit Co., Ltd. All Rights Reserved. 2.c
QA機能を設計する際のポイント QA機能を設計する際に下記ポイントを考慮して、機能設計を実施した。 各宿泊施設ごとに個別の回答 を用意する必要がある。 データベースで管理されていな い感覚的な質問に対しても回 答を行いたい。 例)「子供連れ でも大丈夫ですか?」など 入力文に対して複数の分類モ デルが必要であった。 宿泊施設の情報を管理している DBを参照し、回答を自動で生 成。 クチコミを解析し、入力文につい て言及している類似センテンスの 抽出および事実性判定を行うモ ジュールを利用。 分類モデル自体は同じものを利 用し、各モデルごとにデータおよ び出力を変えることで開発および 管理コストが最小限に抑える。 質問分類 モデル 質問判定 モデル YesNo判別 モデル 本モジュールではYes/Noで回答できる 質問のみ対応している。 入力された文章がどんな質問かを判別するための テキスト分類モデル 全て同じインターフェースで完結させるために、 入力が質問なのか要望を入力するかを判別するためのモデル 感覚的な質問へ回答するためのモジュール用に、 質問がYes/Noで回答できる質問かを判別するモデル。 データベースを参照することで、全宿泊 施設に対して回答を自動で生成
30 Copyright © Recruit Co., Ltd. All Rights Reserved. 2.c
QA機能の回答サンプル 予約を検討してる段階で同じインターフェース上で気になるポイントについて質問応答
31 Copyright © Recruit Co., Ltd. All Rights Reserved. 本日のアジェンダ
1. 会社概要 2. 取組紹介 a. 検索条件の代替提案 b. 宿のおすすめポイントのアピール c. 宿に対する質疑応答 3. おわりに
32 Copyright © Recruit Co., Ltd. All Rights Reserved. まとめ:チャットボット全体観と今回の内容
今度のお休みで温泉旅行 に行きたい! 予算的には〇〇円くらいで 考えよう お部屋に温泉がつい てたら気楽かも。 送迎してくれるか な? ゆったりできる宿 がいいな 夕食付きもいいけど、評判 はどうかな? 子供連れでも大丈夫か な? サウナはどんな 感じかな? 日程やエリアなどの要 望のヒアリング 必要に応じて条件の 緩和・変更 質問応答による疑問 解消 気になるポイントにつ いてのアピール 感覚的な条件での検 索 その他の機能 宿泊時に検討する項目 実現に必要な機能 本内容のスコープ • 旅行の宿泊予約の検討においてヒトのような接客を実現するには多岐にわたる機能が必要である。 • 本日は①検索条件の代替提案、②宿のおすすめポイントのアピール、③宿に対する質疑応答の3つの機能について 絞って紹介いたします。 宿がヒットしやすい別の条 件で再検索します! 露天風呂が評判でこんなク チコミもあります! 無料の送迎バスがありま す! ①検索条件の代替提案 ②宿のおすすめポイントのアピール ③宿に対する質疑応答 再掲
33 Copyright © Recruit Co., Ltd. All Rights Reserved. おわりに
データテクノロジーラボ部では本チャットボットに限らず、 カスタマ・クライアントの体験を向上するような新しいUI/UXを創造し リクルートひいては世の中の新しいスタンダードをつくっていくこと を目指しています。
34 Copyright © Recruit Co., Ltd. All Rights Reserved. おわりに
ご静聴ありがとうございました