答黃胤凱──關於 Jacobian 矩陣與臨界點的定義

網友黃胤凱留言:

周老師您好!想請問周老師,當我們在定義 \mathbb{R}^n\to\mathbb{R} 函數的 critical point 是指該點的 gradient=0。但在 \mathbb{R}^n\to \mathbb{R}^m 的函數上,為何定義卻變成是該點的 Jacobian matrix 不是滿秩即為 critical point?要如何理解這個條件?背後有沒有什麼原因造成這個條件呢?

 
答曰:

我們從單變量函數說起。令 f:D\subseteq \mathbb{R}\to\mathbb{R} 是一可導實函數,其中 D 是一個開集。若 x_0\in D 使得 f'(x_0)=0,則 x_0 稱為臨界點 (critical point),或稱駐點 (stationary point)。函數 f 未必存在臨界點 (例如,f(x)=x),或可能有許多個臨界點 (例如,f(x)=\sin x)。考慮函數 f 在一臨界點 x_0 的泰勒展開式:

\displaystyle  f(x)=f(x_0)+f'(x_0)(x-x_0)+\frac{f''(x_0)}{2}(x-x_0)^2+\cdots

若點 xx_0 鄰近,\vert x-x_0\vert<\epsilon,這裡 \epsilon 是一個微小的正數,我們可以忽略二次項 (x-x_0)^2 以及其餘高次項,則 f(x)-f(x_0)\approx f'(x_0)(x-x_0)=0。因此,在臨界點 x_0,函數 f 的輸出值停止增加或減少。

 
f:D\subseteq\mathbb{R}^n\to\mathbb{R} 為一多變量可導函數。例如,f(x_1,x_2)=2x_1^3-x_1\sin x_2+5。函數 f 在點 \mathbf{x}=(x_1,\ldots,x_n)\in D 的梯度 (gradient) 定義為一階偏導數 \frac{\partial f}{\partial x_1},\frac{\partial f}{\partial x_2},\ldots,\frac{\partial f}{\partial x_n} 組成的 n 維向量 \displaystyle    \nabla f=\begin{pmatrix}    \frac{\partial f}{\partial x_1} & \frac{\partial f}{\partial x_2} &  \cdots &  \frac{\partial f}{\partial x_n}    \end{pmatrix},或者視為 1\times n 階導數矩陣 (derivative matrix)

\displaystyle  \frac{\partial f}{\partial\mathbf{x}}=\begin{bmatrix}  \frac{\partial f}{\partial x_1} & \frac{\partial f}{\partial x_2} &  \cdots &  \frac{\partial f}{\partial x_n}    \end{bmatrix}

我們將梯度 (向量) \nabla f 以導數矩陣表示的用意在於強調 \displaystyle\frac{\partial f}{\partial\mathbf{x}}:\mathbb{R}^n\to\mathbb{R} 是一個線性映射。若 \displaystyle\frac{\partial f}{\partial\mathbf{x}}\neq 0 (零矩陣),則 \text{rank}\displaystyle\frac{\partial f}{\partial\mathbf{x}}=1。考慮多變量函數 f 在點 \mathbf{x}_0\in D 的泰勒展開式 (見“答張盛東──關於 Hessian 矩陣與多變量函數的泰勒展開式”)

\displaystyle  f(\mathbf{x})=f(\mathbf{x}_0)+\left.\frac{\partial f}{\partial\mathbf{x}}\right|_{\mathbf{x}_0}(\mathbf{x}-\mathbf{x}_0)+\frac{1}{2}(\mathbf{x}-\mathbf{x}_0)^T\left.H\right|_{\mathbf{x}_0}(\mathbf{x}-\mathbf{x}_0)+\cdots

其中 \mathbf{x}\mathbf{x}_0 是行向量 (column vector),\displaystyle\left.\frac{\partial f}{\partial\mathbf{x}}\right|_{\mathbf{x}_0} 是在點 \mathbf{x}_01\times n 階導數矩陣,\left.H\right|_{\mathbf{x}_0}=[h_{ij}] 是在點 \mathbf{x}_0n\times n 階 Hessian 矩陣,h_{ij}=\left.\frac{\partial^2f}{\partial x_i\partial x_j}\right|_{\mathbf{x}_0}。延伸單變量函數的定義,若 \mathbf{x}_0\in D 使得 \displaystyle \left.\frac{\partial f}{\partial\mathbf{x}}\right|_{\mathbf{x}_0}=0,也就是說 \displaystyle\hbox{rank}\left.\frac{\partial f}{\partial \mathbf{x}}\right|_{\mathbf{x}_0}=0,則稱之為臨界點。若點 \mathbf{x}\mathbf{x}_0 鄰近,忽略高次項可得 \displaystyle f(\mathbf{x})-f(\mathbf{x}_0)\approx\left.\frac{\partial f}{\partial\mathbf{x}}\right|_{\mathbf{x}_0}(\mathbf{x}-\mathbf{x}_0)=0。同樣地,在臨界點 \mathbf{x}_0,多變量函數 f 的輸出值停止增加或減少。

 
接下來我們討論向量函數 F:D\subseteq\mathbb{R}^n\to\mathbb{R}^m,形式如下:

\displaystyle  F(\mathbf{x})=\begin{bmatrix}  f_1(\mathbf{x})\\  \vdots\\  f_m(\mathbf{x})  \end{bmatrix}=\begin{bmatrix}  f_1(x_1,\ldots,x_n)\\  \vdots\\  f_m(x_1,\ldots,x_n)  \end{bmatrix}

其中每一 f_i:D\subseteq \mathbb{R}^n\to\mathbb{R} 是一多變量可導函數。收集所有的 1\times n 階導數矩陣 \displaystyle\frac{\partial f_i}{\partial\mathbf{x}} 可構造出一個 m\times n 階矩陣,稱為 Jacobian 矩陣 (見“Jacobian 矩陣與行列式”):

\displaystyle  \frac{\partial F}{\partial\mathbf{x}}=\begin{bmatrix}  \frac{\partial f_1}{\partial\mathbf{x}}\\  \vdots\\  \frac{\partial f_m}{\partial\mathbf{x}}    \end{bmatrix}=\begin{bmatrix}  \frac{\partial f_1}{\partial x_1} & \frac{\partial f_1}{\partial x_2} &  \cdots &  \frac{\partial f_1}{\partial x_n}\\  \vdots&\vdots&\ddots&\vdots\\  \frac{\partial f_m}{\partial x_1} & \frac{\partial f_m}{\partial x_2} &  \cdots &  \frac{\partial f_m}{\partial x_n}  \end{bmatrix}

Jacobian 矩陣 \displaystyle\frac{\partial F}{\partial\mathbf{x}} 即為向量函數 F 的導數矩陣,\displaystyle\frac{\partial F}{\partial \mathbf{x}} 必須具備甚麼條件方可定義臨界點?何不說:若 \mathbf{x}_0\in D 使得 \displaystyle \left.\frac{\partial F}{\partial \mathbf{x}}\right|_{\mathbf{x}_0}=0,則 \mathbf{x}_0 為臨界點?這個定義條件非常嚴苛,因為點 \mathbf{x}_0 必須同時滿足 \displaystyle \left.\frac{\partial f_i}{\partial \mathbf{x}}\right|_{\mathbf{x}_0}=01\le i\le m。換句話說,若 \mathbf{x}_0 是函數 f_i 的臨界點,但它不是函數 f_jj\neq i,的臨界點,因此也就不是 F 的臨界點。為符合多數應用,我們期待的規範是:F 的臨界點集合必須包含所有 f_i 的臨界點。據此,我們定義 \mathbf{x}_0 是向量函數 F 的一個臨界點,若 \displaystyle\hbox{rank}\left.\frac{\partial F}{\partial\mathbf{x}}\right|_{\mathbf{x}_0}<\hbox{rank}\left.\frac{\partial F}{\partial\mathbf{x}}\right|_{\mathbf{z}},其中 \mathbf{z}\mathbf{x}_0 鄰近的任一點,具體地說,\mathbf{z} 屬於開球 B(\epsilon,\mathbf{x}_0)=\{\mathbf{z}\in D\vert\Vert\mathbf{z}-\mathbf{x}_0\Vert<\epsilon\}。明顯地,對於任一 f_i,若 \displaystyle\left.\frac{\partial f_i}{\partial\mathbf{x}}\right|_{\mathbf{x}_0}=0,則 Jacobian 矩陣在點 \mathbf{x}_0 的秩將小於鄰近點的秩。當 m\le n,若 f_1,\ldots,f_m 是線性獨立函數,非臨界點 \mathbf{z}\in D 滿足 \displaystyle\hbox{rank}\left.\frac{\partial F}{\partial\mathbf{x}}\right|_{\mathbf{z}}=m,稱為滿列秩 (full row rank),臨界點自然不是滿列秩。當 m=n,Jacobian 矩陣 \displaystyle   \frac{\partial F}{\partial\mathbf{x}} 是一個方陣,我們可以從行列式判定臨界點:若 f_1,\ldots,f_m 是線性獨立函數且 \mathbf{x}_0\in D 使得 \displaystyle\det\left.\frac{\partial F}{\partial\mathbf{x}}\right|_{\mathbf{x}_0}=0,則 \displaystyle\hbox{rank}\left.\frac{\partial F}{\partial\mathbf{x}}\right|_{\mathbf{x}_0}<m,可知 \mathbf{x}_0 是一個臨界點。值得注意的是,若點 \mathbf{x} 與臨界點 \mathbf{x}_0 鄰近,忽略高次項可得 \displaystyle F(\mathbf{x})-F(\mathbf{x}_0)\approx\left.\frac{\partial F}{\partial\mathbf{x}}\right|_{\mathbf{x}_0}(\mathbf{x}-\mathbf{x}_0),但不保證 F(\mathbf{x})-F(\mathbf{x}_0)=\mathbf{0}。在臨界點 \mathbf{x}_0,向量函數 Fm 個輸出值未必全都停止增加或減少。

This entry was posted in 答讀者問, 應用之道 and tagged , . Bookmark the permalink.

2 則回應給 答黃胤凱──關於 Jacobian 矩陣與臨界點的定義

  1. 黃胤凱 說:

    謝謝周老師的回答! 讀完您的回答之後還有兩個問題。
    1. 若m>n時,not full column rank 在這定義下也是臨界點,但這樣的情況似乎無法用m<n時老師您解釋的方法來理解。有別的方式可以了解這樣的情況嗎?

    2. Not full rank 其實還有很多其他的情況,也可能是fi的1xn 階導數矩陣為零以外的情況,例如任兩列的1xn導數矩陣非線性獨立。這樣的情況我們還是叫它臨界點嗎? 是為了方便所以才這樣定義的嗎?

    • ccjou 說:

      先前沒寫清楚,根據你的問題稍作修改。如果仍有疑義,歡迎再提出來討論。週末外出,下週上班後方能回覆。

      上面critical point的定義出自differential geometry,我再去找看看關於你提的問題(2)有甚麼例子。

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

你正使用 WordPress.com 帳號留言。 登出 / 變更 )

Twitter picture

你正使用 Twitter 帳號留言。 登出 / 變更 )

Facebook照片

你正使用 Facebook 帳號留言。 登出 / 變更 )

Google+ photo

你正使用 Google+ 帳號留言。 登出 / 變更 )

連結到 %s