Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
プロダクション言語モデルの情報を盗む攻撃 / Stealing Part of a Produ...
Search
Henry Cui
May 28, 2024
Technology
260
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
プロダクション言語モデルの情報を盗む攻撃 / Stealing Part of a Production Language Model
Henry Cui
May 28, 2024
More Decks by Henry Cui
See All by Henry Cui
Direct Preference Optimization
zchenry
0
480
Diffusion Model with Perceptual Loss
zchenry
0
530
レンズの下のLLM / LLM under the Lens
zchenry
0
240
Go with the Prompt Flow
zchenry
0
260
Mojo Dojo
zchenry
0
280
ことのはの力で画像の異常検知 / Anomaly Detection by Language
zchenry
0
760
驚愕の事実!LangChainが抱える問題 / Problems of LangChain
zchenry
0
340
MLOps初心者がMLflowを触る / MLflow Brief Introduction
zchenry
0
230
{{guidance}}のガイダンス / Guidance of guidance
zchenry
0
210
Other Decks in Technology
See All in Technology
30座EKS, 180次升級淬煉的EKS Upgrade Skill 的歷程
eric8230
0
170
ソフトウェアDNAとクラウドエージェントのススメ
cloudace
0
110
JSONataとAWS Step Functionsで目指すRuntimelessな世界
mu7889yoon
0
170
SREへの勘違いに気づいた後の話
tomodakengo
0
110
事業課題から技術的負債に向き合う
sansantech
PRO
2
2k
AI時代の「技術的負債」の変質ー概念の終焉と再解釈、エージェントと共に向かう先
nwiizo
1
2.9k
絵ではじめるKubernetesセキュリティ
aoi1
4
670
AI に書かせたその API、 “信頼” できますか?
nagix
0
120
すぐできる衛星通信対応 あとは山奥に行くだけ
tatetate55
0
130
人間はどの意思決定を手放せるのか
kawasima
15
7.3k
バイブコーディング時代のWebアプリ開発入門~Cloud Runで学ぶセキュアなビルドとデプロイ
waiwai2111
1
140
What the customer really needed
kawaguti
PRO
3
210
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.6k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
910
Code Reviewing Like a Champion
maltzj
528
40k
The Spectacular Lies of Maps
axbom
PRO
1
1k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.6k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
Building Adaptive Systems
keathley
44
3.2k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.6k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
350
Joys of Absence: A Defence of Solitary Play
codingconduct
1
520
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
57k
Transcript
What's yours is mine and what's mine is my own.
~ プロダクション言語モデルの情報を盗む攻撃 ~ Henry Cui @ TAI AMAJ 2024/5/28
自己紹介 学歴 ▪ 東京大学教養学部理科 1類 → 理学部情報科学科 ▪ 東京大学大学院情報理工学系研究科コンピュータ科学専攻 研究テーマ:弱教師学習・能動学習
職歴 ▪ AI PoC開発の共同起業 仕事テーマ:画像解析・動画解析 現在 ▪ (Local)LLM 2 https://ja.foursquare.com/v/%E7%90%86%E5%AD%A 6%E9%83%A87%E5%8F%B7%E9%A4%A8/4bff8900 daf9c9b68c58faef Local GPT-4o がほしいね
Local GPT-4oを作るための論文 ▪ 2024年3月にarxivにICMLフォーマットで投稿され、すぐに話題になった • 研究チームが「モデル窃盗攻撃」の存在を初めて発見したのは 2020年のことですが、2023年10月 に実際に稼働している言語モデルで使用されている API上でこの攻撃手法が有効であると判明す るまで、モデル窃盗攻撃を用いた攻撃が実現可能であるとは考えられていなかったそうです。
• モデル窃盗攻撃に対して脆弱ではないいくつかの人気の高いサービスに対しても、攻撃の詳細を 共有したそうです。この通知を受け、 Googleは脆弱性に対応するためのアップデートを実施。 • OpenAIは2024年3月3日に攻撃に対するアップデートを実施したため、現地時間の 2024年3月11 日にモデル窃盗攻撃に関する論文が公開されるに至った模様。 • https://not-just-memorization.github.io/partial-model-stealing.html と GIGAZINEの記事 ▪ 昨日の確認で、ICML 2024にアクセプトされた模様 • https://icml.cc/virtual/2024/poster/33922 3
盗める部分はまだ一部 ▪ Softmaxをかける直前のEmbedding Projection Matrix(に関する(一部の)情報) 4 あの論文から 画像はイメージです https://medium.com/@YanAIx/step-by-step-into-gpt-70bc4a5d8714
提案手法 ▪ pは入力シーケンス、gはLLMの最終層までの全部で、 Wは盗む行列(h次元→l次元) ▪ 論文は複数の仮説状況での盗み方を提案 5 Logits Logitsがわか る場合はここ
を実行するだ け ・h次元数 ・Wの再現 上記情報を盗むメリット ・h次元数はある程度モデルサイズに相 関がある ・将来の攻撃のためにブラックネス度合 いを減らす ・より多くのパラメータ情報を盗む可能性 を示す ・モデル間のサイズ比較ができる Logitsがわか らない場合 は、Logitsを 復元する Logprobs Logit-bias
Logitsからh次元数を盗む ▪ 直感 • 最終層はh次元からl次元(h<<l)に射影するので、集められる l次元のベクトルは実質 h次元の空 間を張る • 十分な数のl次元出力を集めれば、生きている
h次元空間を張るベクトルを SVDで復元できる • SVD分解して、特異値をソートすれば次元数がわかる ▪ 提案法 • h個以上のrandom promptの出力ベクトルを集める( Qとする) • 集められたベクトル群を SVD分解し、特異値をソートする 6 EleutherAI/pythia-1.4bモデルを使った結果 ソートされた特異値の差分
LogitsからW (Up to Symmetries) を盗む ▪ SVD分解の結果そのまま使える! ▪ あるGが存在し、 ▪
評価時は、Gが不明なので、まず Gを解いてから、Root MSEで評価した • ランダム初期化されたモデルとの RMSは2e-2 7
Logitsが不明な場合の盗む方法 ▪ Logitsがすべて見れる仮説は強すぎる →Production LLM APIでは全Logitsにアクセスできない ▪ 論文では2種類のを想定 • Top
Logprobs with Logit-bias (Production LLM APIが良く取る形) → 紹介 • No Logprobs with Logit-bias (Potential Future LLM APIs) → 割愛 8 Logits Logitsがわか る場合はここ を実行するだ け ・h次元数 ・Wの再現 Logitsがわか らない場合 は、Logitsを 復元する Logprobs Logit-bias
Top Logprobs with Logit-biasからLogitsを復元 ▪ (論文公開前にほとんどの) LLM APIがアクセスできる情報 • Top
K Log Probabilities • Softmaxをかける前に足すbiasベクトルを指定できる ▪ 考え方 • Top K個の情報が得られるなら、 K個ごとの大きなbiasを足して推論するのを繰り返せば、すべての 情報が得られる ▪ 例えば、Top 5の場合 • logitsではなくて、logprobが出力されるので、Bを引くだけでは復元できない ▪ ▪ 対応法:差分計算 • Top Tokenがわかれば、毎回Top TokenとK - 1個の位置に大きなbiasを足して、差分を 計算できる。Softmaxはadditive shiftsに不変なのでOK。 • 極端なケース ▪ Top-1しか見れなくて、かつ biasの範囲を厳しく制限する ▪ biasがあり・なしの2回のクエリー結果を比較することで、差分を計算することが可能 ▪ 実験的には数値的に不安定 • OpenAIに攻撃を共有したのち、 logit-biasを考慮したlogprobsの出力を中止した 9
Production LLM APIでの性能評価 ▪ OpenAIのAPIでかなり良い結果を収めた 10
まとめ ▪ 結論:一部ではあるが、 LLMモデルの情報をAPIから取り出せる ▪ 研究内容以外の啓発 • 実用性・緊急性のある研究テーマ選び • 社会責任感のある研究活動は尊い
• 防ぐ手段を真摯に提案 ▪ 着目されるFuture Work:Extending this attack beyond a single layer • 非線形性で`no obvious methodology`と書いてあった • 素晴らしい手法の提案が楽しみ 11 Local GPT-4o の夢はまだ遠い