看板 Math 關於我們 聯絡資訊
矩陣乘法的一個演算法 把乘法跟加分的做組合 加快運算速度 好奇當初是怎麼想到的? 是否有多個乘法與加分的算式 也都可以進一步優化? 有訣竅嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 110.28.75.7 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Math/M.1565602415.A.F50.html
chemmachine : 觀察到大矩陣乘法運算慢,小矩陣乘法運算快。就將 08/12 19:11
chemmachine : 矩陣切割。每次切對半,所以會要求邊長為2^n*2^n 08/12 19:12
chemmachine : 這和微積分一樣,曲線下的面積不會算,就切割成很多 08/12 19:13
chemmachine : 小份。數學方法不外乎分析、歸納,由小到大,由大到 08/12 19:14
chemmachine : 小,由具體而抽象,由抽象而具體,由例子而通則,由 08/12 19:15
chemmachine : 則而實例、遞迴,離散到連續,連續到離散,低維 08/12 19:16
chemmachine : 到高維,高維到低維。你要不同的算法 08/12 19:16
chemmachine : 子空間到全體,全體到延拓等等。 08/12 19:17
chemmachine : 有序、選擇、遞迴等。而且擴展到所有學術的各層面。 08/12 19:19
chemmachine : 比如說近體詩的平仄,也可以看成布林代數的排列。 08/12 19:20
chemmachine : 程式都是一步驟一步驟解決,或呼叫函式。其他的優化 08/12 19:25
chemmachine : 要查文章。 08/12 19:25
DLHZ : 乘法有karatsuba 08/12 19:43
好的 感謝 我會再想一想查資料 最近覺得這蠻有趣的 ※ 編輯: loadingN (110.28.75.7 臺灣), 08/12/2019 23:10:58
chemmachine : Coppersmith–Winograd algorithm 是一個比較快但實 08/12 23:49
chemmachine : 用性不高的方法,看影片介紹就覺得很複雜, 08/12 23:50
chemmachine : Strassen演算法應該算滿主要的方法。 08/12 23:50
LPH66 : 要說乘加法的運算式的話, 最近很夯的 AI 領域 08/13 06:28
LPH66 : 其底層的核心運算卷積乘法也是有類似的演算法研究在 08/13 06:29
LPH66 : 有看過的例如 Winograd convolution algorithm 08/13 06:33
LPH66 : (和上面 chem 大提的演算法名字裡的 Winograd 08/13 06:33
LPH66 : 應該是同一個人 XD) 用來減少 3x3 卷積的乘法數 08/13 06:34
l6l6au : 太神啦 08/14 09:32