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年08月24日(月)

hctaw_srp @hctaw_srp

20年8月24日

プロット図もJuliaへシフトしちゃおうかなー、しちゃうかー

タグ:

posted at 00:14:29

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#超算数 nekojitaさんには滅茶苦茶共感した。私は同じ目にずっと会い続けている。

おバカさん達の特徴は、自分自身では決してデータを示さないこと。データを示せないなら自説を一時的に撤回すれば良さそうなものだが、こちらが示したデータは全無視したり、難癖をつけて来たりする。 twitter.com/nek0jita/statu...

タグ: 超算数

posted at 00:19:14

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#超算数 別のデータ

2005年の、全国小学校36校,小学生8268名での調査では小3でのかけ算の式(順序を見る)の正答率は23.8%で、小2では50.8%でした(2015年にはそれぞれ29.9%、62.8%)。

小2での順序しつけの効果は小3で大幅に消える。

大多数の子供はまともな大人と同じで順序を気にしない(笑)。 twitter.com/genkuroki/stat...

タグ: 超算数

posted at 00:28:16

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#超算数 別のデータ

現代のかけ算順序指導はかけ算導入時に「4この2つぶん」という言い方を使うことから始まるのですが、小3でその意味を正しく答えられた子は18.1%しかいないという調査がある。

子供に合わせて教える気が皆無の世界。 twitter.com/genkuroki/stat...

タグ: 超算数

posted at 00:31:49

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#超算数 かけ算順序指導はもうすぐ中学生になる小6でx,yのような文字を使うようになっても継続される。もうすぐ中学生の子に対してそういうことをやって、どういう「教育的効果」があるのやら。

「かけ算順序指導に教育効果がある」という言説は言い逃れをするためのごまかしに過ぎない。

タグ: 超算数

posted at 00:34:17

madfish @madfish19

20年8月24日

「4この2つぶん」この表現私の知能ではぴんとこない。つまり私は小学校三年生レベル。 twitter.com/genkuroki/stat...

タグ:

posted at 00:37:25

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#超算数

2011年版の啓林館の教科書の教師用指導書(学習指導要領と混同しないように!)には添付画像のように書いてある。

少なくとも2011年の啓林館には小6で文字xを使っていてもかけ算順序固定強制指導をする気が満々である。

2020年版の同様のデータを持っている人がいたら下さい。 twitter.com/genkuroki/stat... pic.twitter.com/Tjmt7H4uqD

タグ: 超算数

posted at 00:38:24

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#超算数 かけ算順序指導に関する歴史的資料はどれも「順序が逆だと誤りになるので、子供の誤りは訂正しなければいけない」という方針で一貫しており、間接的な教育的効果など全く語られていない。

「教育効果云々」は文句を言われたときの言い逃れの言葉に過ぎないという推測には十分な根拠がある。 twitter.com/genkuroki/stat...

タグ: 超算数

posted at 00:42:59

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#超算数 算数教育界が、子供の側の正しい考え方(例:かけ算順序はどうでも良いという正しい考え方)に合わせて教えるのではなく、100年以上遡れる算数教育界独自の非常識なスタイルで教えることを優先していて、それが社会的に通用してしまっているという事実以上に「ひどい話」は珍しいと思う。

タグ: 超算数

posted at 00:45:49

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#超算数 子供と常識の両方に合わせて教えるという安全牌的な方法で教えてくれれば良いだけの話なのですが、過去の歴史的な蓄積のせいで、実際にそういう流れが加速すると、社会的立場を失うと予想される社会的集団ができてしまっている。

そういう人達をどうにかしないとチョー算数問題は解決しない。

タグ: 超算数

posted at 00:48:27

非公開

タグ:

posted at xx:xx:xx

米津アン @Bayesian_ANN

20年8月24日

きょうはもうねむねむにゃんなので、あしたよみます😴

compneuro-julia.github.io

タグ:

posted at 01:38:50

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 現在のRCall.jlでは

github.com/JuliaInterop/R...

に書いてあるJupyter notebookでのsvgの表示の仕方に関する問題

github.com/jupyter/notebo...

を回避することに失敗しており、添付画像のように表示される場合がある。セルを移動すると表示がまともになることがある。解決法に続く pic.twitter.com/fELTKpFBtJ

タグ: Julia言語

posted at 01:42:24

非公開

タグ:

posted at xx:xx:xx

七誌 @7shi

20年8月24日

最近、シモーヌの本の新訳が発売されたので入手した。
ペラン神父による序文を読んだ。序文といっても50ページくらいあって長い!

神を待ちのぞむ (須賀敦子の本棚 池澤夏樹=監修) シモーヌ・ヴェイユ www.amazon.co.jp/dp/4309619983/

タグ:

posted at 01:45:57

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 その問題の再現は

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

で可能。

解決法は RCall.ijulia_displayfile を

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

のように上書きすること。

svgなら表示も綺麗だし、さくさくプロットされるし、ggplot2なので情報は多いし、普段使用でも十分にメリットがあると思いました。 pic.twitter.com/FefWj50hr6

タグ: Julia言語

posted at 01:46:50

米津アン @Bayesian_ANN

20年8月24日

リンク先のサイト、Jupyter Bookで作られているのですね。使いこなしてみたいかも。

タグ:

posted at 01:47:52

みと @nobuta05

20年8月24日

数式を含むasciidocファイルをxetexでpdf出力する [XSLT] on @Qiita qiita.com/nobuta05/items...

タグ:

posted at 01:53:27

右Shift右隣Fn派 @yano4O4

20年8月24日

JuliaのTab入力補完が新世界すぎる...

タグ:

posted at 01:54:10

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 RCall.jlを使ったggplot2によるプロットもpngとsvgでは質が大幅に違います。

私の方法

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

を使えばsvgの側を安全に使えると思われるので、これはでかいと思います。

#R言語 使いの人は Julia でのプロットで新たに学ぶことは非常に少ない。 pic.twitter.com/VgGJPF1Ts1

タグ: Julia言語 R言語

posted at 01:55:17

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 上の場合に限らず、Jupyterの機能による画像の表示は信用できない場合が多いという印象があります。

Jupyterの機能によってgif動画を表示させるとnbviewerで表示されなくなる。(pngではうまく行く)

自前でbase64encodeしてtext/htmlに埋め込むと色々安心な感じ。

タグ: Julia言語

posted at 01:58:25

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

20年8月24日

やっとレポートの採点が終わったー。でもまだ成績登録をしなくてはならないのだー

タグ:

posted at 01:59:51

hctaw_srp @hctaw_srp

20年8月24日

ザッとテスト書きして、Plots.jlがベストかなーと言うイメージ

タグ:

posted at 02:10:22

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#超算数 うちではチョー算数問題については

   学校でマルをもらう必要は皆無。
   学校でバツをもらってもうちではマルにする。

で通しました。

マルをもらおうとすることによって、自分ちの子が「間違っている先生の側に合わせることが当然だ」と思うようになって欲しくないからです。 twitter.com/sayasayaf/stat...

タグ: 超算数

posted at 02:41:07

hassiweb @hassiweb

20年8月24日

とりあえず扱うものがスパース行列だったのでスパース行列化したらだいぶ早くなった。結果的に逆行列計算がボトルネックになってしまった…。

これを見ると逆行列計算は MATLAB の方が最適化されていそう…。

github.com/juliamatlab/Ju...

タグ:

posted at 03:34:00

ロシュミット数 @B17T1071Z

20年8月24日

もしかして;
Juliaにはswitch文がない???

タグ:

posted at 03:44:08

池田 岳 @gakuikeda1109

20年8月24日

群論のニュアンスがつかめる,特に群作用のアイデアに触れられる線型代数の本といえば,依然として佐武一郎先生の裳華房の本が随一だな.

タグ:

posted at 05:36:22

脸只赚钱否则做自杀 @olmcumstridi

20年8月24日

matsueushi | Julia で Audio Fingerprinting を実装 - Shazam の仕組みを理解する matsueushi.github.io/posts/audiofin...

タグ:

posted at 08:59:56

the hash @yosuke_hash

20年8月24日

@shokuto Julia始めようと思ってるんですよねー。いかがっすか。

タグ:

posted at 09:35:15

Daiki Iikura @yuzu2018PT

20年8月24日

ポチった

1から始める Juliaプログラミング 進藤 裕之 www.amazon.co.jp/dp/433902905X/... @amazonJPより

タグ:

posted at 09:37:52

武内 修 @osamu_takeuchi

20年8月24日

マイクラは攻略Wikiで情報集め(自動フリガナ、自動翻訳も利用)、目的に応じた各種計算、スキンエディタで3Dお絵かき…いろいろ広がりますね。 twitter.com/genkuroki/stat...

タグ:

posted at 09:49:44

武内 修 @osamu_takeuchi

20年8月24日

うちでは別途タッチタイプゲームも楽しんでて、英小文字、ローマ字、さらには各種単位や記号の知識も増えてる>ココアの桃太郎たいぴんぐ→散歩するキーボード使い

「ゲームする前にこれ済ませちゃおう」でこつこつやらされてるうちに、いつの間にか夏休みの宿題終わってるとかの効果も(笑

タグ:

posted at 09:49:44

武内 修 @osamu_takeuchi

20年8月24日

「遊び」と認識できる「勉強」はみんながハッピーになれていい。

タグ:

posted at 09:49:45

the hash @yosuke_hash

20年8月24日

@shokuto 統計モデリングが第一で、Rやpythonと比べて計算が爆速らしいです。

タグ:

posted at 10:16:20

武内 修 @osamu_takeuchi

20年8月24日

ちょっと補足すると、「散歩するキーボード使い」はよくできたタッチタイピングゲームなのだけれど、敵の名前がなぜか単位や記号の名前になってる。「メートル」とか「セカンド」なんかが出てる間は「これは単位なんだよ」とどや顔できるけど、「ヘンリー」あたりで数秒固まることになる。

タグ:

posted at 10:22:59

武内 修 @osamu_takeuchi

20年8月24日

「ウェーバーは何の単位?」「磁場の強さを図る単位だよ」「あれ?テスラは何だったっけ?」「ぐぬぬ」

なんて事故も起きかねないので注意が必要です。

タグ:

posted at 10:23:00

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 Windows 8.1上のEdge, Firefox, Chromeでは

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

は添付画像のように表示されますが、iPad上のブラウザではそうなりませんでした。こういう不具合が結構困る。

自前でbase64encodeして、text/htmlで出力すれば、この不具合は回避できる。

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

タグ: Julia言語

posted at 10:50:25

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 RCall.jlまとめ

① R"""Sys.setenv(LANG = "en")""" でハング対策

② RCall.ijulia_setdevice(MIME("image/svg+xml")) でプロットをsvgできれいに表示可能。

しかし環境によって表示がおかしくなる。

③ その対策は RCall.ijulia_displayfile(m::MIME"image/svg+xml", f) で可能。

タグ: Julia言語

posted at 10:56:55

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 RCall.jlまとめ

nbviewer.jupyter.org/gist/genkuroki... の rplotsize(h, w) を使えば、プロットの表示の大きさを自由に変えられる。

⑤ ggplot2は

@ rlibrary ggplot2
rcall(:library, :ggplot2)

しておけばJulia内で便利に利用できる。

⑥ exact2x2::fisher.exact も同様にすれば使える。

タグ: Julia言語

posted at 11:03:35

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 続き

⑦ Rのコマンドを R"~" や R"""~""" で囲めば実行できる。

⑧ Rによる実行結果が格納された変数rをJulia版に変換するには rcopy(r) を使う。

⑨ Juliaの変数 x をRの変数 x に送るには @ rput x を実行し、逆を行うには @ rget x とする。

⑩ RユーザーにとってJuliaは便利。

タグ: Julia言語

posted at 11:08:16

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 訂正

❌ ③ その対策は RCall.ijulia_displayfile(m::MIME"image/svg+xml", f) で可能。

⭕️ ③ その対策は RCall.ijulia_displayfile(m::MIME"image/svg+xml", f) の上書きで可能。上書きの仕方は

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

に書いてある。

タグ: Julia言語

posted at 11:11:52

非公開

タグ:

posted at xx:xx:xx

よこえもん @yokoemon2112

20年8月24日

来月号の数セミ「ステイホームで楽しむ“実験”数学」という特集に記事を書きました。Julia を数学好きの皆さんに知ってもらおうと思い、丹念に書いたのでぜひご覧ください。なおタイトルは「部屋とパソコンと私」です(マジ)

はいタイトルにピンと来た人、あなたは30歳より上ですね(笑)

タグ:

posted at 11:54:08

ゆうがたさくはな @follow_against

20年8月24日

@yokoemon2112 寝言で「Julia」と呼んだら、うちの食事に気を付けてくださいね

タグ:

posted at 12:01:14

よこえもん @yokoemon2112

20年8月24日

@follow_against 大丈夫です、妻にも査読してもらってるので(笑)

タグ:

posted at 12:02:31

非公開

タグ:

posted at xx:xx:xx

非公開

タグ:

posted at xx:xx:xx

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 ぎょぎょぎょ。v1.6.0-DEVで単純なforループが遅くなっている場合を見付けた。

gist.github.com/genkuroki/2952... pic.twitter.com/thx3zLOnfc

タグ: Julia言語

posted at 13:02:19

非公開

タグ:

posted at xx:xx:xx

右Shift右隣Fn派 @yano4O4

20年8月24日

まだJulia慣れぬ

タグ:

posted at 13:33:46

かわいしのぶ @kuragetravolta

20年8月24日

先週公開された「回文劇場」

cheerforart.jp/detail/3541

「アートにエールを!」の公式ページで
再生回数が2000回を越えていました、

ありがとうございます〜 ( ´ ▽ ` )ノ

音楽はこのマシンで打ち込みました。 pic.twitter.com/uRcYPhdRp7

タグ:

posted at 14:58:10

非公開

タグ:

posted at xx:xx:xx

@sbuggames

20年8月24日

Our little spider game now has a title: 🕸️WEBBED🕸️
🕸️And a trailer!🕸️
🕸️And a Steam page!🕸️
store.steampowered.com/app/1390350/We...
🕸️Please Wishlist! 🕸️ pic.twitter.com/EplwHWUhcT

タグ:

posted at 15:36:59

yasuyuki@ @yasuyukima

20年8月24日

JuliaとPluto推しとして記事を書きました。|MIT発の高度な数値処理をプログラミングできるJuliaの最新情報を紹介 thinkit.co.jp/article/17749 via @thinkitcojp

タグ:

posted at 15:51:24

Floreat Gobshite @L_A_Scott_

20年8月24日

@genkuroki @Viral_B_Shah Here is the matlab/octave:
n=500; x = eig(randn(n,n));
scatter(real(x),imag(x),'filled');

easypeasy to dive into @JuliaLanguage for numerical analysis

タグ:

posted at 15:55:20

Massimo @Rainmaker1973

20年8月24日

A reconstruction of the Earth’s surface from 200 Million years ago to present day in jumps of 10 Million years. Red lines show the location of subduction zones, other plate boundaries in black, plate velocities are also shown ow.ly/2PIF30o3h4P pic.twitter.com/9bJhfIB3xK

タグ:

posted at 16:01:04

非公開

タグ:

posted at xx:xx:xx

黒木玄 Gen Kuroki @genkuroki

20年8月24日

@LqCfElr43NSAiab 学習指導要領には「乗数と被乗数の順序に関する約束が大切である」と明記されていない。

かけ算順序固定強制という非常識かつ非論理的かつ不合理かつ子供の考え方から掛け離れた有害な教え方を擁護したがる人達の多くが、このように平気でデマをとばす傾向があることは非常に興味深い。 #超算数 pic.twitter.com/6TkhWxD0sr

タグ: 超算数

posted at 16:33:34

黒木玄 Gen Kuroki @genkuroki

20年8月24日

@LqCfElr43NSAiab #超算数 ここ2011年頃からの観察では、親が「学校でマルをもらう必要はない。うちでマルにする」と言っているうちの子は被害者にならずに済む感じ。

真の被害者は、かけ算順序指導がまともだと信じたまま大人になって、学習指導要領に明記されているとデマをとばすようになった人達である。 twitter.com/lqcfelr43nsaia...

タグ: 超算数

posted at 16:37:29

黒木玄 Gen Kuroki @genkuroki

20年8月24日

@LqCfElr43NSAiab #超算数 かけ算順序固定強制という非常識かつ非論理的かつ不合理かつ普通の子供の考え方からも掛け離れた考え方がまともだと信じ続けているだけで、算数教育の被害者確定である。

問題なのは、自分が信じている馬鹿げた考え方を擁護するために、デマを拡散し始めて、被害者から加害者に転じること。

タグ: 超算数

posted at 16:41:22

カミケ @KKami1115

20年8月24日

MIT発の高度な数値処理をプログラミングできるJuliaの最新情報を紹介 | Think IT(シンクイット) thinkit.co.jp/article/17749

タグ:

posted at 16:56:25

非公開

タグ:

posted at xx:xx:xx

黒木玄 Gen Kuroki @genkuroki

20年8月24日

@LqCfElr43NSAiab #超算数 もう少し分かりやすく言おう。

バツをつけられても、周囲にまともな大人がいる子であれば「バツを付けた側が間違っている」と理解して、被害者にならずに済む。

しかし、マルをもらったせいでバカげた考え方を信じてしまう子は被害者になってしまう。マルをもらっている子の方が危ない。

タグ: 超算数

posted at 17:07:11

黒木玄 Gen Kuroki @genkuroki

20年8月24日

@LqCfElr43NSAiab #超算数 かけ算順序問題について詳しくなってしまった親であれば、自分ちの子がかけ算順序でバツをもらっても来ると、「自分ちの子はまだおかしな考え方に毒されていない」と安堵してしまうケースが結構あると思う。

タグ: 超算数

posted at 17:10:41

永井 @HNagai1108

20年8月24日

JuliaのGLM.jlではAIC出してくれないのかな?

タグ:

posted at 17:16:56

Yoshitaka Moriwaki @Ag_smith

20年8月24日

UT生協 1から始める Juliaプログラミング コロナ社 検索

お探しの商品は見つかりませんでした。
検索画面に戻る

ハーキレソ

タグ:

posted at 17:26:40

Yuki Nagai @cometscome_phys

20年8月24日

Juliaで球衝突で円周率を計算するのをやってみた。質量比が100^Nの球二つが完全弾性衝突し、壁と球に衝突した回数を数えて10^Nで割ると円周率N桁になる
www2.hamajima.co.jp/kyoto-math/pdf... pic.twitter.com/1fxX0ouzqx

タグ:

posted at 17:29:26

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 S式好きのそんなあなたのための

       Meta. show_sexpr

gist.github.com/genkuroki/8b33... pic.twitter.com/au7nDhVpMt

タグ: Julia言語

posted at 17:37:37

Yoshitaka Moriwaki @Ag_smith

20年8月24日

@bicycle1885 時期ずらして何回か見に行ってるんですけど全然入荷されませんよ???このままではJulia後進大学になってしまいます!!

タグ:

posted at 17:43:25

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

20年8月24日

@Ag_smith M○TLAB勢力の圧力がかかっているに違いありません!

タグ:

posted at 17:46:03

KatoK @__KatoK__

20年8月24日

juliaのswitch case無い問題macroで解決してたけど普通にMatch.jlなるものがあるのか知らんかった

タグ:

posted at 18:01:28

非公開

タグ:

posted at xx:xx:xx

非公開

タグ:

posted at xx:xx:xx

非公開

タグ:

posted at xx:xx:xx

永井 @HNagai1108

20年8月24日

devianceから計算するか

タグ:

posted at 18:04:42

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語

if x ≥ 0 x else -x end



x ≥ 0 ? begin x end : begin -x end

の「S式」は完全に同じ。 pic.twitter.com/5TFdaZGP7m

タグ: Julia言語

posted at 18:06:09

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 変数xの値をIntの5にしたければ

x = 5

でよい。型を明示的に書く必要は皆無。

函数の引数の型についても、Juliaの型について詳しくないと「引数の型を制限したせいで使い回しが効かない函数」ができがち。

函数の引数の型は書かなくても計算速度の劣化は起こらない。 twitter.com/t_yoshisauer/s...

タグ: Julia言語

posted at 18:36:17

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 Float64以外の任意の不動小数点数の引数でも使える函数を

function f(x::Float64) ~ end

と定義するのは不合理。

function f(x) ~ end

の方が勝る。

タグ: Julia言語

posted at 18:38:54

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 函数を引数とする函数を

apply(f::Function, x...) = f(x...)

と定義するのも失敗になる。Juliaではfunction-like objectとして任意の型のオブジェクトが函数の機能を持ち得るので

apply(f, x...) = f(x...)

と書く必要がある。

タグ: Julia言語

posted at 18:40:57

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 訂正:「不動」→「浮動」

成分の型が浮動小数点数型の2次元配列Aの函数を

function f(A::Array{T, 2}) where T<:AbstractFloat ~ end

と定義するのも多くの場合に失敗になる。Juliaには配列の型がものすごく沢山あるので、これだと使い回しし難い函数になる。続く

タグ: Julia言語

posted at 18:48:07

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 続き。その辺の事情に疎いなら

function f(A) ~ end

と書く方が勝る。

function f(A::AbstractFloat{T, 2}) where T<:AbstractFloat ~ end

のようにめんど臭く書いても、multiple dispatchに関係しないなら、得なことはほとんどない。

タグ: Julia言語

posted at 18:48:10

KatoK @__KatoK__

20年8月24日

あーjuliaで文字列扱う関数を
function f(str::String) end
って書いてSubString代入してエラー起こしちゃうのあるあるだよなぁ

タグ:

posted at 18:49:27

Sugano, DDS. @ロマン派の名 @dds_sugano

20年8月24日

しばらく私も勉強させて頂きます。 twitter.com/genkuroki/stat...

タグ:

posted at 18:51:14

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 以上の失敗は私自身が既にしている。引数の型を明示的に指定することよりも、引数の型が伝搬するように書く方がよい。例えば引数の同じ型とサイズの配列でできた一次変数tmpが欲しければ

function f(A)
tmp = similar(A)

end

他にもzero(x)やone(x)やeltype(A)もよく使う。

タグ: Julia言語

posted at 18:53:38

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語

nbviewer.jupyter.org/github/steveng...

にある添付画像の連分数を計算する函数における局所変数cfの作り方

cf::typeof(inv(z)) = z

が巧妙である。zがInt型のとき、inv(z)はFloat64型になる。zがSymPyの変数(Sym型になる)ならばinv(z)もSym型になる。

このようにJuliaでは型の伝搬が重要。 pic.twitter.com/xgK0OHWIRa

タグ: Julia言語

posted at 19:00:56

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 1つ前のツイートの添付画像の函数は cf の作り方が巧妙であるおかげで、数値計算と記号処理による数式表示の両方に使用できる。

連分数の函数は数式で表示させないと、正しく書けているか非自明。

Juliaでは数値計算と数式処理の両方に使える函数を速度的劣化無しに書ける。 pic.twitter.com/mjZFDHcXIQ

タグ: Julia言語

posted at 19:04:09

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語

function f(x::Float64) ~ end

のような書き方をしたいと感じる人は、数値計算と数式処理の両方に使える函数を書けるというJuliaの利点を利用できていない。

例外的な場合を除いた多くの場合に

function f(x) ~ end

とシンプルに書く方が勝る。ただし、型の伝搬をコードで記述する。

タグ: Julia言語

posted at 19:06:43

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 例外的に

function f(x::Float64) ~ end

と書くことが合理的なのは、Float64専用に最適化された函数を書く場合である。

タグ: Julia言語

posted at 19:08:58

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 函数の実行時にf(x)の引数xの具体的な型は確定している。

function f(x::Float64) ~ end

と書かずに

function f(x) ~ end

と書いていても、f(1.2)を実行するときに Julia は引数の型がFloat64であることを知っており、そこからの型推論に基いてネオティブコードにコンパイルする。

タグ: Julia言語

posted at 19:13:20

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 だから、「コンパイラに函数の引数の型を教えてあげる」という発想はJuliaではまったくのナンセンスであるということになる。

函数の引数の型をコンパイラが知っているときに、他にどのような条件があれば、高速なネイティブコードにコンパイルできるか?

という発想をすると良い。

タグ: Julia言語

posted at 19:18:35

lagénorhynque @lagenorhynque

20年8月24日

ElixirやJuliaなどの言語は"homoiconic"なのかという議論に思いを馳せていた。
Clojureを含むLisp系言語とはあり方は違うけど、近いものを感じるのは確かかも。

lisp - In what sense are languages like Elixir and Julia homoiconic? - Stack Overflow
stackoverflow.com/questions/3173...

タグ:

posted at 19:40:08

lagénorhynque @lagenorhynque

20年8月24日

特にElixirについては現にClojureの影響を受けている部分が見られるので、親近感を覚えるなぁ。

タグ:

posted at 19:42:12

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 ぎょぎょぎょ。

SymPy.jl の四則演算は型不安定ですね。

SymPy.:/(x::Sym, y::Sym)::Sym = x.__div__(y)

とかを定義してやる必要がある?

タグ: Julia言語

posted at 19:46:21

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 SymPy.jlの型不安定問題はおいておく。

function f(x)
広い型のxに通用するコード
end

fynction f(x::Float64)
Float64型のx専用のコード
end

のとき、

f(2) → 前者のf(x)が起動

f(2.0) → 後者のf(x::Float64)が起動

函数の引数の型はこう使われる。 twitter.com/genkuroki/stat...

タグ: Julia言語

posted at 20:02:15

Yuichi Ito @yuichi110

20年8月24日

VMware Fusion 12、個人使用を無料に変更 | マイナビニュース news.mynavi.jp/article/202008...
さらば、Virtual Box!!

タグ:

posted at 20:07:13

Shuhei Kadowaki @kdwkshh

20年8月24日

今度仕事でちょっとしたJulia書くつもりなので、TypeProfiler.jl使ってみようかな、ちゃんと使えて欲しいな、という気持ちである。

タグ:

posted at 20:42:30

Yuki Nagai @cometscome_phys

20年8月24日

function test(b::Int64)
x::Int64 = 4.000
println(typeof(x),"\t",typeof(b))
return x
end
test(3)
でxは整数にできる。なお、Juliaでは変数として型を定義するメリットは速度の面を考えたとしても特にないので、x = 4し、test(b)とした方が便利 twitter.com/T_Yoshisauer/s...

タグ:

posted at 20:54:28

Shuhei Kadowaki @kdwkshh

20年8月24日

Juliaでmultiple dispatchをコントロールする目的以外で関数の引数に型宣言書く必要ないぞ、いたずらにgenericsを失うだけだぞってことをJulia書き始めた人に伝えたい。

タグ:

posted at 21:02:00

Shuhei Kadowaki @kdwkshh

20年8月24日

型注釈つけるとその関数呼び出す人とかコード読む人が幸せになるかもしれないとかで型注釈付けるにしても、特殊な目的がない限り`::Int`は`::Integer`の方がいいし、`::String`は'::AbstractString`の方が良い。

タグ:

posted at 21:07:37

積分定数 @sekibunnteisuu

20年8月24日

「男の子を産めという物凄いプレッシャーも」河野太郎大臣の“女系天皇”論が話題に。皇位継承者から男子がいなくなる可能性にも言及 www.huffingtonpost.jp/entry/story_jp...

天皇制なんかなくしちまえよ。

タグ:

posted at 21:15:58

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

20年8月24日

こう、まだ慣れてないなって感じの力の入ったJuliaのコードってあるよね。

タグ:

posted at 21:23:29

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語

函数の中における型 T に関する

y::T = x



y = T(x)

では意味が違っていて、前者の書き方がどこかにあるとyの型がTに固定されますが、後者の書き方だとyの型がTに固定されません。

注意: y::T=xのような書き方は必須な場合以外には全くない方がよい。

twitter.com/T_Yoshisauer/s... pic.twitter.com/F6fRgGgW2w

タグ: Julia言語

posted at 21:24:49

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 型安定性について語ると、f(x)のxとしてFloat64を想定しているときに、xにFloat64の2がかけられるので、2.0を使って、

function f(x)

y = 2.0x

end

のように書きたくなるのですが、このように書くと失敗します。数式中では定められたルールによって2は~続く

タグ: Julia言語

posted at 21:29:23

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 続き~適当な型の2に自動的に変換されます。だから、xの型としてFloat64を想定していても、2.0xと書かずに、2xと書いて問題ありません。

function f(x)

y = 2.0x

end

とは書かずに

function f(x)

y = 2x

end

と書くべき。

タグ: Julia言語

posted at 21:29:24

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 他にも、xとしてFloat64を想定していて、xが4以下であることを判定するために

x ≤ 4.0

と書く必要はありません。

x ≤ 4

と書いても全く同じネイティブコードが生成されます。

数式中では、決められたルールで型をプロモートさせてくれます。

github.com/JuliaLang/juli...

タグ: Julia言語

posted at 22:10:21

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 両方やったことがある。

x::Intと書いたせいで後でメモリ節約のためにInt8を使おうとしたときに「そんな函数はありません」と言われた。

function f(x::Array~) ~ end と書いていたせいで、viewを引数に使おうとしたら「そんな函数ありません」と怒られた。

twitter.com/kdwkshh/status...

タグ: Julia言語

posted at 22:20:58

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 の型の階層構造を十分に理解する気がない場合には、函数の引数の型は「何も書かない」方が無難。

タグ: Julia言語

posted at 22:25:24

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 計算速度を気にする人は型の伝搬とメモリ割当の2つに気を付けるとよい。

型の伝搬可能性については、例えば、structの中身の型が外に見えるように書かないと遅くなる。

struct Foo
a
end

と書くとダメ。

struct Foo{A}
a::A
end

ならば、aの型Aが外から見えるようになる。

タグ: Julia言語

posted at 22:25:24

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語

「コンパイラに型を直接教える」という発想ではなくて、「函数の引数の具体的な型をコンパイラが知っていることを前提に、型推論がうまく行くように書く」という発想が基本。

型情報の伝搬を助けるために、struct Foo a end ではなく、struct Foo{A} a::A end のように書く。

タグ: Julia言語

posted at 22:30:05

Massimo @Rainmaker1973

20年8月24日

This short timelapse video shows a real life traffic shockwave, happening for no precise reason buff.ly/2li143q [more about this process: buff.ly/2tfWztB] pic.twitter.com/ATJRjDPGuH

タグ:

posted at 22:31:29

horiem @yellowshippo

20年8月24日

型を強制する Julia がほしい世界だった

タグ:

posted at 22:43:38

ごまふあざらし(GomahuAzaras @MathSorcerer

20年8月24日

もう潔く

function f(x::Any)
end

でいいのでは?

#Julia言語

タグ: Julia言語

posted at 22:51:34

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 以下のリンク先のリンク先でも、

   そんなあなたに Meta. show_sexpr !

の話をしていた。 twitter.com/lagenorhynque/...

タグ: Julia言語

posted at 22:52:21

ごまふあざらし(GomahuAzaras @MathSorcerer

20年8月24日

ネタで書いたつもりですが

function f(x)
end

と同じです.

タグ:

posted at 23:02:43

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 「ユーザーに型を書くことを強制せずにお気楽プログラミング」とならないので、型の強制は無理だとしても、

function g(x::Int16)
y::Int16 = 200
z::Int16 = 10000
return x + y + z
end

のように書けば、x,y,zの型がInt16に固定される。続く

twitter.com/yellowshippo/s...

タグ: Julia言語

posted at 23:29:38

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 しかし、Julia使いは g(x::Int16) と書かれると不快になって、

function g(x::T) where T<:Number
y::T = 200
z::T = 10000
return x + y + z
end

に書き直して、コンパイラが決める未確定の型 T と抽象型の Number だけしかなくなってしまう。

gist.github.com/genkuroki/8c37...

タグ: Julia言語

posted at 23:29:38

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語

function g(x::T) where T
return x + T(200) + T(10000)
end

のような書き方を知らない人が

function g(x)
T = typeof(x)
return x + T(200) + T(10000)
end

と書いても、g(Int16(3)) や g(3.0) は前者と後者で同じネイティブコードが実行されます。

タグ: Julia言語

posted at 23:34:09

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 Juliaの場合には、型よりも、型の組合せごとに定義されている適切な函数(メソッド)があるかどうかが重要。そういうメソッド群があれば動いてくれる。

そういうのを函数と引数の型の組合せを与えたとき、実行せずに判定してくれるツールがあるとちょっとありがたいかも。

タグ: Julia言語

posted at 23:38:39

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語

function f()
sleep(10)
g(3)
end

g(x::Int16) = Int16(2)*x



f()

を実行すると、g(3)でエラーになるのですが、10秒待たないといけない。実行する前に g(3) での no method matching g(::Int64) を認識できるとありがたい。

すでにそういうツールがあるならデモを見たい。 pic.twitter.com/spw3qmhvmN

タグ: Julia言語

posted at 23:46:33

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 これに類する悲惨なことが実は結構よくある。

色々計算したあげく、計算結果を保存する段階まで達したときに、その部分に1つ前のツイートに類するミスがあると最後に失敗する(涙)。

見直すと誤りはすぐに見付かるのですが、目で見なくてもコンピューターさんが見つけてくれると助かる。

タグ: Julia言語

posted at 23:48:39

黒木玄 Gen Kuroki @genkuroki

20年8月24日

#Julia言語 実行されることになると予想されるメソッドとその引数の型のタプルの組合せごとに、そういうメソッドがすでに定義されているかどうかを自動的に判定して教えてくれると滅茶苦茶助かる。

タグ: Julia言語

posted at 23:53:49

Shuhei Kadowaki @kdwkshh

20年8月24日

@genkuroki 今まさに作ってるTypeProfiler.jlがそのような問題意識で作ってます:
github.com/aviatesk/TypeP...

まだまだ落書き段階ですけど、ひとまずこの例に対してはうまくエラーを見つけてくれてますね :) pic.twitter.com/6yUWkNUaND

タグ:

posted at 23:55:02

Shuhei Kadowaki @kdwkshh

20年8月24日

@genkuroki 上の状態はwatchモードなのですが、`::Int16`を`::Integer`にしてsaveすると、こんな感じでprofilingをtriggerしてエラーが消えたーよって報告してくれます pic.twitter.com/Gsrh2HEBRK

タグ:

posted at 23:57:06

Lirimy @LirimyDh

20年8月24日

@genkuroki 判定するなら、型に対しては `hasmethod` 、オブジェクトに対しては `applicable` でいけそうです。マクロを組むと良さそうですが、既に誰かが作っているかも?
docs.julialang.org/en/v1/base/bas...

タグ:

posted at 23:57:11

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

User

» More...

Tag

» More...

Recent

Archive

» More...

タグの編集

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

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

送信中

送信に失敗しました

タグを編集しました