数値計算の研究をしている学生が"数値計算に潜むとんでもないリスク"について話してみる 何が起こってるか分からないが、これマジ? 誤差なんてものじゃない。
14079054 journal maiaの日記: 数値計算のとんでもないリスク 9 日記 by maia 2019年12月29日 12時07分 数値計算の研究をしている学生が"数値計算に潜むとんでもないリスク"について話してみる何が起こってるか分からないが、これマジ? 誤差なんてものじゃない。
途中まで読んで、その計算機特有のNaN的な何かかと思ってみた (スコア:2)
a/(2*b)が1.17260394005辺りなので。
Re:途中まで読んで、その計算機特有のNaN的な何かかと思ってみた (スコア:2)
a^4 * -b^6 と 5.5*b^8辺りの加算で桁落ちっぽいみたいな。
(ノ∀`)
その精度が必要かどうか、初めに考えるべき (スコア:1)
計算後の結果が1に近い数字だったり、数式の中の数字の桁数が一見小さく見えるからインパクトが大きいのでしょうね。
人間になじみのある数字だから、誤差が大きくなって見えてる。
でも、1例目は10^とか10^15の係数を持つ二次方程式の解を、1以下の精度で求めようとしてるから問題なのであって。
倍精度の浮動小数点の仮数は52bit=10進で15桁なので、精度上厳しいのは当然。
2例目も、10進5桁の数字の6乗と"-2"という数字が並んでる。
これを誤差の絶対値1以下で求めるなら、10^30オーダーを超える精度計算が必要なので、4倍精度でも厳しく8倍精度が必要なのは分かる。
数値計算の常道通り、まずは何桁の計算をしてる(計算したい)のかを把握すれば特に問題ないでしょう。
でもその前に、自分にその精度の答えが必要なのかどうか、振り返ってみることが先だと思う。
1例目は本当に10進15桁の精度で答えを求める必要があるのか?
2例目だって、自分に本当に10進30桁の精度の答えが必要なのかを考えてはどうか。
例えば、"-2"とか"a/2b"の項は、自分の計算にとって精度的に必要な物なんでしょうか?
省けるなら式も簡単になりますね。
その辺を先に考えるのが数値計算のやり方なんじゃないでしょうか。
もちろん必要な例だってあるから研究されてるわけですが、普及しないのはほとんどの人にとってその精度は必要ないからです。
数値計算の基本 (スコア:0)
精度落ちと桁落ちでしょ。
複数の数の和を求めるときには昇順にソートしてからやるとか、
あらかじめ数の大きさが予想つく場合は、それにあわせて対処するとか、
数値計算では基本です。
元ページの人は、ググれるようにキーワードを書いておいてくれたほうが、親切だと思う……
Re: (スコア:0)
普通に学部の授業でやったことだよね。
やってなくても入門書だしてくれば載ってる程度の基礎知識。
だから基礎知識としての座学は重要で、情報科学専攻なら全員やってるとみなせる
のに対し、そうでない人は知らない人もいる(ひょっとして大半?)なのだけどね。
動けば中味なんてどうでもいいな人には、その違いすらわからない。
この情報自体は広く知らしめるべきだけど (スコア:0)
いわゆるポジショントークですよね、自分に利する行為。
一般広告の脅し「健康に問題があるぞ」「流行においていかれるぞ」「嫌われるぞ」からの、「弊社が解決します」「この商品を使えば~」パターン。
精度が必要な業務システム開発従事者なら常識のことでも、一般人にはインパクトがあるであろう情報格差を上手く活用したな、という印象。
精度に関する情報自体は有益だから良いけど。
Re: (スコア:0)
数値計算の精度保証だからこの程度で済んでるけど、「大量のデータだから正規分布」的なノリでそもそものモデル化が間違ってる時のが多いよね
Re: (スコア:0)
いっぺん、「精度保証付き数値計算」でぐぐるか、Wikipedia の 該当項目 [wikipedia.org] を読んだ方が良い、もっともその頭で理解できるかわからないが。
Re: (スコア:0)
何に対して吠えているのかわからない文章を書くレベルのあなたの頭は、お察しって感じかな。