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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Ringa_hyj
September 22, 2020
Technology
110
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
440
deeplakeによる大規模データのバージョン管理と深層学習フレームワークとの接続
ringa_hyj
0
120
Hydraを使った設定ファイル管理とoptunaプラグインでのパラメータ探索
ringa_hyj
0
250
ClearMLで行うAIプロジェクトの管理(レポート,最適化,再現,デプロイ,オーケストレーション)
ringa_hyj
0
280
Catching up with the tidymodels.[Japan.R 2021 LT]
ringa_hyj
3
890
多次元尺度法MDS
ringa_hyj
0
450
因子分析(仮)
ringa_hyj
0
220
階層、非階層クラスタリング
ringa_hyj
0
160
tidymodels紹介「モデリング過程料理で表現できる説」
ringa_hyj
0
690
Other Decks in Technology
See All in Technology
研究開発部の紹介 / Sansan R&D Profile
sansan33
PRO
4
24k
サービス内で複数のOP・ASを連鎖させる(OAuth/OIDC Numa (Immersion) Workshop 2026)
oidfj
PRO
0
270
Microsoft MVP プログラムを紹介するから目指す人増えてくれ
tsubakimoto_s
0
110
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
12
85k
dbt と Snowflake と tag
kevinrobot34
1
250
Master Dataグループ紹介資料
sansan33
PRO
1
4.8k
dbt in Microsoft Fabric
ryomaru0825
0
260
巨大気象データと戦う ― サロゲートモデル学習を高速化する圧縮技術
gpuunite_official
0
280
Eight Engineering Unit 紹介資料
sansan33
PRO
3
8.3k
Bill One 開発エンジニア 紹介資料
sansan33
PRO
7
20k
医療の現場を変革に挑戦した半年間の軌跡 - PythonとAIで現場を変える / From Code to Care
soudai
PRO
1
620
わたしが知り合いゼロの勉強会に 行けるようになるまで
r5ni4
2
800
Featured
See All Featured
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Six Lessons from altMBA
skipperchong
29
4.5k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
360
Leo the Paperboy
mayatellez
8
2.2k
How to build a perfect <img>
jonoalderson
1
5.9k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
Designing for Performance
lara
611
70k
Deep Space Network (abreviated)
tonyrice
0
270
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
430
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
420
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
280
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
380
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