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
0
55
t-SNE(途中)
Ringa_hyj
September 22, 2020
Tweet
Share
More Decks by Ringa_hyj
See All by Ringa_hyj
Catching up with the tidymodels.[Japan.R 2021 LT]
ringa_hyj
3
780
多次元尺度法MDS
ringa_hyj
0
230
因子分析(仮)
ringa_hyj
0
110
階層、非階層クラスタリング
ringa_hyj
0
84
tidymodels紹介「モデリング過程料理で表現できる説」
ringa_hyj
0
380
深層学習をつかった画像スタイル変換の話と今までの歴史
ringa_hyj
0
360
正準相関分析(仮)
ringa_hyj
0
92
対応分析
ringa_hyj
0
110
2020-11-15-第1回-統計学勉強会
ringa_hyj
0
690
Other Decks in Technology
See All in Technology
使えそうで使われないCloudHSM
maikamibayashi
0
170
大規模データ基盤チームのオンプレTiDB運用への挑戦 / dpu-tidb
cyberagentdevelopers
PRO
1
110
話題のGraphRAG、その可能性と課題を理解する
hide212131
4
1.5k
プロダクトチームへのSystem Risk Records導入・運用事例の紹介/Introduction and Case Studies on Implementing and Operating System Risk Records for Product Teams
taddy_919
1
170
プロダクトエンジニアが活躍する環境を作りたくて 事業責任者になった話 ~プロダクトエンジニアの行き着く先~
gimupop
1
480
新卒1年目が挑む!生成AI × マルチエージェントで実現する次世代オンボーディング / operation-ai-onboarding
cyberagentdevelopers
PRO
1
170
[JAWS-UG金沢支部×コンテナ支部合同企画]コンテナとは何か
furuton
3
260
[AWS JAPAN 生成AIハッカソン] Dialog の紹介
yoshimi0227
0
150
ネット広告に未来はあるか?「3rd Party Cookie廃止とPrivacy Sandboxの効果検証の裏側」 / third-party-cookie-privacy
cyberagentdevelopers
PRO
1
130
新卒1年目が向き合う生成AI事業の開発を加速させる技術選定 / ai-web-launcher
cyberagentdevelopers
PRO
7
1.5k
【若手エンジニア応援LT会】AWSで繋がり、共に成長! ~コミュニティ活動と新人教育への挑戦~
kazushi_ohata
0
180
事業者間調整の行間を読む 調整の具体事例
sugiim
0
1.5k
Featured
See All Featured
Designing Experiences People Love
moore
138
23k
Documentation Writing (for coders)
carmenintech
65
4.4k
Designing on Purpose - Digital PM Summit 2013
jponch
115
6.9k
Why You Should Never Use an ORM
jnunemaker
PRO
53
9k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Git: the NoSQL Database
bkeepers
PRO
425
64k
For a Future-Friendly Web
brad_frost
175
9.4k
GitHub's CSS Performance
jonrohan
1030
460k
Become a Pro
speakerdeck
PRO
24
5k
Why Our Code Smells
bkeepers
PRO
334
57k
Statistics for Hackers
jakevdp
796
220k
Learning to Love Humans: Emotional Interface Design
aarron
272
40k
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