黒木玄 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年10月11日(日)
非公開
タグ:
posted at xx:xx:xx
I notice a lot of Julia beginners try to program Julia as they would do with Visual Studio or some big IDE heavy language. Not a great experience. Here is a more realistic way of thinking about #JuliaLang development: www.youtube.com/watch?v=CRiD12... #beginners #programming #REPL
タグ: beginners JuliaLang programming REPL
posted at 01:20:51
Python (@ThePSF,@SciPyTip) Programming: 10% writing code. 90% figuring out why it doesn’t work.
Julia (@JuliaLanguage, @JuliaConOrg) Programming: 70% writing code, 5% figuring out why it doesn’t work, 25% being mesmerized by the beauty of the code.
タグ:
posted at 01:35:31
非公開
タグ:
posted at xx:xx:xx
Sebastian Wiesendahl @SebasWiesendahl
@Deep__AI @arXiv_Daily Just leaving this here for interested folks as #JuMP is great. #JuliaLang hackernoon.com/linear-optimiz...
posted at 03:49:16
非公開
タグ:
posted at xx:xx:xx
@yotarokubo @odashi_t #Julia言語 どういう状況になっているのか見えませんが、
gist.github.com/genkuroki/45f8...
を見れば、「JuliaのライブラリとしてのSymPyの挙動」(例えば円周率πとPIとSym(π)の振る舞い方や2とSum(2)の違い)を理解できると思います。 pic.twitter.com/ia2vPCqM2G
タグ: Julia言語
posted at 04:26:12
超算数問題の本質は、算数/数学の本質への無関心による浅い思考の採用とそこから発生する児童への呪いだと思ってます。長男に被害(場合の数での躓き)が出ていたので私はアンチ超算数です。 twitter.com/sekibunnteisuu...
タグ:
posted at 06:00:34
#Julia言語 野良パッケージ
InteractiveUtilsPlus.jlの名前をMetaUtils.jlに変えて、リスプっぽいタプルで書かれた式を評価してくれるマクロ @ teval を追加しました。その過程で色々バグを取った。
github.com/genkuroki/Meta... pic.twitter.com/Il3J1h0k3q
タグ: Julia言語
posted at 07:46:04
#Julia言語 既出のJupyter notebookの「名前空間由来のバグ」をとったバージョン↓
gist.github.com/genkuroki/b410...
タグ: Julia言語
posted at 07:47:59
Stefan Karpinski @StefanKarpinski
@kerybas @Jan_R_Peters @ThePSF @SciPyTip @JuliaLanguage @JuliaConOrg Not the OP, but it’s a very conscious policy in Julia to never guess what the user intends unless there’s only one clear choice. This leads to far fewer situations where the code does something, just not what you wanted it to
タグ:
posted at 08:00:08
@muuumin20 @antimon2 #Julia言語
(a, b, (c, d)) = [1, 2, [3, 4]]
のように代入できてしまうのはちょっとびっくりですよね。
「JuliaでExprを直接操作するマクロ」と「LispでS式を操作するマクロ」は本質的に同じことをやっているので優劣はないと思います。以下に色々書いておきました。
twitter.com/genkuroki/stat...
タグ: Julia言語
posted at 08:08:26
非公開
タグ:
posted at xx:xx:xx
#Julia言語
* 人間に直接S式を見せることと、人間にJuliaのExpr式を見せることは本質的に同じ。
* LispユーザーはS式を読めるが、普通のJuliaユーザーはExpr式を見ても解読は大変。
* プログラミングをかじった人の多くにとってS式の解読は困難だが、Juliaのコードはそうではない。
相互リンク↓ twitter.com/genkuroki/stat...
タグ: Julia言語
posted at 08:17:26
Lisp全く知らなかったけど、これ読んだらJuliaのマクロがわかるようになってきた。
JuliaとLispのマクロの比較 - SE教育パパむううみんのブログ muuuminsan.hatenablog.com/entry/2020/10/...
タグ:
posted at 08:25:42
@muuumin20 #Julia言語 #Lisp
「構文情報の欠落」については実例が示されていないので理解できなかったです。
LispでのS式のJuliaでの対応物はExpr型オブジェクトです。S式の操作によるマクロとExpr式の操作によるマクロは本質的に同じことをやっているので優劣はないと思います。
twitter.com/genkuroki/stat...
posted at 08:37:57
@muuumin20 #Julia言語 #Lisp
Expr式の操作でJulia的に非合法なExpr式を作ることは容易です。そういうバグのあるマクロを私はよく書く!😭
Juliaでは sin(π/6) のように書くのが普通なのですが、マクロを書くときには、それは
Expr(:call, :sin, Expr(:call, :/, π, 6))
のことだと思うことになります。
posted at 08:42:43
#Julia言語 そのような実例が、繰り返し紹介している「MITでの宿題の答え」
nbviewer.jupyter.org/github/steveng...
にあります。現在のJuliaでも動くようにしたものが
nbviewer.jupyter.org/gist/genkuroki...
にあります(添付画像)。しかし、Exprの直書きなどが使ってあって、普通の数学者はコードの解読さえ困難でしょう。 pic.twitter.com/GCdbK00Zv1
タグ: Julia言語
posted at 09:08:48
#Julia言語 Juliaのコードの多くは、特別にJuliaの知識がなくても、概ねこんなことをやっているのだろうと推測できる程度には易しいのですが、Exprを直書きするタイプのマクロを使われてしまうと、Juliaであっても全然そうではなくなります。
この問題を解決する天才が現れることを期待。 pic.twitter.com/48FerQ5N2h
タグ: Julia言語
posted at 09:20:45
スナガニは英語で”Ghost crab”といいますが、一説によると「影を残して走り去るから」だそうです。時速16km以上で移動できるスナガニは甲殻類最速とも言われていますが、この小さな体の一体どこにそんな力があるのでしょうか...
pic.twitter.com/HyBnPRDA5k
タグ:
posted at 09:21:50
#Julia言語 でのマクロについて理解したい人は以下のリンク先のスレッドを見て下さい。
ついさっき公開した野良パッケージ
github.com/genkuroki/Meta...
で遊ぶと、理解がはかどるかも。 twitter.com/genkuroki/stat...
タグ: Julia言語
posted at 09:25:27
EM菌側は…と思ってFB公開「EM会」を見たらDND出口俊一氏が日本学術会議がホメオパシー批判声明を出したことを問題視。まあEM菌推進者はホメオパシーに同調。そしてコメント欄に、「世間知らずのぼんくらですから、科学バカの集まりです。偉そうにね、頭が原子力でできている」って。
タグ:
posted at 09:38:55
#Julia言語 野良パッケージ github.com/genkuroki/Meta... の応用例
gist.github.com/genkuroki/e943...
添付画像
1. Meta.@ dumpの表示は詳細だが見難い。
2. 上の野良パッケージを使えばよりコンパクトな表示が可能である。
3. 上の野良パッケージを使えばLisp風のタプルで書かれた式を実行可能! pic.twitter.com/0Tbylwj7iW
タグ: Julia言語
posted at 09:40:58
出口氏投稿への「頭に農薬撒いたら、少しはましになるんじゃないですかね」というコメントに対して出口氏は「たぶん、ですね。この権威主義、実に卑しい連中です」って。
故関英男氏のオカルト的な(まったく科学では相手にされない)「縦波重力波」説信者の比嘉照夫氏と同じレベルだと思った。
タグ:
posted at 09:43:40
#Julia言語 将来的にJuliaで「任意始まりのインデックス」(0始まりとか1始まりとかケチなことは言わない!)が普通になる場合に備えるには
* size(A)ではなく、axes(A)を使ってうまく書く。
* 1:length(A)ではなく、firstindex(A):lastindex(A) や eachindex(A) を使う。
docs.julialang.org/en/v1/devdocs/... twitter.com/hayabusa_0613/...
タグ: Julia言語
posted at 10:07:26
うおー、めっちゃJulia面白そうだな。。
学部時代の数値流体の研究はFORTRANで、今はおそらくPythonとかに置き換わってるんじゃないかなと漠然と思ってたが、この記事を読む限りではまだFORTRAN使われてそう。 twitter.com/cometscome_phy...
タグ:
posted at 10:27:41
例えばLispのLETを作るとして、第一引数のリストは変数束縛を作るためのリストだけど、List型を継承したBind型とかを作れたら後は展開メソッドに丸投げみたいなことができて嬉しい、とかそういう話かな、と。 twitter.com/genkuroki/stat...
タグ:
posted at 11:04:22
同様にLETの本体(body)は宣言(declare)ができるものなので暗黙裡のlocallyにくるまれる必要があるのだけど、bodyがimplicit-locally型になってくれて勝手にいい具合に展開してくれると嬉しいのにそれができない。
タグ:
posted at 11:07:36
ASTがただのListでなくてASTを表す専用のASTオブジェクトならそれを継承した様々なそれこそimplicit-locally型とかを作れてより便利にできる。
タグ:
posted at 11:09:49
物理の言語とも考えられる微分方程式がニューラルネットワークと相性が良いという話。すでに持っている知識を(NNに)取り込めるし、結果から知識(解釈)も得られる!素敵!
Juliaの最強微分方程式パッケージが背後にあるのであらゆる○○DE問題が異常終了せずに解けるのだそう
towardsdatascience.com/differential-e...
タグ:
posted at 11:19:52
JuliaでBurgers方程式解いています。次はFDS (Flux Difference Splitting, Roe)法です。右向きの衝撃波。 pic.twitter.com/fE6DB7UHfD
タグ:
posted at 11:22:29
#Julia言語 #Lisp 反響
マクロの話は私ももっとよく理解したい。 twitter.com/cometscome_phy...
posted at 12:25:20
#Julia言語 #Lisp 以下のリンク先のスレッドの特に以下にリンクした解説は非常に助かった。ありがとうございました! twitter.com/hyotang666/sta...
posted at 12:27:34
#Julia言語 #Lisp しかし、
muuuminsan.hatenablog.com/entry/2020/10/...
コメント欄【Lispでなければ簡単に表現/作成/運用できないマクロというのはある】
はわたしには理解不可能。以下を具体的なコード例で示さないと証拠にならない。
①Lispでは簡単なマクロ
②そのJulia版を作る試みの結果
③Juliaで失敗する理由
posted at 13:05:33
#Julia言語 メモ
LineNumberNodeの例
マクロの式をExprで書こうとすると、LineNumberNodeを入れないといけない。(Julia v0.5とかv0.6時代は確かそうではなかった)
後で野良パッケージを改良しておこう。 pic.twitter.com/JHMpwlUAQ6
タグ: Julia言語
posted at 13:51:22
自分が今まで書いてきたマクロの中で一番えげつないのは型クラスを実装しようとしたときのローカルマクロ(macrolet)に展開されるマクロかなぁ。
githubはここ。
github.com/hyotang666/tyc... twitter.com/genkuroki/stat...
タグ:
posted at 14:40:27
@genkuroki @odashi_t しょうもないポカでしたので,こんなに反応を頂いてしまい申し訳なくもあるんですが,画像のような状況でした.SymPy.piはSymだと思っていたのですがIrrationalで,Symとしてキャンセルされるにはsympy.piでなければいけなかったという話です.
i.gyazo.com/cd9b7e5ff91606...
i.gyazo.com/503fb6c758970f...
タグ:
posted at 14:44:06
具体的な解説はここ。
hyotang666.github.io/archives/cl-vs...
デバッグが著しく大変で、デバッグの方が難しいので人は全力で作ったものをデバッグできないという話を痛感したのはいい思い出。
タグ:
posted at 14:46:12
@epinesis 2018年の12月1日頃に出回りだした動画のようで、ざっと探すとこのへんがいちばん古いんだけど、
reactor.cc/post/3736500
こういう縦に長いのも出てくるので
weibo.com/tv/show/1034:4...
オリジナルは別にあるようです。(つらい) pic.twitter.com/5VPpgc1bvP
タグ:
posted at 17:24:09
非公開
タグ:
posted at xx:xx:xx
Nilang.jl, a Reversible Julia DSL github.com/GiggleLiu/NiLa... #hackernews
タグ: hackernews
posted at 18:03:57
@yotarokubo @odashi_t #Julia言語 Juliaではほぼimport文を使う機会がなくて、
using SymPy: SymPy, sympy, @ vars, ...
のようにも書けます。函数の上書きも
using Foo: Foo
Foo. bar(x::MyType) = ~
でimport無しで可能。
あと、先のリンク先の積分の表示が欠けていた!ごめんなさい!
nbviewer.jupyter.org/gist/genkuroki... pic.twitter.com/ShhUCJfZuV
タグ: Julia言語
posted at 18:42:56
#Julia言語 野良パッケージ
github.com/genkuroki/Meta...
のLineNumberNodeの表示を変えた。
gist.github.com/genkuroki/e943... pic.twitter.com/hnT120oNL2
タグ: Julia言語
posted at 18:47:50
非公開
タグ:
posted at xx:xx:xx
この記事は読まれたほうがいいと思う。後半に出てくる「炎上させていることを自慢げに語る男性」など注目。
toyokeizai.net/articles/amp/3...
タグ:
posted at 19:02:35
kuzu/NULL (TRPG老害)%ゲ @kuzuNULL
#プログラミング
LISPは難しいかな? 関数型と手続き型の折衷って面もあるし。
マクロにはまると謎空間に行きかねないかもしれないが。
タグ: プログラミング
posted at 19:08:33
wwwwwwwwwwwwwwwww
🤣🤣🤣🤣🤣🤣🤣🤣🤣
wwwwwwwwwwwwwwwww
github.com/PowerShell/Pow...
【PowerShell/PowerShell
Use forward slashes by default in Windows #10509】 twitter.com/poyothon/statu... pic.twitter.com/knG81i1isG
タグ:
posted at 19:09:35
それはさておき、この人、「ドラゴン桜」の指南役だそうだ。あの漫画、「数学は暗記だ」、と公言していて、陰山英男も絶賛していた。
こういう一般論を語るのは良いとしても、ダメな勉強指南に加担しているようじゃね・・・ twitter.com/oyanochikara/s...
タグ:
posted at 19:12:30
#超算数
@oyanochikara 親野智可等さん、そんな能書きはさておき、こんな駄目な算数指南をしていることこそ有害ですよ。
www.oyaryoku.jp/books/sansu_ry... pic.twitter.com/qijkNaGQY3
タグ: 超算数
posted at 19:19:11
非公開
タグ:
posted at xx:xx:xx
@muroimasane @epinesis おおっ、同志ですか?ここ便利ですよ。
「画像のパスを入力:(画像のURL)」のところにクリップボードの画像をペーストして検索できます。
デスクトップキャプチャから直接Google他の画像検索が一括でできます。
画像 検索 - 類似画像をオンラインで検索
smallseotools.com/ja/reverse-ima...
タグ:
posted at 19:26:49
ごまふあざらし(GomahuAzaras @MathSorcerer
わかりみがある
JuliaCon 2020 | The ups and downs of convincing to switch to Julia in a company | Jorge Alberto
www.youtube.com/watch?v=u_8kW8... pic.twitter.com/eU0omG0ZkF
タグ:
posted at 19:38:39
@muroimasane @epinesis TinEyeはそのまま検索欄にクリップボード画像をペーストできます。ここで引っ掛ったら、「Sort by oldest」でおおよその初出時期が判断できます。
tineye.com pic.twitter.com/J9UFZktzjd
タグ:
posted at 19:42:48
#Julia言語 具体的にどのような計算をどのようなコードでやると使い易いのだろうか? twitter.com/togekissu1234/...
タグ: Julia言語
posted at 19:47:19
@genkuroki 他のライブラリよりJuliaライクに書けるというのがあります、Stan.jlはかなりstanの書き方ですし、Turing.jlはもう少しマシですが、「簡単に書ける」というのが私的には使いづらかったです。Gen.jlは細かいところまでチューニングできるのがありがたいですね。
タグ:
posted at 19:54:27
@genkuroki ニューラルネットワークのパラメータを確率分布から取り出す、いわゆるベイズニューラルネットワークというのを使う計算をさせています。他のライブラリ(私の場合はFlux.jlですが)と併用するようなごちゃまぜの計算をしたいとき、細かいチューニングが必要になるのでとても嬉しいです😊
タグ:
posted at 19:58:29
@genkuroki 私のGithubアカウントはありますが、一応論文にする予定の計算ですので見えるところにはリンクを貼っていません(すみません!)上の計算は今日ちょっと書いてみただけなのでまだネットにはのせてないです。
タグ:
posted at 20:09:39
#Julia言語 ROOT使いの人にとっては
discourse.julialang.org/t/high-energy-...
に参考になる情報があるかも。
データさえJuliaに読み込めれば、Juliaで計算した方が楽な可能性もある。
C++との連携は非常に面倒という印象がある。再現性が手堅く(プラットフォームにもよらない)解説がもっとあった方がよいかも。 twitter.com/mitharzo/statu...
タグ: Julia言語
posted at 20:13:41
#Julia言語
github.com/JuliaHEP/ROOT....
↓
github.com/tamasgal/UnROO...
github.com/JuliaHEP/UpROO...
Cxx.jlはつらい。
ファイルを読み込めれば「Juliaで計算」でいいかも。
タグ: Julia言語
posted at 20:43:29
@physics303 @nakayoshix #Julia言語 Python scipyで4000×4000の密行列のsvdに「740秒くらい」ということらしいですが、私のパソコンのJulia+MKLでは25秒(対角化は35秒)。
これはJuliaが速いのではなく、MKLが速い。
OpenBLASでもオーダー的に同じくらいだと思う。
ランダム行列の性質がきれい!
gist.github.com/genkuroki/d776... pic.twitter.com/BQSqENarNM
タグ: Julia言語
posted at 21:40:47
#Julia言語 Common Lispは無理だとしても、Lisp好きのそんなあなたに
github.com/swadey/LispSyn...
LispSyntax.jl: A clojure-like lisp syntax for julia twitter.com/anibutsu/statu... pic.twitter.com/l05b70ArwH
タグ: Julia言語
posted at 22:01:27
科学演算の分野では長年、Fortranがその位置を占めていたが、最近ではJulia言語が大規模な数値演算の領域で勃興していると。
実際に増えているというようなデータは無いみたいだけど、表現力の向上が有効であるとの話が後半に。 twitter.com/arstechnica/st...
タグ:
posted at 22:53:36