Twitter APIの仕様変更のため、「いいね」の新規取得を終了いたしました

黒木玄 Gen Kuroki

@genkuroki

  • いいね数 389,756/311,170
  • フォロー 995 フォロワー 14,556 ツイート 293,980
  • 現在地 (^-^)/
  • Web https://genkuroki.github.io/documents/
  • 自己紹介 私については https://twilog.org/genkuroki と https://genkuroki.github.io と https://github.com/genkuroki と https://github.com/genkuroki/public を見て下さい。
Favolog ホーム » @genkuroki » 2017年11月13日
並び順 : 新→古 | 古→新

2017年11月13日(月)

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#JuliaLang で函数fをf.(x',y)の形式で使うとどうなるか?x,yは単純な1次元の配列(縦ベクトル扱い)だとします。x'はxの転置(中身が複素数なら複素共役もとる)です。f.(x',y)はf(x[j],y[i])を(i,j)成分とする2次元配列になります。PyPlotで
pcolormesh(x,y,f.(x',y))
のような使い方をします。 pic.twitter.com/B5nWomKqnH

タグ: JuliaLang

posted at 22:53:00

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#JuliaLang nemocas.org/benchmarks.html を見ると、Julia言語で書かれたNemo.jlの多項式計算が全般的に速そうなことがわかります。巨大多項式の高速計算がもしも必要になったら、試してみる価値があると思います。高速多項式計算で困難に出会ったら、解決してくれそうな雰囲気もあるように思える。

タグ: JuliaLang

posted at 22:32:24

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#JuliaLang の魅力は、言語そのものの魅力だけではなく、その周辺で様々な解説をしてくれる人達の解説が非常に面白いところにもあると思います。Julia言語使いの人の解説は面白いことが多いです。

例えば、次のリンク先には単純な多項式計算の高速化を扱っています。
nemocas.org/benchmarks.html

タグ: JuliaLang

posted at 22:30:14

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#JuliaLang 続き。考え方が古過ぎだった。数値計算用の最適化されたコードの生成は高級言語の各種マクロを使って自動化した方がよい。以前にも紹介しましたが、そういう講義がMITではあるようです。以下のリンク先にJupyter notebookがあります。

nbviewer.jupyter.org/github/steveng...

タグ: JuliaLang

posted at 22:26:33

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#JuliaLang 私が非常に感心したのは、そのようなスタイルで書かれた連分数展開を利用させた数値計算用の函数に「文字変数」を代入してLaTeX的に綺麗に成形された連分数の式を出力させることができることを知ったときです。数値計算のコードはまず「紙の上で」最適化するものだと思っていました。続く

タグ: JuliaLang

posted at 22:23:37

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#JuliaLang では函数に何かを代入して計算させようとすると、代入したものの型に応じて、可能な限り適切にすぐさまコンパイルして実行してくれます。様々な型のものを代入しても高速に計算してくれる可能性を高くするためにはone(x)とかzero(x)のような書き方をしておくといいかも。

タグ: JuliaLang

posted at 22:21:49

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#JuliaLang を使うときに、最初に覚えた方がよいことは「重い計算はすべて函数の中に入れること」です。函数の外にナマで書くと非常に遅くなります。

あと、zero(x)とかone(x)のような書き方。xと同じ型の0や1です。xと同じ型の最大値もしくは無限大はtypemax(x)です。続く

タグ: JuliaLang

posted at 22:20:12

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#JuliaLang 自分で確率分布を定義することも簡単です。自分で定義した確率分布dの乱数の発生はquantile()を実装しておけばquantile(d,rand())で勝手にやってくれるようです。もちろんより高速なrandを直接実装してもよい。ソースコードを見れば大抵のことがわかります。

タグ: JuliaLang

posted at 22:13:51

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#JuliaLang 混合正規分布のような混合分布もDistributionsパッケージで定義できます。後、結構最近のことなのですが、1次元の確率分布を平行移動とスケール変換してできる確率分布を定義する仕組みも整備されました。

タグ: JuliaLang

posted at 22:11:18

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#JuliaLang の確率分布パッケージDistributions.jlの考え方は色々素直でいいです。例えば、ガンマ分布に従う乱数の100個生成は

d=Gamma(25,0.04)
X=rand(d,100)

だし、確率密度函数や累積確率函数は

pdf(d,x)
cdf(d,x)

です。確率分布dを各種確率がらみの函数に代入すると欲しい結果が得られる。

タグ: JuliaLang

posted at 22:09:43

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#JuliaLang Julia経由でPythonのmatplotlib.pyplotを使うときに、日本語フォントを使う方法のまとめが次のリンク先にあります。

gist.github.com/genkuroki/e748...
日本語フォントをPyPlotで使用する方法

この手の「数学」と無関係なところで時間がかかってしまう。

タグ: JuliaLang

posted at 22:04:17

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#JuliaLang Plotsパッケージじゃなくて、PyPlotパッケージを使うようになってしまいました。Python情報が大量に出回っているのでそれを「真似」すればいいので楽。ただし、axes()[:set_aspect]("equal")のような使い方ができないとPython→Juliaの翻訳は困難。

タグ: JuliaLang

posted at 21:59:47

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#JuliaLang 以上の準備のもとで

import PyPlot; plt=PyPlot
n=10^3
X,Y=randn(n),2randn(n)
X,Y=X+Y,X-Y
f=makefunc_pdfkde(X,Y)
plt.scatter(X,Y,c=f.(X,Y),s=5,cmap="CMRmap")
plt.axes()[:set_facecolor]("k")
plt.axes()[:set_aspect]("equal")

using PyPlotすればplt.は不要になる。 pic.twitter.com/vks0QcUfZ7

タグ: JuliaLang

posted at 21:55:08

黒木玄 Gen Kuroki @genkuroki

17年11月13日

おお!英数字をたくさん書けるようになったことは、ミニコードを貼り付けるときに便利!

タグ:

posted at 21:39:47

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#JuliaLang KDEは離散的なサンプルから連続的なプロットを行うときによく使われる。サンプル(配列)が二次元(2個)の場合には

function makefunc_pdfkde(X,Y)
local ik = InterpKDE(kde((X,Y)))
local pdfkde(x, y) = pdf(ik, x, y)
return pdfkde
end

密度による色付けによく使っている。

タグ: JuliaLang

posted at 21:34:08

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#JuliaLang これを以下のように「短く」しては**いけない!**

using KernelDensity
function makefunc_pdfkde(X)
local pdfkde(x) = pdf(InterpKDE(kde(X)), x)
return pdfkde
end

こうやって作った確率密度函数は激遅になる。ik = InterpKDE(kde(X))を1回計算して使い回さないとダメ。

タグ: JuliaLang

posted at 21:31:29

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#JuliaLang

using KernelDensity
function makefunc_pdfkde(X)
local ik = InterpKDE(kde(X))
local pdfkde(x) = pdf(ik, x)
return pdfkde
end

1次元のサンプルXからKDEで推定した確率密度函数を返す函数

使い方:
kde_sample = makefunc_pdfkde(sample)
kde_sample(1.5)

タグ: JuliaLang

posted at 21:29:22

歩行者は右側通行 @JikanBae

17年11月13日

自己相関関数やらケプストラムやらの図を作るのにJulia(とPyPlot)を使っていたら、それらの関数がどんどん蓄積されてゆく。車輪の再発明だしオレオレ分析関数ばかりになるけど、使いやすくなっていくなぁ。 #JuliaLang

タグ: JuliaLang

posted at 20:55:01

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#統計 #JuliaLang 以上のような方法である場合に計算したFreeEnergyはWBICより少し小さな値になってかつ、MCMCのサンプルの取り方に関する分散も小さいです。私はWBICを使うよりももっと素朴に数値積分した方がメリットがあるのではないかと思っているのですが、まだ確証はありません。

タグ: JuliaLang 統計

posted at 19:47:26

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#統計 #JuliaLang {at}sum マクロは for ループで和を取るためのマクロです。Julia言語では for ループで「ダサく」和を取った方がメモリが節約されてかつ計算も速いことが結構あります。E2nLn(β)はβで数値積分するので繰り返し何度も呼ばれるのでforループで和を取って計算することにしました。

タグ: JuliaLang 統計

posted at 19:45:22

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#統計 #JuliaLang pic.twitter.com/oHhoDkTMni
loglik[l,i]=log p(X_i|w_l)でsize(loglik)[1]=size(loglik,1)はlの個数(右辺のように書くべきだったか)。

sum(loglik,2)=Σ_i loglik[:,i]

E2nLn(β)=E^β_w[nL_n]は逆温度1の事後分布のサンプルを使って逆温度βでの平均を計算する函数。

タグ: JuliaLang 統計

posted at 19:42:18

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#統計 loglik[l,i]=log p(X_i|w_l)です(X_iは真の分布が生成したサンプル、w_lは逆温度1の普通の事後分布のサンプル)。WBICや0から1までの定積分による自由エネルギーの計算には、逆温度βの事後分布のサンプルをMCMCで作る必要はないです。

nbviewer.jupyter.org/gist/genkuroki...
pic.twitter.com/oHhoDkTMni

タグ: 統計

posted at 19:38:06

内田良:新刊『だれが校則を決めるのか』  @RyoUchida_RIRIS

17年11月13日

どゎゎゎ・・・
伝説の記者会見,動画公開に踏み切った・・・

国の審議会が始まる直前に,隣の会議室で,現職の声をアピール。
しかも,迅速に動画を編集,審議会の議事録をアップロードと,すごすぎる。 twitter.com/kimamanigo0815...

タグ:

posted at 18:08:26

斉藤ひでみ・現職教師(西村祐二) @kimamanigo0815

17年11月13日

【教員記者会見の映像公開】

11/6に行ないました、現職審議会による記者会見を、ほぼノーカットで公開しました。
現場の教員による訴えを、どうか聴いて下さい。
僕たちは引き続き、中教審・文科省等に働きかけを続けます。

www.kyodo-bukatsu.net/gs/kaiken/
※前半もですが、後半の質疑応答も見所です pic.twitter.com/JQqWRKLRw9

タグ:

posted at 17:29:23

非公開

タグ:

posted at xx:xx:xx

@kuri_kurita

17年11月13日

「復興増税」を言い出したのは13日だったそうだし、絶対にゴジラが暴れてる最中に増税を言い出したはず。

タグ:

posted at 14:04:19

やねうら王 @yaneuraou

17年11月13日

エクスキューズしてる姿に私は心を痛めている。「君たちこそが、本当のガチ勢なんだよ。もっと胸を張っていいんだよ。」と言ってやりたいが、やねうら王ライブラリ勢の親玉だと思われている私が言っても「何言ってんだ、こいつ」みたくなるので言わないし、言えない。

タグ:

posted at 13:23:45

やねうら王 @yaneuraou

17年11月13日

弱かろうと将棋ソフトをフルスクラッチで書いている学生さんとかが本当のガチ勢であって、ライブラリ使ってお手軽に勝つことを目指しているのはエンジョイ勢だと私は思う。前者の人達が大会で「二週間で出来ますた!」みたいなライブラリ勢のソフトにボコボコにされて「自分エンジョイ勢なんで…」と…

タグ:

posted at 13:17:24

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#統計 理論的にも言えていることなのですが、モデルが正則ではなく、特異な(場合に近い)ときには、サンプル数が小さくても収束し**易く**なります。特異モデルでは収束が**速く**なる。事後分布が広がったままで、事後予測分布が収束してしまう。

タグ: 統計

posted at 12:21:16

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#統計 #JuliaLang 被積分函数は E2nLn(β)=2E^β_w[nL_n] (2倍してあるのはBICの伝統的なスケールに合わせるため)で、quadgkが数値積分の函数。被積分函数の計算には逆温度βでの事後分布は必要なくて、逆温度1の通常の事後分布だけで十分です。

nbviewer.jupyter.org/gist/genkuroki...
にも解説があります。

タグ: JuliaLang 統計

posted at 12:15:44

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#統計 WBICの原論文の定理3の証明中にある定積分で自由エネルギーを表示する公式で自由エネルギーを計算しても、1変数函数の数値積分なので待ち時間はほとんどありません。添付画像は #JuliaLang での実装例。

nbviewer.jupyter.org/gist/genkuroki... pic.twitter.com/oHhoDkTMni

タグ: JuliaLang 統計

posted at 12:12:21

Jun Окаdа @ojunn

17年11月13日

「AIC (an information criterion の略記)」笑 twitter.com/genkuroki/stat...

タグ:

posted at 10:56:43

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#統計 以上は
twitter.com/genkuroki/stat...
の一部分の再掲。

「尤度をもっともらしさだ」と言いながらその理由を説明しないとか、ベイズ統計について「客観確率 vs. 主観確率」という対立図式に基いて説明したりする人達は「反赤池の立場」に立っていることになる。それって相当に怖いことだと思う。

タグ: 統計

posted at 10:52:07

Hiroki MORI (森 裕紀) モ @HirokiMori

17年11月13日

@HirokiSayama 佐山先生、この前言っていた話です。 twitter.com/genkuroki/stat...

タグ:

posted at 10:50:45

黒木玄 Gen Kuroki @genkuroki

17年11月13日

#統計 赤池弘次さんの論説

ismrepo.ism.ac.jp/?action=pages_...
統計的推論のパラダイムの変遷について

www.jstage.jst.go.jp/article/butsur...
エントロピーとモデルの尤度

「尤度ってどうしてもっともらしさなの?」「客観確率 vs. 主観確率という対立図式はおかしいよね?」のような疑問を持つ人達には特におすすめ。

タグ: 統計

posted at 10:48:27

黒木玄 Gen Kuroki @genkuroki

17年11月13日

ネタ再掲 #統計
www.jstage.jst.go.jp/article/butsur...
エントロピーとモデルの尤度
赤池 弘次

で赤池さんは

AIC (an information criterion の略記)

と書いていて、それに編集委員会が脚注を付けている(笑)。 pic.twitter.com/e6v49w9jlC

ismrepo.ism.ac.jp/?action=pages_...
もおすすめ。

タグ: 統計

posted at 10:46:59

Matthew Wingate @WingateMatthewB

17年11月13日

Just read this at link below. Funny cuz it's true [tho I'm still learning]. #JuliaLang ucidatascienceinitiative.github.io/IntroToJulia/H... pic.twitter.com/dZOMVYSY9g

タグ: JuliaLang

posted at 03:44:14

とにぃAntonio Camillo @Antonio_Camillo

17年11月13日

すごいもんですねぇ
匠の技ですな @Limportant_fr

pic.twitter.com/KtCdkGjeoX

タグ:

posted at 01:50:46

@genkurokiホーム
スポンサーリンク
▲ページの先頭に戻る
ツイート  タグ  ユーザー

User

» More...

Tag

» More...

Recent

Archive

» More...

タグの編集

掛算 統計 超算数 Julia言語 数楽 JuliaLang 十分 と教 モルグリコ 掛け算

※タグはスペースで区切ってください

送信中

送信に失敗しました

タグを編集しました