Twitter APIの仕様変更のため、「いいね」の新規取得を終了いたしました

黒木玄 Gen Kuroki

@genkuroki

  • いいね数 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 を見て下さい。
Favolog ホーム » @genkuroki » 2021年04月20日
並び順 : 新→古 | 古→新

2021年04月20日(火)

Kien Y. Knot @0_u0

21年4月20日

@Atsushi776 まともに触っているのはRとPython(仕事でも使う)とCとC++(一応コンパイルして動くアルゴリズムを実装したから数に入れちゃう甘ちゃん)とRustとJulia(Cより簡単だけどなんか後回しになってしまっている)

タグ:

posted at 23:59:26

atusy @Atsushi776

21年4月20日

まともに触ったと言えるものでR, Python, Lua, JavaScript。
Rパッケージを移植して遊んでみたJulia。
学生時代に学んで少し遊んですっかり忘れたFortran。ぎり6でいいかな?
LispやCも授業では触ったが、数に入れるのは抵抗あるな。 twitter.com/0_u0/status/13...

タグ:

posted at 23:56:39

Massimo @Rainmaker1973

21年4月20日

Oobleck is a non-Newtonian fluid made of 1 part of water to 1.5–2 parts of corn starch, and is used to show the force of sound vibrations. When sitting on subwoofers, it thickens from the force, and looks like it’s dancing or coming to life [full video: buff.ly/2p3XwXW] pic.twitter.com/uBaFS88NHD

タグ:

posted at 23:30:00

Yuki Nagai @cometscome_phys

21年4月20日

Notion、マークダウンでコード書くときJulia言語の文法サポートされてないっぽい?

タグ:

posted at 23:08:18

もふもふ動画 @tyomateee2

21年4月20日

この猫語を翻訳出来る人はいるのだろうか… pic.twitter.com/Pu76VDF6Ha

タグ:

posted at 22:35:13

(「・ω・)「ガオー @bicycle1885

21年4月20日

わかった。Pythonのrequestsだ。むかし認証のバグを直したんだ。

タグ:

posted at 22:04:24

(「・ω・)「ガオー @bicycle1885

21年4月20日

ワシもなんか出てた。なんで? pic.twitter.com/eVwxzgssqh

タグ:

posted at 22:03:34

Atsushi Sakai @Atsushi_twi

21年4月20日

とかいってたら、GitHubでMars 2020 Helicopter Missionに貢献した人に送られるバッチを自分がもらえてたぁあ!!!!!!! 😲 よくわからないけど、SciPyのメンテナーの一人だからもらえているらしい。世界的な偉業にすこしでも貢献できたのであれば嬉しいな🎉 pic.twitter.com/1H5CA93MVS

タグ:

posted at 21:19:23

Wong@Yokohama @R_Wong_K

21年4月20日

@tritri32 @green_putting そんな先生、やる気を無くせばいいんです。(笑)

タグ:

posted at 21:06:19

オタ小児科医 @otapediatrician

21年4月20日

これなー。昔新卒の看護師のポケットからハサミが飛び出て俺の脇を掠めたことがあったわ。実際は30cm以上離れてたんだろうが、マジで恐怖を感じた。 twitter.com/dora2midway/st...

タグ:

posted at 21:03:27

非公開

タグ:

posted at xx:xx:xx

非公開

タグ:

posted at xx:xx:xx

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語

2つの処方箋有り

* JuliaではOffsetArrays.jlというパッケージを使えば配列のインデックスを始まりを任意に設定可能。

* 0始まりインデックスのa[i]をJuliaにおけるa[begin+i]に書き換える。

配列のインデックスの始まりが0に固定されているプログラミング言語への過学習が問題。 twitter.com/yoshi_hide_ban...

タグ: Julia言語

posted at 20:43:37

非公開

タグ:

posted at xx:xx:xx

黒木玄 Gen Kuroki @genkuroki

21年4月20日

朝に近所で見かける通学途中の小学生がめちゃくちゃかわいいことを知っていれば、そのかわいい小学生達に非常識な考え方を教えることを強制されている先生達のストレスは相当に大きなものになっていると推測されます。

ここまで非常識なことが子供相手に堂々と行われているのは本当にまずいです。 twitter.com/genkuroki/stat...

タグ:

posted at 20:29:14

黒木玄 Gen Kuroki @genkuroki

21年4月20日

@secondinspire @sekibunnteisuu かけ算順序はどうでもよいと思っている常識ある若い先生が、別の先輩先生にかけ算順序指導をすることを強制されている場合もあるので、常識ある先生達はSNSで自分の意見を率直に述べ難くなっていると思われます。

タグ:

posted at 20:19:05

黒木玄 Gen Kuroki @genkuroki

21年4月20日

@secondinspire @sekibunnteisuu 現実の小学校では、かけ算順序はどうでもよいと思っている常識ある若い先生が、別の先輩先生にかけ算順序指導をすることを強制されている場合もあるようです。

ここまで非常識な側が堂々と酷いことをしているケースは珍しく、誰が真にクズなのかをきちんと見極めないと非常にまずいです。 twitter.com/genkuroki/stat...

タグ:

posted at 20:17:26

黒木玄 Gen Kuroki @genkuroki

21年4月20日

@secondinspire @sekibunnteisuu 非常識な考え方を持っていてかつ「バツにすることには反対」と言う人は多いです。

子供の相手をしたり、子供への教え方に口を出したりして欲しくないのは、非常識な考え方の持ち主です。

バツを付けられるより、バツをつけずに優しく非常識な考え方を子供の心に注入されることの方が怖い。

タグ:

posted at 19:51:57

黒木玄 Gen Kuroki @genkuroki

21年4月20日

@secondinspire @sekibunnteisuu 小学校の先生達や市の教育委員会などにかけ算順序は大事だと教えるべきだとする非常識な人達が沢山いるのは事実のようですが、保護者の前で「そういう教え方に反対だ」と明言してくれる小学校の先生もいます。

非常識な教師を馬鹿にし、常識ある先生達を応援するのがよいと思います。

タグ:

posted at 19:17:26

黒木玄 Gen Kuroki @genkuroki

21年4月20日

@secondinspire @sekibunnteisuu 天下の国税庁(笑)のウェブサイトでも

3,500個 × 1円 = 3,500円



10,000円 × 1,500個 = 15,000,000円

のスタイルがすぐ側に混在しています。

かけ算順序にこだわる人は税金について学ぶときにも困るでしょうね。#超算数

www.nta.go.jp/law/joho-zeika... pic.twitter.com/MhM7Ei14W8

タグ: 超算数

posted at 19:14:15

黒木玄 Gen Kuroki @genkuroki

21年4月20日

@secondinspire @sekibunnteisuu 【『50×300=15000円』みたいに書いた」としたら受け取り手は50円のものを300個買ったと認識するのが一般的ではないでしょうか】と同じような感覚の教師は一般常識を知らないことになるので、馬鹿にされて当然。

馬鹿にされて当然の教師のみが馬鹿にされているという認識が正しい。#超算数

タグ: 超算数

posted at 19:10:40

非公開

タグ:

posted at xx:xx:xx

(「・ω・)「ガオー @bicycle1885

21年4月20日

俺ほどのJulianにもなるとまだリリースしてないパッケージに☆が20個も付く。

タグ:

posted at 18:31:28

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語 訂正:❌maxmum→⭕️maximum

foo(f, y)型の函数では、foo(x->f(x), y) を

foo(y) do x
f(x)
end

とも書けるので、相当に沢山あります。使用可能なら使った方が、可読性や効率性の観点から、得になることが多いです。

タグ: Julia言語

posted at 18:13:30

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語

A = [1, 2, 3, 4, 5, 6]
findfirst(A .== 4)



findfirst(==(4), A)

の方が効率的です。A .== 4 でメモリ割当が発生するのですが、後者の方法なら生じない。==(4)(x) は x == 4 と同じ。

foo(函数, コンテナ)型の函数が他にも沢山あります。例えば

sum(f, A)
maxmum(f, A) twitter.com/jirohhana/stat...

タグ: Julia言語

posted at 18:06:42

非公開

タグ:

posted at xx:xx:xx

optical_frog @optical_frog

21年4月20日

別アカウントでタブレット etc. で学生視点で Zoom 授業に入っておいて,主にそっちの音声を聞きながら授業を進める.もしも音声が止まったりしたら,早く気づけるはず.

タグ:

posted at 16:53:18

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語 以下のproblem-algorithm-solverスタイルは相当に普遍的に使える感じ:

* 問題を記述するパラメータ達を1つのオブジェクトprobにまとめる。

* 解法を記述するパラメータ達を1つのオブジェクトalgにまとめる。

* solve(prob, alg)函数を書いて、実行する。

Parameters.jlが神。

タグ: Julia言語

posted at 16:52:33

optical_frog @optical_frog

21年4月20日

学生さまに主役として話してもらうときには,Zoom で仮想カメラの共有を止めて,ふつーのモードで進行する.

タグ:

posted at 16:51:41

optical_frog @optical_frog

21年4月20日

画面に表示する資料のレイアウトは,OBS の「スタジオモード」で切り替えてる:プリセットをつくっておいて,スライドのみ表示したり,カメラだけ表示したり切り替える.

タグ:

posted at 16:50:50

optical_frog @optical_frog

21年4月20日

共有するときに,「ビデオクリップに最適化」しておくと,スライドに埋め込んだ動画を再生する場合に,なんぼかマシな画質でコマ落ちさせずに見てもらえる.

タグ:

posted at 16:48:26

optical_frog @optical_frog

21年4月20日

周回遅れなので,いまさらの話だと思うんだけど――自分の場合,Zoom でリアルタイム遠隔授業やるときには,スライド/ホワイトボード/カメラを OBS で配置して,「仮想カメラ」を ON.そんで, OBS の仮想カメラ映像を Zoom で「共有」してる.その方が画質を落とさずに見てもらえるご様子なので. pic.twitter.com/iEIZy3VjMY

タグ:

posted at 16:46:47

ytb @ytb_at_twt

21年4月20日

学生はPandAの所定のページから接続する規定になっていること、そしてその時点で誰も接続していなかったこと(授業開始㉚分前)から可能になった訳ですが、やっぱり、授業前には接続リハーサルが大切だってことですね。

タグ:

posted at 16:39:49

ytb @ytb_at_twt

21年4月20日

急遽Zoomアドレスを再発行してYouTubeの中継はそのままの形でスタートできることとなりました。よかった。

タグ:

posted at 16:38:18

非公開

タグ:

posted at xx:xx:xx

ytb @ytb_at_twt

21年4月20日

オンライン授業のためにZoomに接続し、YouTubeに中継を繋ごうとしたら、YouTubeの第一回の授業中継にレダイレクトされてしまうという事象が起き、パニックになりかけたんですが、Zoom会議室の設定を「繰り返し」にしていたので、前回の中継の設定がそのままに再開してしまうと言う理由だと判明。

タグ:

posted at 16:37:34

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語 まとめ:以下はやめた方が得

❌julia foo.jlを繰り返す。

❌foo.jl内に必然性に欠けたmain()函数がある。

❌foo.jl内ではグローバル変数に問題を記述するパラメータ達が格納されていて、函数内で直接使われている。

❌パッケージ化せずにfoo.jlから分割ファイルをincludeで読み込む。

タグ: Julia言語

posted at 16:26:16

黒木玄 Gen Kuroki @genkuroki

21年4月20日

コードを書く分量はほぼ変わらないのに、問題probを解く函数solve(prob)を書かずに、main()函数を実行するスタイルを維持するのは合理的ではない。

この辺は伝統的に大学での教育がうまく行っていない所だと思います。

タグ:

posted at 16:26:15

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語 続き。main()函数を廃棄して

using Parameters
prob=(a=~, b=~, c=~)
function f(prob) ~ end
function g(prob) ~ end
function solve(prob) ~ end
sol=solve(prob)

のように書けば、函数達f, g, solveは使い回しをできるコードになってくれます。(必要に応じてstructも利用)

タグ: Julia言語

posted at 16:26:15

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語 では.jlファイル内のコードは上から下に順番に実行されるだけなので、main()函数を作る必要はないです。

a, b, c = ~
function f() a,b,cを使ったコード end
function g() a,b,cを使ったコード end
function main() a,b,c,f(),g()を使ったコード end
main()

のスタイルは不合理。続く

タグ: Julia言語

posted at 16:26:14

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語 パッケージを10秒で作れるので、

❌foo.jlの編集とjulia foo.jlの実行を繰り返す。
❌foo.jl内にはなぜかmain()函数がある。

のスタイルを捨てて、

⭕️パッケージFoo.jlの編集とFoo.jl内の函数の実行を繰り返す。

に移行し易いです。Revise.jlが神!

タグ: Julia言語

posted at 16:08:01

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語 usingで使えるパッケージFooは

pkg> generate Foo
pkg> dev ./Foo

で作れます。10秒で作れる。開発は

julia> using Revise
julia> using Foo
Foo/src/Foo.jlの内容を変更すると自動的に反映
julia> prob = Foo.Prob(); sol = Foo.solve(prob)

のスタイルで。

タグ: Julia言語

posted at 16:08:01

黒木玄 Gen Kuroki @genkuroki

21年4月20日

⭕️問題を記述するパラメータ達は1つの変数にまとめる。

⭕️問題を記述するパラメータ達をまとめたオブジェクトを函数に常に引数として渡すようにする。

⭕️パッケージ化して、パッケージ内の函数を実行する。 (#Julia言語 ならパッケージを10秒で作成可能なので手間は増えない。)

タグ:

posted at 16:08:00

黒木玄 Gen Kuroki @genkuroki

21年4月20日

一般に以下の行為はやめた方が得だと思う。

❌複数のグローバル変数に問題を記述するパラメータ達をバラバラに格納する。

❌それらのグローバル変数を、函数に引数として与えずに、函数の中で直接使用する。

❌グローバル変数の設定を書き換えて再実行を繰り返す。

タグ:

posted at 16:08:00

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語

Juliaでは具体型が不定のグローバル変数を簡単に作れるせいで、引数を経由せずに函数内でグローバル変数を使うと計算速度が大幅に遅くなります。

バグの原因にもなり易い。

公式ドキュメントのPerformance tipsでも最初にそういう注意が書いてあります。
docs.julialang.org/en/v1/manual/p...

続く twitter.com/ohtanilson/sta...

タグ: Julia言語

posted at 16:07:59

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語 structを使いたくないならば、

using Parameters

prob = (
a=1.2,
b=3.4,
c=10^3
)

function f(prob)
@ unpack a, c = prob
a,cを使ったコード
end

f(prob)

タグ: Julia言語

posted at 16:07:59

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語 引数の煩雑化を避けたいなら、問題を記述する情報を1つの変数にまとめるとよいです。

using Parameters

@ with_kw struct Prob{A,B,C}
a::A=1.2
b::B=3.4
c::C=10^3
end

prob=Prob()

function f(prob)
@ unpack a, c = prob
a,cを使ったコード
end

f(prob)

続く twitter.com/ohtanilson/sta...

タグ: Julia言語

posted at 16:07:58

Kohei Kawaguchi=Suna @mixingale

21年4月20日

@ohtanilson Juliaのプラクティスはわからないけど、関数内では絶対にグローバル参照はするべきじゃないと思う。確実にバグを生み出す魔法だから。

タグ:

posted at 15:08:38

あぴ爺 @apne5z

21年4月20日

@SxGxD69 @fault330 ドイツ🇩🇪のユーロノヴァアートホテルって場所らしいですよ!
サイケデリックカーペットっていって、廊下や部屋を走らせないようにするための工夫もあるってどっかに書いてました笑
euronova-arthotel.topcolognehotels.com/ja/

タグ:

posted at 15:06:17

露本伊佐男 / Isao Tsuyumo @tsuyu2011

21年4月20日

火星でヘリを飛ばすのに成功したNASAの部署。大喜びする様子が放送されてたんだけど,大喜びしながら書類を破くパフォーマンスをする女性スタッフ。そういうときは書類を破く習慣でもあるのかと思ったら,「失敗したとき用の発表原稿」だったそうな。

タグ:

posted at 14:20:39

nope @definiteIyNOTok

21年4月20日

Just Casually Drilling Into Ice: pic.twitter.com/cCy4xUP6dq

タグ:

posted at 13:44:08

RochejacMonmo @RochejacMonmo

21年4月20日

自分たちの行動や施策を、自分たちサイドに寄せられた声だけで正当化し、各大学で募っているアンケートがあたかも実態を反映していないかのように扱った挙句、「圧倒的多くはキャンパスに通うことを望んでいるのではないか」のような根拠に乏しい推測を並べる文科相。一方的過ぎて不当だ。

タグ:

posted at 13:28:51

RochejacMonmo @RochejacMonmo

21年4月20日

この萩生田文科相へのインタビュー記事も見出しや大臣の発言が酷い。自分たちで調査した結果、大学はうそつきだったのか?問題意識や制約条件や大学の講義の実態についての事実認識がまずいから、妥当な調査ができない、その結果様々なミスリードを引き起こしたのが現実では。
dot.asahi.com/dot/2021041600...

タグ:

posted at 13:25:10

Julia日本語記事まとめ @julia_kizi

21年4月20日

新しい記事がQiitaにアップされました!qiita.com/kogad/items/f8...👈

タグ:

posted at 12:05:25

天むす名古屋 Temmus @temmusu_n

21年4月20日

アマエビは殲滅したいもの。縁起担ぎ、淫祠邪教は一時的に社会を鼓舞することができても、悪縁とかジンクスに敏感になる心理を呼び込むから。反ワクチン(ワクチン渋りかも)を宥めるのにも、社会が(少なくとも公的組織が)迷信に渋い顔を向けておくことは大切。

タグ:

posted at 11:44:11

積分定数 @sekibunnteisuu

21年4月20日

#超算数
www.oyaryoku.jp/books/sansu_ry...

@oyanochikara 親野智可等氏に算数勉強指南はクソなので信用しないように。 pic.twitter.com/0rVnWIsPa6

タグ: 超算数

posted at 09:49:12

積分定数 @sekibunnteisuu

21年4月20日

#超算数
本を整理していたら、@oyanochikara 親野智可等氏のクソ算数指導の本が出てきた。

算数ができる子になる魔法のことばwww.amazon.co.jp/%E7%AE%97%E6%9... pic.twitter.com/ZaXjbIjiQI

タグ: 超算数

posted at 09:46:52

tamas nagy @tlngy

21年4月20日

Thanks to some heavy lifting by
@ianshmean, my TiffImages.jl package is now the default TIFF reader/writer in #julialang's FileIO.jl.

Hopefully it speeds up⚡️your image analysis 🔬🔭 workflow without too many 🐛!

タグ: julialang

posted at 09:35:14

たつお @i4mwh4ti4m

21年4月20日

Julia, VSCodeからの使用感どうなんだろ

タグ:

posted at 09:26:35

Stefan Karpinski @StefanKarpinski

21年4月20日

Really visionary blog post about creating an open ecosystem for modeling that every user becomes a contributor to twitter.com/chrisrackaucka...

タグ:

posted at 09:14:37

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語 Pythonと無関係に、Juliaにおいて配列の配列を使いたい場合には以下のリンク先のベンチマークテストの結果+αで何を使うかを決める。選択肢が沢山ある。 twitter.com/genkuroki/stat...

タグ: Julia言語

posted at 09:14:21

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語 要するに、Julia側でのmake_listとiterate_listはそれぞれ

make_list() = fill(0.01, 10^4, 10^4)
iterate_list(a_list) = sum(a_list)

で十分です。2つの実行時間は2.1秒から0.34秒に縮まります。 pic.twitter.com/MpalUYANDE

タグ: Julia言語

posted at 09:09:58

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語 要するに、Python numpy.ndarrayとJulia Arrayの相性は非常によいということです。

PythonとJuliaでの相互運用ではこの点をうまく利用すると効率的だと思われます。

numpy.ndarrayとforループの両方を使いたい重たい計算をやりたい場合にはPythonからJuliaを呼ぶ価値はあると思う。

タグ: Julia言語

posted at 09:03:56

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語 0.01で埋め尽くされたnumpy.ndarrayをJulia側で作りたければ、fill(0.01, m, n) でよいです。fill(0.01, m, n)は配列の配列よりも圧倒的に速く作られます。

しかも件のベンチマークテストで表示された時間の95%程度が配列の配列を作ることに費やされた時間でした。

タグ: Julia言語

posted at 08:59:53

Yuki Nagai @cometscome_phys

21年4月20日

便利なテンプレートがあるのね。
「julia を googlecolab で使えるようにしたい。」 qiita.com/dauuricus/item... #Qiita

タグ: Qiita

posted at 08:57:51

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語 JuliaのPyCall.jlとPythonのpyjuliaでは、Juliaの多次元配列とnumpyの多次元配列がコピーを抜きで対応しています。

numpy.ndarrayはリストのリストのように表示されるので、Juliaでの対応するオブジェクトは配列の配列になると誤解してしまうかもしれない。

タグ: Julia言語

posted at 08:55:19

がま口 @gamaguchi2014

21年4月20日

@SxGxD69 現実にパプリカの世界があったとは😲 pic.twitter.com/1f5HIrv8RT

タグ:

posted at 08:17:20

l_ppp @ppp3141592ppp

21年4月20日

「Julia」をGoogleで調べるの
地域:日本でもだいぶマシになった気がするけど

Amazonは巻き返せそうにないな

#Julia言語

タグ: Julia言語

posted at 07:57:21

ryugo hayano @hayano

21年4月20日

【4/20 7時更新】宮城県の1週間累計感染者数(横軸) vs 山形県の1週間累計感染者数(縦軸) pic.twitter.com/WTayVND6Ub

タグ:

posted at 06:49:27

Julia News @julialang_news

21年4月20日

ModelingToolkit, Modelica, and Modia: The Composable Modeling Future in Julia www.juliabloggers.com/modelingtoolki... #juliabloggers

タグ: juliabloggers

posted at 06:47:45

Seth Axen @sethaxen

21年4月20日

What packages do you all usually keep in your base #julialang environment? For me it's BenchmarkTools, Revise, StatsPlots, and recently Pluto.

タグ: julialang

posted at 05:28:10

Julia Bloggers @juliabloggers

21年4月20日

New post: ModelingToolkit, Modelica, and Modia: The Composable Modeling Future in Julia - www.juliabloggers.com/modelingtoolki... #julialang pic.twitter.com/dDCbQRoi4Z

タグ: julialang

posted at 04:15:35

Dr. Chris Rackauckas @ChrisRackauckas

21年4月20日

Why ModelingToolkit? Why not another Modelica implementation? Here's why. ModelingToolkit, Modelica, and Modia: The Composable Modeling Future in Julia.

www.stochasticlifestyle.com/modelingtoolki...

#julialang #sciml #modelingtoolkit

タグ: julialang modelingtoolkit sciml

posted at 04:11:48

daikatsu yasuyuki @yasudaidai

21年4月20日

@genkuroki ありがとうございます。Julia勉強中ですが、とても楽しいです♪

タグ:

posted at 03:07:13

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語 全然違う方法で計算した例が以下のリンク先にある。

KdV: 初期条件は1-soliton + 1-soliton

nbviewer.jupyter.org/github/genkuro... pic.twitter.com/0zFWsyU2Av

タグ: Julia言語

posted at 02:24:29

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語 1つ前のツイートの内容は、n個の配列[0.01, 0.01]を成分とする配列として機能するものを3通りの方法で作っています。

そして、どれも配列の配列に関する同一のコードを適用できる。ユーザー側は自分の都合に合わせて選べばよい。

Juliaは多重ディスパッチなので混在させて利用可能。

タグ: Julia言語

posted at 01:57:10

あ〜る菊池誠(反緊縮)公式 @kikumaco

21年4月20日

@parasite2006 今の総長はうちのセンター長だった人なのでよく知ってますが、情報の専門家ですから数理には強いはずなんですけどね

タグ:

posted at 01:52:34

不健全 @unsoundsystem

21年4月20日

そういやこういうことできるよな
変更できない定数的なやつ
#julia言語 pic.twitter.com/9qOJsvtics

タグ: julia言語

posted at 01:50:01

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語

f(n) = [fill(0.01, 2) for i in 1:n]
g(n) = nestedview(fill(0.01, 2, n))
h(n) = [SVector(0.01, 0.01) for i in 1:n]

f → slow
g → fast
h → fast

arrays of arrays exmaples
gist.github.com/genkuroki/ba50...

使い分けるとよい。 pic.twitter.com/Oam5dmEf4I

タグ: Julia言語

posted at 01:45:42

Ari Katz @akatzzzzz

21年4月20日

@chr1sa The rest of numpy is here: docs.julialang.org/en/v1/stdlib/L... Also dot broadcasting is cool: julialang.org/blog/2017/01/m...
and this: juliadocs.github.io/Julia-Cheat-Sh...

Also very active slack and discourse community: julialang.org/community/

タグ:

posted at 01:19:31

Ari Katz @akatzzzzz

21年4月20日

@chr1sa Other benefits: Multiple dispatch means you can use units, custom arrays and table types and they all just compose and are fast. Can have R like DSLs locally with macros, but globally keep things with sane semantics like C based languages. Custom fast differentiable loss fnctns

タグ:

posted at 01:13:49

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語 総和の計算もsum函数を使えば60 msで計算が終了するが、オリジナルのコードでは100 msを超えている。1.6~1.7倍の違い。

make_list + iterate_list
2.075 s + 0.102 s ←Original
1.639 s + 0.061 s ←Revised_2
0.276 s + 0.060 s ← Revised_3

gist.github.com/genkuroki/d16c... pic.twitter.com/9sq2TgC1k8

タグ: Julia言語

posted at 01:11:06

Ari Katz @akatzzzzz

21年4月20日

@chr1sa Yes, and you can approach it with freedom to dip in and out of vectorization. Loop, array comprehensions all work fast. Custom data types are first class, easy GPU codegen, no need to find weird pandas indexing or methods.

Easy to call R and python if encounter corner case 1/n

タグ:

posted at 01:07:20

nao @parasite2006

21年4月20日

@kikumaco 総長こういう経歴www.osaka-u.ac.jp/ja/guide/presi... で、統計学の心得がないとは思えないのに、どうしてこうなったと言いたい。誰がK値を推したのやら。

タグ:

posted at 01:07:01

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語

配列の配列を作る [fill(0.01, 10^4) for _ in 1:10^4] (添付画像①)と2次元配列を作る fill(0.01, 10^4, 10^4) (②)ではメモリアロケーションの回数が全然違っていて、実行時間も6倍違う。

オリジナルのコードはさらにメモリアロケーションが多い(③)。

gist.github.com/genkuroki/d16c... pic.twitter.com/fQFWlSTZvx

タグ: Julia言語

posted at 01:04:26

黒木玄 Gen Kuroki @genkuroki

21年4月20日

メモリアロケーションの方は回数が多くなるとまずい。Juliaに限らず、どの言語でも遅くなる。

Juliaでは

$ time julia foo.jl

ではなく

julia> @ time Foo.solve(prob)

のスタイルでプログラムを実行することが多く、@ timeマクロで表示されるメモリアロケーションの回数の情報が非常に重要。

タグ:

posted at 00:24:42

黒木玄 Gen Kuroki @genkuroki

21年4月20日

ハードウェアを意識することと、メモリアロケーションが遅いことがごちゃ混ぜになってしまいましたが、両方大事。

タグ:

posted at 00:17:11

黒木玄 Gen Kuroki @genkuroki

21年4月20日

あと、計算速度が問題にならない場合には「お好きなように自由にやってくれ」で問題なし。計算速度が問題にならない場合にまで細かいことを気にするにも合理的ではない。

タグ:

posted at 00:14:57

黒木玄 Gen Kuroki @genkuroki

21年4月20日

#Julia言語 最終サイズが事前に不明な場合には push! を使うことになるのですが、コンピュータで計算する場合には最終サイズが大雑把にはわかっているはずなので、sizehint!を使うことによってメモリアロケーションの回数を減らせます。

docs.julialang.org/en/v1/base/col...

タグ: Julia言語

posted at 00:12:25

黒木玄 Gen Kuroki @genkuroki

21年4月20日

計算を無駄に遅くするための主要なコツの1つは、ループの内側でメモリアロケーションを繰り返し発生させることです。

新たな配列の確保はメモリアロケーションを発生させます。push!でもメモリアロケーションが発生する場合がある。

計算速度が重要なら、そうならないような設計にしないとダメ。

タグ:

posted at 00:03:48

@genkurokiホーム
スポンサーリンク
▲ページの先頭に戻る
ツイート  タグ  ユーザー

User

» More...

Tag

» More...

Recent

Archive

» More...

タグの編集

掛算 統計 超算数 Julia言語 数楽 JuliaLang 十分 と教 モルグリコ 掛け算

※タグはスペースで区切ってください

送信中

送信に失敗しました

タグを編集しました