黒木玄 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 を見て下さい。
2021年05月16日(日)
非公開
タグ:
posted at xx:xx:xx
Ariadne Conill - @ar @ariadneconill
this binarybuilder.jl talk is blowing my mind
タグ:
posted at 02:12:35
@hyuki #Julia言語
Julia版
* Juliaでのメソッドはオブジェクトの所有物ではない。
* Base. show(io::IO, x::MyType) を定義すると、MyType型オブジェクトをstringやprintlnがその方法で扱ってくれるようになる。
* それら以外はほぼ忠実に近い直訳
全ソースコード↓
nbviewer.jupyter.org/gist/genkuroki... twitter.com/hyuki/status/1... pic.twitter.com/d6L3WyPdoB
タグ: Julia言語
posted at 02:15:51
全ソースコードを眺めました。矢張り何気に分かりやすいかも知れない。一寸一つずつ確認せんとアレですが。何より後半の出力が見易いなぁ。 twitter.com/genkuroki/stat...
タグ:
posted at 02:33:19
Looks like our #AlpineConf talk about BinaryBuilder went well 😊 thanks for having us! #JuliaLang twitter.com/ariadneconill/...
タグ: AlpineConf JuliaLang
posted at 02:41:35
非公開
タグ:
posted at xx:xx:xx
(3)秒で(8)m進むと、
(15)秒で( )m進む
( )秒で(24)m進む
考え込んでしまったので、問題を変えた。
(1)秒で(7)m進むと、
(3)秒で( )m進む
( )秒で(28)m進む
(3)秒で( )m進む はすぐ出来た。
( )秒で(28)m進む はしばらく考えてから出来た。
タグ:
posted at 07:40:00
Fortranでもcでも起きると思う。Juliaでの解決策はf(T[:,:])だけど、そもそも入れたTを変更する形だからびっくりマークつけた関数func!として定義しておくのが無難 twitter.com/physics303/sta...
タグ:
posted at 07:57:06
@physics303 #Julia言語
function f!(T)
T[1, 2] = 9.9
T
end
f(T) = f!(copy(T))
の方がシンプルでいいかも。
ループの中では f! を使う。
U = similar(T)
for ~
~
U .= T
f!(U)
~
end
タグ: Julia言語
posted at 08:03:34
「Julia言語で入門するプログラミング(その12)」を書きました。今回はエスケープコードを使ってのUIの改善です。また、型によるディスパッチとクロージャの使いわけについても、思うところを書いてます。
#Julia言語
muuumin.net/julia-intro-pr...
タグ: Julia言語
posted at 08:45:40
#Julia言語
Juliaの
* 実行時に新しい定義が可能なこと
* 実行時多重ディスパッチ(実行時多重メソッド)
に基く composability は C++ expression templates や Haskel typeclasses などのコンパイル時 composability よりも真により強力であるとはっきり書いてあります。
www.slideshare.net/acidflask/desi... pic.twitter.com/pU5mkIDAz7
タグ: Julia言語
posted at 09:00:34
結構時間をかけた割に、読み返すと少しボリューム不足な気もする。最初の方と比べてコードが大きくなってきたので、コードをいじる時間が増えて文章にかける時間が減っているからかな。
タグ:
posted at 09:12:05
本好きラノベで貴族の学校が1年生(10歳くらいという設定だったか)から既に「初日の試験をクリアしたら講義終了」だったの、作者氏は教育にたいして色々思うところが有るんだろうなーと思って眺めてますた twitter.com/genkuroki/stat...
タグ:
posted at 10:12:39
OokuboTact 大久保中二病中年 @OokuboTact
ツイッターで掛け算・順序論争は盛んだけど、
順序強制派の人達が出してくる資料は「指導要領解説」の最新版ぐらいなので、
つまらない。
本屋に行けば、教師向けの参考書で「掛け算・順序」について書いてある本はいろいろ見つかるのになあ
#超算数
タグ: 超算数
posted at 10:38:01
OokuboTact 大久保中二病中年 @OokuboTact
「小学校の掛け算順序強制派」の人で市販の文献を精力的に資料介しているのは「わさっきhb」。
takehikom.hateblo.jp/entry/20140924...
#超算数
タグ: 超算数
posted at 10:39:58
muuumin.net/julia-intro-pr... の「想い人にJuliaのコード片を送りつけるといい。(Juliaをインストールしてもいない人に恋してるだなんて言わないよね?)」がとてもいい。 #Julia言語
タグ: Julia言語
posted at 11:22:17
#Julia言語 リストヘッド付き循環リストのJulia版
添付画像
①翻訳版
②③④改訂版
改訂版では、structのフィールドに直接アクセスせずに、メソッド(函数)経由でアクセスするようにして、実装の仕方を自由に変えられるようにした。
gist.github.com/genkuroki/fd80... twitter.com/genkuroki/stat... pic.twitter.com/niokqkq0F4
タグ: Julia言語
posted at 15:32:52
#Julia言語
gist.github.com/genkuroki/fd80... でやってみせたデモンストレーションは、モジュールAで定義されているリストの表示や検索の函数を、モジュールBで全く異なる実装で作ったリストで使って見せることです。
これを見ればJuliaにクラスが不要な理由が分かると思います。 pic.twitter.com/9EfKT2xq6p
タグ: Julia言語
posted at 15:45:03
#Julia言語 このスレッドで扱っている例の良いところは、結城さんがデータ構造とアルゴリズムについてものすごく平易な解説を公開していること(以下のリンク先のスレッドを参照)。
数学的中身について直観がない状態でコードを読むのはつらいですが、直観があれば驚くほど楽にコードを読めるはず。 twitter.com/hyuki/status/1...
タグ: Julia言語
posted at 15:56:38
#Julia言語 一ヶ所、定義をミスっていた。In[10]8行目を訂正した。
gist.github.com/genkuroki/fd80... pic.twitter.com/R3LzlrCpTc
タグ: Julia言語
posted at 16:03:04
ごまふあざらし(GomahuAzaras @MathSorcerer
#Julia言語
#JuliaLang
IJulia の初回起動時間すらも煩わしいと感じた人を対象に sysimage で解決する話。
discourse.julialang.org/t/tool-sysimag...
posted at 16:33:49
遺伝的アルゴリズムでエッチな画像を作るやつが凄い事になってるな。混沌から始まり、秩序が生まれ、限界に到達し、再構成が始まってる。神話かよ
gamingchahan.com/ecchi/ pic.twitter.com/WuEM4OveVU
タグ:
posted at 16:56:23
@hyuki #python 版を書いてみました
直訳版
gist.github.com/taC-h/c4bdf670...
意訳版
gist.github.com/taC-h/2af30d8b...
タグ: python
posted at 17:04:03
@taC_handstand こうやってみると、やはり「アルゴリズムの素朴な記述」と「そのプログラミング言語らしい記述」とはけっこう違うのがよくわかりますね😊
タグ:
posted at 17:51:13
論文ちらっと見たらあくびの長さ論文、WAIC計算してるけど、渡辺先生の論文の方引用しようよ。そして階層モデルWAICだけど、たぶん中間パラメータ積分した予測分布になってなさそう。まだちらっとしか見てないのですが。
タグ:
posted at 18:11:08
#Julia言語 大幅に更新。コンストラクタのバグも取った。
ベンチマークテストを追加(添付画像③)。
モジュールAの実装よりも、モジュールBの実装の方が圧倒的に速い。
gist.github.com/genkuroki/fd80... pic.twitter.com/NtGHX6MTie
タグ: Julia言語
posted at 18:14:01
#Julia言語 モジュールBの作者は、モジュールAの作者にコードの変更をお願いすることなく、モジュールAを使った計算を圧倒的に速くできる。
モジュールBには、モジュールAで定義されたAbstractList型のオブジェクトを配列(Vector)に変換するメソッドも追加されている。
gist.github.com/genkuroki/fd80... pic.twitter.com/UUaSNd7NvK
タグ: Julia言語
posted at 18:14:04
まだ、ざっと見。グループが種なのでそれぞれの種をこえて予測を考えるなら積分が必要。考えないなら必要なし。どう考えてるかによる。また、同一個体でも複数回あくびの長さを測ってるならその階層も考察ができるし、あくびの長さの個体差は僕なら考える。
タグ:
posted at 18:18:12
@taC_handstand @tsatie gist.github.com/hyuki/cbbd4f2c...
の方の翻訳ですね。
私のコードは
gist.github.com/hyuki/c16aa6f6...
の方の翻訳です。こちらは結城さんが書き直した後のコードで、書き直した方を優先しないとまずいかなあと思ってしまいました。
どちらにしても本質的なところは対して変わらない。
タグ:
posted at 18:26:36
@taC_handstand @tsatie #Julia言語
コードを比較し易いように
gist.github.com/hyuki/cbbd4f2c...
のJulia直訳版も作りました。
JuliaではBase. show(io::IO, x::MyType) を定義すると(パフォーマンスにも気を使う)、REPLも含めて表示のされ方や文字列への変換の仕方が変わります。
gist.github.com/genkuroki/fd80... pic.twitter.com/AkaZYfgQqs
タグ: Julia言語
posted at 19:00:01
脳冷却説おいておいて、面白いデータセットだとは思いますね。YouTubeの動画とかからもデータは集めたみたいです。冷却を議論するなら気温測定が結果に入ってて良さそうなにのありませんしね。 twitter.com/shiomikozue/st...
タグ:
posted at 20:00:16
#Julia言語
twitter.com/hyuki/status/1...
↓
gist.github.com/hyuki/cbbd4f2c...
Java版
とそのJuliaへの翻訳版版
gist.github.com/genkuroki/fd80...
のIn[1]
の比較。
私にはめちゃくちゃそっくりに見える。 pic.twitter.com/0aBPQUJUK1
タグ: Julia言語
posted at 20:08:39
5倍程度だとせいぜい slow Julia
Juliaは工夫の塊であるお陰で速いので、Juliaが試行錯誤で見つけた方法を丸ごと導入しないと、Juliaのように速くならない。
コンパイルされてバイナリになったライブラリをリンクした場合のCよりJuliaの方が当然の理由で速くなっている場合がある。 #Julia言語 twitter.com/emergent/statu...
タグ: Julia言語
posted at 20:16:23
「Julia言語で入門するプログラミング(その12)」を今朝書いています。
muuumin.net/julia-intro-pr...
#Julia言語 twitter.com/muuumin20/stat...
タグ: Julia言語
posted at 20:29:28
@physics303 #Julia言語
* push!は要素の追加
* append!は集まりの追加
a = []
append!(a, [missing])
ならエラーになりません。
そしてaはリストではないです。
Pythonのことは忘れた方が吉。
あと、a = [] の後にpush!で作った配列を数値計算でそのまま使うと100倍くらい遅くなる場合があります。
タグ: Julia言語
posted at 20:44:14
@physics303 #Julia言語 数値計算系のコードを書くときには
a = []
aにpush!を繰り返す
そのようにして作ったaを別の計算で使う
のスタイルのコードを書くと、めちゃくちゃ遅くなる場合があります。
その原因はaの要素の型がAnyとみなされてしまうからです。
タグ: Julia言語
posted at 20:47:48
#Julia言語
* Juliaにクラスはない(実行時多重ディスパッチがあるので不要)。
* Juliaではメソッドは特定のオブジェクトの保有物にならない。(同名のメソッドであっても引数達の型付けによって区別され、さらに名前空間をmoduleで区切ることができる)
* { }や行末のセミコロンは不要。 pic.twitter.com/9YimfASLt3
タグ: Julia言語
posted at 20:58:04
#Julia言語 クラスベースのOOPの複雑なデザインパターンをJuliaでも使いたい人が discourse.julialang.org で「どうしてJuliaはクラスベースのOOPをサポートしないのか」と質問すると、クラスベースのOOPの複雑なデザインパターンはJuliaを使えば多くの場合に無用になるからだと教えてもらえます。
タグ: Julia言語
posted at 21:05:48
#Julia言語 discourse.julialang.org を見ると恒例行事のように繰り返されているクラスベースのOOPの信者の暴走を見て、クラスベースのOOPのデザインパターンに過学習ぎみの人にとっては、数値計算系のコードを書くことに興味がなくても、Juliaのやり方を学ぶ価値があるかもしれないと思いました。
タグ: Julia言語
posted at 21:10:00
非公開
タグ:
posted at xx:xx:xx
#Julia言語 Cの側で非常に面倒なことをやらないとJuliaに最適化で負けちゃう場合がある理由のJulia開発者による説明。
例えばすでにコンパイル済みのライブラリのバイナリ中のsinのような基本函数を使うとJuliaに負けちゃう可能性が出て来る。
discourse.julialang.org/t/in-as-few-li...
discourse.julialang.org/t/in-as-few-li... pic.twitter.com/JsG6cuHTK3
タグ: Julia言語
posted at 22:05:32
妻から勧められた『理系女性のライフプラン』ほぼ読了。研究者のライフワークバランスについて非常に優れた本だったので、以下にまとめとコメントを。メインの話者はラボ実験の理系だが、大多数は経済学にも当てはまる。また、女性に限らず別居婚や子育ての基礎知識として男性にも強くおすすめ(1/N)
タグ:
posted at 22:15:46
この本が秀逸なのは、あとがきにあるように「ネットやSNSが有用な情報を提供する一方で細切れの情報を集める手間や不安から、まとめることの重要性(一部省略・改変)」を意識したことにある。(2/N)
タグ:
posted at 22:20:20
例として、育児期の各執筆者のタイムスケジュールから、学振RPDのルール、学振の規定書類では保育園が入れない可能性、妊娠が分かったときの上司に相談のタイミング、などかゆいところに手が届く情報がまとめられている。(3/N)
タグ:
posted at 22:22:35
研究者のライフワークバランスの入門書決定版ともいえる本。ただ他方で、実際に育児中の人にとっては9割以上は既知の内容とも思う。その意味で、この本を読む便益が一番高いのはこれから結婚を考える、研究者志望の院生や院進学希望の学部生だと思う。(4/N)
タグ:
posted at 22:25:37
これからライフプランを考える経済学徒は、この本と「本当に伝えたい経済学の魅力(経セミ増刊)」の二冊を読めば入門は十分だと思う。他方で、結婚や育児の問題にいま直面している人は、配偶者の職業、親との距離、所属組織や地域の補助などで取れる手が大きく変わってくる。(5/N)
タグ:
posted at 22:29:13
@genkuroki @hyuki やっと?何とか動くものを #Python で。なるべくシンプルにとか思うもののこんなんで良いのやら半信半疑ですが。しかもやっと最初の一歩。
github.com/tsatie/SatieGi...
タグ: Python
posted at 22:29:59
その意味で、いま具体的なライフプランの問題に直面している人は、信頼できる同僚や近い分野の人との個人的なメンタリングが、研究よりも重要だと感じた。また適切な助言のためにはかなりプライバシーを聞かざるを得ないため、外部からのメンタリングも一般にはかなり限定的にならざるを得ないのでは。
タグ:
posted at 22:32:46
なので今自分が後進に出来る一般的な助言としては、「結婚前など早いうちに上記2冊を読んでおくこと」と「配偶者や親との距離などを含めて話せる人を複数作るよう意識すること」くらいだろうか。(7/N)
タグ:
posted at 22:35:44
前者に関連し、「経済学徒向けの、基礎的なライフワークバランス情報をまとめたサイト」などがあると有用とは思った(家庭内マネージャーから強く止められたため、自分がメインで作成しませんが、例えば下松さんのサイトが海外留学希望者に大きく影響を与えたように、作る価値はあると思います)(8/N)
タグ:
posted at 22:40:27
#Julia言語
julia> ]
pkg> add UnicodePlots
pkg> バックスペース
julia> using UnicodePlots
で使えるUnicodePlots.jlの使用例。
結構heatmapがきれいでした。
heatmapのオプションの指定の仕方が参考になると思います。 pic.twitter.com/JOkxY1CRy8
タグ: Julia言語
posted at 22:43:37
(あの方とかきみとか作成を手伝ってくれないものか…)最後に、裁量労働制の研究者は、時間の柔軟性から日本の職業の中では相当子育てに向いている、ということはより広く周知されて良いと思います。生活や将来設計のために院進学やアカデミアを尻込みすることが減ることを、心から願います。(9/9)
タグ:
posted at 22:44:41
蛇足ですが、「理系女性のライフプラン」で強調されていなかったが個人的に重要に思う点として、全自動洗濯乾燥機、食洗機、ロボット掃除機などの家電です。あと、突発的なトラブルに関してシッターと病児保育は(両親などにすぐに頼めない場合)極めて大切だと思います。(10/9)
タグ:
posted at 22:48:12
この点、大阪大学はポピンズと提携しており、また市でも病児保育施設が充実しているので本当に本当に有り難いです。「日本に帰って良かったこと」は海外在住者からよく聞かれますが、自分は必ず真っ先に「保育の質と種類の多さ」を挙げています。(11/9)
タグ:
posted at 22:50:38
現状だとTaskがスレッド間を移動できないので、spawnマクロでTaskを作成するとき運悪く同じスレッドに複数タスクが割り振られちゃうと急にパフォーマンスが落ちたりしてアレというはなし。
タグ:
posted at 23:13:32
非公開
タグ:
posted at xx:xx:xx