注意:まず、線形回帰から始まり、数値例を示し、回帰モデルを解くために最小二乗法を使用するという記事 [数学的知識] 最小二乗法 を読んでから、この記事をお読みください。
記事ディレクトリ
前回の記事【数学の知識】最小二乗法では、線形回帰から数値例を示し、最小二乗法を使用して回帰モデルを解きます。回帰分析の観点から、線形回帰モデルを分析し、具体的な数値例を示しました。が与えられ、最小二乗法を使用してモデルの最適なパラメーターを解決します。
前の回帰分析では、次の例が使用されました。
- 単純な線形回帰モデル (単一の説明変数、単一の応答変数)
- 重線形回帰モデル (複数の説明変数、単一の応答変数)
しかし、それらはすべて単一応答変数であり、行列記述を行うのは不便です。
実際のアプリケーションでは、複数の説明変数と複数の応答変数を含む回帰モデルがより一般的に使用され、行列演算も使用されます。これにより、コンピューターのリソースが節約されるだけでなく、計算効率が向上します。
そこでこの記事では、複数の説明変数と複数の応答変数から行列化の方法と、行列化後の導出演算と演算に焦点を当てて説明します。
1. 複数の説明変数と複数の応答変数
上記の (単一の説明変数、単一の応答変数) の合計に基づいて、より一般的な線形の場合に拡張されます。
複数の説明変数と複数の応答変数を含むこの種の回帰モデルは、次の式で表すことができます。
y 1 = β 0 + β 1 x 11 + β 2 x 12 + ⋯ + β px 1 py 2 = β 0 + β 1 x 21 + β 2 x 22 + ⋯ + β px 3 py 3 = β 0 + β 1 x 31 + β 2 x 32 + ⋯ + β px 3 p ⋮ ym = β 0 + β 1 xm 1 + β 2 xm 2 + ⋯ + β pxmp \begin{aligned} y_1 &= \beta_{0} + \beta_ {1} x_{11} + \beta_{2} x_{12} + \cdots + \beta_{p} x_{1p} \\ y_2 &= \beta_{0} + \beta_{1} x_{21} + \beta_{2} x_{22} + \cdots + \beta_{p} x_{3p} \\ y_3 &= \beta_{0} + \beta_{1} x_{31} + \beta_{2} x_ {32} + \cdots + \beta_{p} x_{3p} \\ \vdots \\ y_m &= \beta_{0} + \beta_{1} x_{m1} + \beta_{2} x_{m2} + \cdots + \beta_{p} x_{mp} \end{aligned}y1y2y3⋮yメートル=b0+b1バツ11+b2バツ12+⋯+bpバツ1p _=b0+b1バツ21+b2バツ22+⋯+bpバツ3p _=b0+b1バツ31+b2バツ32+⋯+bpバツ3p _=b0+b1バツメートル1+b2バツ平方メートル+⋯+bpバツmp _
この回帰モデルの合計はmmであることがわかります。
m 個の応答変数y 1 、⋯ 、ym y_1、\cdots、y_my1、⋯、yメートル,
m ∗ pm * pメートル∗p説明変数x 11 , ⋯ , xmp x_{11}, \cdots, x_{mp}バツ11、⋯、バツmp _,
1 11パラメータβ 0 \beta_{0}b0、
pppパラメータβ 1 , ⋯ , β p \beta_{1}, \cdots, \beta_{p}b1、⋯、bp。
次に行列化を行うと、
Y = [ y 1 y 2 ⋮ ym ] m × 1 , X = [ x 11 x 12 ⋯ x 1 px 21 x 22 ⋯ x 2 p ⋮ ⋮ ⋱ ⋮ xm 1 xm 2 ⋯ xmp ] m × p , β = [ β 1 β 2 ⋮ β p ] p × 1 Y = \left[\begin{matrix} y_1 \\ y_2 \\ \vdots \\ y_m \end{matrix}\right]_{m \times 1}, \quad X = \left[\begin{行列} x_{11} & x_{12} & \cdots & x_{1p} \\ x_{21} & x_{22} & \cdots & x_{2p} \\ \vdots & \vdots & \ddots & \vdots \\ x_{m1} & x_{m2} & \cdots & x_{mp} \\ \end{matrix}\right]_{m \times p}, \quad \beta = \left[\begin{行列} \beta_{1} \\ \beta_{2} \\ \vdots \\ \beta_{p} \end{行列}\right]_{p \times 1}Y= y1y2⋮yメートル メートル× 1、バツ= バツ11バツ21⋮バツメートル1バツ12バツ22⋮バツ平方メートル⋯⋯⋱⋯バツ1p _バツ2人⋮バツmp _ m × p、b= b1b2⋮bp p × 1
Y = X β + β 0 \begin{整列} Y = X \beta + \beta_0 \end{整列}Y=Xβ+b0
この形式は単純で明確に見えますが、もう 1 つの項β 0 \beta_0があります。b0、β 0 \beta_0を別の形式に変更しますb0β \betaに統合βに進みます。作る
Y = [ y 1 y 2 ⋮ ym ] m × 1 , X = [ 1 x 11 x 12 ⋯ x 1 p 1 x 21 x 22 ⋯ x 2 p ⋮ ⋮ ⋮ ⋱ ⋮ 1 xm 1 xm 2 ⋯ xmp ] m × ( p + 1 ) , β = [ β 0 β 1 β 2 ⋮ β p ] ( p + 1 ) × 1 Y = \left[\begin{matrix} y_1 \\ y_2 \\ \vdots \\ y_m \end{行列}\right]_{m \times 1}, \quad X = \left[\begin{行列} 1 & x_{11} & x_{12} & \cdots & x_{1p} \\ 1 & x_{ 21} & x_{22} & \cdots & x_{2p} \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ 1 & x_{m1} & x_{m2} & \cdots & x_{ mp} \\ \end{行列}\right]_{m \times (p+1)}, \quad \beta = \left[\begin{行列} \beta_{0} \\ \beta_{1} \ \ \beta_{2} \\ \vdots \\ \beta_{p} \end{行列}\right]_{(p+1) \times 1}Y= y1y2⋮yメートル メートル× 1、バツ= 11⋮1バツ11バツ21⋮バツメートル1バツ12バツ22⋮バツ平方メートル⋯⋯⋱⋯バツ1p _バツ2人⋮バツmp _ m × ( p + 1 )、b= b0b1b2⋮bp ( p + 1 ) × 1
それからこうなりました
Y = X β \begin{整列} Y = X \beta \end{整列}Y=Xβ
2. 偏導関数を求める行列演算
次の焦点は、最適なθ \thetaを見つけることです。θ導関数Xβ − YX\beta - YXβ−Yが最小、つまり
最小 β ∥ X β − Y ∥ 2 2 \min_{\beta} \| X \beta - Y \|_2^2b分∥Xβ _−はい∥22
其中 X , Y X, Y × 、Yは既知、未知はβ \betab。
最小二乗法を使用して最適なパラメーターβ \betaを見つけますβの場合、多くの場合、最適なβ \betaという結論式が表示されます。βは
β = ( XTX ) − 1 XTY \beta = (X^\text{T} X)^{-1} X^\text{T} Yb=( XTX )_− 1 ×タイ_
しかし、解決プロセスはまだわかりません。したがって、この結論に到達する方法については次に説明します。
令J ( β ) = ∥ X β − Y ∥ 2 2 J(\beta) = \| X \beta - Y \|_2^2J ( b )=∥Xβ _−はい∥22、これは残差の二乗和を表す別の方法です。この方程式を次のように展開すると、対応する行列形式を見つけることができます。
J ( β ) = ( X β − Y ) T ( X β − Y ) J(\beta) = (X \beta - Y)^\text{T} (X \beta - Y)J ( b )=( Xβ−や)T (Xβ−や)
次にJ ( β ) J(\beta)を計算します。J ( β )对β \betaβの偏導関数。β \betaβの値。上記の方程式を拡張すると、
J ( β ) = ( X β − Y ) T ( X β − Y ) = ( β TXT − YT ) ( X β − Y ) = β TXTX β − β TXTY − YTX β + YTY \begin{aligned} J( \beta) &= (X \beta - Y)^\text{T} (X \beta - Y) \\ &= (\beta^\text{T} X^\text{T} - Y^\text {T}) (X \beta - Y) \\ &= \beta^\text{T} X^\text{T} X \beta - \beta^\text{T} X^\text{T} Y - Y^\text{T} X \beta + Y^\text{T} Y \end{aligned}J ( b )=( Xβ−や)T (Xβ−や)=( bTX _T−YT )(Xβ−や)=bTX _TXβ _−bTX _タイ_−YTXβ _+Yタイ_
偏導関数を求めるには、次のようにします。
∂ J ( β ) ∂ β = ∂ ∂ β ( β TXTX β − β TXTY − YTX β + YTY ) \begin{aligned} \frac{\partial J(\beta)}{\partial \beta} &= \frac {\partial}{\partial \beta} (\beta^\text{T} X^\text{T} X \beta - \beta^\text{T} X^\text{T} Y - Y^\ text{T} X \beta + Y^\text{T} Y) \end{aligned}∂ β∂ J ( b )=∂ β∂( bTX _TXβ _−bTX _タイ_−YTXβ _+Yタイ)_
この式を求めるには、行列計算の規則を使用する必要があります。未知の量XXの場合Xと定数行列AAあ、はい
- dd X ( AX ) = AT \frac{\text{d}}{\text{d}X}(AX) = A^\text{T}dX _d( A × )=あT
- dd X ( XTA ) = A \frac{\text{d}}{\text{d}X}(X^\text{T} A) = AdX _d( XTA )_=あ
- dd X ( XTAX ) = ( A + AT ) X \frac{\text{d}}{\text{d}X}(X^\text{T} AX) = (A+A^\text{T} ) バツdX _d( X税金)__=( A+あた)X
上記のルールによれば、
- ∂ ∂ β ( β TXTX β ) = ( ( XTX ) + ( XTX ) T ) β = 2 XTX β \frac{\partial}{\partial \beta} (\beta^\text{T} X^\text{ T} X \beta) = ((X^\text{T} X) + (X^\text{T} X)^\text{T})\beta = 2 X^\text{T} X \beta∂ β∂( bTX _TXβ )_=(( XTX )_+( XTX )_た)b=2X _TXβ _
- ∂ ∂ β ( − β TXTY ) = − XTY \frac{\partial}{\partial \beta} (- \beta^\text{T} X^\text{T} Y) = -X^\text{T }Y∂ β∂( − bTX _タイ)_=− ×タイ_
- ∂ ∂ β ( − YTX β ) = ( − YTX ) T = − XTY \frac{\partial}{\partial \beta} (- Y^\text{T} X \beta) = (-Y^\text{ T} X)^\text{T} = -X^\text{T} Y∂ β∂( − YTXβ )_=( − YTX )_T=− ×タイ_
したがって、偏導関数は次のようになります。
∂ J ( β ) ∂ β = 2 XTX β − 2 XTY \frac{\partial J(\beta)}{\partial \beta} = 2 X^\text{T} X \beta - 2 X^\text{た}}∂ β∂ J ( b )=2X _TXβ _−2X _タイ_
ゼロにしましょう
2 XTX β − 2 XTY = 0 XTX β − XTY = 0 XTX β = XTY β = ( XTX ) − 1 XTY \begin{aligned} 2 X^\text{T} X \beta - 2 X^\text{T } Y &= 0 \\ X^\text{T} X \beta - X^\text{T} Y &= 0 \\ X^\text{T} X \beta &= X^\text{T} Y \\ \beta &= (X^\text{T} X)^{-1} X^\text{T} Y \end{aligned}2X _TXβ _−2X _タイ_バツTXβ _−バツタイ_バツTXβ _b=0=0=バツタイ_=( XTX )_− 1 ×タイ_
この時点で、最小二乗法の最適パラメータの解公式が得られます。