べき乗回帰とは
べき乗回帰は、一連のデータ点に \(y = A \cdot x^{B}\) というモデルを当てはめる手法です。この曲線は、ある量が別の量のべき乗に比例して変化する場面、たとえば生物のアロメトリー(相対成長)、学習曲線、各種のスケーリング則など、物理学・生物学・経済学のあらゆる分野で登場します。指数 \(B\) はスケーリングの度合いを、係数 \(A\) は全体の大きさ(スケール)を表します。
このツールの使い方
X値とY値を、カンマまたはスペース区切りのリストとして入力してください。値は入力順に対応づけられます(1番目のXと1番目のY、というように対応します)。本計算では自然対数を用いるため、すべての値は正の数(0より大きい値)でなければなりません。0以下の値を含む行は計算から除外されます。表示する有効桁数を選んだうえで、算出された係数と相関係数 \(r\) をご確認ください。
計算式の解説
ポイントは「線形化」にあります。\(y = A \cdot x^{B}\) の両辺の自然対数をとると \(\ln y = \ln A + B \cdot \ln x\) となり、変換した変数 \(t = \ln x\)、\(u = \ln y\) について直線の式になります。あとは通常の最小二乗法を適用します。すなわち、平均値、平方和 \(S_{xx}\)・\(S_{yy}\)、積和 \(S_{xy}\) を計算します。傾き \(B = S_{xy}/S_{xx}\) が指数にあたり、 $$ A = \exp\!\left( \operatorname{mean}(\ln y) - B \cdot \operatorname{mean}(\ln x) \right) $$ となります。相関係数 \(r = S_{xy}/\sqrt{S_{xx} \cdot S_{yy}}\) は、対数変換後の点がどれだけ直線上にそろっているかを示します。
計算例
データ (1,2), (2,5), (3,11), (4,21), (5,33)(\(n = 5\))の場合、対数の和から \(S_{xx} \approx 1.6155\)、\(S_{xy} \approx 2.8340\)、\(S_{yy} \approx 5.0410\) が得られます。これより $$ B = \frac{2.8340}{1.6155} \approx 1.7544 $$ $$ A = \exp(2.2483 - 1.7544 \cdot 0.9575) \approx 1.7655 $$ となります。相関係数は \(r \approx 0.9933\) で、非常に強い当てはまりを示しています。求めるモデルは \(y \approx 1.7655 \cdot x^{1.7544}\) です。
よくある質問
なぜすべての値が正でなければならないのですか? この手法では \(\ln(x)\) と \(\ln(y)\) を計算します。0や負の数の対数は定義されないため、0以下の点は計算に使用できません。
相関係数 \(r\) はどう読めばよいですか? \(|r|\) が 0.7 を超えると強い相関、0.4〜0.7 で中程度、0.2〜0.4 で弱い相関、0.2 未満ではほとんど相関がないと判断できます。
自然対数と常用対数(底10)のどちらを使うかで結果は変わりますか? いいえ。指数 \(B\) と相関係数 \(r\) はどちらを使っても同じになります。本ツールでは自然対数を用い、\(A\) も \(\exp()\) で一貫して計算しているため、標準的な参考値と一致します。