新しいものを表示

番組見た人の感想ブログ記事見つけた><

ヒューマニエンス 第19回「涙」 | みゅう's Diary ameblo.jp/myu-g/entry-12671545

「“涙” 秘められた魔法のチカラ」 - ヒューマニエンス 40億年のたくらみ - NHK nhk.jp/p/ts/X4VK5R2LR1/episode

たしかこの番組で、感情の調整用の方の涙を流すのはどうやら人間だけっぽいって学者さんが言ってた気がする><(記憶があやふやすぎて全く自信がない)

orange さんがブースト

オレンジ方式のダメな所は、調べる為にリソースが大量投入されてしまう(今日も枝葉の実験ばっかりしてたね!><;)のと、メンタルへの負担がわりとすごくなる事かも><

たぶん、こういう風にその時点での最も妥当な判断を出来る限り下して、その仮説を改良しながら答えにたどり着こうって考え方のタイプって、MBTIをやったら高確率でINTPになりそう><
(メタな事に、これも調べるきっかけを作るための仮説!><;)

何らかの不確定な要素があった場合、例えばある要素がAであるかBであるかわからないみたいな場面であれば、判断を保留するのではなく。「Aであればあろうであろうし、Bであればこうであろう><」って条件分岐式で投機的実行のように複数のパターンを予想する><
その上でAであるかBであるかについても知りうる限り、調べられる限りの情報を調べ「その時点で得られた情報で確率が高いであろうと考えられるのはどちらか?><」って考えてその時点での判断を行う癖もつけてる><

今日やった事がまさにそうかも>< わりとどうでもいい部分の最適化について疑問を持ったので仮説を立ててコードを書いてみて実験し、もしかしたら比較したコードに無駄があったせいかもしれないと考えて予想を立ててさらに改良しまた比較する><
結果が出ても「別のアルゴリズムであれば違うのかもしれない>< ロジック回路のテクニックで応用できるものは無いか?><」って調べたり><

かなり前に大学の先生が講義してくれた「分からないこと」に対するスタンスが生活の中でとても効いてきている - Togetter togetter.com/li/2109712

これ、オレンジの発想のまるっきり反対だし、オレンジが多分野に詳しくなれたのはこれと正反対の発想で、答えを得る為に全力で調べて「なにか見逃している要素はないか?><」「自身の知識も全て活かせているか?><」って自分を追い込みながら仮説を立てて、その仮説が正しいのかさらに調べ続けて答え合わせをしていって、誤っていた場合「どうして判断を誤ったのか?><」「どういった要素を見逃していたのか?><」ってPDCAグルグル回しまくりで進めていってるからこそって言えるかも><

実験してどうでもいい部分の高速化遊んでたから、本来の目的のコードが全然進んでない・・・・><;

ていうか、0だったら0のままで0以外だったら全bit立てるって命令があったらいろいろ高速化に便利だと思うんだけど、そういうのある環境って無いのかな?><;

こういうレアケース(?)に限って言うと、回路が十分に高速であれば、現代のPC向けCPUでもコネクションマシンのアーキテクチャのコプロセッサ(というかなんと言うか)をくっつけて高速化に利用できるのかも?><;
(柔軟なロジック回路をプログラミングで作れるような環境(超頻繁に書き換えまくれる版超小規模PLDのような感じ)だし><)
・・・そんなことするよりもクロックちょっとあげる方が手っ取り早いわかる><;

これのほかにifを全く使わない条件分岐無しバージョンも書いたけどむしろ大幅に遅くなった><;
書いてて「これがデジタル回路だったら、小さい規模の回路で一瞬で結果が出るのに!><;」って思った><;

二分探索版を無駄な計算無くして並列実行されやすい気がするように(?)リファクタリングしたら、最適化コンパイルしても線形探索版とどっこいどっこい(測るたびに勝ったり負けたりする程度)まで速くなった><

二分探索のコード、if使ってる部分がどう考えてネックになりそうだから、そこを論理演算使うように書き換えたらまた追い越せるのかな?><;

命名が微妙におかしいのは実験コードだからで許してほしい><;

線形探索版のリファクタリング前後のコードはこんな感じ><

ていうか最適化コンパイルでは
↑速い
while使ってきれいに書いた線形探索
二分探索
forを使った無駄がある線形探索
↓遅い
なので、最適化で追い越したのはきれいに書いた版だけってことかも><

ちなみに、無駄にforで処理してたのをwhile使うようにきれいに書き換えたのは、最適化コンパイルをしてもちゃんと高速化されてる><
(そういう無駄な書き方してる部分のリファクタリングはちゃんとやった方がいいよだよね><)

"早すぎる最適化は諸悪の根源である。" ドナルド・クヌース

(オレンジ意訳「変に手動でコードを最適化すると、未来のCPUやコンパイラの最適化を邪魔して逆に遅くなったりするよ!」)
・・・・これそのまんまじゃん><

古いものを表示
:realtek:

思考の /dev/null