Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
データバリデーションによるFeature Storeデータ品質の担保
Search
Yudai Hayashi
April 25, 2025
Technology
0
36
データバリデーションによるFeature Storeデータ品質の担保
めぐろLT #26 「データエンジニアリングよもやま」で発表した内容です
https://meguro-lt.connpass.com/event/347477/
Yudai Hayashi
April 25, 2025
Tweet
Share
More Decks by Yudai Hayashi
See All by Yudai Hayashi
「仮説行動」で学んだ、仮説を深め ていくための方法
yudai00
5
920
相互推薦システムでのPseudo Label を活用したマッチ予測精度向上の取り組み
yudai00
1
770
Wantedly Visitにおけるフリーワード検索時の推薦のオンライン化事例紹介
yudai00
1
210
RustとPyTorchで作る推論サーバー
yudai00
11
7.1k
BigQueryで作る簡単なFeature Store
yudai00
2
340
プロダクトのコードをPandasからPolarsへ書き換えた話
yudai00
8
3.5k
データサイエンティストになって得た学び
yudai00
1
220
社内での継続的な機械学習勉強会の開催のコツ
yudai00
2
750
会社訪問アプリ「Wantedly Visit」における新規ユーザーの行動量に基づいた推薦方策の選択
yudai00
0
1.8k
Other Decks in Technology
See All in Technology
30代からでも遅くない! 内製開発の世界に飛び込み、最前線で戦うLLMアプリ開発エンジニアになろう
minorun365
PRO
13
4.1k
AWSで作るセキュアな認証基盤with OAuth mTLS / Secure Authentication Infrastructure with OAuth mTLS on AWS
kaminashi
0
180
Notion x ポストモーテムで広げる組織の学び / Notion x Postmortem
isaoshimizu
1
120
勝手に!深堀り!Cloud Run worker pools / Deep dive Cloud Run worker pools
iselegant
3
470
バックオフィス向け toB SaaS バクラクにおけるレコメンド技術活用 / recommender-systems-in-layerx-bakuraku
yuya4
6
560
今日からはじめるプラットフォームエンジニアリング
jacopen
7
1.4k
ElixirがHW化され、最新CPU/GPU/NWを過去のものとする数万倍、高速+超省電力化されたWeb/動画配信/AIが動く日
piacerex
0
150
Стильный код: натуральный поиск редких атрибутов по картинке. Юлия Антохина, Data Scientist, Lamoda Tech
lamodatech
0
770
AI AgentOps LT大会(2025/04/16) Algomatic伊藤発表資料
kosukeito
0
150
YOLOv10~v12
tenten0727
4
970
AIコーディングの最前線 〜活用のコツと課題〜
pharma_x_tech
4
2.2k
Linuxのパッケージ管理とアップデート基礎知識
go_nishimoto
0
400
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
90
6k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.8k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Rebuilding a faster, lazier Slack
samanthasiow
80
8.9k
Rails Girls Zürich Keynote
gr2m
94
13k
Fireside Chat
paigeccino
37
3.4k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
47
2.7k
Statistics for Hackers
jakevdp
798
220k
Typedesign – Prime Four
hannesfritz
41
2.6k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
It's Worth the Effort
3n
184
28k
The Cost Of JavaScript in 2023
addyosmani
49
7.7k
Transcript
© 2025 Wantedly, Inc. データバリデーションによるFeature Storeデータ品質の担保 めぐろLT #26 「データエンジニアリングよもやま」 Apr.
25 2025 - Yudai Hayashi
© 2025 Wantedly, Inc. 自己紹介 林 悠大 • 経歴: ◦
2022年に応用物理分野で Ph.D取得 ◦ 2022年にウォンテッドリー株式会社に新卒入社。データサイ エンティストとして推薦システムの開発に従事 @python_walker @Hayashi-Yudai
© 2025 Wantedly, Inc. 今日話すこと • 我々が管理している Feature Storeでのデータ品質担保の取り組みについて紹介 •
Table-to-Tableで特徴量を作成する際には、バリデーションが通っていないデータが最終テーブルに一 時的にでも存在しないことを担保することが重要
© 2025 Wantedly, Inc. 背景 - Feature Storeを自作して機械学習モデルに利用 • 各種特徴量を定期計算して
BigQueryに テーブルを作成する仕組み ◦ PythonFeature: Pythonを使っ て計算する特徴量 ◦ SQLFeature: SQLだけで計算す る特徴量 • 計算した特徴量は複数の機械学習シス テムで利用
© 2025 Wantedly, Inc. 課題 - 計算した特徴量が意図通りになっていなくても気づけない状態になっていた • 特徴量が「意図通りになっていない」とは? ◦
欠損するはずがないフィールドに欠損がある ◦ 全く同じデータが複数回出現する ◦ … • 意図通りになっていないと何がまずいか ◦ 人為的な特徴量のノイズにより、特徴量を学習に利用した機械学習モデルの性能が劣化する (garbage-in-garbage-out) 特徴量を作る際に十分なバリデーションをかけることが重要 ただし、SQLFeatureはBQ上で処理が完結するので、バリデーション方法を工夫する必要 がある
© 2025 Wantedly, Inc. 解決策 - 中間テーブルを作成してバリデーションを行う 要求:バリデーションを通っていないテーブルが存在しない • 中間テーブルを作成してからバリデーションをか
ける。通ったら最終テーブルにコピー • 特徴量の情報はYAMLで管理しており、そこから keyカラムを読み取る ◦ 特徴量計算するクエリを書くときはバリ デーションのことを考えなくてよい
© 2025 Wantedly, Inc. まとめ • 我々が管理している Feature Storeでのデータ品質担保の取り組みについて紹介 •
SQLだけで計算する特徴量においてバリデーションを行うために、一時テーブルを作成してバリデーション を行った後、最終テーブルにコピーするという方策を取った ◦ バリデーションを通っていないデータが最終テーブルに存在しないことを担保 ◦ バリデーションロジックを特徴量計算から切り離すことで、新しい特徴量を追加する時でも設定し忘 れるリスクを回避