java二维矩阵怎么进行转置_矩阵求导的本质与分子布局、分母布局的本质(矩阵求导——本质篇)...
〇. 前言
在一個多月前,針對有同學關于矩陣求導中分子布局、分母布局兩者的區別的疑問,我寫了如下的這篇答案。
矩陣求導中布局約定,兩者布局的意義是什么??www.zhihu.com雖然這篇答案給出了幾個結論,但是寫的沒有很嚴謹,并沒有說明矩陣求導的本質與分子布局、分母布局的本質。
所以,在接下來這篇文章中,我將更嚴謹地說明矩陣求導的本質與分子布局、分母布局的本質。希望對初學的同學、想理解本質的同學提供一些幫助。
注1:看懂本文只需了解本科階段高等數學的偏導如何求、本科階段線性代數的矩陣的定義,無需任何其他知識。
注2:本文若無特殊說明,則約定向量均為列向量,如
注3:本文僅考慮實數,不考慮復數。
一. 函數與標量、向量、矩陣[1]
考慮一個函數
針對
的類型、 的類型,我們可以將這個函數 分為不同的種類。1、
是一個標量我們稱
是一個實值標量函數。用細體小寫字母 表示。1.1
是一個標量我們稱
的變元是標量。用細體小寫字母 表示。例1:
1.2
是一個向量我們稱
的變元是向量。用粗體小寫字母 表示。例2:設
1.3
是一個矩陣我們稱
的變元是矩陣。用粗體大寫字母 表示。例3:設
2、
是一個向量我們稱
是一個實向量函數 。用粗體小寫字母 表示。含義:
是由若干個 組成的一個向量。同樣地,變元分三種:標量、向量、矩陣。這里的符號仍與上面相同。
2.1 標量變元
例4:
2.2 向量變元
例5:設
2.3 矩陣變元
例6:設
3、
是一個矩陣我們稱
是一個實矩陣函數 。用粗體大寫字母 表示。含義:
是由若干個 組成的一個矩陣。同樣地,變元分三種:標量、向量、矩陣。這里的符號仍與上面相同。
3.1 標量變元
例7:
3.2 向量變元
例8:設
3.3 矩陣變元
例9:設
4、總結
函數與標量、向量、矩陣二. 矩陣求導的本質
我們在高等數學[2]中學過,對于一個多元函數
例10:
我們可以將
對 的偏導分別求出來,即:矩陣求導也是一樣的,本質就是
中的每個 分別對變元中的每個元素逐個求偏導,只不過寫成了向量、矩陣形式而已。對于
,我們把得出的3個結果寫成列向量形式:一個矩陣求導以列向量形式展開的雛形就出現了。
當然我們也可以以行向量形式展開:
所以,如果
中有 個 ,變元中有 個元素,那么,每個 對變元中的每個元素逐個求偏導后,我們就會產生 個結果。這就是矩陣求導的本質。
至于這
個結果的布局,是寫成行向量,還是寫成列向量,還是寫成矩陣,就是我們接下來要討論的事情。三. 矩陣求導結果的布局
不嚴謹地說,從直觀上看:
分子布局,就是分子是列向量形式,分母是行向量形式,如
式。如果這里的 是實向量函數 的話,結果就是 的矩陣了:分母布局,就是分母是列向量形式,分子是行向量形式,如
式。如果這里的 是實向量函數 的話,結果就是 的矩陣了:直觀上理解了之后,我們針對不同類型的
,不同類型的變元,給出嚴謹的布局說明。(這里不討論標量變元的實值標量函數 ,因為結果就是一個元素嘛~)1、向量變元的實值標量函數
,1.1 行向量偏導形式(又稱行偏導向量形式)[3]
1.2 梯度向量形式(又稱列向量偏導形式、列偏導向量形式)[4]
這兩種形式互為轉置。
2、矩陣變元的實值標量函數
,先介紹一個符號
,作用是將矩陣 按列堆棧來向量化。解釋一下,
就是把矩陣 的第 列,第 列,直到第 列取出來,然后按順序組成一個列向量,即:2.1 行向量偏導形式(又稱行偏導向量形式)[3]
即先把矩陣變元
按 向量化,轉換成向量變元,再對該向量變元使用 式:2.2
矩陣形式[3]即先把矩陣變元
進行轉置,再對轉置后的每個位置的元素逐個求偏導,結果布局和轉置布局一樣。2.3 梯度向量形式(又稱列向量偏導形式、列偏導向量形式)[4]
即先把矩陣變元
按 向量化,轉換成向量變元,再對該變元使用 式:2.4 梯度矩陣形式[4]
直接對原矩陣變元
的每個位置的元素逐個求偏導,結果布局和原矩陣布局一樣。2.5 一些發現
2.5.1 轉置
式與 式互為轉置; 式與 式互為轉置。2.5.2 相等
當矩陣變元
本身就是一個列向量 時, 式、 式、 式相等; 式、 式、 式相等;當然,前三個式子與后三個式子互為轉置。這一發現說明,對于向量變元的實值標量函數
, ,結果布局本質上有兩種形式,一種是 矩陣(已經成行向量了)形式,一種是梯度矩陣(已經成列向量了)形式。兩種形式互為轉置。3、矩陣變元的實矩陣函數
, ,3.1
矩陣形式[5]即先把矩陣變元
按 向量化,轉換成向量變元:再把實矩陣函數
按向量化,轉換成實向量函數:這樣,我們就把一個矩陣變元的實矩陣函數
,轉換成了向量變元的實向量函數 。接著,對照 式寫出結果布局為 的矩陣:3.2 梯度矩陣形式[6]
即先把矩陣變元
按 向量化,轉換成向量變元:再把實矩陣函數
按向量化,轉換成實向量函數:這樣,我們就把一個矩陣變元的實矩陣函數
,轉換成了向量變元的實向量函數 。接著,對照 式寫出結果布局為 的矩陣:3.3 一些發現
3.3.1 轉置
式與 式互為轉置。3.3.2 相等1
當實矩陣函數
本身是一個實值標量函數 時, 式、 式相等; 式、 式相等;當然,前兩個式子與后兩個式子互為轉置。這一發現說明,對于矩陣變元的實值標量函數
, ,結果布局本質上有四種形式,第一種是 矩陣(已經成行向量了)形式,第二種是梯度矩陣(已經成列向量了)形式,第三種是 矩陣(就是矩陣)形式,第四種是梯度矩陣(就是矩陣)形式。第一種和第二種形式互為轉置,第三種和第四種形式互為轉置。3.3.3 相等2
當矩陣變元
本身就是一個列向量 時, 同時實矩陣函數 本身是一個實值標量函數 時, 式、 式、 式、 式相等; 式、 式、 式、 式相等;當然,前四個式子與后四個式子互為轉置。這一發現仍說明,對于向量變元的實值標量函數
, ,結果布局本質上有兩種形式,一種是 矩陣(已經成行向量了)形式,一種是梯度矩陣(已經成列向量了)形式。兩種形式互為轉置。4、矩陣變元的實向量函數
、向量變元的實向量函數 、向量變元的實矩陣函數這三個都可以看做是矩陣變元的實矩陣函數
,可使用3、進行計算(因為向量就是一種特殊的矩陣)。四. 分子布局、分母布局的本質
看到這里,相信同學們對矩陣求導結果的布局有了很全面的了解了,無非就是分子的轉置、向量化,分母的轉置、向量化,它們的各種組合而已。
結合上述知識,我們總結:
1、分子布局的本質:分子是標量、列向量、矩陣向量化后的列向量;分母是標量、列向量轉置后的行向量、矩陣的轉置矩陣、矩陣向量化后的列向量轉置后的行向量。包含
式、 式、 式、 式。2、分母布局的本質:分子是標量、列向量轉置后的行向量、矩陣向量化后的列向量轉置后的行向量;分母是標量、列向量、矩陣自己、矩陣向量化后的列向量。包含
式、 式、 式、 式。思考一下,其實我們可以再簡潔一些:誰轉置了,就是另一方的布局。分子轉置了,就是分母布局;分母轉置了,就是分子布局。
最終,我們列一個表格,總結分子布局、分子布局的本質:
分子布局、分母布局的本質五. 完
本文到這里就結束了,希望對大家有幫助。如果有時間的話,后面我會再發一篇文章,來進行若干常見矩陣求導公式的數學推導。歡迎大家點贊、關注、收藏、轉發噢~
矩陣求導系列其他文章:
對稱矩陣的求導,以多元正態分布的極大似然估計為例(矩陣求導——補充篇) - Iterator的文章 - 知乎
矩陣求導公式的數學推導(矩陣求導——進階篇) - Iterator的文章 - 知乎
矩陣求導公式的數學推導(矩陣求導——基礎篇) - Iterator的文章 - 知乎
參考
總結
以上是生活随笔為你收集整理的java二维矩阵怎么进行转置_矩阵求导的本质与分子布局、分母布局的本质(矩阵求导——本质篇)...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 共享内存 传一个类指针_C++指针
- 下一篇: cron 每年执行一次_循环执行定时任务