黒木玄 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年02月06日(土)
#Julia言語
nbviewer.jupyter.org/gist/genkuroki...
@ timeと@ code_warntypeの使い方
添付画像は目次と第5節。
docs.julialang.org/en/v1/manual/p...
を全部読んで理解できれば問題ないのですが、普通はそういうわけにも行かないので、@ timeと@ code_warntypeで確認する癖をつけておくと、経験値を貯めやすいと思います。 pic.twitter.com/0vYxCdZJLh
タグ: Julia言語
posted at 00:19:50
OokuboTact 大久保中二病中年 @OokuboTact
本屋で中学数学の参考書を立ち読み。
「倍数」の頁は「0は全ての整数の倍数」とちゃんと書いてあった。
タグ:
posted at 00:22:03
#Julia言語
nbviewer.jupyter.org/gist/genkuroki...
@ timeと@ code_warntypeの使い方
の第4節で作った動画。1次元の波動方程式の数値解です。 pic.twitter.com/OozcaXd7Hu
タグ: Julia言語
posted at 00:23:33
requirements.txt にバージョンが書かれてないやつ、 pip の新リゾルバが「バージョンわからんけどとりあえず総当たりして組合せ見つけるわ!」っつって各ライブラリの全リリースをダウンロードすることに気づいて「オアー!」って言った(普段 poetry でバージョン管理してるので知らなかった)
タグ:
posted at 00:33:38
github.com/pypa/pip/issue...
(インターンに来てくださってる学生さんの docker build が永遠に終わらなくて調査した結果見つけた
タグ:
posted at 00:40:56
#Julia言語 @ timeの表示の読み方の例
添付画像のコードでは、U, Vがそれぞれ400×8001のFloat64(8バイト)の行列なので、合わせて400×8K×8B=48.9MB程度のメモリは消費されるはずです。
ところが、@ timeが表示した数値は456MBでひと桁違っていて、アロケーションに回数も以上に多い。続き pic.twitter.com/03GJwLzYX5
タグ: Julia言語
posted at 00:48:37
#Julia言語 続き。ガベージコレクションによる遅延もひどい。
こういう見方ができれば、添付画像のコードでは失敗していることは間違いないと判断できます。
失敗に気付けば色々調べて改善して経験値を増やせます。
自分の失敗に気付かないままだとかなりの時間を無駄にすることになります。 pic.twitter.com/qJhFTQXGBW
タグ: Julia言語
posted at 00:48:44
#Julia言語 無駄にメモリアロケーションを増やして、ガベージコレクション地獄に陥ることは、重い計算をJuliaにやらせようとした人は一度は経験していると思う。
失敗に気付いた後に公式ドキュメントの
docs.julialang.org/en/v1/manual/p...
を読むと、
ああ、こんな所に助けの神がいたのか!
となります。
タグ: Julia言語
posted at 00:52:15
#Julia言語 @ code_warntype の出力は、最初のうちは、強い目立つ警告色で表示されている型情報のみに注目するだけで十分だと思います。
強い警告色のAnyが大量に現れていたら、それが原因で計算速度が数十倍遅くなってしまっている場合があります。
添付画像では20倍ほど遅くなっている。 pic.twitter.com/F0LF1KyfS4
タグ: Julia言語
posted at 00:56:42
#Julia言語 添付では、問題を指定するデータを1つの型にまとめること(これは良いこと)をしているのですが、失敗しているせいで、@ code_warntype で赤字のAnyが出まくっています。私の環境では20倍ほど遅くなっている。 pic.twitter.com/5zxJ31eXHR
タグ: Julia言語
posted at 01:00:10
#Julia言語
【パフォーマンス向上のために部分的に静的型付けをすることができる】は誤りだと思います。
函数の引数の型を
function f(x::Float64)::Float64
~
end
のように指定してもパフォーマンスは何も向上しません。
function f(x)
~
end
と書いた状態でC並に速いです。 twitter.com/poyothon/statu...
タグ: Julia言語
posted at 01:19:44
ITensor is a software library for tensor algorithms in Julia and C++. The Julia version of ITensor now offers multithreaded contraction of block-sparse tensors. For more information click here itensor.org
#julialang #multithreading @ITensorLib pic.twitter.com/ztjLneXJFA
posted at 03:41:10
Just heard about this package during @zackli's talk.
Wigner 3j symbols in a couple 100 lines of #JuliaLang, 2-4X faster than the prototypical Fortran code thats been used for decades.
github.com/xzackli/Wigner... pic.twitter.com/JhIpoUnNTz
タグ: JuliaLang
posted at 05:50:41
Masahiro Ono 小野 昌弘 @masahirono
イスラエルでワクチン接種の流行抑制への効果がでてきている可能性。イスラエルは接種率が相当先行している(60歳以上は大多数が接種済み)ので、ワクチンの流行への効果をみる試金石となる。ワクチン接種がほぼおわった60歳以上の新規感染者数・入院数の低下が顕著。今後の経緯が注目される twitter.com/jburnmurdoch/s...
タグ:
posted at 06:48:44
OokuboTact 大久保中二病中年 @OokuboTact
ブログ「身勝手な主張」の2014年の記事で、中学校では最大公約数と最小公倍数についての項目がないことが書いてあって興味深い。
ユークリッド互除法について少し触れているけど、高校では教えることになっているけど、それ以前はどうなんだろう?
#超算数
タグ: 超算数
posted at 09:27:15
OokuboTact 大久保中二病中年 @OokuboTact
ブログ「身勝手な主張」の2014年の記事
blog.goo.ne.jp/mh0920-yh/e/e8...
#超算数
タグ: 超算数
posted at 09:29:15
Pythonしか書かないマンになって久しいので、新しい言語のチュートリアルとかを研究の気晴らしにちょっとずつだらだらやりたいと思ったりする。Julia気になる(一方、C++書けるようになりたいとも思い続けて早X年、一向に手を動かさないワタシ。数学に無限に可処分時間を喰われてる)
タグ:
posted at 09:40:42
Webで人々の意思決定を操るデザイン「ダークパターン」
例えば退会プロセスでしつこく繰り返し慰留したり、セール価格をカウントダウンと共に表示する。
アメリカではカリフォルニア州を皮切りにこうしたデザインが禁止対象になり始めている。
@wired_jp wired.jp/2021/02/05/law...
タグ:
posted at 10:08:55
Juliaのプロンプトはjulia> ですが、私はElkのような無駄な情報のない> という寡黙なプロンプトが好きなので、少し調べると、 ~/.julia/config/startup.jl に次のように書いておけばよいようです。 pic.twitter.com/j4z9vE95dg
タグ:
posted at 10:38:21
(3年前期) 機械学習
線形回帰等を julia (疑似python) で実装しようぐらいの内容
ぶっちゃけ取ってもあんまりって感じ
先生は優しいしすごくモダンな手段で課題やらせてくれるから好き
動画も資料 も1回も見ずに課題できたのは草
まぁ単位稼ぎ & 軽い演習ってノリでとれば良さそう
タグ:
posted at 10:47:50
gendai.ismedia.jp/articles/-/798...
こんなくだらない分析する人はZ会の主任といこと?
だとしたら、Z会も・・・ pic.twitter.com/kYtGWzm5Mp
タグ:
posted at 12:37:28
Z会、
共通テストにおべんちゃら言わないとならない事情があるのか?それとも本心で太郎と花子の会話の問題を素晴らしいと思っているのか?
どちらにしても、駄目すぎる。
タグ:
posted at 12:42:38
前にも書いたと思いますが、俺は今からPython学ぶぐらいならJuliaを学んだほうが今後のためにもなるかもだし良いと思っています。
まだJulia使ってないPython使いが言うけど、Pythonマジで遅すぎだし本当書き方に気を付けないとすぐ遅くなるからね。処理速度重視するぐらいならJuliaのほうが良い。
タグ:
posted at 13:13:16
"SMRは人口規模の小さい地域では変動が大きいという欠点があり、それを補うために、階層ベイズモデルを用いた縮約統計量の利活用が推奨されています。(www.kansai-u.ac.jp/step/img/publi... ;www.myschedule.jp/jpa2014/tex_ou... )" ytake2.github.io/takeblog/2018/...
タグ:
posted at 13:14:23
PyPyやNumba、Cython使えやって話になるかもしれないけど、PyPyとNumbaはCPythonじゃ実装できなかったはずだし、CythonはPythonと書き方を変えなければまったく恩恵が得られないと言って良い。
タグ:
posted at 13:24:53
#統計 そこで紹介されている論文のタイトルは Beyond Newton's methodなのですが、ガンマ分布の最尤法についてそこで提案されている計算法は F(α) = α(log α - ψ(α) - c) = 0 に関するNewton法に一致しています。
全然Newton法を超えていない!(笑)
シンプルな話です。添付画像の解説を参照。続く twitter.com/nenomake/statu... pic.twitter.com/YlYY4AdU6k
タグ: 統計
posted at 14:59:07
#Julia言語 のDistributions.jlでのガンマ分布の最尤法も
F(α) = α(log α - ψ(α) - c) = 0
に関するNewton法で実装されています。
クイズに出したことがあった。
この話題は、ディガンマ函数ψ(α)、トリガンマ函数ψ'(α)と最尤法とNewton法に馴染むには非常に良い演習問題です。 twitter.com/genkuroki/stat...
タグ: Julia言語
posted at 14:59:09
#数楽 一般に x > 0 の範囲で f(x)=0 の解を求めることと、F(x):=xf(x)=0 の解を求めることは同値です。f(x)がf(x)=g(x)-cの形をしていて、xg(x)が下に凸な正値単調減少函数なら、F(x)=xg(x)-cxは局所的に直線に近くなり易くなり、F(x)=0へのNewton法の適用は効率的になります。 pic.twitter.com/jHtqM2pUWI
タグ: 数楽
posted at 15:05:20
@hoxo_m #統計 そこで紹介されている論文のタイトルは Beyond Newton's method ですが、ガンマ分布の最尤法について提案されている方法はNewton法です。
詳しい解説が以下のリンク先にあります。
その方法は #Julia言語 のDistributions.jlでも使われています。爆速で非常に便利です。 twitter.com/genkuroki/stat...
posted at 15:11:37
函数 y = f(x) に関する方程式 f(x) = 0 について、xに関する変数変換のみを考えて、yの側の変換について考えなかったせいで、Newton法とは違う方法を見つけたと誤解してしまったのだと思います。
しかし、提案されている方法は爆速で素晴らしいです。
タグ:
posted at 15:15:07
こういう類のことはよくあって、「説明はおかしいし、本質を捉えてもいないが、結論は正しくて素晴らしい」となっている場合が結構あるので、説明や本質については自分で議論を再構成することによって理解する努力をした方が無難な場合が多いです。
タグ:
posted at 15:17:23
FEMでヘリウム原子に対するHartree-Fock方程式を数値的に解いてみたけど、基底で展開する場合と比べて精度が低かった。具体的には、6つのGTOを使って解いた場合はエネルギーE = -2.860 (Hartree)だったけど、FEM(5000分割)で解いた場合はエネルギーE = -2.852 (Hartree)だった。SCFの収束も良くない. pic.twitter.com/bxBOPEGwuw
タグ:
posted at 15:44:55
#Julia言語
【WignerFamilies.jl is thread-safe and very fast, beating the standard Fortran routine DRC3JJ from SLATEC by a factor of 2-4.】
昔から使われている標準的Fortranのライブラリよりも速いコードをJuliaで書くといういつもの話の1つ。
常態化している。 github.com/xzackli/Wigner...
タグ: Julia言語
posted at 15:50:29
@nimdanaoto ヘリウム原子の場合には比較的簡単に解けます。一般の原子、分子に対するHartree-Fock方程式を解く場合は、Hartree-Fock交換ポテンシャルを求めるのが極めて困難なので、ヘリウム原子のようにはいきません。
タグ:
posted at 15:50:50
教科書が #超算数
>板橋区では読み解く力の育成を目指して
独自に「板橋 i(あい)カリキュラム」の開発
「指導書から授業をつくるのではなく、一から教科書を読んで授業を作る」
www.s4e.jp/blogs/blog_ent...
板橋区で使用している教科書
小学校用教科書 算数 大日本図書
www.city.itabashi.tokyo.jp/kyoikuiinkai/g... twitter.com/takusansu/stat...
タグ: 超算数
posted at 16:46:36
新井から、板橋区立の学校には1800人の先生がいて
一人ひとりが「教科書を使い倒す授業」を改めて考えることが大切
教科書をもう一度読み直してみてほしい
ここを試験に出すここがポイントと思わずに
まずは教科書を読むことを第一歩としてやってみてほしいとアドバイス
www.s4e.jp/blogs/blog_ent...
タグ:
posted at 16:49:02
非公開
タグ:
posted at xx:xx:xx
@Tei393098 「指導書」を鵜呑みにするなという認識が広がったとすれば、一歩前進したと信じたいですね。
「指導書」に批判的な声が上がれば、芋づる式に教科書も吟味する声に繋がっていって欲しいです。
タグ:
posted at 17:17:47
みなみちあぷ〜( ⩌ ̫⩌)o @chiaki_at_cake
Juliaなる言語を遅いとは思いながら手を出したけど、これ書きやすいうえに速くて大変良い。
タグ:
posted at 17:38:46
@takusansu 板橋区は新井紀子教授のリーディングスキルテストを導入し読解力教育を推進してるのですが、新井教授の算数が超算数なんです。算数だけならまだしも
超算数的な読解法を他の教科にも取り入れてるのです。
AIに負けない読解力なので前衛的教育かも。
twitter.com/genkuroki/stat...
タグ:
posted at 17:40:34
#Julia言語 複数の最適化パッケージを、いつもの
prob = OptimizationProblem(~)
sol = solve(prob, ~)
のスタイルで統一的に利用できることを目指しているパッケージ。
問題を意味する型FooProblemを定義して、solve(prob::FooProblem, ~)を定義する普遍的なスタイル。 github.com/SciML/Galactic...
タグ: Julia言語
posted at 17:46:12
@takusansu 『ハッピーになれる算数』は超算数の指導法だそうです「AI vs.教科書が読めない子どもたち」が同じ問題意識だそうなので、AIに負けない読解力は超算数指導と相性が良いということだと思います。
twitter.com/Tei393098/stat...
タグ:
posted at 17:46:28
The stack effect (aka the chimney effect) helps drive natural ventilation, air infiltration, and fires. This fire instructor demonstrates the chimney effect to trainees [read more: buff.ly/3jq2xlC] [source of the clip: buff.ly/2MY0yZA] pic.twitter.com/zLMevjpFm8
タグ:
posted at 18:05:53
#Julia言語 問題を記述するデータを保持する型の定義でデフォルト値は
Base.@ kwdef struct FooProblem{Ta, Tn}
a::Ta = 1.234
n::Tn = 10^3
end
using Parameters
@ with_kw struct BarProblem{Ta, Tn}
a::Ta = 1.234
n::Tn = 10^3
end
で設定可能。
gist.github.com/genkuroki/8358... pic.twitter.com/bi2wVyfGd3
タグ: Julia言語
posted at 18:06:56
Julia,標準で縦ベクトルなの数学と合ってて良き
#julialang #julia #Julia言語
posted at 18:57:35
非公開
タグ:
posted at xx:xx:xx
非公開
タグ:
posted at xx:xx:xx
#超算数 そして日本書籍の教科書にある「ひろ子のおてつだい」は、かなり露骨な掛け順こだわり強制指導を含むtwitter.com/temmusu_n/stat...。石田貞一と村田英吉はこの教科書と『算数の部』(1950)の両方に関与している。
タグ: 超算数
posted at 21:14:17
非公開
タグ:
posted at xx:xx:xx
計算に15分以上かかるので、ボトルネックになっている部分(一般化固有値問題を解くところ)をGPUに投げて高速化できるか試してみたいが、CUDA.jlが手持ちのGPU(GeForce RTX 3080)に対応していないのでどうしようもない。
#julia言語 twitter.com/dc1394/status/...
タグ: julia言語
posted at 22:02:50