$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
⽬的変数が異なるモデル間の stackingモデルについて
Search
Recruit Technologies
March 12, 2018
Technology
0
430
⽬的変数が異なるモデル間の stackingモデルについて
2018/03/08 経営情報学会「春季全国研究発表大会」での、羽鳥の発表資料になります
Recruit Technologies
March 12, 2018
Tweet
Share
More Decks by Recruit Technologies
See All by Recruit Technologies
障害はチャンスだ! 障害を前向きに捉える
rtechkouhou
1
730
Flutter移行の苦労と、乗り越えた先に得られたもの
rtechkouhou
3
12k
ここ数年間のタウンワークiOSアプリのエンジニアのチャレンジ
rtechkouhou
1
1.6k
大規模環境をAWS Transit Gatewayで設計/移行する前に考える3つのポイントと移行への挑戦
rtechkouhou
1
1.9k
【61期 新人BootCamp】TOC入門
rtechkouhou
3
42k
【RTC新人研修 】 TPS
rtechkouhou
1
41k
Android Boot Camp 2020
rtechkouhou
0
41k
HTML/CSS
rtechkouhou
10
51k
TypeScript Bootcamp 2020
rtechkouhou
9
46k
Other Decks in Technology
See All in Technology
Identity Management for Agentic AI 解説
fujie
0
440
[2025-12-12]あの日僕が見た胡蝶の夢 〜人の夢は終わらねェ AIによるパフォーマンスチューニングのすゝめ〜
tosite
0
160
会社紹介資料 / Sansan Company Profile
sansan33
PRO
11
390k
20251222_next_js_cache__1_.pdf
sutetotanuki
0
170
"人"が頑張るAI駆動開発
yokomachi
1
110
AI with TiDD
shiraji
1
270
TED_modeki_共創ラボ_20251203.pdf
iotcomjpadmin
0
140
ペアーズにおけるAIエージェント 基盤とText to SQLツールの紹介
hisamouna
2
1.5k
AIエージェント開発と活用を加速するワークフロー自動生成への挑戦
shibuiwilliam
4
810
AgentCore BrowserとClaude Codeスキルを活用した 『初手AI』を実現する業務自動化AIエージェント基盤
ruzia
7
1.2k
たまに起きる外部サービスの障害に備えたり備えなかったりする話
egmc
0
400
半年で、AIゼロ知識から AI中心開発組織の変革担当に至るまで
rfdnxbro
0
130
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.3k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.2k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
Embracing the Ebb and Flow
colly
88
4.9k
Why Our Code Smells
bkeepers
PRO
340
57k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
RailsConf 2023
tenderlove
30
1.3k
Accessibility Awareness
sabderemane
0
23
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
286
14k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
Transcript
⽬的変数が異なるモデル間の stackingモデルについて 株式会社リクルートテクノロジーズ ⽻⿃ 冬星 (C) Recruit Technologies Co.,Ltd. All
rights reserved. 1
アジェンダ • 背景と課題 • リクルートの事業内容について • 予測モデルについて • 関連研究 •
n-fold stakingモデル • 提案⼿法 • ⽬的変数が異なるモデル間のstackingモデル • 数値実験 • まとめ (C) Recruit Technologies Co.,Ltd. All rights reserved. 2
リクルートの事業内容について ライフイベント領域 進学 就職 結婚 転職 住宅購⼊ ⾞購⼊ 出産/育児 旅⾏
ビジネス⽀援 ⽣活/地域情報 グルメ・美容 ライフスタイル領域 (C) Recruit Technologies Co.,Ltd. All rights reserved. 4
リクルートの事業内容について ライフイベント領域 進学 就職 結婚 転職 住宅購⼊ ⾞購⼊ 出産/育児 旅⾏
ビジネス⽀援 ⽣活/地域情報 グルメ・美容 ライフスタイル領域 選択・意思決定を⽀援する情報サービスを提供し、 「まだ、ここにない、出会い。」を実現する。 (C) Recruit Technologies Co.,Ltd. All rights reserved. 4
• リクルートテクノロジーズは、リクルートグループのIT・ネット マーケティング領域のテクノロジー開発を担う会社 • その中でもデータイノベーション推進部はデータにまつわるソ リューションで事業課題を解決している (C) Recruit Technologies Co.,Ltd.
All rights reserved. 5 リクルートの事業内容について
様々な予測モデルが⽇々運⽤されている • 広告コストを最適配分したい:応募数予測モデル " 広告コスト, ⼟⽇フラグ, 当⽉祝⽇数, ⋯ ⟹ 応募数
• 3カ年計画を精緻に策定したい:⻑期売上予測モデル & 昨々々年売上, 昨々々年予約数, 来⽉予約数 ⋯ ⟹ 3年後売上 • ログインなしユーザーの属性を判定したい:属性判定モデル ( 閲覧時間(ページ),閲覧時間(ページ), 訪問時間帯 ⋯ ⟹ 性別 • あるactionに対してユーザーのCVを予測したい:CV予測モデル - " , & , ⋯ ⟹ (C) Recruit Technologies Co.,Ltd. All rights reserved. 6
CV予測モデル-概要 •action : 施策 • ディスプレイ広告の投下、求⼈情報誌への掲載など、こちら の⾏動 •CV : コンバージョン
• クリック、会員登録、応募など、ユーザーがこちらが⽬指す 何かを達成すること • 以下CVと略す (C) Recruit Technologies Co.,Ltd. All rights reserved. 7
CV予測モデル-概要 (C) Recruit Technologies Co.,Ltd. All rights reserved. 8 action:
広告配信 CV: 購⼊ action: 雑誌掲載 CV: 応募 action: メール配信 CV:開封
CV予測モデル-特徴 「精度⽬標」と「⽬的変数における時間制約」 (C) Recruit Technologies Co.,Ltd. All rights reserved. 9
CV予測モデル-特徴 「精度⽬標」と「⽬的変数における時間制約」 (C) Recruit Technologies Co.,Ltd. All rights reserved. 10
• ビジネス要件として、限界まで精度向上を⽬指すことがしばしばある。 • ⼤規模システムに実装するロジックとなると、1%の精度改善が⼤き な⾦額規模に跳ね返ってくる。 • その結果精度⽬標はしばしば厳しいものに
CV予測モデル-特徴 「精度⽬標」と「⽬的変数における時間制約」 (C) Recruit Technologies Co.,Ltd. All rights reserved. 11
• CVの「有無」を当てるだけではなく、「それがいつ起こるのか」を当て ることも同時に求められる
CV予測モデル-時間制約が求められる例 • モデル概要:広告の⽂⾔、時給、勤務地などから応募があるかを予 測するモデル • 使い⽅:顧客が時給などを変えつつ、応募有無の変化をシミュレー トする • ×「この時給ならいつかは応募がありそうです」 •
◯「この時給なら1週間以内に応募がありそうです」 (C) Recruit Technologies Co.,Ltd. All rights reserved. 12
CV予測モデル-⽬的変数の時間制約 • 求⼈誌の掲載モデル • action : ある店舗の求⼈情報が求⼈誌に掲載開始 • CV :
雑誌を⾒た⼈が応募してくる • CVの「有無」と「時期」で下記のように整理できる (C) Recruit Technologies Co.,Ltd. All rights reserved. 13 期間内 期間外 CV有り 1週間以内にCV 1週間以降にCV CV無し 1週間以内に掲載落ち (他社CV) 1週間以降に掲載落ち (他社CV)
CV予測モデル-⽬的変数の時間制約 • モデルの⽬的変数(以下yとして表現)として設定されるのは単純なCV 有無だけではない (C) Recruit Technologies Co.,Ltd. All rights
reserved. 14 期間内 期間外 CV有り 1週間以内にCV 1週間以降にCV CV無し 1週間以内に掲載落ち (他社CV) 1週間以降に掲載落ち (他社CV) y=1 • 単純な構造を持つ⽬的変数 y=0
CV予測モデル-⽬的変数の時間制約 • モデルの⽬的変数(以下yとして表現)として設定されるのは単純なCV 有無だけではない (C) Recruit Technologies Co.,Ltd. All rights
reserved. 15 期間内 期間外 CV有り 1週間以内にCV 1週間以降にCV CV無し 1週間以内に掲載落ち (他社CV) 1週間以降に掲載落ち (他社CV) • 単純な構造を持つ⽬的変数 y=1 y=0
CV予測モデル-⽬的変数の時間制約 • モデルの⽬的変数(以下yとして表現)として設定されるのは単純なCV 有無だけではない • CVの有無に加えて、それが設定された期間内に発⽣したかも考慮す ることが多い (C) Recruit Technologies
Co.,Ltd. All rights reserved. 16 期間内 期間外 CV有り 1週間以内にCV 1週間以降にCV CV無し 1週間以内に掲載落ち (他社CV) 1週間以降に掲載落ち (他社CV) y=1 y=0 • 複雑な構造を持つ⽬的変数 y=0
CV予測モデル-⽬的変数の時間制約 • 単純なCV有無よりは複雑な構造を持つ⽬的変数となる • CV有無を⽬的変数とするとauc0.8を超えるモデルでも、時 間制約を⼊れて⽬的変数を構成するとauc0.6を下回る事例 も・・・ üこのような時間制約があるCVの予測難度は⾼い。しかし、ビ ジネス要件で⾼精度が求められることも多い。 (C)
Recruit Technologies Co.,Ltd. All rights reserved. 17
CV予測モデル • 課題: • ⾼難度な、時間制約があるCVを予測する問題に対しても、 ⾼精度なモデルを構築する • ⼿段: 1. 特徴量・アルゴリズムを作り込む
2. アンサンブルモデルを使う (C) Recruit Technologies Co.,Ltd. All rights reserved. 18
CV予測モデル • 課題: • ⾼難度な、時間制約があるCVを予測する問題に対しても、 ⾼精度なモデルを構築する • ⼿段: 1. 特徴量・アルゴリズムを作り込む
2. アンサンブルモデルを使う (C) Recruit Technologies Co.,Ltd. All rights reserved. 19 • 特徴量を作り込んだり、アルゴリズムを検討することが第⼀にするべき こと • これで精度⽬標を達成できればそれでよし
CV予測モデル • 課題: • ⾼難度な、時間制約があるCVを予測する問題に対しても、 ⾼精度なモデルを構築する • ⼿段: 1. 特徴量・アルゴリズムを作り込む
2. アンサンブルモデルを使う (C) Recruit Technologies Co.,Ltd. All rights reserved. 20 • それでも精度⽬標を達成できない場合には、複数のモデルのアンサンブ ルで精度向上を狙えることもある • 劇的な精度向上というよりも、限界まで特徴量・アルゴリズムを詰めた あとの最後のひと押し
アンサンブルについて • 複数の学習器を組み合わせることで予測誤差を⼩さくする⼿法を アンサンブルという • 以下の⼿法が有名 • 平均や多数決を取るvoting • 前段の学習器の誤りを反映して次段の学習器を作成する
boosting • 初段の学習器の出⼒結果を次段の⼊⼒結果とするstacking • 代表的なアルゴリズムはn-fold stacking • 次スライド以下でアルゴリズム内容を説明 (C) Recruit Technologies Co.,Ltd. All rights reserved. 21
fold 1 fold 2 fold 3 y1 y2 y3 x1
training data holdout holdout x2 x3 教師データをcross validationのように分割する(この例だと3-fold) (C) Recruit Technologies Co.,Ltd. All rights reserved. 22 training data: 学習に⽤いるデータ holdout: 学習には⽤いず、 最後の精度検証に⽤ いるデータ
fold 1 fold 2 fold 3 y1 y2 y3 x1
training data holdout holdout x2 x3 ⼀つのfoldを除いて学習し、初段モデルをたくさんつくる(コンペだと100以上作ることも珍しくない) 学習 モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル1-2 rf モデル1-1 svm (C) Recruit Technologies Co.,Ltd. All rights reserved. 23
fold 1 fold 2 fold 3 y1 y2 y3 x1
training data holdout holdout x2 x3 取り除いておいたfoldの説明変数を初段モデルに投⼊し、予測値を算出する 学習 モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル1-2 rf モデル1-1 svm 予測 モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm 予測値1-2 rf 予測値1-1 svm (C) Recruit Technologies Co.,Ltd. All rights reserved. 24
fold 1 fold 2 fold 3 y1 y2 y3 x1
training data holdout holdout x2 x3 取り除いておいたfoldの説明変数を初段モデルに投⼊し、各モデルの予測値を新たな説明変数とする この例だと6つの変数が増える 予測値1-2 rf 予測値1-1 svm 予測値1-6 xgb … (C) Recruit Technologies Co.,Ltd. All rights reserved. 25
fold 1 fold 2 fold 3 y1 y2 y3 x1
training data holdout holdout x2 x3 他のfoldについても同じように予測値を算出する 予測値1-2 rf 予測値1-1 svm 予測値1-6 xgb … 予測値2-2 rf 予測値2-1 svm 予測値2-6 xgb … 予測値3-2 rf 予測値3-1 svm 予測値3-6 xgb … (C) Recruit Technologies Co.,Ltd. All rights reserved. 26
fold 1 fold 2 fold 3 y1 y2 y3 x1
training data holdout holdout x2 x3 holdoutについても同じように予測値をくっつけたい 予測値1-2 rf 予測値1-1 svm 予測値1-6 xgb … 予測値2-2 rf 予測値2-1 svm 予測値2-6 xgb … 予測値3-2 rf 予測値3-1 svm 予測値3-6 xgb … ? (C) Recruit Technologies Co.,Ltd. All rights reserved. 27
holdout holdout さっき学習したモデルにholdoutを投⼊して、予測値を算出する モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル1-1
svm モデル1-2 rf モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル2-2 rf モデル2-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル3-2 rf モデル3-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm 予測値1-2 rf 予測値1-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm 予測値2-2 rf 予測値2-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm 予測値3-2 rf 予測値3-1 svm 学習済みモデル群 (C) Recruit Technologies Co.,Ltd. All rights reserved. 28
holdout holdout foldの分だけ、予測値が出て来る→平均をとって⼀つにする 予測データ群 予測値 h1-2 rf 予測値 h1-1 svm
予測値 h1-6 xgb … 予測値 h2-2 rf 予測値 h2-1 svm 予測値 h2-6 xgb … 予測値 h3-2 rf 予測値 h3-1 svm 予測値 h3-6 xgb … 予測値 h-2 rf 予測値 h-1 svm 予測値 h-6 xgb … モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル2-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル1-1 svm モデル3-1 svm (C) Recruit Technologies Co.,Ltd. All rights reserved. 29
fold 1 fold 2 fold 3 y1 y2 y3 x1
training data holdout holdout x2 x3 完成したデータセットの様⼦ 予測値1-2 rf 予測値1-1 svm 予測値1-6 xgb … 予測値2-2 rf 予測値2-1 svm 予測値2-6 xgb … 予測値2-2 rf 予測値2-1 svm 予測値2-6 xgb … 予測値h-2 rf 予測値h-1 svm 予測値h-6 xgb … (C) Recruit Technologies Co.,Ltd. All rights reserved. 30
fold 1 fold 2 fold 3 y1 y2 y3 x1
training data holdout holdout x2 x3 完成したデータセットを次段のモデルで学習 予測値1-2 rf 予測値1-1 svm 予測値1-6 xgb … 予測値2-2 rf 予測値2-1 svm 予測値2-6 xgb … 予測値2-2 rf 予測値2-1 svm 予測値2-6 xgb … 予測値h-2 rf 予測値h-1 svm 予測値h-6 xgb … 次段のモデルで学習 (C) Recruit Technologies Co.,Ltd. All rights reserved. 31
fold 1 fold 2 fold 3 y1 y2 y3 x1
training data holdout holdout x2 x3 学習した次段モデルで予測 予測値1-2 rf 予測値1-1 svm 予測値1-6 xgb … 予測値2-2 rf 予測値2-1 svm 予測値2-6 xgb … 予測値2-2 rf 予測値2-1 svm 予測値2-6 xgb … 予測値h-2 rf 予測値h-1 svm 予測値h-6 xgb … 次段のモデルで学習 次段のモデルで予測 予測値 (C) Recruit Technologies Co.,Ltd. All rights reserved. 32
n-fold stackingの利点と問題点 • 利点 • 初段のモデルによって⾮線形性が緩和される • 説明変数の[0, 1]への変換 •
精度向上 • 問題点 • 初段のモデルの精度が悪いと次段も良くならない • 本研究で対象とする時間制約付きCV予測問題は、初段 の予測精度が悪いことがしばしばある • そのためstackingをしても精度が上がらないことがある (C) Recruit Technologies Co.,Ltd. All rights reserved. 33
fold 1 y1 (時間制約 付きCV) x1 時間制約付きCV予測問題における n-fold stacking 予測値1-2
rf 予測値1-1 svm 予測値1-6 xgb … (C) Recruit Technologies Co.,Ltd. All rights reserved. 34 )(0 )( )(0 1 )( 1 1. ⽬的変数は、「期間内にCVしたか否か」 • 問題としては難しい • 「CV有無」は個体差が結構あるが、「30⽇⽬に CV」と「31⽇⽬にCV」の個体差はそれほどない
fold 1 y1 (時間制約 付きCV) x1 時間制約付きCV予測問題における n-fold stacking 予測値1-2
rf 予測値1-1 svm 予測値1-6 xgb … (C) Recruit Technologies Co.,Ltd. All rights reserved. 35 2. 得られたモデルの予測精度が低いと、 説明変数として有効に機能せず、 全体の精度向上に寄与しない
提案⼿法-⽬的変数が異なるモデル間のstackingモデル • これらの問題点を踏まえ、「⽬的変数が異なるモデル間のstacking モデル」を提案する • 概要 • 初段⽬的変数:CV有無 • 次段⽬的変数:時間制約付きCV有無
(C) Recruit Technologies Co.,Ltd. All rights reserved. 36 )(0 )( )(0 1 )( 1 )(0 )( )(0 1 )( 1 ・時間制約付きCV有無 ・CV有無
提案⼿法-⽬的変数が異なるモデル間のstackingモデル (C) Recruit Technologies Co.,Ltd. All rights reserved. 37
)(0 )( )(0 1 )( 1 初段の⽬的変数 : 時間制約付きCV 次段の⽬的変数: 時間制約付きCV n-fold stacking(既存⼿法) )(0 )( )(0 1 )( 1 特徴量化 初段の⽬的変数 : 時間制約無しCV 次段の⽬的変数: 時間制約付きCV 提案⼿法 )(0 )( )(0 1 )( 1 特徴量化 )(0 )( )(0 1 )( 1
提案⼿法-期待される効果 • stackingした特徴量の意味が変わる • 既存⼿法ではstackingした特徴量はそれ単独で時間制約付き CVを当てようとするもの → ⽬的変数に対しては直接的だが、確度が低い • 提案⼿法ではstackingした特徴量はCV有無だけを当てよう
とするもの → ⽬的変数に対しては間接的だが、確度が⾼い • 提案⼿法で作成した特徴量は、直接的に⽬的変数を予測するも のでは無いものの、⼀特徴量としてはある程度有効であること が予想される (C) Recruit Technologies Co.,Ltd. All rights reserved. 38
数値実験-使⽤したデータ 以下では数値実験の結果を⽰す • 使⽤データ • ⾏数:186万⾏ • 列数:151列 • 前処理(質的変数):one-hot
encoding • 前処理(⽋損処理):0を代⼊し、⽋損有無をフラグ変数化 • 時間制約付きCVを⽬的変数として持つデータ • 単純なn-fold stackingは効果なし • 単⼀モデルと提案⼿法の精度⽐較を⾏う • 評価指標:auc (C) Recruit Technologies Co.,Ltd. All rights reserved. 39
数値実験-モデル詳細 • 提案⼿法の初段で使⽤するアルゴリズム • ⽊のモデルと線形モデルの代表的なアルゴリズムを選定 (C) Recruit Technologies Co.,Ltd. All
rights reserved. 40 アルゴリズム ハイパーパラメータ XGBoost learning rate = 0.01 XGBoost learning rate = 0.06 XGBoost learning rate = 0.1 XGBoost learning rate = 0.3 Elastic Net α=0 (Ridge) Elastic Net α=0.5 Elastic Net α=1 (lasso)
数値実験-モデル詳細 • 次段で使⽤するアルゴリズム • できるだけ多様なアルゴリズムを選定 • ナイーブベイズ • ロジスティック回帰 •
SVM • ランダムフォレスト • XGBoost (C) Recruit Technologies Co.,Ltd. All rights reserved. 41
数値実験-結果 (C) Recruit Technologies Co.,Ltd. All rights reserved. 42 アルゴリズム
⼿法 validationスコア holdoutスコア ナイーブベイズ 単⼀モデル 0.6166 0.6088 ナイーブベイズ 提案⼿法 0.6434 0.6417 ロジスティック回帰 単⼀モデル 0.6849 0.6769 ロジスティック回帰 提案⼿法 0.6867 0.6798 SVM 単⼀モデル 0.6889 0.68 SVM 提案⼿法 0.6928 0.6853 ランダムフォレスト 単⼀モデル 0.6869 0.6789 ランダムフォレスト 提案⼿法 0.6894 0.6827 XGBoost 単⼀モデル 0.6987 0.6884 XGBoost 提案⼿法 0.695 0.6862 • XGBoost以外は精度向上効果あり • ナイーブベイズは特に⼤きく向上 • ランダムフォレストは特にholdoutの精度向上が⼤きい
まとめ • 企業における予測モデルのうち、CV予測問題は精度向上が課題 になる場合がある。 • 精度向上のためにアンサンブルを⾏うこともあるが、時間制約 が付いたCVの精度向上は厳しいことも多い。 • 時間制約付きCV予測問題に対して、⽬的変数が異なるモデル間 のstackingモデルを提案した。
• 実データを⽤いて数値実験を⾏い、複数のアルゴリズムにおい て提案⼿法の有効性が確認された。 (C) Recruit Technologies Co.,Ltd. All rights reserved. 43