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

2021年08月12日(木)

黒木玄 Gen Kuroki @genkuroki

21年8月12日

GOGOLA‼️

おもしろすぎ‼️ twitter.com/thebekku/statu...

タグ:

posted at 00:01:51

黒木玄 Gen Kuroki @genkuroki

21年8月12日

#Julia言語 あと、更新がずっとされていないパッケージHogeを使う場合には、

pkg> add Hoge

ではなく

pkg> dev Hoge

として、~/.julia/dev/Hoge/Project.toml内の[compat]節の内容を変更するという手が効果的な場合もあります。

タグ: Julia言語

posted at 04:16:55

黒木玄 Gen Kuroki @genkuroki

21年8月12日

#Julia言語 Project.tomlを持たない古い野良パッケージで有用そうに見えるものに出会うこともあります。その場合にはリポジトリをクローンしたり、リポジトリからZIPをダウンロードして、手元のパソコン内のどこかにおいて、Project.tomlを自分で作成して、

pkg> dev そのどこか

とする。

タグ: Julia言語

posted at 04:16:56

Pumas-AI @pumas_ai

21年8月12日

We're delighted to announce the release of a more powerful Pumas. The only pharmaceutical modeling software you need! Thanks to entire dev team and
@JuliaComputing for getting us here! pumas.ai
#pumas #julialang #pharma #nlme #qsp #pkpd #pharmacometrics #midd #nca pic.twitter.com/hqgm5GnMr3

タグ: julialang midd nca nlme pharma pharmacometrics pkpd pumas qsp

posted at 05:07:13

黒木玄 Gen Kuroki @genkuroki

21年8月12日

L=10くらいの場合はSparseArraysを使うと速いことは私も確認していたのですが、L=20の場合はまだでした。

juliaphysics.github.io/PhysicsTutoria... の方法でL=20の場合を試してみました。

結論:速くならなかった。その理由は疎行列の作成に4秒弱もかかっているから。

続く

github.com/genkuroki/publ... twitter.com/yujitach/statu... pic.twitter.com/7uLqCrigYQ

タグ:

posted at 05:09:18

黒木玄 Gen Kuroki @genkuroki

21年8月12日

LinearMaps版は約8秒で計算が終わり、SparseArrays版は疎行列作成に4秒弱かかり、partialschurに7秒かかっています。

疎行列の作成時のアロケーションが巨大なので改善を試みる価値はあると思います。しかし、疎行列作成を1秒未満で終わらせないとLinearMaps版に勝てない。

誰か、GPU版をよろしく! pic.twitter.com/RFXoYnThlo

タグ:

posted at 05:13:32

Patrick K. Mogensen @pkofod

21年8月12日

A lot of work went in to this version of Pumas. More robust, so many new features, improved workflows and more... and trust me, we have a lot more on the way! #pumas #julialang #pharma twitter.com/pumas_ai/statu...

タグ: julialang pharma pumas

posted at 05:23:49

黒木玄 Gen Kuroki @genkuroki

21年8月12日

そうそう、自分で

juliaphysics.github.io/PhysicsTutoria...

のコードで遊ぶ場合には、周期境界条件になっていないことに注意して下さい。ほんのちょっとの修正で周期境界条件にできます。

github.com/genkuroki/publ... のIn[2](添付画像)の21行目を参照。 pic.twitter.com/niOtMFef8g

タグ:

posted at 05:48:51

黒木玄 Gen Kuroki @genkuroki

21年8月12日

[6]の H = ~ の行で約100万×100万で0でない成分の個数が約20×100万個の疎行列を作っているのですが、アロケーションが巨大になっています。

すっきりしたコードでアロケーションを減らす方法があれば教えてください。途中の計算を!付き演算で置き換えるだけでよい場合もそうだと教えて下さい。 pic.twitter.com/kdAPXGKHfP

タグ:

posted at 05:52:18

黒木玄 Gen Kuroki @genkuroki

21年8月12日

#Julia言語 で疎行列を無駄なアロケーション抜きに作るノウハウは?

タグ: Julia言語

posted at 05:53:20

黒木玄 Gen Kuroki @genkuroki

21年8月12日

#Julia言語

BenchmarkTools.jlでより正確に計測。

LinearMaps.jl版(LoopVectorization.jlと併用)がかなり健闘していて、前もって線形写像の中身を計算しているSparseArrays版のH_sparseをpartialschurに与えた場合との比較で遜色ない性能になっています。

github.com/genkuroki/publ... pic.twitter.com/gE5HWNml4l

タグ: Julia言語

posted at 06:17:17

黒木玄 Gen Kuroki @genkuroki

21年8月12日

CPUでの計算を本気で速くしたいと思った場合にはLoopVectorization.jlおよびその仲間達を使うことが定跡になって来ていると思います。

タグ:

posted at 06:19:11

黒木玄 Gen Kuroki @genkuroki

21年8月12日

#Julia言語 これ、GPUを使えば速くなる計算の典型例に見えるのですが、GPU計算のコードを書くのはかなり面倒で、超えないといけないハードルが

* 対角化した線形写像の実装
* Arnoldi method(など)の実装

と2つある。

こういう所でノウハウを蓄積できれば、後で通り人は非常に楽になる。

タグ: Julia言語

posted at 06:25:22

黒木玄 Gen Kuroki @genkuroki

21年8月12日

#Julia言語 どれだけ楽に、他人が書いたコードに変更を要求することなく、新しい型やメソッドを付け加えることができるようになるか、という問題はソフトウェアエンジニアリングの基本的な問題です。

Expression problemと呼ばれることもあるようです。続く twitter.com/genkuroki/stat...

タグ: Julia言語

posted at 06:33:38

黒木玄 Gen Kuroki @genkuroki

21年8月12日

Expression problem については以下のリンク先を参照。

eli.thegreenplace.net/2016/the-expre...
クラスベースのオブジェクト指向ではうまく行かない。

eli.thegreenplace.net/2018/more-thou...
Haskellでも相当に苦しい。

Juliaでは何もせずに自然にexpression problemが解決しています。

タグ:

posted at 06:33:39

黒木玄 Gen Kuroki @genkuroki

21年8月12日

expression problemでのゲームのルールはこうです。

①パッケージXを誰かが書く。
②それ以後パッケージXを書き換えてはいけない。
③別のパッケージYの中でパッケージXに型や函数(メソッド)を追加せよ。 pic.twitter.com/B8o8DA5gTP

タグ:

posted at 06:51:34

黒木玄 Gen Kuroki @genkuroki

21年8月12日

既存のコードの変更が禁止されているとき、「既存の函数への新しい型を扱うメソッドの追加」と「既存の型を扱う新しい函数の追加」の両立が難しいというのが、このスレッドで扱いたいexpression problemです。

Juliaではexpression problemが自然解消されて見えなくなっています。 pic.twitter.com/SVRT8KqjSx

タグ:

posted at 06:56:24

黒木玄 Gen Kuroki @genkuroki

21年8月12日

以前書いた expression problem 関連のJupyter notebook

nbviewer.jupyter.org/github/genkuro...
#Julia言語

色々面倒になって多重ディスパッチを使うチートをしている部分があるので注意。多重ディスパッチになれると、それができない場合に戻るのは苦しい。

タグ: Julia言語

posted at 06:59:53

黒木玄 Gen Kuroki @genkuroki

21年8月12日

#Julia言語 の開発者の一人であるStefan Karpinskiさんによるexpression problemの解説

discourse.julialang.org/t/is-julias-wa...

タグ: Julia言語

posted at 07:08:20

非公開

タグ:

posted at xx:xx:xx

非公開

タグ:

posted at xx:xx:xx

黒木玄 Gen Kuroki @genkuroki

21年8月12日

例えば、「型(もしくはクラス)Fooが保有するメソッドのリストがFooの定義で決まっており、Fooのコードの変更抜きにFooへの新しいメソッドの追加が不可能になる」というようなことは、メソッドが型やそのオブジェクトの保有物であるというスタイルを捨てたJuliaでは起こり得ません。

タグ:

posted at 07:50:19

黒木玄 Gen Kuroki @genkuroki

21年8月12日

同様に、「函数fooの定義域と値域はfooの定義で決まっており、fooのコードの変更抜きにfooの定義域を新しい型に拡張することが不可能になる」というようなことも、函数の定義域を多重ディスパッチで自由に拡張できるJuliaでは起こり得ません。

タグ:

posted at 07:50:20

癒される動物 @cutest_animal1

21年8月12日

理想的な休日の過ごし方✨ pic.twitter.com/uRtU471Wwn

タグ:

posted at 08:12:36

黒木玄 Gen Kuroki @genkuroki

21年8月12日

多重ディスパッチの説明

まず、引数が1個の場合から。

Juliaでは、FooとBarが型名で、函数fが2つのメソッド

f(x::Foo) = ~
f(x::Bar) = ~

を持つとき、xの型がFooとBarのどちらであるかによってf(x)で実行されるメソッドが決まる。続く

タグ:

posted at 08:23:02

黒木玄 Gen Kuroki @genkuroki

21年8月12日

Bar <: Foo のとき、すなわち「xがBar型ならばFoo型である」ときには、

* xがBar型ならばf(x)でf(x::Bar)が実行される。
* xはBar型ではないがFoo型ならばf(x)でf(x::Foo)が実行される。
* xがFoo型でないならばf(x)はメソッドが見つからずエラーになる。

タグ:

posted at 08:23:03

黒木玄 Gen Kuroki @genkuroki

21年8月12日

Bar <: Foo でも Foo <: Bar でもないとき、xがBar型かつFoo型ならば、f(x)でf(x::Bar)とf(x::Foo)のどちらを実行してよいか曖昧になるのでエラーになる。

タグ:

posted at 08:23:04

黒木玄 Gen Kuroki @genkuroki

21年8月12日

以上の使用を引数が複数の場合にもそのまま一般化したものが多重ディスパッチです。

函数fが、定義域と計算法の組み合わせ(メソッド)の集まりで定義されていて、複数の定義域に含まれる引数については定義域が最も小さなメソッドが実行される。(最も小さな定義域を持つメソッドがないならエラー)

タグ:

posted at 08:23:05

黒木玄 Gen Kuroki @genkuroki

21年8月12日

函数を、定義域と計算法の組(=メソッド)の集まりだと考えることは、直観的に分かりやすいです。

函数には新しいメソッド(新たに設定された定義域における計算法)をいつでも自由に追加できる。

「オブジェクトからメソッドが生える」とか「函数の定義域と値域は固定されている」とは考えない。

タグ:

posted at 08:23:06

黒木玄 Gen Kuroki @genkuroki

21年8月12日

こんな感じで、過剰に話題になりやすい「計算速度」のことを仮に全部忘れたとしても、「オブジェクトからメソッドが生えない」でかつ「函数の定義域と値域は固定されておらず、いつでも拡張可能」というスタイルを採用してエコシステムを発展させた #Julia言語 は十分に面白い対象だと思います。

タグ: Julia言語

posted at 08:26:30

黒木玄 Gen Kuroki @genkuroki

21年8月12日

#Julia言語 での線形代数の実装が素晴らしい理由

youtu.be/C2RO34b_oPM

github.com/JuliaLang/juli...

discourse.julialang.org/t/unintuitive-...

これ、一言で言えば、「縦ベクトルの転置が縦ベクトルの空間の双対空間の要素になるべきであることに忠実に仕様を決める必要があった」という話です。

タグ: Julia言語

posted at 09:07:35

黒木玄 Gen Kuroki @genkuroki

21年8月12日

#Julia言語 時間がない人はこちらのスライドを参照。

www.slideshare.net/acidflask/desi...

タグ: Julia言語

posted at 09:10:04

@Mihoko_Nojiri

21年8月12日

縦軸に 0 と10 が入ってないからlog plot かどうかわからないというコメントがきて対応に苦慮している。 twitter.com/Mihoko_Nojiri/...

タグ:

posted at 09:13:24

Yossy @Yossy_K

21年8月12日

やっぱりひろゆきは別の世界線からやってきた人だったのでは twitter.com/tahataha105/st...

タグ:

posted at 09:13:33

黒木玄 Gen Kuroki @genkuroki

21年8月12日

#Julia言語 次の質問がsolvedなので、あとはCUDAのsparse matrixで固有値を求めたい線形写像を表現するだけ。これならきっと誰かがやってくれるんじゃないか?😊

discourse.julialang.org/t/cuda-eigenva...
CUDA eigenvalues of a sparse matrix

タグ: Julia言語

posted at 09:46:18

Tomoaki Yamada @TomoakiYamada3

21年8月12日

いつの間にかVS CodeのJulia extensionがJuliaPro並みに快適になっていた。Atomの将来性を考えるとJuliaProよりVS Code + Julia extensionの方が良さそう。ただ、初心者だと環境設定で少し戸惑うかもしれない。

タグ:

posted at 09:52:30

黒木玄 Gen Kuroki @genkuroki

21年8月12日

試しにCUSPARSE.CuSparseMatrixCSRでCPUの疎行列をGPUの疎行列に変換して、CUSOLVER.csreigvsiを実行してみたが、私が試した範囲内ではあんまり速くない。何か間違ったことをしているのかも。

現時点では、LinearMaps.jl と LoopVectorization.jl と ArnoldiMethod.jl の組み合わせが速い。

タグ:

posted at 10:43:54

黒木玄 Gen Kuroki @genkuroki

21年8月12日

訂正

❌対角化した線形写像
⭕️対角化したい線形写像

通常の疎行列を作ってからCUSPARSEの疎行列に変換して、CUSOLVER.csreigvsiを実行するのは易しい。

最大の問題はJulia版ドキュメントがないこと(笑)。
docs.nvidia.com/pdf/CUSOLVER_L... を参照した。 twitter.com/genkuroki/stat...

タグ:

posted at 11:08:57

Nyoho @NeXTSTEP2OSX

21年8月12日

この辺の線形代数のJuliaの実装面白いなあと思う。わしの素人考えでは、数学的に双対空間とかペアリングとスカラーとかきっちり実装を区別してやった方が遅くなりそうなもんじゃけど、そうじゃないし、それどころかそれが功を奏しているみたい。 #washipo ep13(podcast)でもほんの少し触れた。 twitter.com/genkuroki/stat...

タグ: washipo

posted at 12:15:16

Nyoho @NeXTSTEP2OSX

21年8月12日

13: Giving back to the Internet with Python and communities (ksnt) - わしポ (Washipo) washipo.nyoho.jp/13/

タグ:

posted at 12:15:44

sekkai @sekkai

21年8月12日

デルタ株の感染力は極めて高いけど、どう考えても麻疹の方が基本再生産数の方が高いので「私の知る限り」と仰るけれど単純に山中先生の勉強不足です。 twitter.com/tororoontuna/s...

タグ:

posted at 12:27:18

Jacob Quinn @quinn_jacobd

21年8月12日

Want to help guide a future main area of focus for the #JuliaLang DataFrames.jl package? Go cast your vote now! Interested in getting involved in development? Join discussions on discourse or slack to chat about how to push DataFrames.jl even further!

discourse.julialang.org/t/future-direc...

タグ: JuliaLang

posted at 16:03:29

非公開

タグ:

posted at xx:xx:xx

富谷(助教);監修 シン仮面ライダー @TomiyaAkio

21年8月12日

#Julia言語 の研究会をします! 9/3 (金) akio-tomiya.github.io/julia_in_physi...
チュートリアル講演も多く用意しています。Juliaを使ってみたい(使ってる)学生や研究者等の積極的な参加を歓迎します。また一般講演も募集していますのでぜひぜひ! (主に物理研究での話を念頭に置いてますが基本何でもOKです) #RT希望

タグ: Julia言語 RT希望

posted at 16:39:29

天むす名古屋 Temmus @temmusu_n

21年8月12日

@sekibunnteisuu #超算数 単項演算と二項演算って、完全に大人の視点ですよね。かけ順自由は数学レベルで算数を学んでいる小学生には相応しくないとかなんとか同じ人が言っていたら笑い草です。

タグ: 超算数

posted at 17:20:45

積分定数 @sekibunnteisuu

21年8月12日

@temmusu_n #超算数 あれは大人でも謎でしたよ。
足し算、引き算、掛け算に関しては、どういう基準なのかはなんとなくわかるけど、割り算に関しては全く意味不明。

blog.goo.ne.jp/mh0920-yh/e/08...

タグ: 超算数

posted at 17:27:56

M. Kanamaru @AstroshaperJP

21年8月12日

地球惑星科学ではまだ使用例が少ないけど、Julia言語の先駆者たちの話が聞けそうで楽しみだ☺️ twitter.com/TomiyaAkio/sta...

タグ:

posted at 18:26:20

TheJapanTimesAlpha編集 @st_takahashi

21年8月12日

「ネコがどこかに隠れているよ」という画像が回ってきたのだが、・・・見つけるのに15分くらいかかったぞ
※ヒント
・何かの陰に隠れているのではなく、ほぼ全身がはっきり見えている
・たぶん寝ている pic.twitter.com/TNUHTCTVt8

タグ:

posted at 19:22:16

Hiroshi Shinaoka @HShinaoka

21年8月12日

Julia研究会、学生に発表申し込みを進めたら、御手洗さんの集中講義と日程が被っていることを指摘された。残念。

タグ:

posted at 19:42:05

まきゃ @1789aorhow

21年8月12日

弊社、コードがc#、c++、fortran77、fortran90、c、python2.x、python3.x etcとロジックごとに使われてる環境も言語もばらばらなのでこれを機会にjuliaを布教したい。

タグ:

posted at 20:12:04

tanaka (モデルナ @Jeonjung1212

21年8月12日

東大卒でうだつが上がらなかった人は「受験大好き」になる例をたくさん見てるんだが、この人も多分に漏れずで、なんとKindleで入試本を自主出版しているほどの典型例であった。

タグ:

posted at 21:12:03

もるてん @iitenki_moruten

21年8月12日

#julialang
Plotsでのグラフの出力が小さくなってから戻せません.
似た症状を経験された方いましたら,教えてください.

症状
・出力が小さい
・sizeコマンドでサイズを指定しても改善しない
(凡例が小さいまま)
・パッケージモードで add Interact をした後から挙動がこうなった pic.twitter.com/nVsmTx2zTq

タグ: julialang

posted at 21:14:50

もるてん @iitenki_moruten

21年8月12日

環境
・macOS Big Sur ver.11.2.2
・MacBook Air (M1,2020)
・juypter notebookでJulia1.6.0

試したこと
・jupytern notebookの再起動
・PCの再起動
・添付画像のような表示が出たのでその指示に従い,ターミナルで

which jupyter
jupyter labextension list

を実行.出力はそれぞれ2,3枚目. pic.twitter.com/bHGyI6uVYx

タグ:

posted at 21:22:22

ごまふあざらし(GomahuAzaras @MathSorcerer

21年8月12日

@iitenki_moruten Plots.jl のバージョンも知りたいです. (特定のバージョンで描画が小さくなった覚えがあります.)
jupyter は Julia が ~/.julia 以下に導入する conda 環境から導入したものを使っています. pic.twitter.com/MgIONSTFTE

タグ:

posted at 21:27:21

もるてん @iitenki_moruten

21年8月12日

@MathSorcerer こちらの方も確認してみます.ありがとうございます.

タグ:

posted at 21:40:26

もるてん @iitenki_moruten

21年8月12日

@MathSorcerer Plots のバージョンはこちらですね.

たしかに,v.1.11.2と書いてあり,少し古いのかもしれないです. pic.twitter.com/4z8Z5Z3VTn

タグ:

posted at 22:05:05

黒木玄 Gen Kuroki @genkuroki

21年8月12日

#Julia言語 について、数年前の多くの情報は大抵時代遅れなので、以下のリンク先に判断の仕方はまずいです。

2019年12月の時点ですでに

discourse.julialang.org/t/why-is-there...
【it’s on the order of ~30% rather than 3x.】

と3倍ではなく30%となっています。(これも時代遅れになっている危険性がある) twitter.com/sfumatoamr/sta...

タグ: Julia言語

posted at 22:23:37

黒木玄 Gen Kuroki @genkuroki

21年8月12日

#Julia言語 a[i+1]が実践的なコードではa[i+1+1]のような形で使われている場合は多く、コンパイラが頑張ってくれれば a[i+2]と等価になる可能性があります。

実践的にどういう感じかは、実践的な状況に近い条件で計測しないとわからない。

誰か最新版のベンチマークテストをするとよいと思う。

タグ: Julia言語

posted at 22:23:38

黒木玄 Gen Kuroki @genkuroki

21年8月12日

#Julia言語 ググって見つけた1年以上前の情報(特にネガティブな情報)は現在では通用しない可能性が相当にあるので要注意。

書かれた当時は真実であっても現在では時代遅れになってしまったネガティブ情報を拡散すると、開発者達に努力を蔑ろにしてしまう危険性がある。 twitter.com/genkuroki/stat...

タグ: Julia言語

posted at 22:30:26

黒木玄 Gen Kuroki @genkuroki

21年8月12日

#Julia言語 実際には1年前よりもずっと最近の情報も要注意かも。

自分で実際にテストをしてみて裏を取ることは非常に重要。

タグ: Julia言語

posted at 22:37:15

The Julia Language @JuliaLanguage

21年8月12日

A new blog post titled: "Simulation of a swimming dogfish shark the Julia Language's official blog. Check it out here: zpr.io/imWkhQQeU4pZ and let us know your thoughts!

タグ:

posted at 22:51:22

山本 龍一 / Ryuichi Yama @r9y9

21年8月12日

「Juliaで学ぶ音声合成」をしたい

タグ:

posted at 22:51:55

kuma-cha @SfumatoAMR

21年8月12日

@genkuroki アップデートの情報ありがとうございます!

タグ:

posted at 23:04:56

kuma-cha @SfumatoAMR

21年8月12日

@genkuroki 正しくは情報のアップデートですね。。。

タグ:

posted at 23:05:58

ごまふあざらし(GomahuAzaras @MathSorcerer

21年8月12日

@iitenki_moruten 1.11.2 にしてもこちらの環境では小さくならないですね.

```
pkg> add Plots@1.20
```

のようにしてPlotsバージョンを変更することができます pic.twitter.com/PiPXWmYamp

タグ:

posted at 23:21:15

dc1394 @dc1394

21年8月12日

今月・来月の発表予定

8月19日:新潟大学大学院自然科学研究科博士(後期)課程の口頭試問
8月28日:#CEED5th で発表
9月2日:Julia in Physics 2021で発表
8月末〜9月上旬:#CEED6th で発表

結構忙しい。まあ、スライドはもう全部作ってあるんだけど。

タグ:

posted at 23:22:55

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

User

» More...

Tag

» More...

Recent

Archive

» More...

タグの編集

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

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

送信中

送信に失敗しました

タグを編集しました