Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.
オイラーの公式で感じる
次元の呪い
- R を使って -
#2 「はじめてのパターン認識」読書会 LT3
02.JUL.2013
株式会社リクルートキャリア
グラントウキョウサウスタワー
@ manozo
前回 私を悩ませたグラフ
「はじめてのパターン認識」 p6
これは一体なんだ? 私には理解不能!
100 次元の超立方体は、毬栗やウニのようなトゲトゲしたような形をしている。
描いてみようと
ジーと眺めるも
描けない
オイラーの公式
今日の主役
eiφ
=cosφ+isinφ
eiπ
+1=0 (φ=π の時 )
私の妄想にお付き合い下さい。
虚数 i とくれば複素数
http://www.th.phys.titech.ac.jp/~muto/
物理数学第一
平成18年度 学部 3学期
■ 第1章  複素数
http://www.th.phys.titech.ac.jp/~muto/...
eiφ
= cosφ+isninφ
Eular の公式を用いると,複素数 z は
z = r(cos φ + i sin φ) = reiφ
と書くことができる。
....
複素数の表現 z = reiφ
において φ が 0 から 2π ま
...
#1 の復習
• 超立方体( p.5 )
– d 次元単位超立方体の中心から頂点までの距離
1/2*sqrt(d) → 半径 r
– d 次元超立方体の頂点の数
2d
→ φ
円を分割?するのに使う
d: 次元
Rで書いてみる
たった 7 行
z <- c(0+0i, NA) # 中心( 0+0i )を付置(ベクトル)
for(d in 1:16){ # とりあえず 16(4*4) 次元まで
phi <- seq(0, 2*pi, length=2^d...
plot する
plot(z, type="b", pch=".")
実際はこんな感じ。レイヤーを重ねる感じ。
> par(pty = "s") # プロット領域を正方形にする
> plot(z, type="b", pch=".")
> gr...
中心
点々が
頂点
複素平面に plot
3次元
頂点が8個
3次元の場合
• これをベシャッ
と2次元につぶ
した感じ。
• 頂点は8個
まとめ
• オイラーの公式で偏角φ と中心からの距離r
– z = r ・ eiφ
= r(cosφ + i ・ sinφ)
• 複素数はRで普通に plot できる
– exp. plot(0+0i) # 複素平面に plot される
• s...
Rのおまけ
library(rgl) # rgl ライブラリを使って 3D
plot3d(Re(z), Im(z), Mod(z))
d <- 1:100
plot3d(2*d, sqrt(d)/2, 2^d)
面 距離 頂点
x y r (絶...
Rのおまけ2
• log を取って気分だけでも
どうせなら 1000 次元まで
z <- 0+0i
for(d in 1:1000){
phi <- seq(0, 2*pi, length=as.integer(log10(2^d))+1)
f...
こんな感じ
• マウスで動かせる
• マウスのクリクリ
で拡大縮小できる
• 参考 rgl ライブラリ
http://cse.naro.affrc.go.jp/t
      謝謝
Próxima SlideShare
Cargando en…5
×

オイラーの公式で感じる次元の呪い

  • Inicia sesión para ver los comentarios

オイラーの公式で感じる次元の呪い

  1. 1. オイラーの公式で感じる 次元の呪い - R を使って - #2 「はじめてのパターン認識」読書会 LT3 02.JUL.2013 株式会社リクルートキャリア グラントウキョウサウスタワー @ manozo
  2. 2. 前回 私を悩ませたグラフ 「はじめてのパターン認識」 p6 これは一体なんだ? 私には理解不能! 100 次元の超立方体は、毬栗やウニのようなトゲトゲしたような形をしている。 描いてみようと ジーと眺めるも 描けない
  3. 3. オイラーの公式 今日の主役 eiφ =cosφ+isinφ eiπ +1=0 (φ=π の時 ) 私の妄想にお付き合い下さい。
  4. 4. 虚数 i とくれば複素数 http://www.th.phys.titech.ac.jp/~muto/ 物理数学第一 平成18年度 学部 3学期 ■ 第1章  複素数 http://www.th.phys.titech.ac.jp/~muto/lecture ...
  5. 5. eiφ = cosφ+isninφ Eular の公式を用いると,複素数 z は z = r(cos φ + i sin φ) = reiφ と書くことができる。 .... 複素数の表現 z = reiφ において φ が 0 から 2π ま で変化すれば、 z を表す点は半径 r の円周上 を一周する。 第1章 複素数 p3これを使ってできるかも!
  6. 6. #1 の復習 • 超立方体( p.5 ) – d 次元単位超立方体の中心から頂点までの距離 1/2*sqrt(d) → 半径 r – d 次元超立方体の頂点の数 2d → φ 円を分割?するのに使う d: 次元
  7. 7. Rで書いてみる たった 7 行 z <- c(0+0i, NA) # 中心( 0+0i )を付置(ベクトル) for(d in 1:16){ # とりあえず 16(4*4) 次元まで phi <- seq(0, 2*pi, length=2^d+1) # φ for(i in phi) z <- c(z, sqrt(d)/2*exp(1)^(1i*i)) z<-c(z, NA) # 区切る } z=r ・ eiφ 中心からの頂点までの距離 (r) sqrt(d)/2 頂点の数 2d 0 2π 頂点の数 +1 e 虚数 i×phi
  8. 8. plot する plot(z, type="b", pch=".") 実際はこんな感じ。レイヤーを重ねる感じ。 > par(pty = "s") # プロット領域を正方形にする > plot(z, type="b", pch=".") > grid() # グリッド > points(z, type="b", pch=".") # グリッドを上書き > points(0+0i, pch=20) # 0+0i だけをプロット 想像できましたね!
  9. 9. 中心 点々が 頂点 複素平面に plot 3次元 頂点が8個
  10. 10. 3次元の場合 • これをベシャッ と2次元につぶ した感じ。 • 頂点は8個
  11. 11. まとめ • オイラーの公式で偏角φ と中心からの距離r – z = r ・ eiφ = r(cosφ + i ・ sinφ) • 複素数はRで普通に plot できる – exp. plot(0+0i) # 複素平面に plot される • seq(0, 2*pi, length = ...) – 0 から2π をlength で等間隔に分割(頂点) • 100 次元までチャレンジしてください – 「次元の呪い」が体感できます。 – 但し頂点は1267650600228229401496703205376 個 100 次元超立方体は3次元空間では ツルツルじゃないのかなぁ~?    さてアンブレラは何次元?    (傘の骨は普通は8本)
  12. 12. Rのおまけ library(rgl) # rgl ライブラリを使って 3D plot3d(Re(z), Im(z), Mod(z)) d <- 1:100 plot3d(2*d, sqrt(d)/2, 2^d) 面 距離 頂点 x y r (絶対値)
  13. 13. Rのおまけ2 • log を取って気分だけでも どうせなら 1000 次元まで z <- 0+0i for(d in 1:1000){ phi <- seq(0, 2*pi, length=as.integer(log10(2^d))+1) for(i in phi) z <-c(z, sqrt(d)/2*exp(1)^(1i*i)) z <-c(z, NA) } library(rgl) # rgl ライブラリを使って 3D プロット plot3d(Re(z), Im(z), Mod(z),type="l",col=rainbow(1000)) 次のページに plot
  14. 14. こんな感じ • マウスで動かせる • マウスのクリクリ で拡大縮小できる • 参考 rgl ライブラリ http://cse.naro.affrc.go.jp/t       謝謝

×