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
外部のデータを結合し分析するためのソリューションAWS Clean Rooms
Search
西岡 賢一郎 (Kenichiro Nishioka)
April 29, 2023
Technology
310
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
外部のデータを結合し分析するためのソリューションAWS Clean Rooms
機械学習の社会実装勉強会第22回 (
https://machine-learning-workshop.connpass.com/event/280038/
) の発表の資料です。
西岡 賢一郎 (Kenichiro Nishioka)
April 29, 2023
More Decks by 西岡 賢一郎 (Kenichiro Nishioka)
See All by 西岡 賢一郎 (Kenichiro Nishioka)
AIガバナンス実践 - 生成AIコネクタのデータ漏洩リスクと実務対策
knishioka
0
200
データサイエンスの現場から学ぶ 成功と失敗の実像と生成AI時代の展望
knishioka
0
87
ハーネスエンジニアリング入門
knishioka
0
370
OpenClawでPM業務を自動化
knishioka
2
540
Claude Cowork Plugins を読む - Skills駆動型業務エージェント設計の実像と構造
knishioka
0
660
仕様書駆動AI開発の実践: Issue→Skill→PRテンプレで 再現性を作る
knishioka
2
880
Claude Codeを使った情報整理術
knishioka
20
13k
Claude Skillsで"仕事の型"を配布する
knishioka
0
400
Claude Agent SDKで始める実践的AIエージェント開発
knishioka
0
230
Other Decks in Technology
See All in Technology
【Cyber-sec+】経営層を"動かす"ための考え方
hssh2_bin
0
190
GitHub Copilot 最新アップデート – 「一歩先」の実践活用術
moulongzhang
4
1.1k
LLMにもCAP定理があるという話
harukasakihara
0
380
フィジカル版Github Onshapeの紹介
shiba_8ro
0
260
作って終わりにしない タイミーのセマンティックレイヤー育成の現在地
chanyou0311
4
2.4k
2026TECHFRESH畢業分享會 - 原生還是跨平台? App 開發踩坑實錄
line_developers_tw
PRO
0
1.1k
気軽に使える"情報のハブ"としてのNotion活用 〜フロー情報の集積点 と、 Claude Code × Notion AI〜
syucream
1
140
小さく始める AI 活用推進 ― 日経電子版 Web チームの事例/nikkei-tech-talk47
nikkei_engineer_recruiting
0
270
非エンジニアがClaudeと挑んだ「1ヶ月間プロダクト30本ノック」
askokc
0
570
2026TECHFRESH畢業分享會 - Lightning Talk - 資料也要 CI/CD? 用 Airbyte 自動化資料同步
line_developers_tw
PRO
0
1.1k
SONiCの統計情報を取得したい
sonic
0
180
AIはどのように 組織のアジリティを変えるのか?
junki
4
940
Featured
See All Featured
Information Architects: The Missing Link in Design Systems
soysaucechin
0
970
Faster Mobile Websites
deanohume
310
31k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
140
Testing 201, or: Great Expectations
jmmastey
46
8.2k
AI: The stuff that nobody shows you
jnunemaker
PRO
8
710
Six Lessons from altMBA
skipperchong
29
4.3k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
130
From π to Pie charts
rasagy
0
210
Why Our Code Smells
bkeepers
PRO
340
58k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
590
Agile that works and the tools we love
rasmusluckow
331
21k
New Earth Scene 8
popppiees
3
2.3k
Transcript
外部のデータを結合し分析するためのソリューション AWS Clean Rooms 元データを保護したまま提供 2023/04/29 第22回勉強会
自己紹介 • 名前: 西岡 賢一郎 ◦ Twitter: @ken_nishi ◦ note:
西岡賢一郎@研究者から経営者へ (https://note.com/kenichiro) ◦ YouTube: 【経営xデータサイエンスx開発】西岡 賢一郎のチャンネル (https://www.youtube.com/channel/UCpiskjqLv1AJg64jFCQIyBg) • 経歴 ◦ 東京大学で位置予測アルゴリズムを研究し博士 (学術) を取得 ◦ 東京大学の博士課程在学中にデータサイエンスをもとにしたサービスを提供する株式会社ト ライディアを設立 ◦ トライディアを別のIT会社に売却し、CTOとして3年半務め、2021年10月末にCTOを退職 ◦ CDPのスタートアップ (Sr. PdM)・株式会社データインフォームド (CEO)・株式会社ディース タッツ (CTO) ◦ 自社および他社のプロダクト開発チーム・データサイエンスチームの立ち上げ経験
本日のお話 • 外部データを利用した分析 • AWS Clean Rooms • Clean Roomで使うテーブルの準備
• デモ
外部データを利用した分析
3rd Partyデータを用いた分析 • 自社で集められるデータには限界がある • 3rd Party (他社) とデータ結合をすることで詳細な分析が可能となる ◦
例: 広告の効果測定 広告効果測定は、3rd Party Cookieの規制により、複数プラットフォームをまたがったデー タの紐付けが難しくなり、異なる分析方法が必要となっている • 3rd Partyにデータを提供してもらい、データを結合して分析 • データ結合のために3rd Partyと共通となるキーが必要となる データ提供 3rd Party 自社データだけでは 十分な分析ができない 3rd Partyデータを用いて 詳細な分析ができる
他社データを結合する方法 • 属性で結合する方法などもあるが、個人識別子を使った結合のほうが精度の高い分析ができる • ただし、個人識別子を含むローデータを提供することが難しい
Data Clean Roomで安全に結合し分析 • ローデータを分析者に公開することなく結合し、分析できる環境を提供 • 集計結果に制約を設けることで、個人情報漏洩のリスクを下げることが可能 (完璧に防げるわけではない) • 個人情報の第三者提供をくぐり抜けるための銀の弾丸ではない
Data Clean Roomの分析イメージ
AWS Clean Rooms
AWS Clean Roomsの特徴 • 自分AWSを含め最大で5つのAWSアカウントでデータの連携が可能 • クエリの実行および結果の受け取りができるのは1つのAWSアカウントのみ • 集計結果に対して最小閾値を設定し、少ない集計結果による元データの推定 を防ぐ事が可能
• 自分が開始したクエリと自分のデータを含むクエリのログを受け取り可能 • 暗号コンピューティングにより、データを暗号化したまま保存・転送・処理 が可能
AWS Clean RoomsのMemberの種類 • Collaboration creator ◦ Collaborationを作成するアカウント ◦ 招待するMemberを決定
◦ 誰がクエリを実行できるかを決定 ◦ Query Logging, 暗号コンピューティングなどの利用有無を決定 ◦ クエリ実行者およびデータ提供者のどちらかになる • クエリ実行者 ◦ クエリを実行し、結果を受け取ることができるアカウント ◦ 1アカウントのみ設定が可能 ◦ Ability: Query, Receive results, Contribute data • データ提供者 (Contributor) ◦ データを提供するアカウント ◦ 提供したデータを使ったクエリのログを確認可能 (Query Loggingが Onのとき) ◦ Ability: Contribute data データ提供者 クエリ実行者 Collaboration Creator 必要なアカウントを招待し 自分もデータ提供者か クエリ実行者のどちらかになれる
Clean Roomで使うテーブルの準備
Clean Roomsで使用するテーブル • AWS Clean Roomsで使用するデータはAWS Glueのカタログになっている必要がある • AWS GlueでカタログとなったAmazon
S3テーブルのみサポートされている (2023/04/29現在) • 作成したClean Rooms用のTableは複数のCollaborationで使用することができる 出典: AWS Console
Clean Rooms用のテーブル設定 設定の手順 • AWS Glue tableからの選択 • Collaborationで許可するカラムを選択 (あとからの
変更が不可能) • Analysis ruleを設定
Clean Rooms用テーブルのAnalysis Rule • Aggregation Type ◦ COUNT、SUM、AVG関数を用いて統計情報を 任意の次元で集計するクエリーが可能 ◦
セグメント分析、測定、アトリビューション など • List Type ◦ クエリ可能なメンバーのテーブルの重なりの 行レベルのリストを出力するクエリを許可 ◦ データのエンリッチメントやセグメント構築 など
Analysis Rule Type: Aggregation • Aggregate functions ◦ 許可する集計関数とその関数を利用できるカラムを指定 ◦
COUNT, COUNT DISTINCT, SUM, SUM DISTINCT, AVGか ら選択可能 • Join controls ◦ 他のテーブルとINNER JOINするためのキーを設定 (複数 キー指定可能) ◦ JOINで使用するキーはクエリ結果には表示されない ◦ テーブル単体でのクエリ (JOINなしのクエリ) の許可 • Dimension controls (optional) ◦ 集計するためのディメンション (キー) を指定 • Scalar functions ◦ ABS, ROUND, CASTなど13個の関数 (2023/04/29現在) から選択 可能 ◦ 適用可能なスカラー関数を制御 ◦ ディメンション列に適用可能 ◦ 他の関数の上や他の関数内で使用できない • Aggregation constraints ◦ クエリ結果で返す行を制御 ◦ 最小の集計値を設定できる (2以上)
Analysis Rule Type: List • Join controls ◦ 他のテーブルとINNER JOINするためのキーを設定
(複数キー指定可能) ◦ JOINで使用するキーはクエリ結果には表示されない • List controls ◦ 出力できるカラムを指定 • AggregationのRule Typeに比べて指定する事項は少ない
Analysis Rule Typeの制約 • 異なる種類のAnalysis Rule Typeを使うクエリを走らせることはできない • AggregationのRuleを持つテーブルのみ、もしくはListのRuleを持つテーブ ルのみでクエリを構成する必要がある
AWS Clean Roomsでサポートされていないもの • SELECT以外のSQLコマンド • サブクエリおよびCTE (WITH句など) • 複数のクエリを結合する演算子
(UNIONなど) • TOP、LIMIT、OFFSETパラメータ
デモ • 2つのAWSアカウントのデータを用いた分析 • 広告に接触したユーザを分析 • 分析のステップ ◦ Collaborationの作成 ◦
Clean Room用のテーブルの設定 ◦ Analysis Ruleの設定 (Aggregation) ◦ クエリの実行 テーブル構造 分析者のテーブル データ提供者のテーブル