<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 用于機器學習的線性代數中的矩陣類型簡介 > 原文: [https://machinelearningmastery.com/introduction-to-types-of-matrices-in-linear-algebra/](https://machinelearningmastery.com/introduction-to-types-of-matrices-in-linear-algebra/) 許多線性代數涉及向量和矩陣的運算,并且存在許多不同類型的矩陣。 在線性代數入門時,您可能會遇到幾種類型的矩陣,特別是與機器學習相關的線性代數部分。 在本教程中,您將發現一系列不同類型的矩陣,這些矩陣來自線性代數領域,您可能會在機器學習中遇到這些矩陣。 完成本教程后,您將了解: * 正方形,對稱,三角形和對角矩陣,正如它們的名字所暗示的那樣。 * 除了沿值為 1 的主對角線以外的所有零值的標識矩陣。 * 正交矩陣,概括了垂直向量的概念并具有有用的計算屬性。 讓我們開始吧。 * **更新 Feb / 2018** :修正了正交矩陣等價方程中的小錯字。 ![A Gentle Introduction to Types of Matrices in Linear Algebra](img/ba987b1139b049cdf8ad2efdd0b63d5e.jpg) 線性代數中矩陣類型的溫和介紹 [Tony](https://www.flickr.com/photos/triplea4/15206281696/) 的照片,保留一些權利。 ## 教程概述 本教程分為 6 個部分,涵蓋了主要的矩陣類型;他們是: 1. 方陣 2. 對稱矩陣 3. 三角矩陣 4. 對角矩陣 5. 身份矩陣 6. 正交矩陣 ## 方陣 方陣是矩陣,其中行數(n)等于列數(m)。 ``` n = m ``` 方矩陣與矩形矩陣形成對比,矩形矩陣的行數和列數不相等。 假設行數和列數匹配,則尺寸通常表示為 n,例如 n x n。矩陣的大小稱為順序,因此 4 階矩陣是 4 x 4。 沿著從左上到右下的矩陣對角線的值向量稱為主對角線。 以下是 3 階矩陣的示例。 ``` 1, 2, 3 M = (1, 2, 3) 1, 2, 3 ``` 方形矩陣很容易相加并相乘,并且是許多簡單線性變換的基礎,例如旋轉(如圖像的旋轉)。 ## 對稱矩陣 對稱矩陣是一種方形矩陣,其中右上角三角形與左下角三角形相同。 > 毫不夸張地說,對稱矩陣 S 是世界上最重要的矩陣 - 在線性代數理論和應用中。 - 第 338 頁,[線性代數導論](http://amzn.to/2AZ7R8j),第五版,2016 年。 為了對稱,對稱軸始終是矩陣的主要對角線,從左上角到右下角。 下面是 5×5 對稱矩陣的示例。 ``` 1, 2, 3, 4, 5 2, 1, 2, 3, 4 M = (3, 2, 1, 2, 3) 4, 3, 2, 1, 2 5, 4, 3, 2, 1 ``` 對稱矩陣總是正方形并且等于它自己的轉置。 ``` M = M^T ``` ## 三角矩陣 三角矩陣是一種方矩陣,其在矩陣的右上或左下具有所有值,其余元素填充零值。 僅在主對角線上方具有值的三角矩陣稱為上三角矩陣。然而,僅在主對角線下方具有值的三角矩陣被稱為下三角矩陣。 下面是 3×3 上三角矩陣的示例。 ``` 1, 2, 3 M = (0, 2, 3) 0, 0, 3 ``` 下面是 3×3 下三角矩陣的示例。 ``` 1, 0, 0 M = (1, 2, 0) 1, 2, 3 ``` LU 分解將給定矩陣解析為上三角矩陣和下三角矩陣。 NumPy 提供從現有方陣中計算三角矩陣的函數。 tril()函數用于從給定矩陣計算下三角矩陣,triu()用于從給定矩陣計算上三角矩陣 下面的例子定義了一個 3×3 方陣,并從中計算出下三角矩陣和上三角矩陣。 ``` # triangular matrices from numpy import array from numpy import tril from numpy import triu M = array([[1, 2, 3], [1, 2, 3], [1, 2, 3]]) print(M) lower = tril(M) print(lower) upper = triu(M) print(upper) ``` 運行該示例將打印定義的矩陣,然后是下三角矩陣和上三角矩陣。 ``` [[1 2 3] [1 2 3] [1 2 3]] [[1 0 0] [1 2 0] [1 2 3]] [[1 2 3] [0 2 3] [0 0 3]] ``` ## 對角矩陣 對角矩陣是主對角線外部的值具有零值的矩陣,其中主對角線從矩陣的左上角到右下角。 對角矩陣通常用變量 D 表示,并且可以表示為完整矩陣或主對角線上的值向量。 > 對角矩陣主要由零組成,并且僅沿主對角線具有非零條目。 - 第 40 頁,[深度學習](http://amzn.to/2B3MsuU),2016 年。 下面是 3×3 方形對角矩陣的示例。 ``` 1, 0, 0 D = (0, 2, 0) 0, 0, 3 ``` 作為向量,它將表示為: ``` d = (d11, d22, d33) ``` 或者,使用指定的標量值: ``` d = (1, 2, 3) ``` 對角矩陣不必是正方形。在矩形矩陣的情況下,對角線將覆蓋最短的維度;例如: ``` 1, 0, 0, 0 0, 2, 0, 0 D = (0, 0, 3, 0) 0, 0, 0, 4 0, 0, 0, 0 ``` NumPy 提供了函數 diag(),它可以從現有矩陣創建對角矩陣,或者將向量轉換為對角矩陣。 下面的示例定義了一個 3×3 方陣,將主對角線提取為向量,然后從提取的向量中創建一個對角矩陣。 ``` # diagonal matrix from numpy import array from numpy import diag M = array([[1, 2, 3], [1, 2, 3], [1, 2, 3]]) print(M) # extract diagonal vector d = diag(M) print(d) # create diagonal matrix from vector D = diag(d) print(D) ``` 首先運行該示例打印定義的矩陣,然后是主對角線的向量和從向量構造的對角矩陣。 ``` [[1 2 3] [1 2 3] [1 2 3]] [1 2 3] [[1 0 0] [0 2 0] [0 0 3]] ``` ## 身份矩陣 單位矩陣是一個方形矩陣,在乘法時不會改變向量。 單位矩陣的值是已知的。沿主對角線(左上角到右下角)的所有標量值都具有值 1,而所有其他值都為零。 > 單位矩陣是當我們將該向量乘以該矩陣時不改變任何向量的矩陣。 - 第 36 頁,[深度學習](http://amzn.to/2B3MsuU),2016 年。 單位矩陣通常使用符號“I”或維度“In”表示,其中 n 是表示方形單位矩陣的維數的下標。在一些符號中,標識可以被稱為單位矩陣或“U”,以兌現它包含的一個值(這與單位矩陣不同)。 例如,大小為 3 或 I3 的單位矩陣如下: ``` 1, 0, 0 I = (0, 1, 0) 0, 0, 1 ``` 在 NumPy 中,可以使用 identity()函數創建具有特定大小的單位矩陣。 以下示例創建 I3 單位矩陣。 ``` # identity matrix from numpy import identity I = identity(3) print(I) ``` 運行該示例將打印創建的標識矩陣。 ``` [[ 1\. 0\. 0.] [ 0\. 1\. 0.] [ 0\. 0\. 1.]] ``` 單獨,單位矩陣并不那么有趣,盡管它是其他導入矩陣運算中的一個組件,例如矩陣求逆。 ## 正交矩陣 當它們的點積等于零時,兩個向量是正交的,稱為正交。 ``` v . w = 0 ``` 要么 ``` v . w^T = 0 ``` 當我們認為一條線與另一條線垂直于它時,這是直觀的。 正交矩陣是一種方形矩陣,其列和行是正交單位向量,例如,正交矩陣。垂直,長度或大小為 1。 > 正交矩陣是方形矩陣,其行是相互正交的并且其列是相互正交的 - 第 41 頁,[深度學習](http://amzn.to/2B3MsuU),2016 年。 正交矩陣通常表示為大寫“Q”。 > 通過正交矩陣的乘法保留長度。 - 第 277 頁,[無線性代數廢話指南](http://amzn.to/2k76D4C),2017 年 正交矩陣的形式正式定義如下: ``` Q^T . Q = Q . Q^T = I ``` 其中 Q 是正交矩陣,Q ^ T 表示 Q 的轉置,I 是單位矩陣。 如果矩陣的轉置等于其反轉,則矩陣是正交的。 ``` Q^T = Q^-1 ``` 正交矩陣的另一個等價是矩陣和它自身的點積等于單位矩陣。 ``` Q . Q^T = I ``` 正交矩陣用于線性變換,例如反射和置換。 下面列出了簡單的 2×2 正交矩陣,其是反射矩陣或坐標反射的示例。 ``` 1, 0 Q = (0, -1) ``` 下面的示例創建此正交矩陣并檢查上述等價。 ``` # orthogonal matrix from numpy import array from numpy.linalg import inv Q = array([[1, 0], [0, -1]]) print(Q) # inverse equivalence V = inv(Q) print(Q.T) print(V) # identity equivalence I = Q.dot(Q.T) print(I) ``` 首先運行該示例打印正交矩陣,正交矩陣的逆,然后打印正交矩陣的轉置并且顯示為等效的。最后,打印單位矩陣,其由正交矩陣的點積與其轉置計算。 ``` [[ 1 0] [ 0 -1]] [[ 1 0] [ 0 -1]] [[ 1\. 0.] [-0\. -1.]] [[1 0] [0 1]] ``` 正交矩陣是有用的工具,因為它們在計算上是便宜的并且可以穩定地計算它們的逆,就像它們的轉置一樣。 ## 擴展 本節列出了一些擴展您可能希望探索的教程的想法。 * 使用您自己的小型人為數據修改每個示例。 * 編寫自己的函數來實現每個操作。 * 研究一個例子,其中每個操作都用于機器學習。 如果你探索任何這些擴展,我很想知道。 ## 進一步閱讀 如果您希望深入了解,本節將提供有關該主題的更多資源。 ### 圖書 * 第 6.2 節特殊類型的矩陣。 [線性代數無廢話指南](http://amzn.to/2k76D4),2017 年。 * [線性代數](http://amzn.to/2j2J0g4)簡介,2016 年。 * 第 2.3 節身份和反向矩陣,[深度學習](http://amzn.to/2B3MsuU),2016 年。 * 第 2.6 節特殊種類的矩陣和向量,[深度學習](http://amzn.to/2B3MsuU),2016。 ### API * [numpy.tril()API](https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.tril.html) * [numpy.triu()API](https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.triu.html) * [numpy.diag()API](https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.diag.html) * [numpy.identity()API](https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.identity.html) ### 用品 * [維基百科上的方陣](https://en.wikipedia.org/wiki/Square_matrix) * [維基百科上的主對角線](https://en.wikipedia.org/wiki/Main_diagonal) * [維基百科上的對稱矩陣](https://en.wikipedia.org/wiki/Symmetric_matrix) * [維基百科上的三角矩陣](https://en.wikipedia.org/wiki/Triangular_matrix) * [維基百科上的對角矩陣](https://en.wikipedia.org/wiki/Diagonal_matrix) * 維基百科上的[身份矩陣](https://en.wikipedia.org/wiki/Identity_matrix) * 維基百科上的[正交矩陣](https://en.wikipedia.org/wiki/Orthogonal_matrix) ## 摘要 在本教程中,您發現了一組來自線性代數領域的不同類型的矩陣,您可能會在機器學習中遇到這些矩陣。 具體來說,你學到了: * 正方形,對稱,三角形和對角矩陣,顧名思義。 * 除了沿值為 1 的主對角線以外的所有零值的標識矩陣。 * 正交矩陣,概括了垂直向量的概念并具有有用的計算屬性。 你有任何問題嗎? 在下面的評論中提出您的問題,我會盡力回答。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看