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 を見て下さい。
並び順 : 新→古 | 古→新

2020年09月24日(木)

Stefan Karpinski @StefanKarpinski

20年9月24日

@johnmyleswhite Don't get me wrong, the Julia ML ecosystem is one of the best around, but it wouldn't hurt to have some Google compiler engineers helping out...

タグ:

posted at 23:53:47

Stefan Karpinski @StefanKarpinski

20年9月24日

@johnmyleswhite Frustrating though. There are so many long uphill struggles involved in using Swift for this (Windows support, bootstrapping a numerical / data ecosystem). It's a really perverse choice. If Google had put the same effort behind Julia's ML ecosystem, imagine where we'd be now 😔

タグ:

posted at 23:51:12

非公開

タグ:

posted at xx:xx:xx

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 などの__普通の速さ__で動く環境を使っているときには

 10⁸回(1億回)の単純ループの計算は1秒未満で終わる

 10⁹回(1ギガ回)の単純ループの計算は数秒で終わる

と覚えておくと便利です。失敗しているとこれよりずっと遅くなる。あと、メモリアロケートの回数にも注意!

タグ: Julia言語

posted at 23:46:52

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 多項式函数の評価に限らず、「べた書き」は最適化の基本です。しかし、人間がべた書きをするのはつら過ぎるし、べた書きのコードを読む側も大変過ぎます。コンピュータにまかせることが必須。

「自身のコードを自動生成して即コンパイルして実行」という仕組みは速度的にはほぼ必須。

タグ: Julia言語

posted at 23:31:26

Hiroshi Shinaoka @HShinaoka

20年9月24日

@genkuroki ああ、私も実際の研究にはdSFMTを使っていますね(笑)Juliaの良いところはデフォルトで初心者が使えるところですね。

タグ:

posted at 23:28:40

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 ホーナー法を使っていても、係数を配列に保存して使っていたりすると遅くなるので要注意です。

べた書きしないとコンピューターの計算能力を十分に引き出せない。

もちろん、人間がべた書きするのは馬鹿げているので、コンピューターにまかせるべきです。

twitter.com/genkuroki/stat...

タグ: Julia言語

posted at 23:28:30

黒木玄 Gen Kuroki @genkuroki

20年9月24日

@HShinaoka うわ、答えを書かれちゃった!(笑) 全然問題ないです。

gccのデフォルトのrand()は質の面でもクズそのものなのですが、速度的にもひどい。

ちなみに、これをメルセンヌツイスターで置き換えてもJuliaに勝てません。

メルセンヌツイスターも時代遅れで、Juliaではその後継のdSFMTを使っています。

タグ:

posted at 23:25:53

Hiroshi Shinaoka @HShinaoka

20年9月24日

@genkuroki C++のstd:randomはさらに遅いですね。難しい問題を解く場合、ここの部分はボトルネックにならないので気にしていませんでしたが。

タグ:

posted at 23:25:28

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 計算速度を気にするのであれば、1つ前のツイートで述べたようなことができないようだと非常に困ると思います。

そういう意味でもJuliaの計算速度は普通だと思います。

Juliaが普通のベースラインであり、Juliaより遅い側は何か失敗をしでかしています。

タグ: Julia言語

posted at 23:23:04

Hiroshi Shinaoka @HShinaoka

20年9月24日

@genkuroki rand()がボトルネックに見えますね(走らせてみましたが)。

タグ:

posted at 23:21:29

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 しかも、静的コンパイルしたバイナリを実行する仕組みでないおかげで、実行中に函数のコードを生成してコンパイルして即実行するというようなことを自由にできます。

「入力データから作った多項式函数をその場でコンパイルして高速実行」という類のことを簡単にできる。

タグ: Julia言語

posted at 23:21:28

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 多項式の評価函数は実数函数であればHorner法をべた書きすると速いです。

その手のべた書きを人間がやらなければいけない環境では速度的に大きく劣化するコードを書きがちになるでしょう。

Juliaではべた書きはコンピューターに容易にやってもらえます。

twitter.com/genkuroki/stat...

タグ: Julia言語

posted at 23:19:29

黒木玄 Gen Kuroki @genkuroki

20年9月24日

@HShinaoka おお!鋭い!でも、答えは書きません(笑)。

コードを自分で書いて実証しようとする人のみがまともだという立場。

タグ:

posted at 23:14:57

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 人間という本質的巨大因子の影響が出難いマイクロベンチマークの類は、実践的にはあんまり意味がないと思います。

もちろん、コードを全公開してのマイクロベンチマークは面白いし、様々な教訓を引き出せるのですが、それ以上のものではない。

タグ: Julia言語

posted at 23:10:17

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 そういうやってしまいがちな失敗の積み重ねが、プログラムの実行速度をどんどん劣化させて行くのです。

逆に言えば、人間がやってしまいがちな失敗をし難い設計になっているプログラミング言語では相対的に実行速度が速くなり易いでしょう。

人間という本質的巨大因子を無視しちゃダメ。

タグ: Julia言語

posted at 23:08:48

Hiroshi Shinaoka @HShinaoka

20年9月24日

@genkuroki 除算、乱数生成辺りが怪しい?

タグ:

posted at 23:08:34

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 実際に色々試してみればわかるように、ちょっとしたことで計算速度は大きく劣化します。

例えば、多項式函数の評価で多項式の係数を配列に保存しておいて読み取るというようなコードを書くと非常に遅くなります。しかし、そういうコードを書くのは易しいのでやってしまいがちでしょう。

タグ: Julia言語

posted at 23:06:19

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 現代的なプログラミング言語は昔からある言語と違って、新しいものをデフォルトとして取り入れ易いです。

そういう意味で、JuliaやRustのような人気のある新しいプログラミング言語は安全牌。デフォルトの時代遅れの何かを使ったせいでパフォーマンスが大きく劣化する危険が小さい。

タグ: Julia言語

posted at 23:03:33

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 問題再掲:

 どうしてgcc側がこんなにひどく遅くなったのか?

仮にgccさえ使わずに全部アセンブラで書いた人がいたとしましょう。そのとき、アセンブラ側がgccに速度的に負けたときに考える問題も同じ。

アセンブラ:gcc ≈ gcc:Julia

こういう対比で考えればよいと思う。

タグ: Julia言語

posted at 23:00:27

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 以上のことから、gcc vc. Julia の速度競争で Julia が圧勝したのを見たときに考えるべきことは、「どうしてJulia側が速いか」ではありません!そこを誤解するコメントが実に多い。Juliaの計算速度は普通であり、別に速くありません。Juliaより遅い側が何か失敗をしでかしているのです。

タグ: Julia言語

posted at 22:58:23

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 は「どのようにすれば遅くなるか」が結構クリアに分かっている環境です。

そして、Julia言語がデフォルトで提供してくれているライブラリ群は、速度面でベストとは言えない部分もありますが、私のような素人が自力で選択するよりも速度面で圧倒的に優れたものを提供してくれています。

タグ: Julia言語

posted at 22:56:52

eval parse @evalparse

20年9月24日

@johnmyleswhite I still recall reading this and thought the conclusion was not satisfying. Julia and Swift were the final two but I could not flow the logic that ended up choosing swift.

github.com/tensorflow/swi...

タグ:

posted at 22:54:59

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 現代のプログラミングは以上で挙げたような依存関係がほとんどない単純なコードを書くことは稀です。多くのライブラリやプログラミング言語が用意した「高級な仕組み」を使ってプログラムを書くことが普通です。

そのときに何が起こるかは、我々末端ユーザーにとっては大問題です。続く

タグ: Julia言語

posted at 22:54:59

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 もちろん、これは冗談で、gccで遅くなったことには理由があります。

私は答えを知っているのですが、書きません。

以上の件に恐れを抱く人は、計算を速くするためにCを使わない方がよい人達だと思う。

答えを知っている私自身も能力的な問題から速さを求めるならCは止めた方がよい。

タグ: Julia言語

posted at 22:53:22

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 個人的な意見では、

 Juliaの速さは普通

であり、これより遅い環境を他人に使わせることは、人権問題に発展しかねないと思います。

だから、このままではgccを他人に使わせることは人権問題に発展してしまいます!(笑)

続く

全ソースコード↓
nbviewer.jupyter.org/gist/genkuroki... pic.twitter.com/kJCePJnqSA

タグ: Julia言語

posted at 22:50:13

John Myles White @johnmyleswhite

20年9月24日

I always find it very satisfying that so many people now look at Swift for Tensorflow and think, "they really should have chosen Julia".

タグ:

posted at 22:47:47

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 添付画像は nthreads() = 8 のスレッド並列の結果です。上の分散処理よりもさらに速くなっています。 pic.twitter.com/Fgvcb0NMAd

タグ: Julia言語

posted at 22:46:49

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 Juliaで「ふつー」の感じで使える「並列処理」には

* 複数のjuliaプロセスを使う分散処理
* スレッド並列

添付画像は追加4プロセスでの分散処理の場合です。

さらに3倍くらい速くなっています。 pic.twitter.com/RkPmnyHGmL

タグ: Julia言語

posted at 22:45:29

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 ここまでやれば、

 * Juliaで並列処理をできるのか?
 * Juliaで並列処理するとどうなるのか?

と誰もが聞きたくなると思います。

はい、もちろんやってみました!(笑)

続く

タグ: Julia言語

posted at 22:43:29

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 逆に言えば、

 「どうしてgcc版がこんなにひどく遅いのか?」

が問題になります。

私は答えを知っているのですが、書かないことにします。

これと同じことが知らず知らずのうちにCを使っていると起こっている可能性がある。これは本当は速いはずのCが遅くなる原因の一つです。続く

タグ: Julia言語

posted at 22:42:09

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 「めでたし、めでたし」にならない理由は、現代の普通のパソコンでは10⁶回の単純ループに10 msかからないはずだからです!Julia版2では27 msもかかっている。

そこで、gcc版と同じ素朴なスタイルに書き直してみましょう(Julia版3)。

 Julia版3はgcc版の7~8倍速い!

続く pic.twitter.com/UiQEpSnoNh

タグ: Julia言語

posted at 22:39:40

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 そこで、メモリ割当が発生しまくらないように、Julia版1を書き変えて、さらにnormも使うのをやめてみましょう。

添付画像を見れば分かるように、Julia版2はgcc版と同じ程度の速さです(若干遅い)。

これで「めでたし、めでたし」になると面白くもなんともない!続く pic.twitter.com/wANchOKFdF

タグ: Julia言語

posted at 22:39:40

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 添付画像1のgcc版と添付画像2のJulia版1は本質的にたきたきさんのコードと同じです。速度比較をすると、

 Julia版1はgcc版より3~4倍遅い

です。こうなった理由はrand(2)でメモリ割当が発生していることと、normで平方根を使っていることです。続く pic.twitter.com/c8WdoICHIF

タグ: Julia言語

posted at 22:39:39

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 たきたきさんに触発されて、gcc vs. Julia の対決を再度やってみました↓

nbviewer.jupyter.org/gist/genkuroki...

C版のコードは本質的にたきたきさんのものと同じ。ただし、Juliaからライブラリとして利用するための改変をしてあります。

この話、多分初めての人はとても面白いと感じるはず。続く twitter.com/taki__taki__/s...

タグ: Julia言語

posted at 22:39:39

まついしょうた @1027stesc

20年9月24日

@sekibunnteisuu その後は、「ちがい」を求める場合と「どれほど多いか」を求める場合それぞれについて図を描いてもらって、結局同じ図を描いてくれたので、「そういうことだ」と説明した。
“同じ”に見せることが目標のはずでしょう。

タグ:

posted at 22:28:37

まついしょうた @1027stesc

20年9月24日

体験授業。たろうくんはコインを16枚持っていて、くみさんは9枚持っています。たろうくんは、くみさんより何枚多く持っていますか。
「…。」
「ちがいは何枚?だったら分かる?」
「16-9」
質問を変えたのは、答えに辿り着かせるためではなく、キーワードパターンマッチングを疑ったから。
案の定。

タグ:

posted at 22:19:22

atusy @Atsushi776

20年9月24日

Rは型ヒントないからJuliaと違ってグローバル引数を参照する方が速そう。
a <- 1
f <- compiler::cmpfun(function(x) x * a)
g <- compiler::cmpfun(function(x, a) x * a)
ggplot2::autoplot(bench::mark(f(1), g(1, 1), check = FALSE)) pic.twitter.com/lTmrnnt65i

タグ:

posted at 22:10:43

非公開

タグ:

posted at xx:xx:xx

たきたき, Ph.D. @taki__taki__

20年9月24日

最近ユーザが本当に増えてきたのか,いろんなjlライブラリ(というかモジュールというか)があって,勉強になる.あまり難しい書き方は分からないけど,雰囲気カジュアルで使ってる

タグ:

posted at 20:16:24

たきたき, Ph.D. @taki__taki__

20年9月24日

ポエム書いたん #julialang /「ゼロからできるMCMC」本をJuliaで書いてみると,Cの代わりにJuliaも良いなという気持ちになりました|たきたき zenn.dev/takilog/articl... #zenn

タグ: julialang zenn

posted at 20:15:16

永井 @HNagai1108

20年9月24日

PyStanみたいなStan.jlがほしい

タグ:

posted at 20:09:36

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

20年9月24日

Macbook ProにJuliaとcommand-line toolsを入れるところでスタック。というか、Juliaは動いたんだけど、Jupyterがダウンロードできない。これが入らないと困るんだにゃー

タグ:

posted at 20:00:30

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語

Juliaは高速グルー言語なので、JuliaでPythonのmatplotlibや外部コマンドのffmpegなどを使ってGIFアニメを作ることもまたJuliaらしい使い方。

ffmpegを呼び出しているところはshell scriptっぽいノリがある。

他にも便利なものがあればどんどんJuliaで貼り合わせて欲しい。 twitter.com/vnb15_19hus/st...

タグ: Julia言語

posted at 19:56:59

@rna

20年9月24日

@hiyori13 あ、本物だったんですねアレ…

タグ:

posted at 19:24:48

Hiroo Yamagata @hiyori13

20年9月24日

@rna マジ。竹中平蔵と天童よしみはダメなんだって。和歌山出身だから。

タグ:

posted at 19:22:04

望遠レンズ @vnb15_19hus

20年9月24日

Juliaを使ってはいるけど、よく考えたらこれ実質的にPythonでは...?となる(笑)
でもやっぱり書くのはかなりラクですね。 pic.twitter.com/ePDutR0mjN

タグ:

posted at 19:06:40

SGT @SGThr7

20年9月24日

Juliaの抽象型が好きすぎて困る

タグ:

posted at 19:01:42

Miura Hideki @miura1729

20年9月24日

RubyKaigiの発表の続きの発表の準備をようやく始めた。作成途中のスライドを公開しました docs.google.com/presentation/d...

タグ:

posted at 18:58:48

黒木玄 Gen Kuroki @genkuroki

20年9月24日

@bicycle1885 @gggtta #Julia言語 こんな感じでコンピュータを使って自分でいじれる例を作ると、統計力学の教科書に書いてある議論を非常に楽に納得できるようになります。

何か疑問があれば質問して下さいください。

タグ: Julia言語

posted at 18:15:31

黒木玄 Gen Kuroki @genkuroki

20年9月24日

@bicycle1885 @gggtta #Julia言語 総和を固定したり、ノルムの二乗を固定しなくても、Nが大きいと、同じ分布で近似されるようになる。

添付動画はノルムに2乗がN以下になるという条件を保つランダムウォーク。標準正規分布に収束している。

nbviewer.jupyter.org/gist/genkuroki...
に指数分布の場合の動画もあります。 pic.twitter.com/pkTev8y6m7

タグ: Julia言語

posted at 18:13:37

黒木玄 Gen Kuroki @genkuroki

20年9月24日

@bicycle1885 @gggtta #Julia言語 ℝ^Nの中の原点を中心とする半径の二乗がNの球面上の一様分布のサンプルをXとすると、Nが大きいとき、Xの成分の分布は標準正規分布で近似される。Maxwell分布!続く pic.twitter.com/2HZPhjsaO1

タグ: Julia言語

posted at 18:10:22

黒木玄 Gen Kuroki @genkuroki

20年9月24日

@bicycle1885 @gggtta #Julia言語 統計力学のカノニカル分布の最も簡単な場合。Nが大きいとき、総和がSになる正の実数値を成分とする長さNのベクトルを適切な意味でランダムに生成すると、その成分は期待値S/Nの指数分布で近似される。添付画像はS=Nの場合。続く

ソースコード↓
nbviewer.jupyter.org/gist/genkuroki... pic.twitter.com/avpmGUhhLG

タグ: Julia言語

posted at 18:07:14

Hiroyasu Kamo @kamo_hiroyasu

20年9月24日

@RikeinoHanrei そもそも、関心意欲なるものを評価すること自体が内心の自由の侵害であって憲法19条違反っぽいですけどね。関心も意欲もないけどなぜかできてしまう人がいたって自由じゃないですか。

タグ:

posted at 17:12:13

非公開

タグ:

posted at xx:xx:xx

非公開

タグ:

posted at xx:xx:xx

Shuhei Kadowaki @kdwkshh

20年9月24日

昨日Rubyの開発者の方々とお話しする機会があり、Juliaのworld age problemの話になったとき僕が「あーそれはワールドエイジプロブレムと言って…」と少し説明に詰まってしまったのだけど、皆さん"world age"という言葉の響きだけで「なんとなくは理解できました」となったので言語開発者だっと思った

タグ:

posted at 16:09:07

鮭飯 @salmon_rice

20年9月24日

Juliaもstruct使えるんか。

タグ:

posted at 15:51:53

Mehmet Hakan Satman @mhsatman

20年9月24日

Julia 1.5.2, the second patch of 1.5, is out! 🎈

#JuliaLang

タグ: JuliaLang

posted at 15:29:24

ケフっち@Deterministic @__cheph__

20年9月24日

GeoStats.jl もけっこう楽しそうに開発されてそうでいいかも。まぁどうせいろいろいじらなきゃだから参考程度になっちゃうとは思うけど。#julialang

タグ: julialang

posted at 14:29:15

ケフっち@Deterministic @__cheph__

20年9月24日

ちょっと本格的に #julialang 縛りをはじめようかにゃ。マクロについて少しずつなれてきたら楽しくなってきたぞい。

タグ: julialang

posted at 14:28:21

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

20年9月24日

@genkuroki @gggtta ありがとうございます!あとでチェックしてみます。

タグ:

posted at 12:39:56

yamazaks @yamazaksv2

20年9月24日

@HcZfN0CMO9bqdNa @suminotiger @hamukazu 私はそもそもノートや発言数で教科への関心意欲は計れないと考えているので、みているのは提出の有無だけです。
中身がスカスカでもびっちりと書いてあっても評価は同じです。
実験レポートの添削はしっかりしますが、内容の評価は◯△×の3種類だけです。

タグ:

posted at 12:39:00

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 自分自身の無知を十分に認識した上で自分が現在使える道具で直近の問題を片付けようとすることは、普通の当たり前の行為に過ぎない。

無知が原因でそうなっていることを認めようとせずに、無知が原因で使えないものを無知以外の理由で使わなくて良いことにしようとするのはとてもまずい。

タグ: Julia言語

posted at 11:47:19

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 ツイッターでは「Juliaを使わずにPythonを使い続ける」と言っている人が述べる理由はほとんど確実にJuliaに関する誤解に基いている。

正直に「Juliaを全然理解できていないのでJuliaを使えない」と言えば問題ないが、無知以外の合理的な理由を探し始めるとおかしなことになる。

タグ: Julia言語

posted at 11:43:40

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 Juliaでmatplotlibを普通に使えることは、もしかしてあまり知られていない?

問題:添付画像1,2の片方はPythonでもう一方はJuliaです。どちらがどっちでしょうか? twitter.com/genkuroki/stat... pic.twitter.com/dfPYoHcd9q

タグ: Julia言語

posted at 11:38:19

みょうが @mrkn

20年9月24日

完全に記憶から消えていたシャープ製のマスクに当選したらしい・・・

タグ:

posted at 11:13:47

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#数楽 「沢山微分して沢山不定積分すればもとの函数に戻る」という計算をすれば自然にテイラーの定理が得られる。 twitter.com/genkuroki/stat...

タグ: 数楽

posted at 11:00:42

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#数楽 高木貞治『解析概論』スタイルだとTaylorの公式の証明が「高校生には難しいテクニカルな事柄」だと誤解されると思う。

Taylorの公式は本質的に「何度が微分して同じ回数だけ不定積分すればもとの函数に戻る」という当たり前のことを真面目に書き下しただけの自明な公式に過ぎません!

タグ: 数楽

posted at 10:59:11

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#数楽 高木貞治『解析概論』と同じスタイルのTaylorの公式の説明が、実教出版の高校数学の教科書『数学III』2014年版に載っています。他の教科書にも載っている場合があると思いますが、知りません。

Taylorの公式はあまりにも基本的なので、使っちゃいけないルールにしちゃダメ。

タグ: 数楽

posted at 10:53:09

みょうが @mrkn

20年9月24日

この2017年に発行された Julia の論文の引用元を見ると、どういう人が Julia を使っているのかが分かる。
epubs.siam.org/doi/abs/10.113...

タグ:

posted at 10:52:02

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#数楽 唐突に見える形で調和級数の話を始めた理由は、漸近挙動に nᵏ だけではなく、log n も出て来る例を見せたかったから。

Stirlingの公式

log n! = n log n - n + (1/2)log n + log√(2π) + 1/(12n) + O(1/n²)

も有名。n!は巨大になるが、対数を取ると「普通の大きさ」になる。 twitter.com/genkuroki/stat...

タグ: 数楽

posted at 10:42:05

みょうが @mrkn

20年9月24日

@nakayoshix @genkuroki 数値計算系のコードをゼロから作る場合、私はもう Python は使っていません。Julia 一択です。

タグ:

posted at 10:39:55

黒木玄 Gen Kuroki @genkuroki

20年9月24日

@bicycle1885 @gggtta 独立同分布確率変数列では、物理的には仮定になっていた「場合の数」の漸近挙動を、確率の漸近挙動に置き換えることによって、Kullback-Leibler情報量(これは(相対)エントロピー(密度)の-1倍に対応)のSanovの定理として比較的易しく証明できます。そのおかげで、ものすごく易しい話になるわけです。

タグ:

posted at 10:31:52

黒木玄 Gen Kuroki @genkuroki

20年9月24日

@bicycle1885 @gggtta キャンパスで学生が持っているのをよく見るのは、田崎晴明著『統計力学I,II』です。丁寧な解説が書いてあります。

例えば、系のサイズ→∞における「場合の数」の漸近挙動のみを物理的に仮定すれば一般論を展開できることがクリアに説明されています。

続く

タグ:

posted at 10:28:08

黒木玄 Gen Kuroki @genkuroki

20年9月24日

@bicycle1885 @gggtta 物理的な独立性の仮定が成立していない難しい場合ではなく、独立同分布確率変数列の「統計力学」に関する「最も易しい場合」については私による解説が良いです(笑)。

genkuroki.github.io/documents/2016...
Kullback-Leibler 情報量と Sanov の定理

第2,4,6,7節が統計力学の「最も易しい場合」です。

タグ:

posted at 10:23:17

ken @speculator_ken

20年9月24日

juliaインストールしても何故か起動しなかったけど,ターミナルを一回起動したら動作するようになった.scilabみたいに専用エディタとかは無いようだ.

タグ:

posted at 10:03:50

黒木玄 Gen Kuroki @genkuroki

20年9月24日

@benkyouaho @HShinaoka #Julia言語 JuliaのデフォルトのBLASはOpenBLASでMKLも別に利用できるのですが、それらを使った重い計算をするとパソコンが独特のノイズ音を発します。

以前は、OpenBLASとMKLをそのノイズ音で区別できました!(笑)

タグ: Julia言語

posted at 09:55:16

非公開

タグ:

posted at xx:xx:xx

黒木玄 Gen Kuroki @genkuroki

20年9月24日

@benkyouaho @HShinaoka Jupyterと #Julia言語 の並列計算は無関係。

並列計算可能な設定で並列計算するコードを書けばJuliaはどこでも並列計算してくれます。

複数のjuliaを使う分散処理↓
docs.julialang.org/en/v1/manual/d...

スレッド並列↓
docs.julialang.org/en/v1/manual/m...
環境変数JULIA_NUM_THREADSの設定を忘れずに!

タグ: Julia言語

posted at 09:51:17

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 綴りのミスは訂正済み。

あと確率の計算でよく出て来る階乗も鬼門の1つ。

正の実数でものすごく0に近くなったり、ものすごく巨大になったりする可能性のある数値を扱うときには、

 対数

を取ってから扱うと浮動小数点数で表現できる範囲で計算可能になることが多い。

対数は神!

タグ: Julia言語

posted at 09:36:11

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 この手の浮動小数点数の仕組みに適切に対応していないコードを書いてしまったことが原因のバグは厄介なので、最初から、そうならないように注意してコードを書けた方がよい。

例えば計算途中で二次方程式の解の公式を使うときには要注意!

タグ: Julia言語

posted at 09:33:00

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#数楽 #Julia言語 数値計算で分子の有理化の例。

Float64において、n=10.0^17のとき、n³より大きい最小の数とn³の差は1.66e35程度で、6n²+2n+1の6.00e34程度より大きいので、n³に6n²+2n+1を足しても値が変わらなくなる。

gist.github.com/genkuroki/cda0... twitter.com/genkuroki/stat... pic.twitter.com/IONO9DayZH

タグ: Julia言語 数楽

posted at 09:30:32

@rna

20年9月24日

そういえば山形浩生が昔2chで実家のしがらみがあって竹中平蔵の批判は書けないみたいなことをカキコしてた記憶があるのだが… まあ2chなんで本当に本人のカキコがどうかもわからんのだけど。

タグ:

posted at 09:17:08

中村 良幸 (Nakamura Yosh @nakayoshix

20年9月24日

Oh my Julia... (覚えてるかい♪)

2017-03-10 札幌 tech bar 「時系列と人生」にて。

これ、本当に歌ってしまって会場の皆さんに呆れられたんですけど、一部の女性にはウケてましたね。😇 pic.twitter.com/xgMnSm2OcM

タグ:

posted at 08:10:13

牛越橋 @ushigoe_bashi

20年9月24日

9/24。台風が近づいています。充分に備えを。
そして川のそばには近づかないようにね。 pic.twitter.com/3G8CsjHKqa

タグ:

posted at 07:45:06

S (ツイートはスレッド全体をご確認く @esumii

20年9月24日

いわゆる「内申点」は、(特に公立中学では)生徒本人に全然合ってない「宿題」とか、学習効果の疑問な「ノート提出」とか、学術的に誤った出題や採点の「定期試験」にもとづいているのが入試としては致命的だと思う。

タグ:

posted at 07:44:30

こりぃ @ReceptionRoom51

20年9月24日

薄々どころかしっかりわかっております。一部の大人のエゴイズムですね

私は幼少期「物分りのいい」少年だったのでいい成績を頂いておりましたが・・・頭が悪いわけではない友人の点数が低かった理由を恥ずかしながら成人してから知りました。

ちなみに工学(数理・情報)卒です。 twitter.com/sekibunnteisuu...

タグ:

posted at 06:48:31

阿部2 @cocotan_2

20年9月24日

JuliaでGoogleアナリティクスのデータをいじれるパッケージはあるのか

タグ:

posted at 04:26:36

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 1つ前のツイートの内容は、野良パッケージの

github.com/genkuroki/Inte...

をインストールすれば、

using InteractiveUtilsPlus

だけで

print_tree(Number)

とかできるようになる。

タグ: Julia言語

posted at 02:48:47

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 Juliaでの型の階層構造を確認したければ

using AbstractTrees
AbstractTrees.children(T::Type) = subtypes(T)
print_tree(AbstractRange) pic.twitter.com/4UVwZDGiNI

タグ: Julia言語

posted at 02:46:08

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語

Pythonで3次元プロットのために

from mpl_toolkits.mplot3d import axes3d

としてあったら、

using PyPlot
using3D()

しておくと、Julia側でそのまま動く場合がある。

nbviewer.jupyter.org/gist/genkuroki... twitter.com/genkuroki/stat...

タグ: Julia言語

posted at 02:41:05

非公開

タグ:

posted at xx:xx:xx

Ari Katz @akatzzzzz

20年9月24日

Excited for a possible @rapidsai and #JuliaLang colab. Using Julia's extensive codegen (GPU and C++) magic with RapidsAI's extensive kernels would be really cool and a huge step forward over the python + numba version. twitter.com/ChrisRackaucka...

タグ: JuliaLang

posted at 02:38:34

けんもう新型コロナ対策本部 @kenmomd

20年9月24日

マナウスではおよそ800人に1人から500人に1人が死亡した計算になる。ちなみにアマゾナス州のマナウス市は人口約200万人。60歳以上人口は約6%。
プレプリントでは再感染の頻度や集団免疫の寿命を決める歩哨になるかもしれないと述べており、この地域は今後も注目かも。

タグ:

posted at 02:29:50

Yossy @Yossy_K

20年9月24日

ルールはシンプルな程よいとまでは言わないんだけど、「無駄に複雑なルールってのは、『そういうルールにしておいたほうが都合が良い人』がいる」ってことだと思うんだよねえ。で、内申のルールについては「このルールで『都合が良い人』に、基本的に生徒は入ってへんな?」と思えるんだよねえ。

タグ:

posted at 02:28:24

Kodack @iKodack

20年9月24日

juliaの最適化を眺めていたけど、intrinはasmでぶち込むのではなくllvmcallでllvm-irをベタ書きで、Cのライブラリのffiはccallとか言うので呼ぶのか へぇ

タグ:

posted at 02:22:57

Dr. Chris Rackauckas @ChrisRackauckas

20年9月24日

@keithjkraus @datametrician @evalparse @rapidsai The most #julialang thing that can happen here would be automatic differentiation of RapidsAI GPU-accelerated data frame operations where the data are unit quaternions from vector magnetometers in an aerospace application, all with generated code composing.

タグ: julialang

posted at 02:22:26

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 「objectにmethodが object.method の形式で生えている」形式ではなく、multiple dispatchを採用しているので、各型にどんなメソッドが定義されているかをタブ補完で確認できない。

そこで使われるのがmethods(sin)とかmethodswith(Float64)の類。multiple dispatchの理解にも役立つ。

タグ: Julia言語

posted at 02:21:16

Dr. Chris Rackauckas @ChrisRackauckas

20年9月24日

@keithjkraus @datametrician @evalparse @rapidsai Julia code that is JIT compiled to PTX has this kind of support by default, whereas pure C++ kernels would need to JIT in a fancy way when it sees a new Julia type. But Cxx.jl does this for C++, and it sounds like you have a JIT involved already, so in theory this could happen.

タグ:

posted at 02:20:13

Dr. Chris Rackauckas @ChrisRackauckas

20年9月24日

@keithjkraus @datametrician @evalparse @rapidsai The problem is not that Julia can't generate PTX, but that CUDA.jl's PTX generation is much more extensive than Numba since it supports Julia structs, of which there are thousands that people want to use. Example: supporting DateTime in a Julia RapidsAI would be a nice feature

タグ:

posted at 02:17:44

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#Julia言語 以前も宣伝したが、今回も宣伝!

調べ方、大事です!

Juliaではメソッドが何に使えるかを調べたいことがよくある。

methods(sin)
→sin函数を適用できる型の組み合わせのリスト

methodswith(typeof(1.0))
→1.0の型Float64に適用できる函数のリスト

これらは結構使う。 twitter.com/ppp3141592ppp/...

タグ: Julia言語

posted at 02:16:46

Keith Kraus @keithjkraus

20年9月24日

@ChrisRackauckas @datametrician @evalparse @rapidsai If Julia doesn't have the ability to generate PTX, then we still expose access to the raw pointers of the memory underneath the Columns (nice contiguous buffers), so you could likely execute in a pure Julia context.

タグ:

posted at 01:59:06

Keith Kraus @keithjkraus

20年9月24日

@ChrisRackauckas @datametrician @evalparse @rapidsai The existing pipeline we have for Python is using Numba to JIT compile a Python function into PTX (docs.nvidia.com/cuda/parallel-...) which we then inline into a kernel down at the CUDA/C++ level using Jitify.

Presumably the existing PTX pipeline could be leveraged for Julia.

/1

タグ:

posted at 01:56:57

黒木玄 Gen Kuroki @genkuroki

20年9月24日

@4310sy @kazuneet #Julia言語 Cで書いたライブラリもJuliaで簡単に使えます。

docs.julialang.org/en/v1/base/c/#...

Juliaは所謂グルー言語(糊言語)の一種で、高速で気楽に使えるプログラミング言語によって、大量のライブラリを貼り合わせることに成功しています。

貼り合わせ対象にはもちろんPythonも含まれている。

タグ: Julia言語

posted at 01:52:26

Dr. Chris Rackauckas @ChrisRackauckas

20年9月24日

@datametrician @evalparse @rapidsai @keithjkraus Ahh interesting, then you may be able to connect deeply to Cxx.jl and CUDA.jl in a way that JIT compiles for new data types. That would be really useful and cool!

タグ:

posted at 01:51:54

madfish @madfish19

20年9月24日

お昼の1時間近い数学講義の締めがjulia言語のcmで 草

タグ:

posted at 01:51:46

黒木玄 Gen Kuroki @genkuroki

20年9月24日

@4310sy @kazuneet #Julia言語 Pythonだけではなく、#R言語 についても同様にJuliaとのあいだの架け橋ができています。

たとえば、Rのggplot2 を Julia でも使えます。

nbviewer.jupyter.org/gist/genkuroki...

逆にRでJuliaを使えるので、DifferentialEquations.jlも使える。

github.com/SciML/diffeqr

タグ: Julia言語 R言語

posted at 01:49:15

黒木玄 Gen Kuroki @genkuroki

20年9月24日

@4310sy @kazuneet #Julia言語 PythonからもJuliaを使えます!

github.com/JuliaPy/pyjulia

例えば、JuliaのDifferentialEquations.jl(←これかなりすごいパッケージ!)はPythonから使えるようになっています。

github.com/SciML/diffeqpy

タグ: Julia言語

posted at 01:46:05

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

20年9月24日

標本平均と期待値が等号でつながってるめう…

タグ:

posted at 01:45:16

黒木玄 Gen Kuroki @genkuroki

20年9月24日

@4310sy @kazuneet #Julia言語 JuliaにはPyCall.jlというパッケージがあって、Julia内部でPythonのライブラリを使えます。

例えば↓

qiita.com/cometscome_phy...
Juliaで機械学習:PyCall.jlを使ってTensorFlowのKerasを使ってみる

タグ: Julia言語

posted at 01:39:43

黒木玄 Gen Kuroki @genkuroki

20年9月24日

@4310sy @kazuneet #Julia言語 matplotlib便利ですよね。私もJuliaのライブラリとしてmatplotlibを利用しています。

詳しくは↓

nbviewer.jupyter.org/gist/genkuroki...

1つ目のセル(添付画像1,2)はPython

2つ目のセル(添付画像3,4)はJulia

プロット部分のコードが '~' を "~" に変えただけになっていることに注目! pic.twitter.com/wKjinNQuu7

タグ: Julia言語

posted at 01:38:13

Josh Patterson @datametrician

20年9月24日

@ChrisRackauckas @evalparse @rapidsai We also use jitify github.com/NVIDIA/jitify cuDF as @keithjkraus can explain is a bit complex but designed for flexibility

タグ:

posted at 01:34:10

Dr. Chris Rackauckas @ChrisRackauckas

20年9月24日

@datametrician @evalparse @rapidsai I mean, that would work, but then you wouldn't be able to JIT it to other data types. Having very optimized kernels for specific data types is never bad though, so it would be a good addition to the package ecosystem.

タグ:

posted at 01:26:14

Jotaro @JotaroUT

20年9月24日

5分ぐらいで作れたので,p5.jsは最強

タグ:

posted at 01:05:39

Jotaro @JotaroUT

20年9月24日

高校教育から行列計算が消え去ったことによって苦悶するドイツ人学生のために,行列によるアフィン・同時変換を「触れる」アプリを作ったぞい.

codepen.io/JotaroS/pen/LY... pic.twitter.com/OR1xAUb9nx

タグ:

posted at 01:05:01

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

20年9月24日

レンタル何でもJuliaで実装する人

タグ:

posted at 01:02:19

型推栄 @_jj1lis_uec

20年9月24日

Juliaか...
なんかLLVM使ってて科学計算が爆速ということしか知らぬ

タグ:

posted at 00:43:49

夏休み @genkai_zm_wsd

20年9月24日

今日Juliaとかいうの知った

タグ:

posted at 00:32:34

神 岳 @takejin009

20年9月24日

@genkuroki 工学「畑」が知らぬ間に巻き込まれました。どういう認識なのでしょう。工学というくくりも大雑把ですし。

タグ:

posted at 00:31:05

黒木玄 Gen Kuroki @genkuroki

20年9月24日

#超算数 よーわからん話になっていますが、

 工学畑

だと

 ABCDから異なる2文字を並べるなら4×3でいいのに、
 7人に5個ずつだと7×5だとダメ

ということになるんですか?(笑)

「私はそう思う」で通せば自分個人が馬鹿扱いされるだけで済むのに、多くの人達を巻き込む話にするのは非常にまずい。 twitter.com/presence_ftva/... pic.twitter.com/fNqH4y80qq

タグ: 超算数

posted at 00:15:40

Mark Kittisopikul ht @markkitti

20年9月24日

@l_II_llI #JuliaLang #Slack Come for the scientific programming, stay for the scientists.

タグ: JuliaLang Slack

posted at 00:05:09

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

User

» More...

Tag

» More...

Recent

Archive

» More...

タグの編集

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

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

送信中

送信に失敗しました

タグを編集しました