Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
t-SNE(途中)
Search
Ringa_hyj
September 22, 2020
Technology
0
69
t-SNE(途中)
Ringa_hyj
September 22, 2020
Tweet
Share
More Decks by Ringa_hyj
See All by Ringa_hyj
DVCによるデータバージョン管理
ringa_hyj
0
190
deeplakeによる大規模データのバージョン管理と深層学習フレームワークとの接続
ringa_hyj
0
82
Hydraを使った設定ファイル管理とoptunaプラグインでのパラメータ探索
ringa_hyj
0
150
ClearMLで行うAIプロジェクトの管理(レポート,最適化,再現,デプロイ,オーケストレーション)
ringa_hyj
0
150
Catching up with the tidymodels.[Japan.R 2021 LT]
ringa_hyj
3
850
多次元尺度法MDS
ringa_hyj
0
320
因子分析(仮)
ringa_hyj
0
160
階層、非階層クラスタリング
ringa_hyj
0
140
tidymodels紹介「モデリング過程料理で表現できる説」
ringa_hyj
0
460
Other Decks in Technology
See All in Technology
Karate+Database RiderによるAPI自動テスト導入工数をCline+GitLab MCPを使って2割削減を目指す! / 20251206 Kazuki Takahashi
shift_evolve
PRO
1
720
Playwrightのソースコードに見る、自動テストを自動で書く技術
yusukeiwaki
13
5.3k
品質のための共通認識
kakehashi
PRO
3
250
Database イノベーショントークを振り返る/reinvent-2025-database-innovation-talk-recap
emiki
0
120
AI駆動開発における設計思想 認知負荷を下げるフロントエンドアーキテクチャ/ 20251211 Teppei Hanai
shift_evolve
PRO
2
360
【AWS re:Invent 2025速報】AIビルダー向けアップデートをまとめて解説!
minorun365
4
510
AWSを使う上で最低限知っておきたいセキュリティ研修を社内で実施した話 ~みんなでやるセキュリティ~
maimyyym
2
390
5分で知るMicrosoft Ignite
taiponrock
PRO
0
350
非CUDAの悲哀 〜Claude Code と挑んだ image to 3D “Hunyuan3D”を EVO-X2(Ryzen AI Max+395)で動作させるチャレンジ〜
hawkymisc
2
170
年間40件以上の登壇を続けて見えた「本当の発信力」/ 20251213 Masaki Okuda
shift_evolve
PRO
1
120
多様なデジタルアイデンティティを攻撃からどうやって守るのか / 20251212
ayokura
0
430
Microsoft Agent 365 についてゆっくりじっくり理解する!
skmkzyk
0
250
Featured
See All Featured
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.6k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Building Flexible Design Systems
yeseniaperezcruz
330
39k
It's Worth the Effort
3n
187
29k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
54k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
A Tale of Four Properties
chriscoyier
162
23k
BBQ
matthewcrist
89
9.9k
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