黒木玄 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 を見て下さい。
2018年01月16日(火)
#JuliaLang だと際際迄 #Poincare Diskが描けそうっていうのでちょっとワクワクしてるけど,まだ #Luxor も使いこなせてないのでゆるりと遊ぼう。誰かやってそうなものだが…ググっても変なのばかり引っかかる。
posted at 23:57:20
ごまふあざらし(GomahuAzaras @MathSorcerer
@genkuroki 互換性を保つ必要があるので難しいところもあるかもしれないですね.
個人的な意見としては,良い方向に持っていく破壊的な変更はいいと思います.
タグ:
posted at 23:57:00
@MathSorcerer でも、Pythonとかのメジャーどころがそうなっていてくれた方が(例えばデフォルトの乱数をMTの後継のより高性能なものに変えた方が)幸せになれる人は増えると思う。しかし、あれだけユーザーが増えると「変えること」自体が困難なのだと思います。
Juliaの仕様変更の激しさは滅茶苦茶おもろい。
タグ:
posted at 23:53:27
@MathSorcerer 以前ググったときに、Pythonユーザーの中にもPythonでのデフォルトの乱数を(d)SFMTにしないかと提案している人を見付けたのですが、その提案は好意的に受け取ってもらえていなかったです。
タグ:
posted at 23:50:32
@shoji_arisawa いきなりで失礼します。
【#掛算 の順序について厳格に守るべきだと主張します】
と言われるので、これをお聞きしたいと思います。
この添付画像にある解説は、間違いなのでしょうか? pic.twitter.com/OKD5Vemg7a
タグ:
posted at 23:48:20
@MathSorcerer 私もCythonとNumbaが速いことに気付いて少しだけ試してみたのですが、結局仕事の手間が増えそうな選択しだったので、Juliaに戻りました。
Juliaは、最初からソースが利用可能なものの中で最良に近い部品の寄せ集めみたいなものなので、良質の部品を寄せ集める手間が無くなる利点が大きいです。
タグ:
posted at 23:47:41
@MathSorcerer 私のパソコンでは、gccのrandが激しく遅いです。質も悪く、乱数生成も遅い。最悪。gccのrandは絶対に使いたくない。dSFMTで検索するとCのソースコードが「本家」で見付かるので、ありがたく使うと速くなりかつ、Juliaと同じ質でモンテカルロシミュレーションできます。最初からdSFMTにしてほしい。
タグ:
posted at 23:43:34
@MathSorcerer Juliaのデフォルトの乱数はdSFMTなので、それよりも質が低い乱数発生器で計算時間を短くするのは無意味です。せめてメルセンヌ・ツイスターの質は欲しいところ。確か、Pythonのデフォルトはメルセンヌ・ツイスター。それをdSFMTに変えれば乱数生成測度が3倍程度になると思う。
タグ:
posted at 23:40:57
@MathSorcerer あれれ?
Cにデフォルトでついてくる乱数はモンテカルロシミュレーションでは使ってはいけないはずです。
使われている乱数の質の確認は非常に大事です。実際に2Dイジングの計算するときには10^11≒2^36.5個もの乱数を発生させることになります。
Xorshiftの周期は短かったかも。
タグ:
posted at 23:38:59
ごまふあざらし(GomahuAzaras @MathSorcerer
@genkuroki PythonのrandomからCのrandに変更したので速くなったのもありますので,乱数生成アルゴリズムを変更するのは妥当な判断だと思われます.qiita.com/SatoshiTerasak... のCython版を・・・となると手間がかかりますね.
タグ:
posted at 23:28:12
@MathSorcerer PythonでもdSFMT(メルセンヌツイスターの後継)を何とかすれば使えるんじゃないかと思うのですが、そうすれば乱数の部分が速くなる可能性があります。このレベルの単純シミュレーションだと乱数生成の部分が結構重いです。
タグ:
posted at 23:24:23
@genkuroki 要点: 多重ディスパッチは実装時点で型と対応する関数の全パターンが明らかでなければならないこと。一方でOO設計者が期待する多態とは実装時点で明らかで無くても型を拡張実装した人間が適切に(?)実装していることを期待すること。
gist.github.com/torao/d6b762eb...
タグ:
posted at 23:22:09
@MathSorcerer まあ、でも、boundscheck(False) とかしたら速くなるよね。Julia言語の側ではわざとそれを入れないことにしました。
タグ:
posted at 23:20:02
ごまふあざらし(GomahuAzaras @MathSorcerer
@genkuroki Cython の最適化進めて 1e8 のオーダで4秒まで縮めました.
s[i,j] = -s1 if rand()/RAND_MAX < prob[k+4] else s1
の行を最適化をさせるともっと速くなると思います.
gist.github.com/terasakisatosh...
タグ:
posted at 23:16:56
ごまふあざらし(GomahuAzaras @MathSorcerer
@genkuroki うーむ Cythonコードも追加してみました.Numbaには勝てなさそうです.gist.github.com/terasakisatosh...
タグ:
posted at 22:45:25
非公開
タグ:
posted at xx:xx:xx
非公開
タグ:
posted at xx:xx:xx
@MathSorcerer リンク先を見ればわかるように、こちらの環境で Cython と Numba は一応使えています。
gist.github.com/genkuroki/3862...
タグ:
posted at 22:05:55
@MathSorcerer #Julia言語 残念、私の環境(Anaconda3(ついさっき最新版に更新した))ではNumba版が動きませんでした。
gist.github.com/genkuroki/8564...
何が原因なのかググってもわかりませんでした。
タグ: Julia言語
posted at 22:01:51
@MathSorcerer #Julia言語 こちらの環境でNumba版が動かないのでCondaをバージョンアップ中。バージョンアップしてすべてアップデートもすませてから再挑戦します。
NotImplementedError: make_function ~というエラーが出た。
タグ: Julia言語
posted at 21:47:13
非公開
タグ:
posted at xx:xx:xx
@MathSorcerer #Julia言語 おお!
Nambaを使うとJuliaよりも2.4倍程度遅いだけで済んでいるのか。pure Python 3より100倍以上高速化したわけですよね。計算速度面でNumbaには好印象を持っています。
これから同じコードで私も試してみます。
タグ: Julia言語
posted at 21:32:16
@NakanakaPierrot docs.julialang.org/en/stable/manu...
【Access arrays in memory order, along columns~This convention for ordering arrays is common in many languages like Fortran, Matlab, and R】
#Julia言語 の1次元配列は縦ベクトル相当なので自然にこうなります。私はこちらの方が好み。線形代数と相性がよい。
タグ: Julia言語
posted at 21:29:05
#Julia言語 に関する現在のJulia言語の仕様に対応している日本語書籍はないと思う。しかし、以下のチュートリアルなどを見ればどういう感じのプログラミング言語なのかわかると思います。
nbviewer.jupyter.org/github/bicycle...
nbviewer.jupyter.org/github/bicycle...
nbviewer.jupyter.org/github/bicycle...
twitter.com/D_A_works/stat...
タグ: Julia言語
posted at 21:14:03
ごまふあざらし(GomahuAzaras @MathSorcerer
@genkuroki Numbaで現実世界の時間で終わるような結果が得られました.n=1e9
で25秒ほど.提示されているJuliaのコードは11秒ほどで処理が終わります.ヌーン悔しい.
gist.github.com/terasakisatosh...
タグ:
posted at 21:08:49
@genkuroki CとFortranの多次元配列の列と行って連続メモリに割り当てる順が逆だったように思うのですが、Juliaの多次元配列はCとFortranのどちらに合わせてるんでしょうか。。。
タグ:
posted at 21:07:23
非公開
タグ:
posted at xx:xx:xx
非公開
タグ:
posted at xx:xx:xx
非公開
タグ:
posted at xx:xx:xx
adhara_mathphys @adhara_mathphys
私のPCはPythonの2と3が混在しており、それに関連してJuliaのライブラリの一部が動かないことがありました。ライブラリを動かすためにはPython3が呼ばれる必要がありました、そのために環境変数としてENV["python"]としてPython3へのフルパスを指定しました。
タグ:
posted at 20:42:12
#Julia言語
stackoverflow.com/questions/4020...
Abstract types and inheritance in Julia
【This is exactly what I was wondering, thanks! If B and C share the same type of information but not the exact same field names then how to I implement a common method? You've cleared this up.】
タグ: Julia言語
posted at 20:34:43
非公開
タグ:
posted at xx:xx:xx
@hiding_koukyo pythonしか使わんから気がつかなかったけど確かにその3つやね知らんかった。いつものエクスプローラーみたいなファイル選択画面じゃなくしたのが新鮮
タグ:
posted at 20:28:29
@MathSorcerer #Julia言語 実際には10^11個の点を更新しなければ2D Isingの臨界点での適切なサンプルを抽出できない感じなので結構大変。
nbviewer.jupyter.org/gist/genkuroki... …
のうしろの方では、10^6点更新に1面ずつ記録を残して10^5面分をファイルに保存する計算をしています。10^5×100^2=10^9で8bit整数だったので8GB.
タグ: Julia言語
posted at 20:27:14
ごまふあざらし(GomahuAzaras @MathSorcerer
@genkuroki Python3として書いていますが2系でもOKです。Numbaかけるとコンパイルエラーするのでチャレンジして見ます。
タグ:
posted at 20:20:38
@MathSorcerer #Julia言語 ごまふあざらしさん、どうもありがとう!
おお!ピュアPythonだ。Python 2.7の方ですか?
10^9点更新に換算すると3100秒くらいですね。
Juliaだと8.3秒なので370倍くらい違うのかな。
Numbaを使うとメッチャ高速化すると思うのですがどうでしょうかね?
twitter.com/MathSorcerer/s...
タグ: Julia言語
posted at 20:17:21
ごまふあざらし(GomahuAzaras @MathSorcerer
@genkuroki 周期境界条件の部分を修正しました.これは恥ずかしい. pic.twitter.com/7fyRbrFcBi
タグ:
posted at 19:47:39
Julia 0.6で、磁場中のs波超伝導体の磁束格子解をChebyshev多項式展開法で自己無撞着に求めるコードを書いてみた。ゲージ変換で周期系をなめらかにつなぐことが大事
nbviewer.jupyter.org/github/cometsc...
github.com/cometscome/Vor...
タグ:
posted at 19:39:31
っていうかそもそも IPython が Jupyter になるにあたって、Julia, Python, R の3つから名づけたらしい。まじか。
twitter.com/asahiko/status...
タグ:
posted at 19:21:06
ごまふあざらし(GomahuAzaras @MathSorcerer
@genkuroki うちのゴマがピュアなPythonで実装しました.取り急ぎUPします. pic.twitter.com/AU5ZmXNT8p
タグ:
posted at 19:20:18
LaTeX でも Beamer を使ってスライドを作る時だけは「文書の構造化」については綺麗さっぱり忘れた状態で書くようにしています. twitter.com/sangyoh_sus/st...
タグ:
posted at 18:58:24
#Julia言語 からFortranを使う方法の解説をもう一つ見付けた。2年前の記事。
Julia - fortran 90をwrap (bind) する - divrot in an infinitesimal box divrot.hatenablog.com/entry/2016/01/...
タグ: Julia言語
posted at 18:53:50
斉藤ひでみ・現職教師(西村祐二) @kimamanigo0815
校長にも部活動を休ませてほしいと訴えた。しかし「部活動を担当してこそ一人前の教諭だ」という答え。体調を崩し、「夢にまでみた教員ですが気力も体力も限界です。もう、辞めるときが来たのかもしれません」
本日19時から。。
先生、部活やめるってよ | NHKニュース www3.nhk.or.jp/news/html/2018...
タグ:
posted at 18:20:37
内田良:新刊『だれが校則を決めるのか』 @RyoUchida_RIRIS
NHKさん,スゴいタイトルで部活動に攻めてきた…
「当時の日記には『部活で勝てないとダメ教師と言われる』『しんどい。しんどい』こうつづられていました」
(夜のどこかの時間帯で放送されると思います)
▼先生、部活やめるってよ | NHKニュース www3.nhk.or.jp/news/html/2018... pic.twitter.com/CJCpTt6QX7
タグ:
posted at 18:18:03
非公開
タグ:
posted at xx:xx:xx
Julia - fortran 90をwrap (bind) する - divrot in an infinitesimal box divrot.hatenablog.com/entry/2016/01/...
タグ:
posted at 17:46:10
私が #Julia言語 の Hello world (2D Ising model)で作ったアニメーションも貼り付けておきます。 pic.twitter.com/3XuTnKdLaI
タグ: Julia言語
posted at 17:40:10
#Julia言語 例えば
nbviewer.jupyter.org/gist/genkuroki...
では、「sが整数±1を格納するm×n配列であること」を仮定してプログラムが書かれているのですが、そのとき、±1を64bit整数にした場合にも、メモリの節約のために±1を8bit整数にした場合にも同じように高速に計算してくれます。
タグ: Julia言語
posted at 17:16:57
#Julia言語 訂正:In [1]と書いたが、実際にはIn [2]です。
nbviewer.jupyter.org/gist/genkuroki...
を見ると、Juliaで書かれたコードのどこにも明示的な型宣言がないことに気付くはず。しかし、しっかりした型システムがJuliaにはあります。函数の引数の型が決まると型推論によって他のモノの型が決まる仕組み。
タグ: Julia言語
posted at 17:10:23
#Julia言語 最近では2次元イジング模型のメトロポリス法が「Hello world」扱いらしいので私が書いたテストコードも貼り付けておきます。
nbviewer.jupyter.org/gist/genkuroki...
2D Ising Metropolis (Gen Kuroki, 2017-01-09)
10^9点の更新に8秒。最適化はもっとできます。自由な複製、改変、配布可。
タグ: Julia言語
posted at 16:55:23
#Julia言語 補足コメント。Julia言語でArray{Float64,3}をベクトルの2次元配列扱いした場合とArray{Array{Flaot64,1},2}の場合を比較すると、前者の方が速いです。とあるテストで前者は1秒未満で計算できるのに、後者だと1.5秒以上必要でした。
nbviewer.jupyter.org/gist/genkuroki...
twitter.com/kuromoyo/statu...
タグ: Julia言語
posted at 16:47:10
#Julia言語 末尾再帰最適化についてはリポジトリを検索すればどういうことになっているかがわかります。疑問があったらリポジトリを検索することが基本。
github.com/JuliaLang/juli...
JeffBezansonさんのコメントだけをひろって読むだけで十分だと思う。
twitter.com/kuromoyo/statu...
タグ: Julia言語
posted at 16:36:32
#Julia言語
たぶん、Julia言語の基礎(multiplie dispatchとそれを支える型システム)を理解していないからそういうことになっていると思うので、最終的に何をやりたいかがわかるような簡単なJuliaのコードを公開すれば、詳しい人達からコメントがもらえると思う。
twitter.com/kuromoyo/statu...
タグ: Julia言語
posted at 16:29:37
Jupyter 上の IJulia 経由の Fortran 呼び出しで図を描く - fortran66のブログ fortran66.hatenablog.com/entry/2017/08/...
タグ:
posted at 16:26:58
非公開
タグ:
posted at xx:xx:xx
非公開
タグ:
posted at xx:xx:xx
@GreatDemon1701 あ、そうか単位制があるか、ありがとうございます!
すると
数Ⅱを選択しないことにした生徒・学生・社会人の方々が結城氏の設問に触れても解けないので、「数Ⅱの知識を持ち合わせていなければ解くことはできないよ」とあらかじめ設問に記述しておいてくれ
このような主張を若園氏はされたのですね?
タグ:
posted at 15:51:13
やーーーーーと使い方判った。
とりあえず、julia0.6.2 で CUDA を動かす.一報です。
あとあと加筆修正して行きます。
qiita.com/SFyomi/items/7...
#Julia言語
タグ: Julia言語
posted at 15:41:16
非公開
タグ:
posted at xx:xx:xx
非公開
タグ:
posted at xx:xx:xx
あれだけの仕様変更にも関わらず、 #Julia言語 で書かれた巨大パッケージが健康を保っていたりするんですね。たとえばDifferentialEquations.jlはものすごく巨大なパッケージです。一人で全体の解説をするのは無理なサイズ。
github.com/JuliaDiffEq/Di...
タグ: Julia言語
posted at 13:02:00
普通はやらないようなことについて「どうして行われていないのだ?」と不満を述べるのはちょっとおかしい。v1.0が出てから数年後に言うべきことをv0.6.2の現在の段階で言われても困る。
で、その現在の未完成品を実際にいじってみると非常に面白いわけですよ。MITの講義も面白いし。
タグ:
posted at 12:58:15
非公開
タグ:
posted at xx:xx:xx
@etsukoitou fortran66.hatenablog.com/entry/2017/08/...
にFortranで書かれた函数を #Julia言語 から呼び出して、Julia言語でグラフを表示させる例があります。
タグ: Julia言語
posted at 12:38:04
#Julia言語 でCやFortranの既存の資源を利用する方法については
docs.julialang.org/en/stable/manu...
Calling C and Fortran Code
に説明があります。Fortranでやってみた実例が次の場所にある:
fortran66.hatenablog.com/entry/2017/08/...
Cの例は
nbviewer.jupyter.org/gist/genkuroki...
タグ: Julia言語
posted at 12:35:40
#Julia言語 なのに遅いなと思ったら以下を見て下さい。
nbviewer.jupyter.org/gist/genkuroki...
Julia言語で計算が遅くなった場合の解決法
docs.julialang.org/en/stable/manu...
myenigma.hatenablog.com/entry/2017/08/...
Juliaのコードを更に高速化する方法
タグ: Julia言語
posted at 12:31:03
「ワシがJuliaを始めた頃はのう,文字列のエンコードによってデータ型が分かれとったんじゃ。」
「またおじいちゃんそんなこと言って。そんなわけないでしょ。」
「ふぉふぉふぉ,本当じゃよ。」
タグ:
posted at 12:16:21
非公開
タグ:
posted at xx:xx:xx
非公開
タグ:
posted at xx:xx:xx
非公開
タグ:
posted at xx:xx:xx
#Julia言語 個人的にはPython環境も整えてJupyter notebookからJuliaを使うとさらに使用時の「気楽さ」が増すのでおすすめなのですが、公式バイナリを
julialang.org/downloads/
からダウンロードして試してみるだけでも結構楽しめると思います。
タグ: Julia言語
posted at 11:07:01
非公開
タグ:
posted at xx:xx:xx
非公開
タグ:
posted at xx:xx:xx
#Julia言語 の気楽さの例
公式バイナリ+Plots+SpecialFunction で
リーマンゼータの絶対値のクリティカルライン上での値のプロット pic.twitter.com/kxFDqXAtS6
タグ: Julia言語
posted at 10:52:27
#Julia言語 さらに上の方でJulia言語はリーマンゼータも気軽に使えるようになっていることを知った人は「Julia言語がどのようにリーマンゼータを実装しているのか」が気になると思います。どのファイルにリーマンゼータのコードが書いてあるかは**公式バイナリだけ**で簡単にわかります。 pic.twitter.com/V7tdRYQ3rk
タグ: Julia言語
posted at 10:36:48
#Julia言語 の気楽さの例
添付画像のように行列の対角化と対角化に使われる(固有ベクトルを横に並べた)可逆行列が、公式バイナリを立ち上げて、ちょちょっと入力するだけで可能です。特別なパッケージの読み込みは必要ない。 pic.twitter.com/bSQMSVULlj
タグ: Julia言語
posted at 10:31:38
#Julia言語 の気楽さの例:
公式バイナリを立ち上げて、zeta(0.5)と入力したら、using SpecialFunctionsしてねとメッセージが出たので、それに従うだけで zeta(0.5) を計算できました。こんな感じで、「もしかしてリーマンのゼータ函数にも対応している?」と思って試した人はむくわれることになる。 pic.twitter.com/Bgg60i6uMl
タグ: Julia言語
posted at 10:26:32
twitter.com/cometscome_phy...
私も非常によくわかります。
Julia言語の「気楽さ」はとてもありがたい。
整数値と浮動小数点数値を厳密に区別しながら、コードを函数の中に入れるだけで特別なおまじない抜きに高速で計算してくれる。私のプログラミング能力だとCで書くより確実に速いことが実証済み。
タグ:
posted at 10:23:46
@GreatDemon1701 確かに必修ではありませんが、卒業までに少なくとも74単位を要するので、必修単位のみでは高校の卒業要件を満たしません。
74単位を満たしつつ数Ⅱを教えないカリキュラムを行う高校を私は知らなくて申し訳ないのですが、そのような高校はご存じですか?
どんなカリキュラムなのか、研究したいのです。
タグ:
posted at 10:16:25
私は個人的に #Julia言語 に興味を持った人には、MITの講義録を見ることを強くすすめています。
2017→ github.com/stevengj/18S09...
2018→ github.com/stevengj/18S096
これの内容が(Julia言語とは無関係に)非常に面白いです。そして、Julia言語が無ければこういう講義は難しかったと思います。
タグ: Julia言語
posted at 10:02:01
私が #Julia言語 をWindowsにインストールしたときの記録
nbviewer.jupyter.org/gist/genkuroki...
1. Anaconda3をインストール
2. 環境変数JUPYTERを設定
3. Juliaをインストール
4. juliaを記号して IJulia パッケージと PyPlot パッケージをインストール
詳しくは上のリンク先を見て下さい。
タグ: Julia言語
posted at 09:41:50
@GreatDemon1701 なるほど。そちらに主眼があったのですね。私は「三角比」と書くか「三角関数」と書くかを迷ったので、そちらかと思いました。おおもとはセンター試験に出てきたラジアンが出発だったので、「センター試験のあの問題を受けてる人は教科書で読んでいるはずだよ」という気持ちで書きました。リプ感謝。
タグ:
posted at 09:02:50
非公開
タグ:
posted at xx:xx:xx
非公開
タグ:
posted at xx:xx:xx
非公開
タグ:
posted at xx:xx:xx
@motcho_tw 僕はそう理解してます。定数倍する関数と見ても良いと思います。 rad ってつけるのは人間に「これは角度について議論してます」って示すためのもので論理的にはなくてもいいものだと思います。
タグ:
posted at 08:21:07
@GreatDemon1701 リプありがとうございます。
すみませんが、ツイートの主旨がよくわかりませんでした。
質問「ラジアンなんてどこで学ぶのですか?」
への回答として、
回答「高校で三角関数を学ぶとき、最初に出てきます。数学の教科書に出てきます」
よりもよい表現のご提案ということでしょうか?
タグ:
posted at 08:03:23
Windows用Clangは仕様が変で、使い方の習得に余計なコストがかかる一方、
- 最新版のビルド済バイナリが最速で手に入る
- Linuxの知識が不要
というメリットもある。
このあたりが解っていれば選択肢にはなり得る。使い方は↓。
twitter.com/badadder/statu...
タグ:
posted at 07:24:03
補足。
この話、純粋に"Windows上でClangを使う"だけならMSYS2ではなくWindows Subsystem for Linuxでもよい。WSLはWindowsの機能の一環なので更新の継続性も期待できる(かも)。
Windows上で動作するバイナリを作りたいならMSYS2.
タグ:
posted at 07:11:17
ちなみに私の周りでもJuliaを使ってる人は数えられるほどしかいない。たぶん数値計算系のラボに行けばもう少し増えるかな?機械学習系はほぼ全員Python。ロボットもやる人はC++も、って感じ、
タグ:
posted at 06:55:14
雑メモ:
既存資産をJuliaから呼び出す · Issue #2 · termoshtt/termoshtt.github.io github.com/termoshtt/term...
タグ:
posted at 03:16:04
"When calling a Fortran function, all inputs must be passed by reference,"
書いてた(´・ω・`)
docs.julialang.org/en/stable/manu...
タグ:
posted at 02:47:33
julia> path = ccall((:getenv, "libc"), Cstring, (Cstring,), "SHELL")
なるなる(`・ω・´)
docs.julialang.org/en/stable/manu...
タグ:
posted at 02:44:03
非公開
タグ:
posted at xx:xx:xx
非公開
タグ:
posted at xx:xx:xx
#Julia言語 補足:optimize函数はベクトルvを引数とする1変数函数も受け取るので高次元空間上の函数の最小化も実行できます。ただし、ローカルミニマムがあると苦しいことになる。
ローカルミニマムがある場合には github.com/robertfeldt/Bl... が使えたりするかも(試していない)。
タグ: Julia言語
posted at 02:29:37
#Julia言語 aが大域変数のとき、f(x)=g(a,x)として、1変数函数のみを受け取る函数 foo(f) を実行すると「大域変数を含む函数は遅くなる」ので計算が遅くなります。それを防ぐにはfunction-like objectを使えばよい。1変数函数のみを受け取る函数は結構ある。
nbviewer.jupyter.org/gist/genkuroki...
タグ: Julia言語
posted at 02:23:45
非公開
タグ:
posted at xx:xx:xx
非公開
タグ:
posted at xx:xx:xx
Windows上でClangを使いたいなら
× Windows用Clangをインストール
○ MSYS2をインストールして、そこからpacmanでdev-baseとMinGWとClangをインストール
現状(5.0.1)のWindows用ClangはMSVC互換にしようとして変な仕様になっている。手間はかかるがMSYS上に作った方が良い。
と結論。(個人的に)
タグ:
posted at 02:09:54
Julia、やはり元MATLABユーザーからしたら、デフォルトで多次元配列の演算をでき、なおかつ速いというのは、それだけで十二分に魅力がある。プロットまわりさえ整えば、手軽に数値計算をする時はJuliaとなりそう。
タグ:
posted at 01:55:46
#Julia言語 もう一つの例。
F2(z) = -sqrt(-z)/(2im)
f2 = Hyperfunction(F2)
と平方根の複素函数(ブランチカットが入る)で佐藤超函数 f2 を作ったとしましょう。そのプロットは添付画像の通り。
おお!0以上で平方根と一致する(超)函数が得られました。
こんな感じで佐藤超函数で遊べます。 pic.twitter.com/dwY7sXDGNF
タグ: Julia言語
posted at 01:22:57
#Julia言語 続き
struct Hyperfunction_naive
F::Function
G::Function
end
(f:;Hyperfunction)(x) = f.F(x+im*eps()) - f.G(x-im*ips())
となる。例えば、
F(z)=-1/(2π*im*z)
delta=Hyperfunction(F,F)
でDirac δが得られます。添付画像はこれのプロット。おお!確かにδ函数だ!(笑) pic.twitter.com/Yyj0fss2LI
タグ: Julia言語
posted at 01:19:48
#Julia言語
nbviewer.jupyter.org/gist/genkuroki...
なんちゃってhyperfunctions Part 2
函数を内容物として持つfunction-like objectの挙動について知りたくて、佐藤超函数のなんちゃってJulia実装で遊んでいます。続く
タグ: Julia言語
posted at 01:11:57
うちの107で亡くなった祖母もテクノロジーの発展で便利になった事を否定的に語る大人を批判していた。あれは健常者の奢りだと。 twitter.com/tanakh/status/...
タグ:
posted at 01:05:25
非公開
タグ:
posted at xx:xx:xx
このMITの講義で使われているJupyter notebook (#Julia言語 カーネル) が非常に面白いんです。直接話を聴いているMITの学生さん達はもっと面白いと思っているに違いない。
面白いことは若い人たちに強い影響を与えます。私はそういう経路で世の中が変わって行くと良いと思っています。
タグ:
posted at 01:00:33
非公開
タグ:
posted at xx:xx:xx
非公開
タグ:
posted at xx:xx:xx
個人的にはすでに #Julia言語 で次のリンク先のような講義がMITで行われていることに注目するべきだと思っています。面白いです。Julia言語を使っていますが、基本的に普遍的な考え方を解説しようとしています。
github.com/stevengj/18S09...
タグ: Julia言語
posted at 00:49:09
JuliaのJITコンパイラなLLVMで爆速は、PythonのNumbaで出来るじゃないですかっていう話、そういうNumbaとか書きたくないんです!何も考えずにfor文書きたいんですっていう需要の気持ちがわかっていないと思う。(最近のNumbaは改善したらしいけども
タグ:
posted at 00:32:08
非公開
タグ:
posted at xx:xx:xx
非公開
タグ:
posted at xx:xx:xx
米国大学の研究者の先輩がJuliaがっつり使ってると言ってたなぁ。
民間企業の転職の可能性考えるとPython がよさげだが、そんなことはどうでもよいか。 twitter.com/wnk_datasci/st...
タグ:
posted at 00:13:12
非公開
タグ:
posted at xx:xx:xx