非線形回帰のアルゴリズムと開始値の理解

線形回帰と非線形回帰はどちらも、パラメータを推定するために残差誤差の平方和(SSE)を最小化します。しかし、それぞれの手法は大きく異なります。線形回帰では、式により最小SSEが数学的に導き出されます。モデルを選択すれば、他に指定するものはありません。同じモデルを同じデータに適合させれば、同じ結果が得られます。

しかし、非線形回帰では、直接SSEを最小化する方法がありません。そのため非線形回帰では、反復アルゴリズムを使用して、SSEが低減するようにパラメータ推定値を系統だてて調整することでパラメータを推定します。モデルを決定した後、アルゴリズムを選択し、各パラメータの開始値を指定します。アルゴリズムはこれらの開始値を使用して、初期のSSEを計算します。

各反復では、アルゴリズムは前の反復と比較してSSEが低減するようにパラメータ推定値を調整します。アルゴリズムが異なれば、反復ごとに調整を決定する手法も異なります。反復は、アルゴリズムが最小のSSEで収束するか、反復が妨げられるような問題が発生するか、または反復の最大数が得られるまで続行されます。使用したアルゴリズムで収束しない場合は、他の開始値や他のアルゴリズムで試すことができます。

予想関数とデータセットによっては、開始値が結果に大きく影響する場合があります。ある開始値では収束しなかったり、収束する場合も全体のSSE最小ではなく一部のSSE最小に収束したりする可能性があります。時には、開始値を適切にするのに多大な労力を要することがあります。