黒木玄 Gen Kuroki
- いいね数 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 を見て下さい。
2020年09月06日(日)
須山敦志 Suyama Atsushi @sammy_suyama
現状PPLはPythonの方が充実しています。ただ、JuliaでもGen.jlやTuring.jlなどのPPLがあります。
>PPLでもJuliaがお勧めですか?PPLのパッケージもあるのでしょうか?
タグ:
posted at 22:31:48
須山敦志 Suyama Atsushi @sammy_suyama
JuliaのPyCallで実現可能と思われます。
>Juliaで実装するときはTfpを使えないのでしょうか?使えない場合はどのように実装しているのでしょうか?
タグ:
posted at 22:30:42
ごまふあざらし(GomahuAzaras @MathSorcerer
こんな感じでできました
#Julia言語 pic.twitter.com/o1jOmHcwIc
タグ: Julia言語
posted at 21:39:51
おーー最新のOhMyREPL.jlで、ctrl+Rがファジーサーチになっている!! Fzf by KristofferC · Pull Request #216 · KristofferC/OhMyREPL.jl github.com/KristofferC/Oh...
タグ:
posted at 21:37:17
Juliaでいろいろやろうと思ってたけど解きたい問題の定式化で終わっちゃったな
もうちょっと詰めたいところもあるし大学にある本も読みたいし,モチベーション切らさずにやっていこう
タグ:
posted at 21:31:33
blueqat cloudがJuliaに対応しました!みんなJuliaで量子コンピュータやろうぜ!
blueqat.com/?hl=ja pic.twitter.com/gSUaaAEcyc
タグ:
posted at 21:26:01
Hands-On Design Patterns and Best Practices with Julia: Proven solutions to common problems in software design for Julia 1.x
amzn.to/3buey5s
Juliaのデザインパターンフムフム
タグ:
posted at 21:17:17
ごまふあざらし(GomahuAzaras @MathSorcerer
こういう幾何系の構造体をスマートに設計できる言語
はいいプログラミング言語だと思ってます.
タグ:
posted at 21:02:06
ごまふあざらし(GomahuAzaras @MathSorcerer
この図を作るために午後格闘してたんですが思ったよりも
抽象度が高いモジュールができましたので供養します(・ω・`).みんなは GeometryBasics.jl を使おうな!
gist.github.com/terasakisatosh... pic.twitter.com/ysc7bMbO44
タグ:
posted at 20:58:50
こちらがソースコードです(module としての処理をまだやってないので include 文でごまかしてます。ゆるしてちょんまげ)
github.com/mat-der-D/Juli...
タグ:
posted at 20:49:14
最近ずっと育ててる Julia のスペクトル法のモジュールで1次元の熱方程式を解いてみました。
初期値を u=sinc(5x) にして ∂u/∂t=Δu を解いてます。 pic.twitter.com/pwVJGzq1kg
タグ:
posted at 20:45:13
水波ユキノ@skeb依頼受付中だいたい絵 @minami_suiha
ただ単にシングルクオでくくってしまったからエラー起きてた(*ノω・*)テヘ twitter.com/minami_suiha/s... pic.twitter.com/3Un8NPR8K3
タグ:
posted at 20:34:31
@nholzschuch No Apple PRs, no. They have provided help and support on some specific questions, but GCC/gfortran is not among the projects they directly contribute to (sadly).
タグ:
posted at 20:28:41
ごまふあざらし(GomahuAzaras @MathSorcerer
getproperty を 拡張する前に 拡張前の物を使うようにしたいんだけれど再帰しすぎてスタックオーバーフローする( ´△`)
#Julia言語
Base.getproperty(g::Goma, sym::Symbol)
if sym == :newsym
何かをする
else
古いほうの getproperty(g,sym)
end
end
タグ: Julia言語
posted at 20:26:10
One-line patch, removing 5 characters. Took hours of work to get there, of course. pic.twitter.com/EGU74kPlNu
タグ:
posted at 20:10:03
Progress report for gfortran on Apple Silicon: down from 811 to 166 test failures! Patch sent out for review. pic.twitter.com/OrnUDr1EBO
タグ:
posted at 20:08:54
プログラミング弱者だけど、この本買ってきた。ゆっくり読んでいこう。
1から始める Juliaプログラミング | コロナ社 www.coronasha.co.jp/np/isbn/978433...
タグ:
posted at 19:42:54
@MathSorcerer Francesco has a thorough talk on this. Start at 20:00. youtu.be/Y95fAipREHQ?t=...
タグ:
posted at 19:39:56
小学生が強要されているルールについて間違えていた人が、まだやるのですか? #掛算 togetter.com/li/1587814#c81...
「#超算数② 掛け算の順序の擁護派には2種類(厳密には2×2で4種類)いるらしい」togetter.com/li/1587814 にコメントしました。
タグ: 掛算
posted at 18:44:52
非公開
タグ:
posted at xx:xx:xx
非公開
タグ:
posted at xx:xx:xx
ごまふあざらし(GomahuAzaras @MathSorcerer
The answer is that Ptr (or other parametric types like Array) is a different kind of type called a UnionAll type. Such a type expresses the iterated union of types for all values of some parameter.
タグ:
posted at 17:33:22
ごまふあざらし(GomahuAzaras @MathSorcerer
We have said that a parametric type like Ptr acts as a supertype of all its instances (Ptr{Int64} etc.). How does this work? Ptr itself cannot be a normal data type, since without knowing the type of the referenced data the type clearly cannot be used for memory operations.
タグ:
posted at 17:33:22
ごまふあざらし(GomahuAzaras @MathSorcerer
なかなか初見殺し感ある
#Julia言語 pic.twitter.com/Eyd7ZATiXb
タグ: Julia言語
posted at 17:32:20
昨日飲み屋で政治談義。某出版社の経営者がいつものごとく「日本人はみんなバカだ」と強く言っていた。まあ自分は左翼のお利口さんと言いたいのだろうが。前に常連に「安倍を刺し殺せ」と何度も頼んでいたが、自分でやれよと言ってから反省したようで言わなくなった。
タグ:
posted at 16:25:41
生成器の標準出力がゆっくりすぎるのかもしれないと思って、生成器でファイルを作っているところを、一旦内容を全部stringにためてからファイルに書き出すようにしたらうまくいった!
標準入出力完全に理解した。
タグ:
posted at 16:23:14
#Julia言語 IJulia上では
using Plots
pyplot(fmt=:svg)
はheatmapなどをfmt=:png付きで使うことにすれば作画がきれで非常によい。さらに
PyPlot.svg(true)
IJulia.postexecute_hooks[1] = PyPlot.close_figs
using PyPlot: display_figs, plt, matplotlib
gist.github.com/genkuroki/ffd8...
タグ: Julia言語
posted at 16:10:11
#Julia言語 コメント
(1) @ pyimport は deprecated です。
(2) PyPlot.jl を入れれば、
using PyPlot
でmatplotlib.pyplotが使用できます。
(3) アニメーション作成はPlots.jlの方が便利。
(4) using Plots; pyplot(); using PyPlot: plt すれば Plots.jl と PyPlot.jl を同時に使えます。 twitter.com/4310sy/status/...
タグ: Julia言語
posted at 16:10:10
@erin_yagokoro 横からすいません。juliaだとはじめのusing の処理は1回目は時間かかります。juliaコマンドうって、対話モードでやるなら、using終わった後は早いと思います
タグ:
posted at 15:54:55
@genkuroki 僕も少し調べたことがあるんです、LibSndFile.jlが依存しているSampledSound.jlがCompat.jlのバージョン2を指定していて、Compat 3を指定している他のパッケージが影響を受けているように見えました。
タグ:
posted at 15:44:19
#Julia言語 私の環境では2つの結果は同じになりました。
私は
pkg> generate libsndfile
shell> cd libsndfile
pkg> activate .
pkg> instantiate
pkg> add LibSndFile
pkg> add FileIO
して、LibSndFile.jlをデフォルトのProject.tomlに登録しないようにしています。続く
twitter.com/kogad_/status/... pic.twitter.com/ng0qAclRht
タグ: Julia言語
posted at 15:28:34
Automatic differentiation with pure #JuliaLang in a tweet. twitter.com/marksaroufim/s...
タグ: JuliaLang
posted at 15:27:12
先ほどのツイートの補足.LibSndFile.jl の load() についてですが,下の図のようなことが起きていました.
load() で返ってくるものは,loadstreaming() |> read と以前は同じものだったはずですが,何故か違うものが返ってくるように.
twitter.com/genkuroki/stat... pic.twitter.com/gaqGKIjABu
タグ:
posted at 15:19:26
#Julia言語 分岐
メモリ割当の問題はJuliaに限らない問題です。
ガベージコレクション付きの環境でプログラムを書くときには意識しないといけないことの一つ。
kawasin73.hatenablog.com/entry/2019/11/...
twitter.com/genkuroki/stat...
メモリアロケーションに対する罪悪感 - kawasin73のブログ (Go言語の話題)
タグ: Julia言語
posted at 15:18:05
@togekissu1234 #Julia言語 はガベージコレクション付きで、どんどん気軽にメモリを割り当てながら、最後まで計算してしまいます。
計算速度を気にする場合にはそれだとまずくて
* メモリ割当は生じるが全体として速くなる書き方
* メモリ割当が生じないので速くなる書き方
の選択を自分でする必要があります。
タグ: Julia言語
posted at 15:15:08
#Julia言語 私もLibSndFile.jlを試してみました。
using FileIO
using LibSndFile
wav = load("foo.wav")
のように使える。
ソースコード↓
nbviewer.jupyter.org/gist/genkuroki... twitter.com/kogad_/status/... pic.twitter.com/bHhn53F2dx
タグ: Julia言語
posted at 15:02:24
非公開
タグ:
posted at xx:xx:xx
Flux.jl が依存している Zygote.jl が依存している ChainRuleCore.jl あたりで (LLVM) IR という概念が出てきて僕は瞳を閉じた……
タグ:
posted at 14:33:42
A⇒B⇒…⇒E⇒Aという証明方法を知ったときの衝撃は忘れられない。同じくこれも。(齋藤正彦『線型代数入門』より) twitter.com/genkuroki/stat... pic.twitter.com/IEpadVytPt
タグ:
posted at 14:28:49
RStanには各種周辺ツールが揃っているのに対して、PyStanではArviZが出てようやくBayesplot(だったか?)相当のことができるようになったのです。
統計ガチ勢がPythonよりRに多いことを反映したものか。
タグ:
posted at 14:11:38
最近のプログラミング言語はパッケージ管理について,必要だからいいでしょ?という調子でがばっとダウンロード・インストールするけど,どこまでいくだろう.
最小構成のLinux一式とか入れられそうな気もする.
タグ:
posted at 13:52:23
#Julia言語 の const は型が変更不可能な変数になる。」
これ、実はかなり不便。試行錯誤の過程で同名のconstを別の型にしたくなることは多い。
だから、私はconstを使わなくても、計算速度的に問題がないコードを書くようにしています。続く twitter.com/purewater0901/...
タグ: Julia言語
posted at 13:24:04
#Julia言語
Juliaのsumは大抵の場合クソ速いです。
コードを公開すればアドバイスをもらえると思う。
ループの内側で巨大2次元配列Aについて
sum(f.(A[:,j]))
を計算させると、A[:,j]とf.(A[:,j])でメモリ割当が生じるので要注意。
sum(f, @ view A[:,j])
なら大丈夫。@の後の空白は除く。 twitter.com/togekissu1234/...
タグ: Julia言語
posted at 13:19:26
梅崎さんが正しい。
大学理学部数学科でも、演習で学生が
A ⇔ B
⇔ C
⇔ D
⇔ E
のような「証明」を書いて来たときには大抵ギャップが残っていて、例えば「DからCが出ることは自明なんですか?自明と言えるためにはノータイムで証明をすぐに書けることが必要です」と質問すると大抵潰れる。 twitter.com/unaoya/status/...
タグ:
posted at 13:10:51
@Inazuma_110 JupyterLabではなく、Jupyter notebook の方では、画面全体がどのように推移しますか?
あと、以下のリンク先の処方箋は試して見る価値があります。
Windowsならjupyter.exeを探してそのフルパスを設定します。
例
julia> ENV["JUPYTER"] = raw"C\Anaconda3\Scripts\jupyter.exe" twitter.com/genkuroki/stat...
タグ:
posted at 12:55:48
@genkuroki 補足するとCentOS上でDocker-composeで動かしていて,PythonとRは動きますが,Juliaだけ動きません
コンテナのwork内にホストのディレクトリをマウントしていて,その外のipynbのJuliaは動きます…
タグ:
posted at 12:51:51
1に代入したらダメと言うよりは1に代入して出た解がちゃんと問題の条件に合うか確かめましょうという話をする方が教育的というかより広く必要な考え方だと思うのでそれを話したいですね。途中過程が全部同値な言い換えでなくてもよいし、自由度が下がるからあんまり気にしなくてもいいとも思う。
タグ:
posted at 12:47:51
#Julia言語
Juliaのmoduleは単に名前空間を区切っているだけ。身も蓋もない。
Juliaのパッケージはパッケージ名のディレクトリ以下に置かれます。ただし、同じパッケージの複数のバージョンを置くことができるようになっていて、たまに
pkg> gc
しないとゴミがギガバイト単位で累積する(笑)。 twitter.com/dsuke_kato/sta...
タグ: Julia言語
posted at 12:36:53
#Julia言語 Julia版のコードはオリジナル版を少し改変して、Stringのような具体的な型がコード中に出て来ないようにしてあります。
f(x::Foo) = "foo"
の右辺にはxが出て来ないので左辺でも省略できて
f(::Foo) = "foo"
と書けます。型Foo上のconstant function.
gist.github.com/genkuroki/8e04... pic.twitter.com/OnuWejKegn
タグ: Julia言語
posted at 12:18:47
#統計 私によるKL情報量とSanovの定理に関する易しい部分に限った解説は以下の場所にあります。
i.i.d.の統計学における統計力学のカノニカル分布の類似の話が詳しく書かれています。(注意:結果は正しいですが、論理的に厳密には書いていないです。)
genkuroki.github.io/documents/2016...
タグ: 統計
posted at 12:13:10
#統計 赤池弘次さんは
www.jstage.jst.go.jp/article/butsur...
エントロピーとモデルの尤度
赤池 弘次
1980
のp.610の右半分でSanovの定理に当たることをSanovの定理と言わずにエントロピーの言葉で説明しています。
KL情報量とFisher情報量の関係もその次のページで説明されている。 pic.twitter.com/K1emLPsoI7
タグ: 統計
posted at 12:08:36
#統計 以下、w=(w_1,…,w_d)
それです!KL情報量
D(p(•|w₀)||p(•|w₀+Δw))
はΔw=0で最小になるので、Δwについて展開すれば1次の項は消えて、2次の部分にFisher情報行列が出て来ます。
あと、KL情報量が距離空間の意味での距離の公理を満たさないのは、Sanovの定理の立場からは当然。続く twitter.com/physics303/sta...
タグ: 統計
posted at 11:52:36
#Julia言語
www.youtube.com/watch?v=kc9Hws...
JuliaCon 2019
Stefan Karpinski
の07:00以降の
Function Overloading (と Multiple Dispatch of Julia の違い)
の例。
1. Julia版とその実行結果
2. C++版
3. C++版の実行結果 (残念なFALLBACKをしている)
gist.github.com/genkuroki/8e04... pic.twitter.com/O6elNoW6hM
タグ: Julia言語
posted at 11:43:41
あれ試しに
cat a.html > b.html
として b.html を更新してみたらブランクページならずにちゃんと b.html がライブリロードされました。ぐぬぬ「生成器」の動きがどう違うのか……。
タグ:
posted at 11:25:24
フロントエンド先生〜〜〜!
ライブリロードに browser-sync という npm を使ってみたんですが、hoge.html を直接書き換えるとちゃんとリロードしてくれるんですが、
生成器 > hoge.html
とすると真っ白のブランクページになってしまいます。
解決策をお持ちの方いらっしゃいますか?
タグ:
posted at 11:24:12
はてなブログに投稿しました #はてなブログ
JuliaとMatplotlibでグラフを作る際のハマりポイントとサンプルプログラム集 - EurekaMoments
www.eureka-moments-blog.com/entry/2020/09/...
タグ: はてなブログ
posted at 10:25:14
Juliaのモジュールシステム、C++に近いイメージ。PythonやRustはディレクトリ名がモジュールに対応するけど、Juliaにはそれがなくてモジュールの宣言がどこで行われるか分かりにくい印象がある。
タグ:
posted at 09:04:08
#ABM framework for #JuliaLang - complete with DataFrames outputs for experiment analysis. Nice! twitter.com/MathSorcerer/s...
posted at 08:29:14
Rustここ最近の人気言語。習得のハードルが高いらしい。
Juliaって言語はしらなかった。
Dartがいがいに上位になっているFlutterの影響かな。
stackoverflow.blog/2020/05/27/202...
タグ:
posted at 07:46:17
This is an awesome example of multiple dispatch in action. It’s so easy to write composable code with #JuliaLang twitter.com/marksaroufim/s...
タグ: JuliaLang
posted at 05:36:58
New post: SciML Ecosystem Update: Koopman Optimization Under Uncertainty, Non-Commutative SDEs, GPUs in R, and More - www.juliabloggers.com/sciml-ecosyste... #julialang
タグ: julialang
posted at 03:31:08
#Julia言語
まさにそれ!型システムはmultiple dispatchの根幹。
v1.xのJuliaが抱えている型システムの周辺の暗黒面について、Jeff Bezansonさんがノリノリの解説をしている楽しい動画が
youtu.be/TPuJsgyu87U
にある。ノリが良すぎて途中で喉が枯れている(笑)
色々面白すぎ。 twitter.com/mat_der_d/stat...
タグ: Julia言語
posted at 03:29:06
#Julia言語 Plots.jl と PyPlot.jl を同時に使う方法
using Plots
pyplot()
using PyPlot: plt
添付画像はその拡充版。
プロットが重複しないようにしてある。
その代わりにdisplaty_figs()が必要になった。
これでPlots.jl側で対応していないPyPlotの機能も使える。
gist.github.com/genkuroki/ffd8... pic.twitter.com/O4Qvn7dCyn
タグ: Julia言語
posted at 03:21:27
SciML Scientific Mac @SciML_Org
What is #sciml without uncertainty quantification? New libraries which accelerate expectations of dynamical systems by >1000x, methods for non-commutative noise SDEs, differentiable quadrature, molecular dynamics, PDAEs, and more in #julialang
sciml.ai/news/2020/09/0... pic.twitter.com/jOU5NT1GA9
posted at 02:54:59
AD in #JuliaLang by @DavidPSanders
struct D <: Number
p
d
end
import Base: +, *, ^
+(a::D, b::D) = D(a.p + b.p, a.d + b.d)
*(a::D, b::D) = D(a.p * b.p, a.p * b.d + a.d * b.p)
*(b::Real, a::D) = D(b * a.p, b * a.d)
∂(f, x) = f(D(x, 1)).d
julia> ∂(x -> x^2 + 2x, 3)
8
タグ: JuliaLang
posted at 02:44:29
俺の周りの文明化は非常に遅れていて、今更になってpythonってどうなのかとよく聞かれるので、一通り便利だということを説明した後に、でも最近はjuliaという言語が来ていてと続けるようにしている。
タグ:
posted at 02:37:12
Im(Nyarn)@linuxナニモワカ @Imaginary_Nyarn
蔵
using Sockets
client = Sockets.connect(8080)
cnt = 0
while true
# Send
s_str = "count : " * string(cnt) * "\n"
println(s_str)
write(client, s_str)
global cnt += 1
# Receive
r_str = readline(client)
println(r_str)
end
タグ:
posted at 02:27:05
Im(Nyarn)@linuxナニモワカ @Imaginary_Nyarn
鯖
using Sockets
server = Sockets.listen(8080)
conn = Sockets.accept(server)
cnt = 0
while true
# Receive
str = readline(conn)
println(str)
# Send
write(conn, "count : " * string(cnt) * "\n")
end
タグ:
posted at 02:26:49
mazさん(バイオメカニクス)に中島さん(古生物学)と勝手にラベルしましたが楽しいツリーになってきました。 twitter.com/dynamicsoar/st...
タグ:
posted at 02:20:52
#統計 具体的には、1次元の混合正規分布モデルの尤度函数をプロットしてみるとよいです。渡辺澄夫『ベイズ統計の理論と方法』pp.20-21にグラフがあります。
Fisher情報行列が実質的に正定値になっておらず、(近似的に)ゼロ固有値を持つとみなせる場合は無視できない。
私によるプロットは↓ twitter.com/genkuroki/stat...
タグ: 統計
posted at 02:20:27
Octaveで作った円柱周りの散乱振幅計算
github.com/chibaf/Computi...
説明
github.com/chibaf/Computi...
タグ:
posted at 02:19:30
#統計 Fisher情報行列はKL情報量のパラメータに関するTaylor展開の2次の係数として出て来ます。Fisherの情報行列よりもKL情報量の方が豊富な情報を持っている。
Fisher情報行列が退化して計量にならない点が重要な場合もあり、その場合には直接KL情報量を見る必要がある。渡辺澄夫さんの本を参照。 twitter.com/physics303/sta...
タグ: 統計
posted at 02:10:01
初のJulia記事ですdocs.julialang.org/en/v1/base/math/ の意訳になります
【Julia】数学演算子・関数一覧 blog.loliver.net/2020/09/06/jul...
タグ:
posted at 01:15:06
「絡まれた」などと被害者ぶっているが、遡ると一枚目の居丈高なツイートから始まっている。二枚目を見ると@に積分定数さんがおり、これより以前に積分定数さんからこの人へのメンションは無い。つまり絡んだのはこの人が先。なお、マサキさんとやらについては三枚目のの侮辱的なツイートが発端 twitter.com/monachansdojo/... pic.twitter.com/2tI5I6Bfcr
タグ:
posted at 01:07:21
師匠にも何度も言われてきたのでいい加減、研究とは別にも、github写経修行をRとJuliaで始めます...(PythonはJuliaがあれば切り捨てるのもなしではない気がしてk...)
前からもちろんちょこちょこやってたけど定期的にやるようにする
タグ:
posted at 00:46:42
なぜかずっとローディングだったけどようやく見れた。
シャコパンチを食らうとき、指の腹だと大丈夫だけど爪は割れる、という最後の話が一番面白い。そしたらシャコパンチ対策だけ考えると柔らかくなった方がいいような気もするけど…そうすると槍に刺されるとか?(他の生物にも弱くなる?) twitter.com/katzkagaya/sta...
タグ:
posted at 00:37:00