廿TT

譬如水怙牛過窓櫺 頭角四蹄都過了 因甚麼尾巴過不得

指数近似、対数近似曲線の導出と近似曲線の選び方

導入

実務でデータの分析をやっている方、企業のマーケティングや Web 解析担当者の多くは R などの統計解析に特化したソフトウェアでなく、エクセルを使うことが多いだろう。

この記事はそういう方に向けて、「統計モデル」というのがどういうものかを伝えたいと思って書いた
……んだけど、たぶんわかりにくい文章になってしまった。

といっても、特に数学的に高度な議論をしているわけではない。

その「わかりにくさ」はたぶん、ぼくの考え方(大げさにいうと思想)に由来する。

でも「こういう考え方もあるんだなー」くらいは感じて頂けると幸い。

エクセルの指数近似と対数近似

マイクロソフトオフィスの公式ヘルプ、データに最適な近似曲線を選択する - Office サポート では、

  • 「指数近似曲線は、データ値の増加または減少の割合がしだいに大きくなる場合に最適な曲線です。」
  • 「対数近似曲線は、データの変化率が急速に増加または減少した後、横ばい状態になる場合に適しています。」

という説明がされている。

この意味は、微分方程式を用いて指数近似曲線、対数近似曲線の式を導出してやるとわかりやすい。

ここで扱う微分方程式は、高校数学の範囲で解ける。


指数近似

指数近似曲線は微分方程式

\displaystyle y'(x)= ky(x) \tag{1}

の解である。k は定数。

微分 y'(x) というのは変化率(の極限)なので、この式を日本語に訳すと「y の変化率は y の量に比例する」ということである。

  • k が正の値をとるとき、データ値=右辺 y(x) の増加に比例して、変化率が上昇する。
  • k が負の値をとるとき、データ値=右辺 y(x) の増加に比例して、変化率が減少する。

すなわち、「指数近似曲線は、データ値の増加または減少の割合がしだいに大きくなる場合に最適な曲線です。」ということになる。

さてこの方程式は高校数学の知識があれば解ける。

(1) 式の両辺を y(x) で割ると、

\displaystyle \frac{y'(x)}{y(x)}= k

両辺を積分すると、

\displaystyle \log x= kx+C

ここで C は積分定数
※使った公式は合成関数の微分\displaystyle\left( \log g(x) \right)' = \frac{g'(x)}{g(x)}

指数関数の形にすると、

\displaystyle e^x= e^{kx+C}

ここで、

\displaystyle e^{kx+C} =e^{kx}e^C

だけど積分定数 C は任意なので、

\displaystyle e^C = C

とあらためて置いても構わない。

よって微分方程式

\displaystyle y'(x)= ky(x)

の解は、

\displaystyle  y(x)= Ce^{kx}

である。

指数近似曲線が導かれた。

対数近似

対数近似曲線は微分方程式

\displaystyle \frac {y'(t)}{x'(t)}= k/x(t)  \tag{2}

の解である。k は定数。

この式の右辺は反比例だ。

f:id:abrahamcow:20141219183828j:plain

説明変数 x の変化量が同じならば、目的変数 y の変化量は x が大きいほど減少する。

これは、
「対数近似曲線は、データの変化率が急速に増加または減少した後、横ばい状態になる場合に適しています。」
ということに他ならない。

さて、(2) 式を解く。両辺に x'(t) をかけて、

 \displaystyle  y'(t)= k\frac{x'(t)}{x(t)}

両辺を積分し、

 \displaystyle y(t) = k \log(x(t))+C

ここで C積分定数

左辺が y(t) になるのはあたりまえとして、右辺は  \log(x(t))微分(対数微分)が  x'(t)/x(t) になることによる。

媒介変数の t を省略し、

 \displaystyle y = k \log(x)+C

対数近似曲線が導かれた。

指数近似、対数近似の使用例

指数近似

指数近似に関してはすごくたくさんの応用がある。

その代表例はニュートンの冷却の法則(ニュートンの冷却の法則を大雑把に理解した - 廿TT)だ。

微分方程式で数学モデルを作ろう』では、ニュートンの冷却の法則を使って、ポットのお湯が冷める様子を記述して電気代を節約したり、体温の変化から死亡推定時刻を求めたりする例題がある。

マイクロソフト・オフィスのヘルプでも、

次の例では、指数近似曲線を使って、年数による物質内の炭素 14 の減少量を示しています。R-2 乗値は 1 で、この曲線はデータに一致します。

データに最適な近似曲線を選択する - Office サポート

という例が紹介されている通り、放射性炭素年代測定(放射性炭素年代測定 - Wikipedia)にも指数近似が用いられる。

また、人口の増加、アルコールや薬物の血中濃度の増加、人口の増加など、さまざまなことがこの式一つで説明される。
(ただしこれらに関しては、上で述べたような「y の変化率は y の量に比例する」というのはやや単純化されすぎたモデルで、各分野の専門家はもう少し複雑なことをするだろう。)

対数近似

対数近似に関して、マイクロソフト・オフィスのヘルプでは、

動物 1 個体あたりの面積が減少するにつれて個体数の増加が横ばい状態になる場合の、一定地域内での個体数の増加予測を示しています。

データに最適な近似曲線を選択する - Office サポート

という例が紹介される。

おそらく対数近似の歴史上もっとも有名で、かつとっても偉大な使用例は生理学者フェヒナーの発見だろう(ヴェーバー‐フェヒナーの法則 - Wikipedia)。

これは人間の「感覚」についての発見で、
「ある刺激が与えられたとき、人間の反応は、刺激の増加量が同じなら、反応の増加量は刺激が大きいほど減少する。」
というものだ。

例えば、

  • 夜中の静かなときは小さな物音でも大きく聞こえるが、まわりがうるさいときにちょっとくらい物音がなっても気付かない。
  • 一杯目のビールはすごくおいしくて嬉しいが、二杯、三杯と量を増やしてもどんどん嬉しさが増すことはない。

これは対数近似だ。

適切な近似曲線の選び方

適切な近似モデルを選ぶ上でもう一つ特記すべきことは,モデルの適合の良さはデータとの距離で測ってはならず,あくまで隠れた真の構造との距離を測るようにすべきことである。うっかりすると手元のデータによくあてはまるモデルを良いモデルと考えがちだが,あくまで背後の母集団をよく記述できるのが良いモデルなのである。


――東京大学教養学部統計学教室 編 『自然科学の統計学 基礎統計学III』東京大学出版会 p.65

「手元のデータによくあてはまるモデル」、このあてはまりの良さを測るためのいちばん基本的な指標は決定係数決定係数 - Wikipedia)で、エクセルでは「R-2 乗値」と表記される。

決定係数は 0 以上 1 以下の値をとり、1 に近いほどあてはまりがいいと解釈できる。

一方で、極端な話、パラメータをどんどん増やして、ぜんぶの点を通るような曲線を引いてしまえば、あてはまりは完璧、決定係数は 1 になる。

f:id:abrahamcow:20141219214539p:plain

このようなモデルはデータの予測にも説明にも使えないので意味がない。

そこで、パラメータの数とあてはまりの良さでバランスを取るため、「自由度調整済みの決定係数」や「AIC」(赤池情報量規準 - Wikipedia)などの指標が考案されている。

しかし、ぼくがここで述べたいのは「エクセルのデフォルトの R-2 乗値じゃなくて AIC を使いましょう」、ということではない。

究極的には、「適切な近似曲線」とは、パラメータに意味がある曲線だ。

さきほどのニュートンの冷却の法則を例にとると、k というパラメータは、熱伝達率または表面熱伝導率と呼ばれる、物理学的に意味のある量になる。

「適切な近似曲線の選択」は、分析者がさまざまな学問分野、担当部署に敬意を払い、その分野にとって意味のあることをしようとする姿勢によってこそ成される、とぼくは思う。

関連エントリ

ソルバーを使えば、エクセル組み込みでない近似曲線も当てはめることができる。

たとえば バスモデル:エクセルによる需要予測 - 廿TT を参照。

参考文献

微分方程式で数学モデルを作ろう

微分方程式で数学モデルを作ろう

統計グラフのウラ・オモテ―初歩から学ぶ、グラフの「読み書き」 (ブルーバックス)

統計グラフのウラ・オモテ―初歩から学ぶ、グラフの「読み書き」 (ブルーバックス)

自然科学の統計学 (基礎統計学)

自然科学の統計学 (基礎統計学)