数値計算の精度

MIDAS の統計計算が正確かどうかを、ユーザー自身で確認する方法を説明します。

NIST Statistical Reference Datasets

NIST Statistical Reference Datasets (StRD) は米国国立標準技術研究所が統計ソフトウェアの精度検証用に公開しているベンチマークデータセットです。各データセットに 15 有効桁の認定値が付属しています。

NIST StRD には Univariate、Linear Regression、Nonlinear Regression、ANOVA、MCMC の 5 カテゴリがあります。このページでは MIDAS の機能に対応する Univariate と Linear Regression を扱います。Nonlinear Regression、ANOVA、MCMC に対応する機能は MIDAS にありません。

NIST データセットに限らず、R や Python で計算した結果がわかっているデータセットでも同じ方法で検証できます。

検証方法

UI で検証する

  1. 下の表から CSV ファイルをダウンロードする
  2. MIDAS で CSV を読み込む
  3. Linear Regression タブを開き、CSV の列名を見て応答変数 y と説明変数 x を設定する
  4. 表示された係数や R-squared を、下に掲載した NIST 認定値と比較する

精度の読み方

表の数値は Log Relative Error (LRE) です。MIDAS の計算値と NIST 認定値の相対誤差の常用対数の符号を反転した値で、一致する有効数字の桁数に相当します。

LRE=log10計算値認定値認定値\text{LRE} = -\log_{10} \frac{|\text{計算値} - \text{認定値}|}{|\text{認定値}|}

MIDAS を含むすべてのブラウザアプリケーションは IEEE 754 倍精度浮動小数点数で計算します。仮数部は 52 ビットで、LRE の理論上の上限は約 15.9 です。

基本統計量

MIDAS の Data Table パネルに表示される平均と標準偏差を NIST 認定値と比較しました。標準偏差は標本標準偏差で n1n - 1 で割ります。

データセットnLRE(平均)LRE(SD)
PiDigits50001514.9
Lottery21815.215.7
Lew2001515.2
Mavro501513.1
Michelso1001513.9
NumAcc131515
NumAcc210011514.2
NumAcc3100115.99.5
NumAcc4100115.78.3

各データセットの詳細は NIST StRD Univariate で公開されています。

線形回帰データセット

MIDAS で各データセットの回帰を実行し、得られた係数・標準誤差・R-squared・残差 SD・F 統計量を NIST 認定値と比較しました。表の数値は各カテゴリの LRE です。複数のパラメータがあるカテゴリでは最小値を示しています。

データセットnLRE(係数)LRE(SE)LRE(R²)LRE(残差SD)LRE(F)
Norris3612.313.815.513.911.5
Pontius4011.91316139.5
NoInt11114.715.415.715.313.9
NoInt2315.315.81615.514.2
Filip827.37.510.48.27.9
Longley161312.314.312.312
Wampler1219.5exact15exactexact
Wampler22112.6exact15exactexact
Wampler3219.513.61614.411
Wampler4217.813.515.914.815.7
Wampler5215.813.513.714.813.7

Wampler1 と Wampler2 はノイズなしのデータで、モデルがデータに完全に一致します。残差がすべて 0 のため SE・残差 SD・F も 0 になります。表中の "exact" は NIST 認定値と MIDAS の計算値がともに 0 であることを示します。

各データセットのモデル仕様・認定値・データの説明は NIST StRD Linear Regression で公開されています。

既知の制約

Filip: 10次多項式で、デザイン行列の条件数が約 10610^6 です。条件数が大きいほど丸め誤差の影響が大きくなります。係数の精度は 7 有効桁です。条件数の影響を軽減するには、直交多項式を用いてデザイン行列の条件数を下げる方法がありますが、MIDAS は現在この機能を備えていません。

Wampler5: ノイズが最も大きい 5次多項式データセットです。デザイン行列の条件数が大きく、係数の精度は 6 有効桁です。

データの出典

Filliben, J. and Possolo, A. (1999). Statistical Reference Datasets. NIST Standard Reference Database 140. National Institute of Standards and Technology. https://doi.org/10.18434/T43G6C