黒木玄 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年08月22日(土)
ごまふあざらし(GomahuAzaras @MathSorcerer
多くの人が使うであろうTier1サポートの普通のPCの上だと速度大差無いけれど
(Tier3サポートの)パイゼロの上だとJuliaの方が1.7倍程度遅かった.まぁしょうがない.
タグ:
posted at 00:00:00
#数楽 体上の線形空間で即解釈できる話題には強いが、そうではない線形代数(という名の数学的道具の集合体)について触れていない解説を見たら、Jordan標準形の部分をPID上の有限生成加群の分類の立場から見直してみた方がよいです。
線形代数ではなく、PID上の有限生成加群の理論だと思う。続く twitter.com/mathcafe_japan...
タグ: 数楽
posted at 00:17:46
非公開
タグ:
posted at xx:xx:xx
@hayabusa_0613 #Julia言語 「structで定義する値をmoduleに格納しておくこと」は「moduleの中にあるstructを使うこと」の必要性と関係ありません。
moduleの中にあるstructを使えば、moduleの変更によってstructの定義をjuliaを再起動せずに変えることが可能になることが本質的です。
タグ: Julia言語
posted at 01:12:08
非公開
タグ:
posted at xx:xx:xx
#Julia言語 その問題はPackageCompiler.jl
github.com/JuliaLang/Pack...
を使えば解決。しかし、私は最新版のPlots.jlを気軽に使いたいので using Plots の遅延問題が大幅に緩和された nightly build のJulia v1.6.0-DEVを使っています。
試行錯誤中に julia foo.jl などとしないことも大事。 twitter.com/makoto_susys/s...
タグ: Julia言語
posted at 01:30:31
#Julia言語
コードを書き始める前に
using Plots
plot(sin)
heatmap(rand(10,10))
を実行し、遅延時間にコードを書けば、コードを書いている間に遅延時間は終了しています。
julia foo.jl のような使い方をしていなければ、遅延は最初の1回目だけで済みます。 twitter.com/genkuroki/stat...
タグ: Julia言語
posted at 01:33:32
#Julia言語 もしも
julia foo.jl
を繰り返しているなら、「普通」とは異なるjuliaの使い方をしていると思います。
試行錯誤でコードを書いているときにはjuliaをできるだけ再起動しません。
これが非常に便利であることに気付くかどうかが大問題。 twitter.com/polymerase_96/...
タグ: Julia言語
posted at 01:56:41
@polymerase_96 #Julia言語 foo.jl を書きながら、REPLでテストを繰り返す場合には
using Revise
includet("foo.jl")
は必須の道具だと思います。
パッケージ開発中には
julia> cd("MyPkg")
pkg> activate .
のあとに常に
julia> using Revise
してから、
julia> using MyPkg
しています。
タグ: Julia言語
posted at 02:31:53
This is great to see; it was my biggest gripe/grief with pandas back in the day and I'm glad the project is maturing and taking this more seriously.
As one of primary implementors of `missing::Missing` in #julialang, I had a few thoughts reading over the proposal: 1/ twitter.com/jorisvdbossche...
タグ: julialang
posted at 02:32:47
It's amazing how much being able to represent `Union{T, Missing}` formally in #julialang makes a difference. I.e. a column type can literally be `Vector{Union{Float64, Missing}}`, which means I have an array of elements that are Float64 or Missing.
タグ: julialang
posted at 02:32:48
This solves the issues of: how do I tell if there are or might be missing values in an array? And how do I create an empty array of a specific type that might have missing values? And subsequently, what's the type of an array with only missing values? (Vector{Missing})
タグ:
posted at 02:32:48
These were all design questions brought up in the pandas proposal. The other wonderful thing about Union{T, Missing} is that it generalizes beyond just Arrays; I can use that as the type of a field in a custom struct.
タグ:
posted at 02:32:48
Oh, and how about the fact that I could create my own custom Missing type (Undefined? Unspecified? RefusedToAnswer) and have *all* *the* *internal* *optimizations* just work. Super cool! Like, it wouldn't be more than a couple hundred LOC to make your own missing type.
タグ:
posted at 02:32:48
Which makes me shudder a little thinking about the implementation of NA for pandas. You essentially have to design for two languages: the python-side and the C/C++ internals. And as noted in the proposal, the breaking change/introduction of this is formidable.
タグ:
posted at 02:32:48
You never want to have to break things in major ways, but I agree w/ the proposal that it would be worth a fully consistent missing-value story for pandas.
タグ:
posted at 02:32:49
On the 3-value logic point, I'd strongly vote for it vs. NaN semantics. I still hear horror stories of analyses-gone-wrong because unaccounted missing values completely change statistics/ratios. *3-value logic forces users to DEAL w/ missing values, which they absolutely should*
タグ:
posted at 02:32:49
In #julialang, this has resulted in useful tools like skipmissing, dropmissing!, and coalesce to make dealing w/ missing values as convenient as possible. There's also an extremely promising version of passmissing in Missings.jl that allows arbitrary lifting over operations
タグ: julialang
posted at 02:32:49
Which leads me to my biggest question for pandas: how do they plan on handling non-comparison missing propagation? This doesn't seem to be discussed much in the proposal, but I know still generates discussion in the Julia world.
タグ:
posted at 02:32:49
Perhaps the "world" of pandas is limited/fenced in enough that NA propagation is "easy"? In #julialang we have the issue that the language is so easily extendable, that we want missing propagation to Just Work for any package/user code anywhere.
タグ: julialang
posted at 02:32:49
Anyway, super cool to see the progres here and read thru details of the implementation; brings back fond memories of past JuliaCons where we hashed out a lot of these details for #julialang. Best of luck!
タグ: julialang
posted at 02:32:49
#Julia言語
using Revise
で使える
includet("foo.jl")
がincludeではなく、includetであることに注意。
こうしておくと、foo.jlの変更が自動的に反映されるようになり、foo.jl内のコードのテストが易しくなる。 twitter.com/genkuroki/stat...
タグ: Julia言語
posted at 02:34:16
非公開
タグ:
posted at xx:xx:xx
As a last follow up: it's fun to see #julialang and the work we've put into `missing` show up so much in pandas proposal/issue discussions. I do think we got a lot right, even if there have been wrinkles/compiler work to be ironed out.
タグ: julialang
posted at 02:55:30
CSV Reader Benchmarks: #Julialang Reads CSVs 10-20x Faster than #Python and #R Click here juliacomputing.com/blog/2020/06/2... to learn more.
#benchmark #CSV #Blog #MachineLearning #DataScience #AI pic.twitter.com/xBYjxTzy06
タグ: AI benchmark Blog CSV DataScience Julialang MachineLearning Python R
posted at 04:35:16
>先生方は悪く無いです。
中国でデモやるときには「愛国」や「反日」を掲げて当局の弾圧を回避する、みたいなのを連想してしまった。 twitter.com/shian_aya/stat...
タグ:
posted at 07:44:14
沖縄付近の熱帯低気圧が、きょうにも台風に。
海水温がかなり高いので急発達するおそれがあり、沖縄では台風への備えを急いでください。
来週明けにかけて、九州の南へゆっくり北上する予想です。
本州の南の低気圧も、やや発達ぎみで、あすは関東など東日本で雨雲が広がります。
#台風 pic.twitter.com/K7wqHf0RX4
タグ: 台風
posted at 08:17:35
しばらくFirefoxをメインにして使ってみてるのだが、Chromeより軽いし(個人の感想です)、動作に不可解な点はないし(入れてるプラグインが少ないからかも)、Chromeから本格的に移行しようかなあ。
タグ:
posted at 10:39:10
非公開
タグ:
posted at xx:xx:xx
ごまふあざらし(GomahuAzaras @MathSorcerer
#Julia言語
Base.showをいじることで
VSCodeにゴマちゃん構造体の結果を表示することに成功
gist.github.com/terasakisatosh... pic.twitter.com/QWWSGoCw5F
タグ: Julia言語
posted at 12:05:34
ごまふあざらし(GomahuAzaras @MathSorcerer
元ネタはまじめな動画より
www.youtube.com/watch?v=S1Fb5o...
タグ:
posted at 12:05:35
ごまふあざらし(GomahuAzaras @MathSorcerer
display("text/plain", g) のようにしてMIMEをしていできるっぽい。こうすると image/png が優先される環境でもテキストの情報をえられるっぽい。
タグ:
posted at 12:08:15
ごまふあざらし(GomahuAzaras @MathSorcerer
ゴマちゃんの画像はNHKのページのURL画像をダウンロードしてPIPEでFileIOのload関数に引き継がせています。
タグ:
posted at 12:15:45
Julia でTukey-Kramer法とGames-Howell法を行うスクリプトを書いてみました。
(Julia-1.4.2と1.5.0で動作確認済みです。以前のバージョンは動作しない可能性があります)
探せば見つかるとは思うのですが、自分自身の練習です。
(gist.github.com/toshi-ara/9357...)
#julia #julialang #多重比較
posted at 12:22:33
Oldies but goldies: William Thomson and Peter Guthrie Tait, Treatise on Natural Philosophy, 1867. Among other things, formalizes the notion of spherical harmonics. Display here is a random evolution in each space. en.wikipedia.org/wiki/Spherical... pic.twitter.com/2rYr1HcL17
タグ:
posted at 14:00:00
ひどい一例にすぎませんが、シャコパンチしてダメージが蓄積した「拳」 dactyl heel の脱皮殻です。耐性構造も完璧ではない。数ヶ月に一度の脱皮で復活します。 twitter.com/katzkagaya/sta... pic.twitter.com/3jQHbZqMym
タグ:
posted at 14:42:38
This small video clip demonstrates how we can use Julia's type inference system for bug reports.
TypeProfiler.jl tries to find possible error points given toplevel call signatures of generic functions, so its type checking doesn't need any additional type annotations.
#julialang twitter.com/kdwkshh/status...
タグ: julialang
posted at 16:31:09
探索アルゴリズムが早めに動かせて(つまりbinary searchができる)値の挿入もそこそこ早いデータ構造ってなんだ?→二分探索木では
二分探索木って普通Setの中身なのでは→Setのソースコードを見に行く
Set{K}ってDict{K,nothing}なのでは→Dictのソースコードを見に行く
タグ:
posted at 17:56:18
#Julia言語
using ImageShow
の行を
using Images
に置き換えないと意図した通りになりませんでした。
using ImageShow のままだと添付画像のようになる。1回目のdisplay("image/png", Goma())に失敗する。2回目以降は正常に動く。謎。誰かこうなる理由を教えて!
twitter.com/MathSorcerer/s... pic.twitter.com/DZQWHtWAOf
タグ: Julia言語
posted at 18:21:51
#Julia言語 Gomaに対抗してKumaにした。
using FileIO, Images をいらなくした方法。
代わりに using Base64 を使う。
問題:これも無くせるか?
using HTTP も使う版の方が快適です。
nbviewer.jupyter.org/gist/genkuroki... pic.twitter.com/vowMpNAz5b
タグ: Julia言語
posted at 18:23:51
@__KatoK__ アルゴリズム系は詳しくないのですが、DataStructures.jl の SortedDict や SortedSet は内部構造が 2-3 木だそうです。
juliacollections.github.io/DataStructures...
タグ:
posted at 18:35:38
#Julia言語 やっていることは本質的に
github.com/JuliaPlots/Plo...
Plots.AnimatedGif の Base.show の定義
と同じです。AnimatedGIfという名なのに、mov, mp4, webmにも対応している。 pic.twitter.com/QmGQRXcUiA
タグ: Julia言語
posted at 18:36:02
#Julia言語 各種の「型」に対する Base. show の書き方については、各種パッケージで "Base. show" を検索すれば分かりますね。(. の後の空白は除く)
github.com/JuliaPlots/Plo...
Plots.jl で "Base. show" を検索
タグ: Julia言語
posted at 18:40:15
#Julia言語 Plots.AnimatedGif 関連
以下のスレッドでは IJulia の Jupyter notebook 上で画像ファイルなどをどのように楽に表示するかについて扱っている。
twitter.com/genkuroki/stat...
タグ: Julia言語
posted at 18:47:14
Called the pioneer of the Perceptual Art movement, artist and sculptor Michael Murphy, rose to fame after he created the first portrait of Barack Obama during the 2008 US presidential election. This is one of his most famous works, "The Immigrant" www.perceptualart.com pic.twitter.com/Z27hVaKXKf
タグ:
posted at 19:23:05
#Julia言語 Jupyter notebook で画像ファイルを表示する方法。display("image/png", filename) や Plots.AnimatedGifを使う方法以外に添付画像の方法もある。
nbviewer.jupyter.org/gist/genkuroki... pic.twitter.com/wHUt9dwJld
タグ: Julia言語
posted at 19:39:07
#Julia言語 注意:Jupyter notebook は
nbviewer.jupyter.org
を使って公開されることになるので、nbviewerで表示されない画像の表示方法は使えない方法になる。
タグ: Julia言語
posted at 19:40:16
ごまふあざらし(GomahuAzaras @MathSorcerer
コレはクマだったんですね❗️ twitter.com/genkuroki/stat...
タグ:
posted at 19:46:43
JuliaのUnicodePlots,Termuxのssh経由だと見やすくていいな.他の言語でも利用できるといいんだけど(Pythonのmatplotlib代わりとか),Julia自身で書かれているからCラッパー作ればってわけにもいかなそう.うーん. pic.twitter.com/ewlUanZwlA
タグ:
posted at 19:59:16
ごまふあざらし(GomahuAzaras @MathSorcerer
確かに 2回実行しないと絵が出てこないですね・・・.
(最初 Images.jl を入れていて ImageShow.jl に書き直したのがいけなかったです.ゴメンなさいできゅ・・・.) twitter.com/genkuroki/stat...
タグ:
posted at 20:07:23
#Julia言語 訂正版。<img src="data:〈mime〉;~" /> の〈mime〉の部分が正しくなくても、 ブラウザは表示してくれるのですが、気持ち悪いので直したつもり。
nbviewer.jupyter.org/gist/genkuroki... pic.twitter.com/i9zEUOQdC8
タグ: Julia言語
posted at 20:21:41
@MathSorcerer #Julia言語
【ImageShow.jl に書き直したのがいけなかった】
いえ、1度目のdisplay("image/png", ~)でエラーが出て、2度目に成功するというのは非常に不思議に見えるので、むしろ面白かったです。
予想外のことが起こると面白い。
タグ: Julia言語
posted at 20:24:46
VSCode で mp4 や webm が表示できないのは、パッケージや Extension の問題ではなく、VSCode の Electron が ffmpeg を含まないためのよう。未実装というよりもそういうポリシーを選択しているような雰囲気。
タグ:
posted at 20:32:18
ごまふあざらし(GomahuAzaras @MathSorcerer
@LirimyDh 確かに convert で Matrix{Float64} に型変換して教えていただいた関数のレシピを参考に,fillcolor などのアトリビュートなどを追加することで,heatmap で実現することができました.ありがとうございます! pic.twitter.com/Xk7WCP7Dmc
タグ:
posted at 20:34:19
正方行列を下(Lower)三角行列と上(Upper)三角行列の積に分解する事を「LU分解」というのか。まぁ三角行列は扱い易いもんなぁ。どういう正方行列やと分解可能なんやろ。その辺りはサッと分からんけど気になる。がまぁほぼできるのやろな。 twitter.com/genkuroki/stat...
タグ:
posted at 20:39:55
@Dsuke_KATO #Julia言語 srcにurlをそのまま入れるとリンク切れになると表示されなくなります。
ローカルなファイルの場合には、nbviewerで公開したときに確実に表示されなくなります。
それだと困るのでこういう仕様にしている。
繰り返し強調していますが、nbviewerで公開するところまで考慮する必要がある。
タグ: Julia言語
posted at 21:01:27
自分のTLで24時間テレビがまったく登場しないので、日テレが実は星雲賞の発表とJulia言語とFGOと築地エール花火をやってるんじゃね?という疑いを持ち始めた(そして夕餉を囲みつつ録画してあった勇者ああああを視聴中)
タグ:
posted at 21:03:12
#julialang
A[i] がないときのデフォルト値を設定した
get(A, i, default_value)
という函数がある。
D = Dict(:a=>"foo", :b=>"bar", :c=>"baz")
get(D, :a, "poo")
→ "foo"
get(D, :d, "poo") # D[:d] はないので "poo" になる
→ "poo"
タグ: julialang
posted at 21:14:37
#Julia言語
Julia / Jupyter での画像表示を実装する qiita.com/Lirimy/items/b... #Qiita
posted at 21:18:19
@genkuroki リンク切れを心配されるのでしたら、画像をファイルとしてnotebookの横に保存して、そこへのパスを使えば問題ないように思います。ただ、もともとがリモートのファイルを表示させることなので趣旨がズレてしまうかもしれませんが。いずれにせよbase64encodeは無駄が多いように思いましたので。
タグ:
posted at 21:54:12
#Julia言語 改良版
nbviewer.jupyter.org/gist/genkuroki...
mp4にも対応。
option = "width=300" などの追加によって、表示の仕方を制御可能。 pic.twitter.com/aWLmSk06FX
タグ: Julia言語
posted at 23:59:07