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
t-SNE(途中)
Search
Ringa_hyj
September 22, 2020
Technology
94
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
t-SNE(途中)
Ringa_hyj
September 22, 2020
More Decks by Ringa_hyj
See All by Ringa_hyj
DVCによるデータバージョン管理
ringa_hyj
0
400
deeplakeによる大規模データのバージョン管理と深層学習フレームワークとの接続
ringa_hyj
0
110
Hydraを使った設定ファイル管理とoptunaプラグインでのパラメータ探索
ringa_hyj
0
230
ClearMLで行うAIプロジェクトの管理(レポート,最適化,再現,デプロイ,オーケストレーション)
ringa_hyj
0
250
Catching up with the tidymodels.[Japan.R 2021 LT]
ringa_hyj
3
880
多次元尺度法MDS
ringa_hyj
0
380
因子分析(仮)
ringa_hyj
0
210
階層、非階層クラスタリング
ringa_hyj
0
160
tidymodels紹介「モデリング過程料理で表現できる説」
ringa_hyj
0
680
Other Decks in Technology
See All in Technology
白金鉱業Meetup_Vol.24_「AIエージェントは分けるほど良い」は本当か? / Is it true that “the more you divide AI agents, the better”?
brainpadpr
1
420
いまさら聞けない「仕様駆動開発入門」 〜AI活用時代の開発プロセスを考える〜
findy_eventslides
2
160
スタートアップにAmazon EKSは早すぎる? マルチプロダクト戦略を加速する Platform Engineeringの実践 / Is Amazon EKS Too Soon for Startups? Practical Platform Engineering to Accelerate a Multi-Product Strategy
elmodev09
0
380
20260619 私の日常業務での生成 AI 活用
masaruogura
1
230
Oracle AI Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
6
2k
AIAU_UMEMOGU_ninomiya_slide
ninomiya_ii
0
240
SONiCのLinuxベースを活かしたZabbix監視
sonic
0
230
エラーバジェットのアラートのタイミングを考える.pdf
kairim0
0
170
不要なレビューをAIにまかせて AIコーディングの環境改善を加速した
shoota
1
230
GitHub Copilot 最新アップデート – 「一歩先」の実践活用術
moulongzhang
5
1.5k
iOS アプリの「これって不具合ですか?」を AI に調べてもらう
miichan
0
100
小さく始める AI 活用推進 ― 日経電子版 Web チームの事例/nikkei-tech-talk47
nikkei_engineer_recruiting
0
300
Featured
See All Featured
Joys of Absence: A Defence of Solitary Play
codingconduct
1
400
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
180
Navigating Team Friction
lara
192
16k
Heart Work Chapter 1 - Part 1
lfama
PRO
7
36k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
630
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.1k
How Software Deployment tools have changed in the past 20 years
geshan
0
34k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.7k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
160
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
GraphQLとの向き合い方2022年版
quramy
50
15k
Transcript
Visualizing Data using t -SNE
高次元データをt-senにより二次元空間上で可視化する hintonらの研究 stochastic neighbor embedding(SNE)の派生である その技術よりも異なるスケールのデータを可視化することに優れている 古典的な様々な手法もあるが、これらは2次元以上の空間を持っていたりする そのため高次元データを二次元におとすことが得意とは言えない PCA 1933
MDS 1952 などは線形空間での距離を離そうとする試みであるので、非線形空間での関係性には使えない さらに近年までいくつかのアプローチがあったが、どれも非線形な構造や、2次元に移すことができなかった 本論文のt-SNEは高次元のデータを二次元に落とせるだけでなく、 クラスタの存在や、非線形な関係を可視化することができる
そもそもSNEって? データ間のユークリッド距離をもとに類似性を計算する あるデータを正規分布の中心と考えた時、その周辺のデータがどれだけの確率で、その正規分布の 一員であるか、という確率を考える つまり、中心xiがあるという条件での、xjがおなじクラスタであるという条件付き確率である 近いデータならば確率は高く、離れたデータならば確率は低い なおかつ、点xiとxiの関係は0である
そもそもSNEって? 写像される空間上の点yについても同じように考える 点同士の距離は二乗距離を使う
そもそもSNEって? 高次元空間上で近い距離のデータが、低次元空間内でも、その性質を維持したままであることが 望ましいので、距離=条件付き確率 の値が近くなるように計算を行う (同じ仲間は低次元でも同じにしたい) 確率なのでKLダイバージェンスを考える あとはこれをgradient descentで最適化する
そもそもSNEって? ただし、KLダイバージェンスは対称でないので、 低次元空間上で十分に特徴を捉えられているとはいえない (iからみたjまでの距離の値と、jから見たiの距離の値がことなってしまう σのせい?) これを非対称と呼ぶ ゆえにSNEは空間上の局所的なデータ構造を保持することに特化している
そもそもSNEって? 距離を測る分散の決め方 高次元空間でのデータ点の密度は異なるので どのデータ点はどれだけ大きな分散(仲間とみなす範囲)をもっていればいいのか、 を考えなければならない これを探索するためには、preplexityを(ユーザーが)一定に定めて、適合するようなσを探す
そもそもSNEって? 勾配は以下のような簡単な式でもとまる yiとyjの距離で重みづけしたような式として解釈できる 高次元空間から低次元空間へのマッピング(初期はランダムな写像をつくっておく?)の 最適化では、慣性項(モーメンタム)をつけ、高速化と局所解に陥ることを避ける工夫をおこなう tはイテレーション数 ηは学習率 a(t)はモーメンタムの重み
そもそもSNEって? SNEは最適化する際に初期ノイズの設定や、イテレーション数、学習率、など 弄るべき項目が多く、 何度かパラメタを変えた最適化を試す必要がでてくる 最適化が難しい“crowding problem” t-SNEではガウス分布でなくスチューデントのt分布を用いる 対称なSNE crowding problemとその解決
t-SNEの最適化方法 の順で説明する
高次元空間の確率密度Pと低次元のQのKLダイバージェンスの和を最小化するのがSNEの話だった 和の代わりに、一点一点のダイバージェンスを小さくすることを考えてみよう 一点一点の類似度の計算は以下のようになる (低次元空間では、高次元では分散を固定、) ※高次元のデータに外れ値があった場合には問題が発生する lってなに?
SNEでは 非対称な問題があったので、これを対象にするため、以下の処理を行う 勾配は以下の様に簡単になる
crowding problem スイスロールのようなデータを考える 高次元データ空間での距離を二次元空間での距離に置き換えようとした場合 次元の呪いによって、二次元空間ではかなり離れた値になってしまう UNI-SNEをつかうことでcrowdingに対抗しよう
高次元空間ではガウシアンよりも裾の長いstudent t分布をつかうことで、 高次元上の距離をうまくはかってやろう
None
None
None
None
None
None