黒木玄 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 を見て下さい。
2018年01月24日(水)
@tsatie @MathSorcerer あとアルゴリズム的には gcd(a,b)==1 を使うのではなく、gcdの計算途中で1にならないことがわかったら「すぐ次に行く」ようにした方がずっと速そうですよね。たとえば両方偶数だったらとばす。
そういうことをわざと一切しないようにしているわけですが。
タグ:
posted at 23:51:15
@tsatie @MathSorcerer 確率1/2で2で割り切れ、確率1/4で2^2で割り切れ、…なので、大量の整数計算をする場合には全体として速くなるのだと思います。
タグ:
posted at 23:48:31
@antimon2 @goropikari_ 私は Mamba.jl を使っているときに、@ everywhere するのを忘れていつも失敗しています。
そして、現時点でも Mamba の mcmc 函数(chainsを2以上した場合)を別の函数の中で使う方法がわからないのだ。
タグ:
posted at 23:41:42
@tsatie @MathSorcerer 「ぼくが解説するのは嫌なので誰か解説して」という話なのだ。
2進数表示で考えるとき、右側の0の分の扱いは自明なので、がんがん削って計算する方法。
10進数表示でも1200と1500の最大公約数は12と15の最大公約数の100倍。
タグ:
posted at 23:36:27
@MathSorcerer #Julia言語 基本的な函数について高速に計算するにはどうするのが「普通」であるかを知りたければ、Julia言語で @ which をたたくことが定跡になるかも。
タグ: Julia言語
posted at 23:28:05
@MathSorcerer #Julia言語 のソース(かなりの部分がJulia自身で書かれている)を見ると、数学の勉強になってしまう不思議 😅
たくさんの工夫が細かくちりばめられていて非常に感心します。公式バイナリだけで
@ which f(x)
で f のソースを簡単に見れる仕様になっている点は非常に教育的でよいと思いました。
タグ: Julia言語
posted at 23:26:10
@MathSorcerer #Julia言語 の gcd の定義は
github.com/JuliaLang/juli...
にあります。Juliaで書かれています。これをNumbaに移植すれば速くなる可能性があります。trailing_zeros(n)=(nを割り切る最大の2のべきの指数)=ord_2(n)です。
私も知らないアルゴリズムでした。コードをぱっと見ても理解不能。解説が必要。
タグ: Julia言語
posted at 23:23:19
@goropikari_ @genkuroki さらに補足として、addprocs() する前に {at}everywhere で何か定義していたら、後で追加したプロセスにはそれは反映されないので注意が必要です(何度かハマりました)。
タグ:
posted at 23:05:07
このまま金融緩和しつつ適当に放漫財政やればインフレになるのに、インフレ率が目標の2%にすら届かず1%行くかどうかみたいな状況で「デフレ脱却宣言」ってバカじゃねえのとしか。
タグ:
posted at 22:37:34
@genkuroki procs()よりもworkers()を使うことをおすすめします。
並列計算時に頑張っているのはワーカープロセス達なのでマスタープロセスの番号を得てもメリットは特にありません。
タグ:
posted at 22:34:01
#Julia言語 ゴロピカリさんに色々教えてもらったので試してみました。以下 @ の後の空白は除く。
nbviewer.jupyter.org/gist/genkuroki...
Distributed.@ parallel and Threads.@ threads
私のパソコンでは @ parallel と @ threads を使うと大体3倍くらい速く計算できるようです。
twitter.com/goropikari_/st...
タグ: Julia言語
posted at 22:08:34
ごまふあざらし(GomahuAzaras @MathSorcerer
Pythonにもmath.gcdがあるのですが,Numbaが最適化しないので自前の関数を定義しないと高速化につながらないです.
タグ:
posted at 21:13:46
ごまふあざらし(GomahuAzaras @MathSorcerer
#Julia言語 の組み込みgcd関数速くないですか・・・.Python+Numbaに比べると圧倒的に速い. pic.twitter.com/gAaevrmz1C
タグ: Julia言語
posted at 21:12:46
須山敦志 Suyama Atsushi @sammy_suyama
LeCun先生の反発とは裏腹に,機械学習コミュニティでは多くの人がRahimi先生の勇気ある発言を支持している模様.Tech giantsでしかできない暴力的な演算量や,向かう先の見えないパラメータチューニングに多くの技術者が疲れ始めているのではないかと勘ぐっています.
タグ:
posted at 20:52:07
#Julia言語 以下のリンク先を更新しました。
nbviewer.jupyter.org/gist/genkuroki...
WindowsへのJulia言語のインストール
JuliaPro関係の説明を追加しました。おそらくJuliaProでSymPyを使う方法が最も役に立つ情報だと思います。Python pipの使い方をある程度知っておく必要があります。
タグ: Julia言語
posted at 20:47:31
須山敦志 Suyama Atsushi @sammy_suyama
技術は実践的な発散と理論的な集約を何度も繰り返しながら徐々に洗練されていくと思っています.ただ,最近は特にSOTA!SOTA!言ってるだけの中身の薄い報告があまりにも多いので,Rahimi先生のいうようにsimple theory,simple experimentが今一度必要なんじゃないかと.
www.argmin.net/2017/12/11/alc...
タグ:
posted at 20:39:57
非公開
タグ:
posted at xx:xx:xx
須山敦志 Suyama Atsushi @sammy_suyama
短く言うと,NIPS2017でRahimi先生が「最近の研究は錬金術ばかりなのでちゃんと理論としてノウハウを伝えようね」といった内容の講演を行い,CNNで有名なLeCun先生が若干キレ気味で「コミュニティ全体の侮辱だ」とコメント.その後は理論も実践も大事だよね,でひとまず収まっている模様.
タグ:
posted at 20:24:04
須山敦志 Suyama Atsushi @sammy_suyama
「機械学習は錬金術?」の一連の流れはここにまとまっています.
“LeCun vs Rahimi: Has Machine Learning Become Alchemy?” medium.com/@Synced/lecun-...
タグ:
posted at 20:18:28
ちょっと前はラテン語版のwikiで、天皇の表記がローマ人っぽくなってたが現在は修正された模様。
la.wikipedia.org/wiki/Imperator... pic.twitter.com/eqAhLU0bcH
タグ:
posted at 20:00:18
@genkuroki 補足として、プロセス並列の場合はJulia起動後でも並列数を自由に変えられますが、スレッド並列の場合は起動後に変えることはできないので注意してください。
タグ:
posted at 19:51:45
非公開
タグ:
posted at xx:xx:xx
ごまふあざらし(GomahuAzaras @MathSorcerer
わーーーーーーうぃ Animationできた.
gist.github.com/terasakisatosh...
タグ:
posted at 19:27:27
Julia手軽でよい。Jupyter ノートブックにコメント残しながらアイディアの軽い確かめができる。Fortranでwriteで標準出力で書き出した一次元配列をコピペして貼り付けて[]で閉じるとJuliaの配列になるのもよい
タグ:
posted at 17:44:53
Juliaステッカーの販売,そろそろおしまいにしようかと思うのでまだの方はお早めに。
item.mercari.com/jp/m24338050548/
item.mercari.com/jp/m89027836127/
タグ:
posted at 17:42:08
Julia Scientific Programming | Coursera buff.ly/2DCEgpY CourseraでJulia言語の入門コースがスタートします.
タグ:
posted at 17:16:59
@genkuroki ご存知かもしれませんが、julia -p autoで起動せずとも、Julia起動後に addprocs() で*プロセス*並列はできます。
並列用のカーネルを作っていたり、過去に JuliaBoxでは並列化できないとツイートされていたようでしたので、気になってコメントさせていただいた次第です。
nbviewer.jupyter.org/gist/goropikar...
タグ:
posted at 16:52:49
#Julia言語 のRustへのインターフェースが現時点で使えない感じになっていることはとても残念なことかも。ヒーローの登場が待たれる。
discourse.julialang.org/t/interfacing-...
タグ: Julia言語
posted at 16:31:05
「EM菌に水質環境を良くする効果はない」という検証結果を公表したらEM菌を売って儲けてる業者から苦情が入るというめんどくさい状況に。このめんどくささに負けなかった広島県は偉い。詐欺師をはびこらせちゃいけないからね。
warbler.hatenablog.com/entry/2018/01/...
タグ:
posted at 13:56:59
Juliaのビルドツリーと格闘してるんだけど、Juliaって本当に車輪の再発明が嫌いぽくて、Juliaそのもののソースは本当に少い。既にある様々なライブラリを物凄く上手く使って早いって感じ。
タグ:
posted at 13:30:01
自分自身もバカの一人でしかないということを認識できるタイプであるかどうかが決定的。
どんなに勉強しても知らないことばかりなので、自分がバカでも全然大したことじゃないんだけど、そこまで割り切ることは結構難しい。
「ただのバカではないこと」を目指すべき。
タグ:
posted at 12:26:11
@YoichiTakahashi 京大の山中先生。背景には予算不足があるようで。そこで加計への補助金に不満がいくのもかなり不健全。そんな奪い合いは見苦しい。加計も京大もだろ。教育国債で年間数兆円くらい簡単に捻出可能で、みんな面倒をみたら
タグ:
posted at 10:58:43
@YoichiTakahashi 大学が文科省に弱いのはなんとなくわかるのですがなぜ財務省にも弱いんですかね 教育国債で予算を取れれば大学側にとって別に悪いことじゃないでしょうに それとも単純に財務省ポチの大学関係者は頭が弱いんでしょうか
タグ:
posted at 10:48:46
まったく。投資を債券で賄うという常識のないZポチ笑笑。情けないのが大学関係者。予算がないとわめいているが、教育国債にはダンマリ。大学関係者はZのポチばかりじゃないの twitter.com/kyounoowari/st...
タグ:
posted at 10:44:56
「電磁波過敏症」の著者・大久保貞利さんがワイヤレスマイクで電磁波問題の講演。言っていることとやっていることが…。 pic.twitter.com/tSjnQKmGUk
タグ:
posted at 10:03:01
「CよりHaskellのほうがデバックしやすかったので、Cでは挫折したがHaskellで初めて完成した」との発言も。(※やらせではありません) twitter.com/esumii/status/...
タグ:
posted at 10:00:54
Nature is Amazing ☘️ @AMAZlNGNATURE
Just in case you're having a bad day pic.twitter.com/4OEUiwmYdr
タグ:
posted at 10:00:23
Glossのfunctional(※時事ネタ)なstate updateもちゃんとわかっていて良かったです twitter.com/esumii/status/...
タグ:
posted at 09:58:22
もう昨日ですが、創造工学研修(1年生の少人数演習)発表会お疲れ様でした! 「Haskell (Gloss)でゲーム作っても滑らかに動くんですね」とか老人の質問をしたら、「はい、60 fpsに設定したので」と軽く返されました:-)
タグ:
posted at 09:56:12
Ryosuke Kurihara @phys_mmc_2007
Julia言語を導入してみた
プログラミングの経験がないから手探り状態…(^_^;)
とりあえず,Pkg.add("")を使ったときはコーヒーを飲みながら,気長に待つことが重要ってのが分かった
タグ:
posted at 09:51:03
#Julia言語 【論よりコード】
Julia言語のシンプルなテストコード
nbviewer.jupyter.org/gist/genkuroki...
を速度的に凌駕できる他言語のコードを誰か見せて下さい。(ただし、擬似乱数発生器として質が低いものを採用するのは反則。)
タグ: Julia言語
posted at 09:41:39
#Julia言語 の偉い人なら、アルゴリズムを変更せずにもっと高速化できる可能性が残っています。そういうJuliaのコードにCとは限らない他言語がどのように戦いを仕掛けて行くかをもっと見てみたいです。
以下のリンク先で「続きをやってくれる人」が募集されているみたい。
qiita.com/SatoshiTerasak...
タグ: Julia言語
posted at 09:26:28
#Julia言語 私自身が「gcc連合軍」で戦いを仕掛けても自力で「Julia帝国軍」に勝てません。そのことはπのモンテカルロ計算の件でよくわかっている。
nbviewer.jupyter.org/gist/genkuroki...
のJuliaのコードで注目するべき点は「型宣言が皆無」「inboundsなどの最適化のおまじないも皆無」ということです。
タグ: Julia言語
posted at 09:22:05
#Julia言語 個人的に誰かにやってもらいたいのは、2次元イジング模型のメトロポリス法(モンテカルロ法の一種)について、「gcc連合軍」で「Julia帝国軍」を速度的に撃破すること。アルゴリズムはリンク先と同じにしてもらえると助かります。
nbviewer.jupyter.org/gist/genkuroki...
十数行の短いコードです。
タグ: Julia言語
posted at 09:12:32
#Julia言語
単純なπのモンテカルロ計算について、「gcc連合軍」で「Julia帝国軍」を速度的に撃破した件は次のリンク先のJupyter notebook一枚にまとめてあります。
nbviewer.jupyter.org/gist/genkuroki...
CでやればJuliaなんぞイチコロだと思って始めて泥沼にはまった記録。適切な連合軍形成が重要だった。
タグ: Julia言語
posted at 09:04:59
twitter.com/r9y9/status/95...
しかし、「Julia帝国軍」の単純コードを速度的に凌駕する試みを実際にやってみると結構勉強になることも事実だと思う。特に自力で書けないコードを他人に教えてもらったとき。
私の場合には「gcc連合軍」による「Julia帝国軍」の撃破は大変勉強になりました。
#Julia言語
タグ: Julia言語
posted at 08:55:43
3年に一回くらい順番が回ってきて、アウストラロピテクスだのを教えるたびに新たな化石発掘とかで状況変わってて、日常的にフォローしてる分野ではないからそれなりに大変なのである。
タグ:
posted at 08:38:04
専門外のことを教えざるを得ない状況になってるといえば、メンデルのマメがどうしたとかアウストラロピテクスとかやらなくてはいけない私にかなう人は日本にはそんなにいないような気もしないでもない。まあアメリカの人類学界隈では普通によくある話ではあるんだけども。
タグ:
posted at 08:35:30
「我が国のコアコンピタンスとしての先端技術イノベーションを加速するたに・・・」(うっ)(ブッ)(ぷぷっ)(クスクス)
「トップダウンで選択と集中をはかり、スピード感をもって改革をはかるのであります」(ゲラゲラ)(ギャハハ)(はぁーっ?)(頭悪すぎー)
タグ:
posted at 08:34:08
小学二年生の算数の問題に対して、なにアホなこと言ってんですか。 バカバカしい。
ちょっと頭冷やして考え直した方がいいですよ。 twitter.com/lucien0308/sta...
タグ:
posted at 07:28:45
教育国債・デメリットと検索すると山のように出て来る財務省のポチ達の発言。
大学の研究者はこのような財政再建ネタの嘘っぱちにこそ立ち向かうべきだ。憲法改正など必要ない。
高等教育無償化の財源に?「教育国債」にひそむ日本の問題点=久保田博幸 | マネーボイス www.mag2.com/p/money/34192
タグ:
posted at 06:43:07
非公開
タグ:
posted at xx:xx:xx
「かける数」とか「かけられる数」なんてものは、誰かが決めた規則に従って一意に決まるものではなく、同じ問題に対してすらも見方や考え方により変わるものなのだ、変えていいのだ、という事を教えてもらいたいもんだ。
twitter.com/lucien0308/sta...
タグ:
posted at 01:06:50
非公開
タグ:
posted at xx:xx:xx
またこんな事を言ってる人が。
小学校の算数でやる「かけ算の可換性」なんて、ちっとも難しくなんかない。
小学生でも 「見れば分かる」こと。
○ ○
○ ○
○ ○
○ ○ ○
○ ○ ○
幼稚園児でもこの二つが同じなんて事は「分かる」。 twitter.com/lucien0308/sta...
タグ:
posted at 01:00:10
ごまふあざらし(GomahuAzaras @MathSorcerer
@genkuroki サーバ用のPCでぶん回してみました.N=20000*5 にしてもへっちゃらです. pic.twitter.com/EBdFTy1zGs
タグ:
posted at 00:48:51
ちなみに、周期表上でお隣の水銀も、相対論効果やランタニド収縮によって6sが安定化している、かつ、水銀の場合は6sが閉殻ですので自由電子を放出しにくいんですね。水銀が常温で液体なのはこのためだと言われています。
タグ:
posted at 00:37:41
そんなわけで、金のイオン化エネルギーはかなり大きく、陽イオン化しにくいわけです。ちなみに6sが安定化しているということは電子親和力が大きいことを意味します。なので、金は陰イオン化したりするんですね実は。
タグ:
posted at 00:33:03
相対論効果により6sが安定化するということは、イオン化エネルギーの増大を意味します。また、金ほどの大きさの元素になると、原子核がかなり大きな正電荷を帯びますので、ランタニド収縮などを経て6s軌道が内側に貫入して、遮蔽の影響を小さくします。
タグ:
posted at 00:32:17
遮蔽による影響により他の軌道のエネルギーは上昇します。特に、d軌道やf軌道で顕著です。(d軌道やf軌道における相対論効果はs軌道やp軌道よりもはるかに小さいです)
かくして、金の5d軌道は遮蔽により不安定化し、6s軌道は相対論効果により安定化しますので、エネルギー的にかなり近い位置に来ます。
タグ:
posted at 00:31:37
すると、相対論効果によって1s軌道が収縮します。s軌道どうしは直交しますので、他のs軌道も収縮します。s軌道は原子核に近づきますので、エネルギーが低くなります。s軌道が原子核に近づくと、s軌道の電子が原子核と他の軌道の電子との相互作用を遮ります。これを遮蔽といいます。しゃへい。
タグ:
posted at 00:31:06
速度が光速に近づくと、質量が増加する…というのは相対性理論の話とかで聞いたことがあるでしょうか。運動している物体の質量は、静止質量をm₀としてm=m₀/√(1-v²/c²)で与えられます。これを相対論効果といいます。金では、1sの電子の質量は、約20%ほど大きくなります。でかい。
タグ:
posted at 00:30:33
次に、単純なボーアモデルでは、電子のエネルギーや運動の半径は、飛び飛びの値をとり、速度はv=(1/137)(Z/n)cで表されることが知られています。Zは原子番号、nは主量子数、cは光速です。金の場合、Z=79なので、1s軌道の電子は 大体、光速の60%くらいの速度で運動していることになります。やばみ。
タグ:
posted at 00:29:54
まず、金の電子配置は[Xe]4f¹⁴5d¹⁰6s¹ですね。これだけ見ると6sの電子が放出されて、わりと1価の陽イオンになりやすそうですね。が、そうは問屋が降ろさないんですね。
タグ:
posted at 00:29:17