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 を見て下さい。
Favolog ホーム » @genkuroki » 2019年05月05日
並び順 : 新→古 | 古→新

2019年05月05日(日)

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#Julia言語 ごまふあざらしさんの説得力、すごすぎ。

twitter.com/mathsorcerer/s...

タグ: Julia言語

posted at 23:57:13

TaKu @takusansu

19年5月5日

@OokuboTact 布川和彦氏だと図形に関しては以下の文献がありました。
www.jstage.jst.go.jp/article/nasemj...

>是非、買ってください!(笑)

本はあまり増やしたくないのと、彼らの収入源にはなりたくはないかな(笑)

タグ:

posted at 23:55:42

うえだましん @VEDAMachine

19年5月5日

この段階で「逆順でも構いません」って教科書に、よくある章外コラムみたいな形でも、記載させる運動でもしないといけないんじゃないのかね?

と思ったわ…

タグ:

posted at 23:55:19

うえだましん @VEDAMachine

19年5月5日

コレな…いまだにイラッと来る問題だけど…
先日図書館で現行小2算数の教科書見て「あぁ…」と思ったよ…
徹底的に「単位料✕個数」の順番で出てくるのな…
そりゃ…他に何も書いてなくても…これだけが正しい順序だって思って不思議ではないわ… twitter.com/yamazaksv2/sta...

タグ:

posted at 23:53:41

tomo @tonagai

19年5月5日

円周がn個の格子点を通る円、n=5を描いてみよう。できたらn=7も。
sci.tea-nifty.com/blog/2016/05/n... pic.twitter.com/tNEAUTdieG

タグ:

posted at 23:31:46

OokuboTact 大久保中二病中年 @OokuboTact

19年5月5日

@takusansu > ここは、辻山洋介氏が執筆している部分ですかね。

布川和彦氏ですね

是非、買ってください!(笑)

タグ:

posted at 23:28:19

™ (blueskyに同アカウント名で避 @tmaehara

19年5月5日

実際に "time series" "machine learning" "evaluation" でググってみたら,最初に出てきた machinelearningmastery.com/backtest-machi... に「普通の train/test split するな」と明記されてた.

タグ:

posted at 23:27:23

TaKu @takusansu

19年5月5日

@OokuboTact 色々気になる内容のようですね。

【「長方形と正方形」を発達段階で説明したりもしています。】
ここは、辻山洋介氏が執筆している部分ですかね。
発達段階とある時点で、「正方形≠長方形」を容認しそうな感じがします。

タグ:

posted at 23:24:10

™ (blueskyに同アカウント名で避 @tmaehara

19年5月5日

時系列データの train/test に気をつけましょう,なんてのはさすがに常識レベルの話なので,「関係者がどうやればその知識に辿り着けたのか」に対しては「普通の教科書を読む」とか「"time series" "machine learning" "evaluation" でググる」でよい.

タグ:

posted at 23:22:57

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#数楽 積分定数さんの方法は、質点の質量と隣り合う質点を繋ぐバネのバネ定数が全部違っていても適用できます(私が勘違いしていなければ)。

そういう場合にも初期条件がぶら下げたときに釣り合いの状態ならば下端はすぐには動かない。

twitter.com/sekibunnteisuu...

タグ: 数楽

posted at 23:21:00

OokuboTact 大久保中二病中年 @OokuboTact

19年5月5日

@takusansu そうですね。
学芸図書版が絶版になったので、出したんだと思います。
今回出た『新版』は教師用指導書や指導要領・解説を活用を促すなど、かなり踏み込んでいます。
「長方形と正方形」を発達段階で説明したりもしています。

タグ:

posted at 22:49:57

大石雅寿 @mo0210

19年5月5日

文科省による放射能副読本は、その初版をH23年10月に、教師用解説資料も同時に公表している。児童・生徒だけではなく、地域の大人にも使える内容を目指していた。この時から「量の概念」について述べている。
www.mext.go.jp/b_menu/shuppan...

タグ:

posted at 22:48:47

TaKu @takusansu

19年5月5日

@OokuboTact @tsubu_02 新編 算数科教育研究 改訂版
www.toyokan.co.jp/book/b285864.h...
>本書は2010年に学芸図書より刊行された物です。

2017年03月に東洋館出版社からも出ていてややこしいですね。

タグ:

posted at 22:43:00

™ (blueskyに同アカウント名で避 @tmaehara

19年5月5日

このケースは「(テクニカルな意味で)何が問題だったか」はさすがに自明(というか超典型やらかし)だと思います. twitter.com/cm3/status/112...

タグ:

posted at 22:27:06

ら @odashi_t

19年5月5日

これはすばらしい(検証されて論文の誤りが明確になった)

タグ:

posted at 22:23:38

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#数楽 以上のようなやり方ではなく、落下させ始めてからの時間tに関する解のベキ級数展開を求めて、質点の個数が大きくなると、下端の質点の位置座標u_0(t)の低次の微係数が沢山消えることを積分定数さんは示しています。これも非常にクリアな議論↓

twitter.com/sekibunnteisuu...

タグ: 数楽

posted at 22:20:14

ごまふあざらし(GomahuAzaras @MathSorcerer

19年5月5日

いい意味でクローズされました。ちょっと嬉しい.

github.com/JuliaLang/juli...

タグ:

posted at 22:14:00

あさ @asa3ikuji

19年5月5日

配偶者控除や年金3号の制度によって甘い汁すすってるのは主婦側じゃないよ。

主婦は"扶養内で働く"ならこの時給(給料または報酬)でもいいかと割り切って安い賃金で働いてたりする。

その安い労働力を長いことアテにしてきた企業だってたくさんだし国の機関もそうでしょ。

タグ:

posted at 22:09:05

Fermat's Library @fermatslibrary

19年5月5日

The reason why the shape of a lot of pianos looks like an exponential is because for waves on a string, doubling length means reducing a music pitch by an octave (2x the frequency). pic.twitter.com/7zTy6NISQR

タグ:

posted at 21:53:01

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#数楽 まとめ:質点をバネで繋いだものの連続極限を取ると波動方程式が得られるのですが、連続極限を取る前の運動方程式の近似解を時間を離散化して求めるときに、時間差分Δtの大きさをm/(Δt)²=kと取ると、時間を離散化して得られる差分方程式のexact解として連続極限の波動方程式の一般解が取れる。

タグ: 数楽

posted at 21:45:00

Moet@おひるね課てきとう係 @moet_csf

19年5月5日

自分(政府)に都合のいい意見だけ取り上げて「働く女性がこう言ってるししかたないですねー」というのはあまりにひどいでしょう。

タグ:

posted at 21:41:52

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#数楽 くだんのぶら下げて安定したバネ(質点をバネで繋いだもの)を落とす問題では、落とした瞬間に上端のn番目の質点に生ずる衝撃の影響が下端の0番目の質点に及ぶまでには、近似的に

n/c = n√(m/k)

の時間が必要。それまで下端は近似的に動かない。m=M/n, k=nKのような状況を考えている。

タグ: 数楽

posted at 21:40:32

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#数楽 数値的に運動方程式(#)の近似解を求めるために、運動方程式の離散近似(##)を使えば、近似解を

u_j(t)=f(j-ct)+g(j+ct)

で作れる。この近似解において波が進む速さは

c=1/Δt=√(k/m)

で一定になる。この場合の速さcはj番目の質点へのショックが時間がtたつとj±ct番目に到達するという意味。

タグ: 数楽

posted at 21:40:31

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#数楽 運動方程式

(#) m d²u_j/dt²=k(u_{j-1} - 2u_j + u_{j+1}).

の左辺は

m(u_j(t-Δt)-2u_j(t)+u_j(t+Δt))/(Δt)²

と離散化でき、m/(Δt)²=kと仮定すると

(##) u_j(t-Δt)+u_j(t+Δt)=u_{j-1}(t)+u_{j+1}(t).

本質的に(**)と同じ。c=1/Δt=√(k/m)とおくと、

u_j(t)=f(j-ct)+g(j+ct)

がexact解。

タグ: 数楽

posted at 21:40:31

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#数楽 続き~、cΔt=Δxと仮定すると、

(**) u(t-Δt,x)+u(t+Δt,x)=u(t,x-Δx)+u(t,x+Δx).

これのexact解として、

u(t,x) = f(x-ct) + g(x+ct)

が取れるのですが、これはもとの波動方程式

(*) (1/c²)u_{tt} = u_{xx}

の一般解にもなっています。(**)は(*)のexactな差分化。

タグ: 数楽

posted at 21:40:30

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#数楽 質点がバネで繋がっている場合とその連続極限の間の関係については、時間も離散化すると議論がシンプルになるんですね。

波動方程式

(*) (1/c²)u_{tt} = u_{xx}



(u(t-Δt,x)-2u(t,x)+u(t+Δt,x))/(cΔt)²
=(u(t,x-Δx)-2u(t,x)+u(t,x+Δx))/(Δx)²

と離散化でき~続く

タグ: 数楽

posted at 21:40:28

Moet@おひるね課てきとう係 @moet_csf

19年5月5日

皆さんおっしゃってるけど、「働く女性の声」を聞くならまず待機児童解消とか保育士の待遇改善とかですよね…。私も「専業主婦の年金をカットしてほしい」なんて意見は周囲で聞いたことがないけど、仮にそういう声も少数ながらあるとしてもそれが「働く女性」が第一に望んでいることとはとても思えない

タグ:

posted at 21:39:32

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#数楽 情報をたどり易くするためのリンク

twitter.com/genkuroki/stat...

タグ: 数楽

posted at 20:54:13

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#数楽 情報をたどり易くするためのリンク

twitter.com/genkuroki/stat...

タグ: 数楽

posted at 20:53:22

向川まさひで(大和高田市議・日本共産党) @muka_jcptakada

19年5月5日

本来ならば、正当な理由があって払えなかった保険料は将来の給付時に減額すべきではありません。不公平を正すならこちらの方に改めるべきなのに、第三号の給付切り下げや保険料賦課というのは、「『公平』を口実に、社会保障を低劣な方に合わせる」という繰り返されてきた社会保障切り下げの方法です。

タグ:

posted at 20:11:59

Otepipi @Otepipipi

19年5月5日

はてなブログに投稿しました #はてなブログ, #Julia言語, #Julialang, #ネットワーク分析
Juliaでスケールフリー・ネットワークの生成と可視化 - システムとモデリング
otepipi.hatenablog.com/entry/2019/05/...

タグ: Julialang Julia言語 はてなブログ ネットワーク分析

posted at 19:31:17

黒木玄 Gen Kuroki @genkuroki

19年5月5日

@sekibunnteisuu #数楽 リンク先の指摘で本質的に正しいことを言っていることは一目瞭然です。

「一番上の質点以外に働くバネの力は重力と釣り合っている」という初期条件がどにように効いて来るかを明瞭に示しています。

twitter.com/genkuroki/stat...

タグ: 数楽

posted at 18:30:51

ブカザえもん @Julian75435

19年5月5日

このような軍隊や刑務所のまねごとが学校教育に必要だと思いますか?どんな練習をしているのか知っていますか?しかも公立高校で。保護者は自分の子どもが学校で何をやらされているか知っていますか?自分の子どもにこんなことをさせたいですか?生徒たちもこんなことやりたいわけがないでしょう。 pic.twitter.com/DLrSFMh0MT

タグ:

posted at 18:28:48

クリスカ @math_nakagawa

19年5月5日

出題のミスを指摘して、その反応を見るのが良いかと。返答次第では #超算数 #超数学 の先生の可能性もあります。

#peing #質問箱 peing.net/ja/qs/192682107

タグ: peing 質問箱 超数学 超算数

posted at 18:25:22

yasu kentaro @kentarouyasu

19年5月5日

#CHI2019 では、マグネットシートを使ってタッチディスプレイ用の触覚インタフェースをバリバリ作る手法を発表します。安く作れて、手持ちの着磁器でササッと触覚を書き換えられて、何度でも使えます。 pic.twitter.com/fgRAYT7t0y

タグ: CHI2019

posted at 17:17:50

ごまふあざらし(GomahuAzaras @MathSorcerer

19年5月5日

言語Aで作られたものを言語Bで呼ぶために、AとBのデータ・オブジェクトをやりとりするためのインターフェースって
Bによるラッパーでいいのかな?(ニホンゴワカラン)

タグ:

posted at 17:00:18

Eriko Amano @sabarya

19年5月5日

@cm3 コスト以外の課題もあるだろうけどここで触れるのはちょっと自粛。以前は「100%の精度で」というので炎上しましたからね。もちろんそういう課題を指摘していくのがURAのお役目なんでしょうけど…

タグ:

posted at 16:56:40

НIШIХАТА Осахiро @_Osahiro

19年5月5日

この二色刷りのパターン、昔は領収書や伝票の綴によく使われていて、事務用品の棚には必ず二山かそこらはあったと思うのだけど、そして私もこの綴じの伝票用紙綴を売った覚えはあるのだけど、この模様の名前がわからないことに気づいた。知ってる人いる? pic.twitter.com/OrvfSjaOuK

タグ:

posted at 16:53:37

モト@PPMMPP @29silicon

19年5月5日

専業主婦は年金減らすとか職があっても子供がいなけりゃ年金減らすとか、発想が緊縮志向だねえ。減らすペナルティじゃなく、増やすインセンティブ方向にすりゃいいのに。

働く女性の声を受け「無職の専業主婦」の年金半額案も検討される(マネーポストWEB) - Yahoo!ニュース headlines.yahoo.co.jp/article?a=2019...

タグ:

posted at 16:49:43

Haruhiko Okumura @h_okumura

19年5月5日

期間が重ならないようにして検証されたかたがおられた。やはりダメダメだった twitter.com/Seed57_cash/st...

タグ:

posted at 16:47:01

ktrst @ktrst

19年5月5日

温度予測精度97%論文の人ツイッターにいるけど目立つコメントは読んでるのかな

タグ:

posted at 16:29:08

積分定数 @sekibunnteisuu

19年5月5日

ある一定時間、下端が静止していることを手計算で示せるかな?と思ったけどむしろうなのであきらめる。

タグ:

posted at 16:21:32

積分定数 @sekibunnteisuu

19年5月5日

初期条件の位置として、有限事同様にに下端を0にすると、いろいろ計算して、αx^2となる。正し、0≦x≦L

これに(1+(∂^2/∂x^2)t^2/2!+(∂^4/∂x^4)t^4/4!+(∂^6/∂x^6)t^6/6!+・・・)を作用させると、αx^2+αt^2

どう考えてもおかしい。境界条件の処理が杜撰なのが原因だと思われる。

タグ:

posted at 16:20:42

ごまふあざらし(GomahuAzaras @MathSorcerer

19年5月5日

あと、PyCall経由で持ってきたオブジェクトはグローバルに置かずに関数化して取得するみたいなのをしておくと不要なセグフォを回避できる。

タグ:

posted at 16:14:25

積分定数 @sekibunnteisuu

19年5月5日

無限個ではうまくいかないね。

∂^2Φ/∂t^2=∂^2Φ/∂x^2 を考える。t=0のとき∂Φ/∂t=0とする。

Φ=(1+(∂^2/∂x^2)t^2/2!+(∂^4/∂x^4)t^4/4!+(∂^6/∂x^6)t^6/6!+・・・)f(x) が解になる。

タグ:

posted at 16:13:54

やねうら王 @yaneuraou

19年5月5日

対、白ビール秘密兵器!千日手で優勝大作戦開始!
Contempt=-200(千日手時スコア200) , SlowMover(序盤の思考時間減らす率) = 67。 pic.twitter.com/V1FOcZkv8U

タグ:

posted at 16:12:41

ごまふあざらし(GomahuAzaras @MathSorcerer

19年5月5日

ということで念願の #Julia言語 の野良パッケージGomah (ごまぁ) を作りました。上記の設計方針を真似れば大体のPythonラッパーは作れそうです。

github.com/terasakisatosh...

タグ: Julia言語

posted at 15:55:37

積分定数 @sekibunnteisuu

19年5月5日

@genkuroki どこかで間違っていそうで心配です。

タグ:

posted at 15:34:21

積分定数 @sekibunnteisuu

19年5月5日

どこかで間違っていないか心配。

次の宿題。物体の個数が無限大になったらどうなるか?これがそもそものオリジナルの問題。有限個のアナロジーで求めることが出来るのだろうか?

タグ:

posted at 15:33:57

積分定数 @sekibunnteisuu

19年5月5日

また前半にやったことから、結局、最下部の物体の位置f(t)は、2N次以下の項は0となっている。また奇数次の項は最初から0なので、2N+1次以下の項は0

Nは物体の個数-1であることに注意する。

そうすると、(物体の個数×2)次未満の項は0となることがわかる

タグ:

posted at 15:31:33

Yuki Kamitani @ykamit

19年5月5日

ノーベル賞受賞対象の研究とは直接関係はありません。
「ノーベル賞受賞者チームによる昨年のNature 論文(Article)」と言ったほうが曖昧さがないですね。

これ以外にも解析結果はあって、主張が無に帰する訳でないですが、他の解析結果はpredictiveじゃなく弱いです

タグ:

posted at 15:31:09

ごまふあざらし(GomahuAzaras @MathSorcerer

19年5月5日

__init__ での初期化が大事っぽい。

module Gomah

using PyCall

export pymod, customfunc

const pymod = PyNULL()

function __init__()
copy!(pymod, pyimport("pythonmodule"))
end

function customfunc()
# do something
end

end

タグ:

posted at 15:25:40

積分定数 @sekibunnteisuu

19年5月5日

u(t)=(E+At^2/2!+A^2*t^4/4!+・・・)*【(0,1,3,・・・,N(N+1)/2)の転置、つまり縦ベクトルにしたもの】

ここで最下部の物体(ベクトルで見ると最上部の成分)の位置を見てみる。
2次の項は1/2*t^2 これは重心系で見てのもの。重心は-1/2*t^2となっているから、
静止系から見るとキャンセルする。

タグ:

posted at 15:23:39

Yuki Kamitani @ykamit

19年5月5日

神経科学の場合は、脳計測をしながらリアルタイムに予測を出力する状況(ロボットを動かすとか)や眼の前の患者さんを診断する状況を想定するとよいでしょう。そのときに足りない情報があるとすると、意味のある評価ができていない twitter.com/sammy_suyama/s...

タグ:

posted at 15:19:34

積分定数 @sekibunnteisuu

19年5月5日

次にt=0でのuを求める。

最下部の物体の座標を0とする。そうすると、それぞれのバネの伸びは、1,2,3,・・・と上に行くほど、大きくなっている。

言い忘れたが、バネの自然長は0としておく。

つまり、

0
1
2



N

となっている。

タグ:

posted at 15:15:04

積分定数 @sekibunnteisuu

19年5月5日

以下、質量もバネ係数も重力加速度も1とおく。

u''=Au  u'(0)=0  この微分方程式の解を求めることになる。

これは、あれこれやると

u=(E+At^2/2!+A^2*t^4/4!+・・・)u(0)

となることがわかる。

実際、計算すれば条件を満たすことがわかる。

タグ:

posted at 15:12:18

積分定数 @sekibunnteisuu

19年5月5日

各物体の座標を縦に並べたN+1次元ベクトルと考える。ややこしいけど、最下部の物体の座標を最上部の成分と定義する。位置の初期値は後で入れるとして、取りあえず、初速度はどれも0

タグ:

posted at 15:03:14

積分定数 @sekibunnteisuu

19年5月5日

次に、N+1個の物体をバネで連結させたものを落下させる場合の運動方程式を立てる。重心系で考えることにするので、まずは重力の影響を考慮しないでおく。通常のy座標同様、上方向をプラスとする。

タグ:

posted at 15:02:08

ごまふあざらし(GomahuAzaras @MathSorcerer

19年5月5日

PythonライブラリをJuliaでラップするリポジトリを見ると
using PyCall
pyobj = PyNULL()

タグ:

posted at 14:57:51

積分定数 @sekibunnteisuu

19年5月5日

これに更にAを作用させて(A^3)uを求めると

0
0
0



0




(※部分は仮説の立証には関係ないで具体的にともめる必要はない)

これを繰り返すことで、2以上N以下の整数nに対して、(A^n)uの第一成分は0であることがわかる。

タグ:

posted at 14:55:46

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#数楽 おお!それには気付かなかった。

twitter.com/sekibunnteisuu...

タグ: 数楽

posted at 14:49:21

積分定数 @sekibunnteisuu

19年5月5日

Auは

1
1
1



1
1
N

となる。

(A^2)uは

0
0
0



0



という具合になる。

タグ:

posted at 14:46:31

積分定数 @sekibunnteisuu

19年5月5日

以下のようなN+1次縦ベクトルをuとおく

0
1
3
6


N(N+1)/2

タグ:

posted at 14:43:06

積分定数 @sekibunnteisuu

19年5月5日

以下のようなN+1次正方行列をAとする

(-1,1,0,・・・・・0)
(1,-2,1,0,0,・・・,0)
(0,1,-2,1,0,・・・,0)
(0,0,1,-2,1,0,・・,0)
   ・
   ・
   ・
(0,0,・・・0,1,-2,1)
(0,0,・・・・0,1,-1)

タグ:

posted at 14:41:52

積分定数 @sekibunnteisuu

19年5月5日

同じ質量の物体を同じバネ係数を持つバネで連結して、落下させると、一番下の物体の動きはどうなるか?という問題

仮説 一番下の物体の位置を、時刻tの関数f(t)として、この関数f(t)のテイラー展開は、偶数次数の項しかなく、連結する物体の数が多いと低い次数の項は0となる。(f(t)=0としておく)

タグ:

posted at 14:31:05

積分定数 @sekibunnteisuu

19年5月5日

連休中の宿題、一つ解決したような気がする。

↓に関してある仮説を立てたが、それが成り立ちそうだ。
twitter.com/sekibunnteisuu...

タグ:

posted at 14:25:04

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#統計 もう一度、ポイントについて書いておく。

a年~b年のデータからb+1年からb+L年までの何か(例えば平均気温)を推定できたと言うためには、推定の過程でb+1年以降のデータ(の一部)を利用してはいけません。それはカンニング。

常識的に当たり前の話。

件の論文は完全にアウト。

タグ: 統計

posted at 13:33:43

ごまふあざらし(GomahuAzaras @MathSorcerer

19年5月5日

@antimon2 そうなんですよね・・・。一瞬Julia本体の仕様なのかと勘違いしました。
PkgTemplatesの作者は良かれと思ってやっているのかもしれませんが、内部構造眺めてみます。

タグ:

posted at 11:28:26

あんちもん2 @antimon2

19年5月5日

@MathSorcerer #Julia言語
PkgTemplates.jl少し試したけど余計なことしてくれるの多いですよね、生成した(開発中の)パッケージをデフォルト環境に勝手にaddしたり(何のための仮想環境)、registratorできたからもういらなくなったREQUIREの自動生成を抑制できない&初期コミットに含まれちゃう(これはprの機運)

タグ: Julia言語

posted at 11:19:41

ごまふあざらし(GomahuAzaras @MathSorcerer

19年5月5日

なーんだ

time マクロ以外に timed というマクロがあってソレで時間やアロケーションメモリの情報を変数に格納できるのか

docs.julialang.org/en/v1/base/bas...

タグ:

posted at 10:07:23

ごまふあざらし(GomahuAzaras @MathSorcerer

19年5月5日

なるほど??

#Julia言語

~/.julia/dev/

以下で自作パッケージ MySample でやってますが、

pkg> activate .

の作業が不要で

pkg> test MySample

でテストも走らせることができるのか。

なるほど??

タグ: Julia言語

posted at 09:49:39

ごまふあざらし(GomahuAzaras @MathSorcerer

19年5月5日

#Julia言語

便利な機能ではありますが、色々自動化されて生成されてしまい何やってるのかわからないと思うので

julialang.github.io/Pkg.jl/v1/crea...

の前後を一回読むと良いと思います。雰囲気はつかめるはず。

タグ: Julia言語

posted at 09:36:35

ごまふあざらし(GomahuAzaras @MathSorcerer

19年5月5日

日本語で書かれた PkgTemplates.jl の手引きは下記のリンク、およびリンク先の紹介リンクも参考になります。

qiita.com/cometscome_phy...

タグ:

posted at 09:36:34

ごまふあざらし(GomahuAzaras @MathSorcerer

19年5月5日

#Julia言語

pkg> rm Gomah

で回避するか保存場所を デフォルトの ~/.julia/dev に保存させるようにして
そこで運用ればよいのだろうか?

タグ: Julia言語

posted at 09:36:34

ごまふあざらし(GomahuAzaras @MathSorcerer

19年5月5日

#Julia言語

PkgTemplates.jl で生成された雛形便利なんだけれど、
保存したパスをJuliaが記憶してしまい、生成フォルダの場所Gomahを移動したりすると別のパッケージKyuを生成するときにGomahがないよって怒られる。

github.com/invenia/PkgTem...

(続く)

タグ: Julia言語

posted at 09:36:34

Masahiro Hotta @hottaqu

19年5月5日

ワイスコップの”It doesn't matter what we cover in a class, it matters what you discover”は、チョムスキーからの引用らしい。

タグ:

posted at 07:13:29

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#Julia言語 スクショ

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

2枚目のスクショを見ればわかるように、view を Foo で覆うと 166ns → 233ns の速度的劣化が起こっている。 pic.twitter.com/PxbauwFZZq

タグ: Julia言語

posted at 03:45:48

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#Julia言語 こちらの Foo と f! であれば、@ code_warntype f!(x) で赤字の警告が出ない。

これでも view の上に Foo をかぶせると速度的な劣化が起こるのですが、その割合は小さくなりました。詳しくは以下のリンク先を参照。私は速度的な劣化が気になるので使わない。

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

タグ: Julia言語

posted at 03:40:13

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#Julia言語

struct Foo{T<:AbstractArray{S,1} where S}
a::T
end

function f!(x::Foo)
@. x.a = x.a^2
end

@ show x = Foo(collect(1:5))
→x = Foo(collect(1:5)) = Foo{Array{Int64,1}}([1, 2, 3, 4, 5])

f!(x)
x
→Foo{Array{Int64,1}}([1, 4, 9, 16, 25])

続く

タグ: Julia言語

posted at 03:37:57

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#Julia言語 ええと、ごめんなさい。

struct Foo
a::AbstractArray{T,1}
end

は良くない書き方です。内容の抽象型指定はまずい。

真似しないで下さい。

タグ: Julia言語

posted at 03:24:12

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#Julia言語 @ code_warntype f!(x) では AbstractArray を使ったことが原因で赤字の警告が出まくるのと、@ view(x.a[2:3]) をさらに Foo で囲むことが悪さをしないかどうか心配。

添付画像を見ればわかるように N=10 の場合にはかなり遅くなってしまう。
(Nが巨大な場合は速度的劣化はない。) pic.twitter.com/FJlql0NEXn

タグ: Julia言語

posted at 03:16:25

横田洋人 @attoi

19年5月5日

@genkuroki @eduofMath_ya @MathEdr 数学って、教えられた作業手順を覚えて実行するだけの教科になってしまってるんだね。こういうの、かけ算順序指導ぐらいからはじまってるのかな。

タグ:

posted at 03:13:58

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#Julia言語 FooとPooの違いはAbstractArrayとArrayの違い。

@ view(x.a[2:3]) はArray型ではなく、SubArray型になるので、中身の型が AbstractArray の Foo でなければダメ。

以上の方法で速度的な劣化の有無については知らない。

速度的劣化があるかもしれないのでテストしてから使って下さい。

タグ: Julia言語

posted at 02:56:44

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#Julia言語 続き~(以下の @ の後の空白は除く)

x = Poo([1,2,3,4])
h!(Poo(@ view(x.a[2:3])))

MethodError: no method matching Poo(::SubArray{Int64,1,Array{Int64,1},Tuple{UnitRange{Int64}},true})
Closest candidates are:
Poo(!Matched::Array{T,1}) where T at ~

続く

タグ: Julia言語

posted at 02:52:59

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#Julia言語 型Fooを以下のPooで置き換えると失敗する。

struct Poo{T}
a::Array{T,1}
end

function h!(x::Poo)
@. x.a = x.a^2
end

x = Poo([1,2,3,4])
h!(x)
x

Poo{Int64}([1, 4, 9, 16])

ここまではうまく行っているが~続く

タグ: Julia言語

posted at 02:51:17

春 @sunbluesome

19年5月5日

@genkuroki また、型を渡した関数の中で、さらに別の関数に渡すということもしています。
合っているかわからないですが、以下のような感じです。

struct Foo{T}
a::AbstractArray{T,1}
end

function g!(x::Foo)
@. x.a = x.a^2
end

function f!(x::Foo)
g!(x)
return x
end

タグ:

posted at 02:48:18

春 @sunbluesome

19年5月5日

@genkuroki いつもすみません。やりたいことはまさにそれです。

コードが長いので載せられないのですが、「ゼロから作るdeep learning」ch05の2層ニューラルネットを実装したいだけなんです。
github.com/oreilly-japan/...
勾配の計算はできているのですが、渡した型の値が更新されていない状況です。続く...

タグ:

posted at 02:42:55

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#Julia言語 上の方の f! 函数では

x = Foo([1,2,3,4])
@ views f!(Foo(x.a[2:3]))
x

Foo{Int64}([1, 4, 9, 4])

とか

x = Foo([1,2,3,4])
f!(Foo(@ view(x.a[2:3])))
x

Foo{Int64}([1, 4, 9, 4])

も可能。

以上において @ の後の空白は除く。

タグ: Julia言語

posted at 02:40:22

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#Julia言語 (mutable) struct の中身の型宣言は具体型でしっかりやっておかないと計算速度は激遅になることがあるので注意。

上ではf!の方がg!より速いはず。in-placeで計算しているので。大きめの配列に何度もアクセスするコードを書く場合には、無駄にメモリを確保しないように書かないと遅くなる。

タグ: Julia言語

posted at 02:36:36

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#Julia言語 コードが見えないのがいつもつらい。

タグ: Julia言語

posted at 02:33:04

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#Julia言語

mutable struct Bar{T}
a::AbstractArray{T,1}
end

function g!(x::Bar)
x.a = x.a .^ 2
end

x = Bar([1,2,3,4])
g!(x)
x

Bar{Int64}([1, 4, 9, 16])

タグ: Julia言語

posted at 02:33:03

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#Julia言語 コードが見えなのでどういうことなのかわからないのですが、

struct Foo{T}
a::AbstractArray{T,1}
end

function f!(x::Foo)
@. x.a = x.a^2
end

x = Foo([1,2,3,4])
f!(x)
x

Foo{Int64}([1,4,9,16])

のようなことをしたいのかな?

twitter.com/sunbluesome/st...

タグ: Julia言語

posted at 02:33:03

春 @sunbluesome

19年5月5日

実装のアルゴリズム自体に間違いはなさそう。後はこの自前型参照渡し問題が解決できればうまく行きそう。

タグ:

posted at 02:21:02

春 @sunbluesome

19年5月5日

mutable structで定義した型が参照渡しできてなかった。でもどうしろと...
#Julia言語

タグ: Julia言語

posted at 02:19:38

黒木玄 Gen Kuroki @genkuroki

19年5月5日

さすがにコラだろうと思ったが、これも本当だった。

twitter.com/s_dual/status/...

タグ:

posted at 02:08:57

黒木玄 Gen Kuroki @genkuroki

19年5月5日

自分でも確認した。本当だった。

twitter.com/tdualdir/statu...

タグ:

posted at 02:07:14

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#Julia言語 v0.6.4 → v1.1.0 で rand(1:100) が3倍高速化されているし!

タグ: Julia言語

posted at 02:02:17

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#Julia言語 v0.6.4では rand(1:100) よりも rand(UnitRange{Int32}(1:100)) の方が速かったのですが、v1.1.0では違いが無くなっていて、しかも全体的にかなりスピードアップしています。整数の擬似乱数の生成の仕方がかなり最適化されている感じ。

こういうことなら色々納得できる感じです。 pic.twitter.com/ehKnhFhIcf

タグ: Julia言語

posted at 01:55:26

WARE_bluefield @WARE_bluefield

19年5月5日

深夜に笑い死にしそうだ…。誰が書いてるんだ?
『MMT界隈の政局談義』
note.mu/mmt_kosotsu/n/...

タグ:

posted at 01:36:20

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#Julia言語 のデフォルトのGLOBAL_RNGはdSFMTで直接的に浮動小数点数の擬似乱数を生成します。それを使って整数の乱数を作るにはちょっとした処理が必要。多分、その部分に変更があったのだと思います。だから、浮動小数点数の乱数は同じ値のままだが、整数の乱数は違う値になる。

タグ: Julia言語

posted at 01:28:28

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#Julia言語 そもそも GLOABL_RNG の構造がv0.6.4とv1.1.0では違っていますね。それ以外にも v0.6.4 では rand(BigFloat) とできないのですが、v1.1.0 ではできます。randまわりが相当にバージョンアップされている感じ。

v0.6.4とv1.1.0では同じシード値でrand(UInt64)が違う値になります。 pic.twitter.com/xKoSFdqrIF

タグ: Julia言語

posted at 01:27:03

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#Julia言語 先ほどのは削除。シード値65537でもrand(1:100)の値のみが違った。

VERSION = v"0.6.4"
seed = 65537 = 65537
rand() = 0.9859561006112958
rand(1:100) = 96

VERSION = v"1.1.0"
seed = 65537 = 65537
rand() = 0.9859561006112958
rand(1:100) = 92

タグ: Julia言語

posted at 00:37:30

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#Julia言語 あれ?同じになったのは偶然か?

seed値 2019 だと

VERSION = v"0.6.4"
seed = 2019 = 2019
rand() = 0.26619771893822386
rand(1:100) = 74

VERSION = v"1.1.0"
seed = 2019 = 2019
rand() = 0.26619771893822386
rand(1:100) = 5

rand(1:100)の値が違う!

twitter.com/cometscome_phy...

タグ: Julia言語

posted at 00:18:54

黒木玄 Gen Kuroki @genkuroki

19年5月5日

#Julia言語 Windows環境で試してみましたが、同じになりました。

srand(12345), seed!(12345)で試した。

v0.6.4では

VERSION = v"0.6.4"
rand() = 0.5627138851056968
rand(1:100) = 13

v1.1.0では

VERSION = v"1.1.0"
rand() = 0.5627138851056968
rand(1:100) = 13

twitter.com/cometscome_phy...

タグ: Julia言語

posted at 00:15:25

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

User

» More...

Tag

» More...

Recent

Archive

» More...

タグの編集

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

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

送信中

送信に失敗しました

タグを編集しました