矩陣乘法的通俗理解

2021-02-13 輕鬆學高等數學

數學基礎不好的小夥伴學起深度學習來,總是被各種公式和術語嚇到。今天先分享一下矩陣乘法的理解。

一、問題引出 - 一道小學生應用題

計算題一:小明今天要做飯,消耗2斤肉,1斤蔬菜。肉每斤20元,蔬菜每斤5元,則一共需多少花費?

             解法: 20 X 2+ 5 X 1 = 45

計算題二:小明第二天有另一種做飯的方法,需要消耗1斤肉,4斤蔬菜,那麼這兩種方法的花費各是多少呢?

             解法:

             1)方法一的花費: 20 X 2+ 5 X 1 = 45

             2)方法二的花費:20 x 1 + 5 x 4 =  40

計算題三:小明家附近還有另一個菜市場,那裡肉每斤15元,蔬菜每斤10元。那麼,小明如果去這個菜市場,花費又是多少呢(分別計算上述兩種做飯方式)?

             解法:

             1) 菜市場一,方法一 的花費:20 X 2+ 5 X 1 = 45

             2)菜市場一,方法二的花費:20 x 1 + 5 x 4 =  40

             3)菜市場二、方法一的花費:15 x 2+ 10 x 1 = 40 

             4)菜市場二、方法二的花費:15 x 1 + 10 x 4 =55

【數學家思考】每次這麼算好像挺複雜,如多菜市場變成N個,做法也有N個,那麼 這個解法就得寫N x N 行。有沒有一種更簡單的表示方法? 答案是有!可以用【矩陣乘法】

 二、問題改進方法

【矩陣乘法】在左邊的這個矩陣的每一行,都代表了一種價目表;在右邊的矩陣的每一列,都代表了一種做飯方式。那麼所有可能的組合所最終產生的花費,則在結果矩陣中表示出來了。我們來用矩陣乘法計算上述問題。

問題一:小明今天要做飯,消耗2斤肉,1斤蔬菜。肉每斤20元,蔬菜每斤5元,則一共需多少花費?

             小學生算法: 20 X 2+ 5 X 1 = 45

             大學生算法(矩陣乘):

             

問題二:小明第二天有另一種做飯的方法,需要消耗1斤肉,4斤蔬菜,那麼這兩種方法的花費各是多少呢?

             小學生算法:

             1)方法一的花費: 20 X 2+ 5 X 1 = 45

             2)方法二的花費:20 x 1 + 5 x 4 =  40

             大學生算法(矩陣乘):

            

問題三:小明家附近還有另一個菜市場,那裡肉每斤15元,蔬菜每斤10元。那麼,小明如果去這個菜市場,花費又是多少呢(分別計算上述兩種做飯方式)?我們把這另外的一種價格寫進第一個矩陣裡:

             小學生算法:

             1) 菜市場一,方法一 的花費:20 X 2+ 5 X 1 = 45

             2)菜市場一,方法二的花費:20 x 1 + 5 x 4 =  40

             3)菜市場二、方法一的花費:15 x 2+ 10 x 1 = 40 

             4)菜市場二、方法二的花費:15 x 1 + 10 x 4 =55

             大學生算法(矩陣乘):

             

三、總結

矩陣乘法可以簡單直接的表達上述問題。數學之美就在於用抽象的簡單的符號去表達複雜的現實問題。

推廣至深度學習,也是在尋求一種表達方式,去解釋模擬現實中的問題。

相關焦點

  • 拋棄複雜的運算來理解「矩陣乘法」和「行列式」
    上一篇我們知道了,矩陣其實就是一個線性變換,矩陣的各列就是由原來的基向量變換而來。在此基礎上,假如我們把兩個矩陣放在一起,也就是說,讓兩個矩陣做乘法,它又有什麼含義呢?矩陣乘法我們還是先從矩陣和向量的乘法看起:矩陣乘以一個向量,得到一個新向量。如果我們把新向量再乘以一個矩陣呢?
  • 矩陣分解 (乘法篇)
    對角和三角矩陣首先, 我們總結下, 在矩陣加法分解中出現了三種矩陣: 上三角矩陣, 下三角矩陣 和 對角陣。  這三種矩陣在乘法的分解中也會遇到。 那麼是不是乘法矩陣中有這三種矩陣就夠了呢? 不是的!正交矩陣還有一種經典的矩陣, 叫正交矩陣, 什麼叫正交矩陣呢?
  • 線性代數入門——矩陣乘法的定義及其意義
    線性代數課程的一個重要特點(也是難點)是概念眾多,而且各概念間有著千絲萬縷的聯繫,對於初學者不易理解的問題我們會不惜筆墨加以解釋。在內容上,以國內的經典教材「同濟版線性代數」為藍本,並適當選取了一些補充材料以開闊讀者的視野。本系列文章適合作為初學線性代數時的課堂同步輔導,也可作為考研複習的參考資料。文章中的例題大多為紮實基礎的常規題目和幫助加深理解的概念辨析題,並有相當數量的歷年考研試題。
  • No.3 矩陣乘法
    所以矩陣加法和減法我們要求兩個矩陣的維數是一摸一樣的,很簡單的推廣,沒啥好說的。下面主要聊聊矩陣乘法。「矩陣除法」(目前看來是錯誤稱呼)我們下次再聊。二、矩陣乘法            我前面舉過一個學生成績的例子。
  • 矩陣的乘法在量子計算領域是一種基本操作
    矩陣的乘法在量子計算領域是一種基本操作,正是因為算法本身的簡單,矩陣乘法和導數結合非常容易。至於物理意義就是解一個能量問題,矩陣的結構就是基本原子或者分子電子的排列組合,基於一個組合態的結果,討論算符不知是不是可以算矩陣的非退化算符,即矩陣乘法不是一個主算符,有的只是一個導出算符而已。
  • blender python處理矩陣乘法變更符號
    如果對矩陣對象執行任何乘法,要注意一件事情,Python 的最新版本(當然還有包含Blender內置Python版本)為適當的矩陣乘法實現了新的表示方法。用blender腳本編寫器編寫任何矩陣乘法,乘法* 語法仍然有效,這個只能作為 2.8 中嘗試普通乘法,而不是 2.7 中的矩陣乘法。如果你用在矩陣乘法會報出有趣的錯誤,因為這並不一定會拋出一個錯誤,a * ba @ b想要支持 2.7 和 2.8 的相同矩陣乘法樣式?首先,這似乎是一個類似的挑戰,採用前面幾節中提到的欄位注釋。
  • 線性代數的第一堂課──矩陣乘法的定義
    這段歷史顯示矩陣乘法──矩陣理論中最重要的一個代數運算──絕對不是如數學課本所述那般理所當然,矩陣乘法定義隱含深層的意義,否則為何眾多優秀的數學家竟然看不出矩陣理當如此相乘。今天我們事後諸葛,已然明了矩陣代數之所以遲至十九世紀中葉才誕生的最主要原因在於人們一直無法確定矩陣的本質與功用究竟為何。
  • 利用圖片理解矩陣的線性運算
    利用圖片理解矩陣的線性運算 圖片的儲存方式 在計算機中,按照顏色和灰度的多少可以將圖像分為二值圖像、灰度圖像、索引圖像和真彩RGB圖像四種基本類型。
  • 十個利用矩陣乘法解決的經典題目
    這裡我們不介紹其它有關矩陣的知識,只介紹矩陣乘法和相關性質。不要以為數學中的矩陣也是黑色屏幕上不斷變化的綠色字符。在數學中,一個矩陣說穿了就是一個二維數組。一個n行m列的矩陣可以乘以一個m行p列的矩陣,得到的結果是一個n行p列的矩陣,其中的第i行第j列位置上的數等於前一個矩陣第i行上的m個數與後一個矩陣第j列上的m個數對應相乘後所有m個乘積的和。
  • cuda入門:如何進行矩陣乘法優化
    所以我們的第二個 CUDA 程序,要做一個確實有(某些)實用價值的程序,也就是進行矩陣乘法。而且,這次我們會使用浮點數。  雖然矩陣乘法有點老套,不過因為它相當簡單,而且也可以用來介紹一些有關 CUDA 的有趣性質。  矩陣乘法  為了單純起見,我們這裡以方形的矩陣為例子。
  • Adreno GPU 矩陣乘法——第1講:OpenCL優化
    在要相乘的矩陣中,例如A和B,每個元素對結果矩陣C的不同分量貢獻多次。因此,為Adreno優化MM算法需要我們利用GPU內存子系統。關於GPU 上的矩陣乘法存在哪些困難?然後,我們強制執行內存運算指令,使得矩陣乘法得到的點積在整個tile中部分完成,之後我們將讀取指針移動到tile邊界之外。我們的算法確認兩個層次的平鋪:micro-tile和macro-tile。
  • 理解矩陣背後的現實意義
    我們如果認為矩陣是一組列(行)向量組成的新的複合向量的展開式,那麼為什麼這種展開式具有如此廣泛的應用?特別是,為什麼偏偏二維的展開式如此有用?如果矩陣中每一個元素又是一個向量,那麼我們再展開一次,變成三維的立方陣,是不是更有用?矩陣的乘法規則究竟為什麼這樣規定?為什麼這樣一種怪異的乘法規則卻能夠在實踐中發揮如此巨大的功效?
  • 線性代數:矩陣相似對角化知識總結,從最通俗有趣的角度來講!
    下面,小編根據自己的理解,用最通俗最有趣的語言,帶大家一起來了解一下相似矩陣對角化的基本內容總結。學習相似矩陣的概念及其理解(1)相似矩陣定義(2)相似矩陣的理解相似矩陣的數學解釋(線性變換角度):同一個線性變換在不同基下的矩陣。
  • 什麼是最小二乘法
    今天,測量攻城獅將通過平面度檢測實例,用最簡單、最直接的思路介紹最小二乘法。 一、最小二乘法概念(基本概念還是要介紹一下的)最小二乘法(The leastsquare method),又稱最小平方法,是一個數學的公式,在數學上稱為曲線擬合,這裡所講最小二乘法,專指線性回歸方程。
  • 線性代數入門——矩陣的轉置運算及對稱矩陣的概念
    線性代數課程的一個重要特點(也是難點)是概念眾多,而且各概念間有著千絲萬縷的聯繫,對於初學者不易理解的問題我們會不惜筆墨加以解釋。在內容上,以國內的經典教材「同濟版線性代數」為藍本,並適當選取了一些補充材料以開闊讀者的視野。本系列文章適合作為初學線性代數時的課堂同步輔導,也可作為考研複習的參考資料。文章中的例題大多為紮實基礎的常規題目和幫助加深理解的概念辨析題,並有相當數量的歷年考研試題。
  • 教孩子寫遊戲:3D遊戲編程離不開矩陣,我們要如何理解矩陣?
    矩陣,可以說是本課程中的第一塊硬骨頭。雖然說,我們不需要對矩陣有非常深入的理解,但是,這並不代表著我們可以不學矩陣。這麼說吧,如果你對矩陣一無所知,那麼,整個3D遊戲編程你是學不懂的。你可以靠著強大的記憶力把本課程的代碼記住,並且也能通過自己的摸索寫出類似的3D遊戲來,但是,你對其中的原理是不理解的,將來想要寫功能更強大的3D遊戲,就純粹是天方夜譚了。但是,擺在我面前的難題是:一個成年人想要學習矩陣都有點困難,如何讓小孩子也明白矩陣的一些道理呢?面對這個難題,我足足思考了幾個月的時間,依舊沒有什麼特別有效的方法。
  • 最小二乘法的數學公式
    矩陣的初步概念      3. 最小二乘法的公式和案例      本期的文章可能會讓很多小夥伴感到頭疼不適,因為涉及的數學概念較多(主要是線性代數),如果你對線性代數比較了解,可以直接跳到第三節,如果不太了解,建議耐心把它看完。我們儘量從實用的角度出發,避重就輕,盡最大限度幫助小夥伴們快速理解這個公式的含義並學會使用它。
  • 線性代數學習之矩陣不只是m*n個數字
    也就是矩陣的加法和數量乘法,下面具體來學習一下。矩陣加法:這塊比較好理解,直接給出結論:為了進一步加深對於矩陣的數量乘法的理解,下面回到二維平面的視角,既然矩形裡面是包含多個向量,而每個向量可以看作是空間中的一個點,下面對於這樣一個矩陣:
  • 「3X3矩陣」在三維空間中的的幾何描述
    前面討論了二維空間中矩陣的乘法意義,是將二維向量經過線性變換,變成另一種二維向量。現在要將它推到三維空間:和二維空間一樣,三維空間布滿和坐標軸平行等距的網格i j k都是代表方向的單位向量,向量V就可以寫成現在將整個空間繞Y軸旋轉90度,則單位向量i就變成則單位向量j保持不變則單位向量k就變成了如果整個空間繞任意軸旋轉則 i j k值也隨之改變將變換後的單位向量寫到一個矩陣中,這就是線性變換的因子
  • 教程| 基礎入門:深度學習矩陣運算的概念和代碼實現
    而如果不了解矩陣的運算法則及意義,甚至我們都很難去理解一些如矩陣因子分解法和反向傳播算法之類的基本概念。同時由於特徵和權重都以向量儲存,那如果我們不了解矩陣運算,代碼實現將變得十分艱難。什麼是線性代數?在深度學習中,線性代數是一個強大的數學工具箱,它提供同時計算多維數組的方法。