地址:
本書涵蓋了用于高維數據分析的新的數學原理(統計和幾何)、可擴展(凸和非凸)優化方法,以及重要的應用,如科學成像、寬帶通信、人臉識別、3D視覺和深度網絡。這本書將被用作數據科學、信號處理、優化和機器學習領域的研究生入門教科書。它已被用于課程EECS 290(伯克利)和ELEN 6886(哥倫比亞)。
在過去的二十年里,高維空間中低維結構的研究有了巨大的發展。在很大程度上,具有代表性的低維模型(如稀疏和低秩以及它們的變體和擴展)的幾何和統計特性現在已經很好地理解了。在何種條件下,這些模型可以有效地和高效地從(最小采樣量)數據中恢復,已經清楚地描述了。為了從高維數據中恢復低維模型,已經開發了許多高效和可擴展的算法。對這些算法的工作條件和計算復雜性也進行了詳細的描述。這些新理論結果和算法已經徹底改變了科學和信號處理的實踐數據, 并對傳感、成像和信息處理產生了重要的影響。在科學成像、圖像處理、計算機視覺、生物信息學、信息檢索和機器學習等領域,我們已取得了顯著的技術進步。正如我們將從本書中介紹的應用程序中看到的,其中一些發展似乎違背了傳統智慧。
見證了這一歷史性的進步,我們認為,現在是全面研究這一新知識體系并在統一的理論和計算框架下組織這些豐富成果的時候了。關于壓縮感知和稀疏模型的數學原理,已有許多優秀的書籍。然而,本書的目標是通過真正有效的計算,彌合低維模型在高維數據分析中的原理和應用之間的差距:
本書結構
這本書的主體包括三個相互關聯的部分: 原理、計算和應用(PCA)。本書還對相關的背景知識做了附錄。
第一部分: 原理(2-7章)提出了稀疏、低秩和一般低維模型的基本性質和理論結果。它描述了在保證正確性或精度的情況下,恢復這種低維結構的逆問題變得易于處理并且能夠有效地解決的條件。
第二部分: 計算(第8章和第9章)介紹了凸和非凸優化的方法,以開發用于恢復低維模型的實用算法。這些方法展示了如何系統地提高算法效率和降低整體計算復雜度,從而使生成的算法快速、可擴展到大尺寸和高維數據的強大思想。
第三部分: 應用(10到16章)演示了如何前面兩部分的原理和計算方法可能價格不能提高解決各種現實問題和實踐。這些應用還指導如何適當地定制和擴展本書中介紹的理想化的模型和算法,以包含關于應用的其他領域特定知識(先驗或約束)。
最后的附錄(A-E)在書的最后是為了使這本書很大程度上是獨立的。
矩陣代數是數據分析和統計理論中最重要的數學領域之一。這本書的第一部分為統計中的應用提出矩陣代數的理論的相關方面。本部分從向量和向量空間的基本概念開始,接著介紹矩陣的基本代數性質,然后描述向量和矩陣在多元演算中的解析性質,最后討論線性系統解和特征分析中矩陣的運算。這部分基本上是獨立的。
本書的第二部分開始考慮在統計中遇到的各種類型的矩陣,例如投影矩陣和正定矩陣,并描述這些矩陣的特殊性質。第二部分也介紹了矩陣理論在統計中的一些應用,包括線性模型、多元分析和隨機過程。本部分說明了在本書第一部分中發展的矩陣理論。書的前兩個部分可以作為為統計學生的矩陣代數課程的文本,或作為在線性模型或多元統計的各種課程的補充文本。
這本書的第三部分涵蓋了數值線性代數。它以數值計算的基礎討論開始,然后描述精確和有效的算法因式分解矩陣,求解線性方程組,并提取特征值和特征向量。雖然這本書沒有捆綁到任何特定的軟件系統,它描述并給出了使用數字線性代數的現代計算機軟件的例子。這部分基本上是自包含的,盡管它假設有一些能力用Fortran或C編程和/或使用R/S-Plus或Matlab的能力。書的這一部分可以作為在統計計算中的一門課程的文本使用,或者作為強調計算的各種課程的補充文本。
這本書包括大量的練習,并在附錄中提供了一些解決方案。
James E. Gentle是喬治梅森大學計算統計學教授。他是美國統計協會(ASA)和美國科學促進會的會員。他曾在美國標準局擔任過幾個國家職務并擔任過美國標準局期刊的副主編以及其他統計和計算期刊的副主編。他是隨機數生成和蒙特卡羅方法,第二版,和計算統計元素的作者。
線性代數是計算和數據科學家的基本工具之一。這本書“高級線性代數:基礎到前沿”(ALAFF)是一個替代傳統高級線性代數的計算研究生課程。重點是數值線性代數,研究理論、算法和計算機算法如何相互作用。這些材料通過將文本、視頻、練習和編程交織在一起來保持學習者的參與性。
我們在不同的設置中使用了這些材料。這是我們在德克薩斯大學奧斯汀分校名為“數值分析:線性代數”的課程的主要資源,該課程由計算機科學、數學、統計和數據科學、機械工程以及計算科學、工程和數學研究生課程提供。這門課程也通過UT-Austin計算機科學碩士在線課程提供“高級線性代數計算”。最后,它是edX平臺上名為“高級線性代數:基礎到前沿”的大規模在線開放課程(MOOC)的基礎。我們希望其他人可以將ALAFF材料重新用于其他學習設置,無論是整體還是部分。
為了退怕學習者,我們采取了傳統的主題的數字線性代數課程,并組織成三部分。正交性,求解線性系統,以及代數特征值問題。
第一部分:正交性探討了正交性(包括規范的處理、正交空間、奇異值分解(SVD)和解決線性最小二乘問題)。我們從這些主題開始,因為它們是其他課程的先決知識,學生們經常與高等線性代數并行(甚至在此之前)進行學習。
第二部分:求解線性系統集中在所謂的直接和迭代方法,同時也引入了數值穩定性的概念,它量化和限定了在問題的原始陳述中引入的誤差和/或在計算機算法中發生的舍入如何影響計算的正確性。
第三部分:代數特征值問題,重點是計算矩陣的特征值和特征向量的理論和實踐。這和對角化矩陣是密切相關的。推廣了求解特征值問題的實用算法,使其可以用于奇異值分解的計算。本部分和本課程以在現代計算機上執行矩陣計算時如何實現高性能的討論結束。
有很多關于傅里葉變換的書; 然而,很少有面向多學科讀者的。為工程師寫一本關于代數概念的書是一個真正的挑戰,即使不是太難的事,也要比寫一本關于理論應用的代數書更有挑戰性。這就是本書試圖面對的挑戰。因此,每個讀者都能夠創建一個“按菜單”的程序,并從語句或計算機程序中提取特定元素,以建立他們在該領域的知識,或將其運用于更具體的問題。
本文敘述是非常詳細的。讀者可能偶爾需要一些關于有限組的高級概念,以及對組行為的熟悉程度。我強調了那些重要的定義和符號。例如,從多個角度(交換群、信號處理、非交換群)研究卷積的概念,每次都要放在它的背景知識中。因此,不同的段落,雖然遵循一個邏輯遞進,有一個真正的統一,但可以根據自己需要選取閱讀。
第一章用群論的語言來解釋主要概念,并解釋后面將用到的符號。第二章將所得結果應用于各種問題,并首次接觸快速算法(例如Walsh 變換)。第三章對離散傅里葉變換進行了闡述。第四章介紹了離散傅里葉變換的各種應用,并構成了對前一章的必要補充,以充分理解所涉及的機制以及在實際情況中使用。第五章圍繞傅里葉變換提出了更多新穎的思想和算法,產生了大量的應用。第六章需要一些更高級的知識,特別是對有限場理論的一些熟悉。它研究了有限域中的值變換,并給出了在校正碼中的應用。最后兩章(最困難的一章),具有更多的代數性質,并建議推廣已經在有限非交換群的情況下進行的構造。第七章揭示了線性表示的理論。第八章和最后一章將這一理論應用于理論(群的簡潔性研究)和實際(光譜分析)領域。
凸優化研究在凸集上最小化凸函數的問題。凸性,連同它的許多含義,已經被用來為許多類凸程序提出有效的算法。因此,凸優化已經廣泛地影響了科學和工程的幾個學科。
過去幾年,凸優化算法徹底改變了離散和連續優化問題的算法設計。對于圖的最大流、二部圖的最大匹配和子模函數最小化等問題,已知的最快算法涉及到對凸優化算法的基本和重要使用,如梯度下降、鏡像下降、內點方法和切割平面方法。令人驚訝的是,凸優化算法也被用于設計離散對象(如擬陣)的計數問題。同時,凸優化算法已經成為許多現代機器學習應用的中心。由于輸入實例越來越大、越來越復雜,對凸優化算法的需求也極大地推動了凸優化技術本身的發展。
這本書的目的是使讀者能夠獲得對凸優化算法的深入理解。重點是從第一性原理推導出凸優化的關鍵算法,并根據輸入長度建立精確的運行時間界限。由于這些方法的廣泛適用性,一本書不可能向所有人展示這些方法的應用。這本書展示了各種離散優化和計數問題的快速算法的應用。本書中所選的應用程序的目的是為了說明連續優化和離散優化之間的一個相當令人驚訝的橋梁。
目標受眾包括高級本科生、研究生和理論計算機科學、離散優化和機器學習方面的研究人員。
//convex-optimization.github.io/
第一章-連續優化和離散優化的銜接
我們提出了連續優化和離散優化之間的相互作用。最大流問題是一個激勵人心的例子。我們也追溯了線性規劃的歷史——從橢球法到現代內點法。最后介紹了橢球法在求解最大熵問題等一般凸規劃問題上的一些最新成果。
第二章 預備知識
我們復習這本書所需的數學基礎知識。這些內容包括多元微積分、線性代數、幾何、拓撲、動力系統和圖論中的一些標準概念和事實。
第三章-凸性
我們引入凸集,凸性的概念,并展示了伴隨凸性而來的能力:凸集具有分離超平面,子梯度存在,凸函數的局部最優解是全局最優解。
第四章-凸優化與效率
我們提出了凸優化的概念,并正式討論了它意味著什么,有效地解決一個凸程序作為一個函數的表示長度的輸入和期望的精度。
第五章-對偶性與最優性
我們引入拉格朗日對偶性的概念,并證明在一個稱為Slater條件的溫和條件下,強拉格朗日對偶性是成立的。隨后,我們介紹了拉格朗日對偶和優化方法中經常出現的Legendre-Fenchel對偶。最后,給出了Kahn-Karush-Tucker(KKT)最優性條件及其與強對偶性的關系。
第六章-梯度下降
我們首先介紹梯度下降法,并說明如何將其視為最陡下降。然后,我們證明了梯度下降法在函數的梯度是連續的情況下具有收斂時間界。最后,我們使用梯度下降法提出了一個快速算法的離散優化問題:計算最大流量無向圖。
第七章-鏡像下降和乘法權值更新
我們推出我們的凸優化的第二個算法-稱為鏡面下降法-通過正則化觀點。首先,提出了基于概率單純形的凸函數優化算法。隨后,我們展示了如何推廣它,重要的是,從它推導出乘法權值更新(MWU)方法。然后利用后一種算法開發了一個快速的近似算法來解決圖上的二部圖匹配問題。
第八章-加速梯度下降
提出了Nesterov的加速梯度下降算法。該算法可以看作是前面介紹的梯度下降法和鏡像下降法的混合。我們還提出了一個應用加速梯度法求解線性方程組。
第九章-牛頓法
IWe開始了設計凸優化算法的旅程,其迭代次數與誤差成對數關系。作為第一步,我們推導并分析了經典的牛頓方法,這是一個二階方法的例子。我們認為牛頓方法可以被看作是黎曼流形上的最速下降,然后對其收斂性進行仿射不變分析。
第十章 線性規劃的內點法
利用牛頓法及其收斂性,推導出一個線性規劃的多項式時間算法。該算法的關鍵是利用障礙函數的概念和相應的中心路徑,將有約束優化問題簡化為無約束優化問題。
第十一章-內點法的變種與自洽
給出了線性規劃中路徑遵循IPM的各種推廣。作為應用,我們推導了求解s-t最小代價流問題的快速算法。隨后,我們引入了自一致性的概念,并給出了多邊形和更一般凸集的障礙函數的概述。
第十二章 線性規劃的橢球法
介紹了凸優化的一類切割平面方法,并分析了一種特殊情況,即橢球體法。然后,我們展示了如何使用這個橢球方法來解決線性程序超過0-1多邊形時,我們只能訪問一個分離oracle的多邊形。
第十三章-凸優化的橢球法
我們展示了如何適應橢球法求解一般凸程序。作為應用,我們提出了子模函數最小化的多項式時間算法和計算組合多邊形上的最大熵分布的多項式時間算法。
這本書全面介紹優化工程系統設計的實用算法。這本書從工程的角度進行優化,其目標是設計一個系統來優化受約束的一組指標。讀者將學習一系列挑戰的計算方法,包括高維搜索空間,處理有多個競爭目標的問題,以及適應指標中的不確定性。圖表、例子和練習傳達了數學方法背后的直覺。文本提供了Julia編程語言的具體實現。
//mitpress.mit.edu/books/algorithms-optimization
許多學科的核心都涉及到優化。在物理學中,系統被驅動到他們的最低能量狀態服從物理定律。在商業上,公司的目標是股東價值最大化。在生物學中,越健康的生物體越有可能生存下來。這本書將從工程的角度關注優化,目標是設計一個系統來優化受約束的一組指標。這個系統可以是一個復雜的物理系統,比如飛機,也可以是一個簡單的結構,比如自行車車架。這個系統甚至可能不是物理的;例如,我們可能會有興趣為自動化車輛設計一個控制系統,或設計一個計算機視覺系統來檢測腫瘤活檢的圖像是否為癌。我們希望這些系統能運行得盡可能好。根據應用程序的不同,相關的度量可能包括效率、安全性和準確性。對設計的限制可能包括成本、重量和結構堅固性。
這本書是關于優化的算法,或計算過程。給定系統設計的一些表示,如編碼機翼幾何的一組數字,這些算法將告訴我們如何搜索空間的可能設計,以找到最好的一個。根據應用程序的不同,這種搜索可能涉及運行物理實驗,比如風洞測試,也可能涉及計算解析表達式或運行計算機模擬。我們將討論解決各種挑戰的計算方法,例如如何搜索高維空間,處理有多個競爭目標的問題,以及適應指標中的不確定性。
這本書來自統計學習課程,這是一門統計機器學習的入門課程,面向具有一些微積分、線性代數和統計學背景的學生。這門課程的重點是監督學習:分類和回歸。本課程將涵蓋機器學習和數據科學中使用的一系列方法,包括:
這些方法將在整個課程中被研究并應用于來自各種應用的真實數據。課程還涵蓋了一些重要的實際問題,如交叉驗證、模型選擇和偏方差權衡。課程包括理論(例如,推導和證明)以及實踐(特別是實驗室和小型項目)。實際部分將使用Python實現。
【導讀】深度神經網絡在很多監督任務都達到了SOTA性能,但是其計算量是個挑戰。來自MIT 教授 Vivienne Sze等學者發布了關于《深度神經網絡的高效處理》著作,本書為深度神經網絡(DNNs)的高效處理提供了關鍵原則和技術的結構化處理。值得關注。
//www.morganclaypoolpublishers.com/catalog_Orig/product_info.php?cPath=22&products_id=1530
本書為深度神經網絡(DNNs)的高效處理提供了關鍵原則和技術的結構化處理。DNNs目前廣泛應用于許多人工智能(AI)應用,包括計算機視覺、語音識別和機器人技術。雖然DNNs在許多人工智能任務中提供了最好的性能,但它以高計算復雜度為代價。因此,在不犧牲準確性或增加硬件成本的情況下,能夠有效處理深層神經網絡以提高指標(如能源效率、吞吐量和延遲)的技術對于在人工智能系統中廣泛部署DNNs至關重要。
本書中包括了DNN處理的背景知識;設計DNN加速器的硬件架構方法的描述和分類;評價和比較不同設計的關鍵指標;DNN處理的特點是服從硬件/算法的共同設計,以提高能源效率和吞吐量;以及應用新技術的機會。讀者將會發現對該領域的結構化介紹,以及對現有工作中關鍵概念的形式化和組織,從而提供可能激發新想法的見解。
深度神經網絡(DNNs)已經變得非常流行; 然而,它們是以高計算復雜度為代價的。因此,人們對有效處理DNNs產生了極大的興趣。DNN加速的挑戰有三:
目錄內容:
第一部分理解深層神經網絡
第二部分處理DNNs的硬件設計
第三部分,DNN硬件和算法的協同設計
第一個模塊旨在提供DNN領域的總體背景和了解DNN工作負載的特點。
第二部分主要介紹處理DNNs的硬件設計。它根據定制程度(從通用平臺到完全定制硬件)討論各種架構設計決策,以及在將DNN工作負載映射到這些架構時的設計考慮。同時考慮了時間和空間架構。
第三個模塊討論了如何通過算法和硬件的協同設計來提高堆棧的效率,或者通過使用混合信號電路新的存儲器或設備技術來降低堆棧的效率。在修改算法的情況下,必須仔細評估對精度的影響。
Vivienne Sze,來自 MIT 的高效能多媒體系統組(Energy-Efficient Multimedia Systems Group)。她曾就讀于多倫多大學,在 MIT 完成 PhD 學業并獲得電氣工程博士學位,目前在 MIT 任教。Sze 教授的主要研究興趣是高效能算法和移動多媒體設備應用架構。
近年來,神經網絡已成為分析復雜和抽象數據模型的有力工具。然而,它們的引入本質上增加了我們的不確定性,即分析的哪些特征是與模型相關的,哪些是由神經網絡造成的。這意味著,神經網絡的預測存在偏差,無法與數據的創建和觀察的真實本質區分開來。為了嘗試解決這些問題,我們討論了貝葉斯神經網絡:可以描述由網絡引起的不確定性的神經網絡。特別地,我們提出了貝葉斯統計框架,它允許我們根據觀察某些數據的根深蒂固的隨機性和我們缺乏關于如何創建和觀察數據的知識的不確定性來對不確定性進行分類。在介紹這些技術時,我們展示了如何從原理上獲得神經網絡預測中的誤差,并提供了描述這些誤差的兩種常用方法。我們還將描述這兩種方法在實際應用時如何存在重大缺陷,并強調在使用神經網絡時需要其他統計技術來真正進行推理。
對因果推理的簡明和自成體系的介紹,在數據科學和機器學習中越來越重要。
因果關系的數學化是一個相對較新的發展,在數據科學和機器學習中變得越來越重要。這本書提供了一個獨立的和簡明的介紹因果模型和如何學習他們的數據。在解釋因果模型的必要性,討論潛在的因果推論的一些原則,這本書教讀者如何使用因果模型:如何計算干預分布,如何從觀測推斷因果模型和介入的數據,和如何利用因果思想經典的機器學習問題。所有這些主題都將首先以兩個變量的形式進行討論,然后在更一般的多元情況下進行討論。對于因果學習來說,二元情況是一個特別困難的問題,因為經典方法中用于解決多元情況的條件獨立不存在。作者認為分析因果之間的統計不對稱是非常有意義的,他們報告了他們對這個問題十年來的深入研究。
本書對具有機器學習或統計學背景的讀者開放,可用于研究生課程或作為研究人員的參考。文本包括可以復制和粘貼的代碼片段、練習和附錄,其中包括最重要的技術概念摘要。
首先,本書主要研究因果關系推理子問題,這可能被認為是最基本和最不現實的。這是一個因果問題,需要分析的系統只包含兩個可觀測值。在過去十年中,作者對這個問題進行了較為詳細的研究。本書整理這方面的大部分工作,并試圖將其嵌入到作者認為對研究因果關系推理問題的選擇性至關重要的更大背景中。盡管先研究二元(bivariate)案例可能有指導意義,但按照章節順序,也可以直接開始閱讀多元(multivariate)章節;見圖一。
第二,本書提出的解決方法來源于機器學習和計算統計領域的技術。作者對其中的方法如何有助于因果結構的推斷更感興趣,以及因果推理是否能告訴我們應該如何進行機器學習。事實上,如果我們不把概率分布描述的隨機實驗作為出發點,而是考慮分布背后的因果結構,機器學習的一些最深刻的開放性問題就能得到最好的理解。
斯坦福大學Stephen Boyd教授與加州大學Lieven Vandenberghe教授合著的應用線性代數導論:向量、矩陣和最小二乘法《Introduction to Applied Linear Algebra – Vectors, Matrices, and Least Squares》在2018年由劍橋大學出版社發行,開源書包含19章,473頁pdf,這本書的目的是提供一個介紹向量,矩陣,最小二乘方法,應用線性代數的基本主題。目標是讓學生通俗易懂,入門學習。讓學習者了解在包括數據擬合、機器學習和人工智能,斷層、導航、圖像處理、金融、和自動控制系統的應用。是一本不可多得好教材。?
Stephen P. Boyd是斯坦福大學電子工程Samsung 教授,信息系統實驗室電子工程教授,斯坦福大學電子工程系系主任。他在管理科學與工程系和計算機科學系任職,是計算與數學工程研究所的成員。他目前的研究重點是凸優化在控制、信號處理、機器學習和金融方面的應用。 //web.stanford.edu/~boyd/
Lieven Vandenberghe,美國加州大學洛杉磯分校電子與計算機工程系和數學系教授
這本書的目的是提供一個介紹向量,矩陣,最小二乘方法,應用線性代數的基本主題。我們的目標是讓很少或根本沒有接觸過線性代數的學生快速學習,以及對如何使用它們在許多應用程序中, 包括數據擬合、機器學習和人工智能, 斷層、導航、圖像處理、金融、和自動控制系統。
讀者所需要的背景知識是熟悉基本的數學符號。我們只在少數地方使用微積分,但它并不是一個關鍵的角色,也不是一個嚴格的先決條件。雖然這本書涵蓋了許多傳統上作為概率和統計的一部分來教授的話題,比如如何將數學模型與數據相匹配,但它并不需要概率和統計方面的知識或背景。
這本書涉及的數學比應用線性代數的典型文本還少。我們只使用線性代數中的一個理論概念,線性無關,和一個計算工具,QR分解;我們處理大多數應用程序的方法只依賴于一種方法,即最小二乘(或某種擴展)。從這個意義上說,我們的目標是知識經濟:僅用一些基本的數學思想、概念和方法,我們就涵蓋了許多應用。然而,我們所提供的數學是完整的,因為我們仔細地證明了每一個數學命題。然而,與大多數介紹性的線性代數文本不同,我們描述了許多應用程序,包括一些通常被認為是高級主題的應用程序,如文檔分類、控制、狀態估計和組合優化。
這本書分為三部分。第一部分向讀者介紹向量,以及各種向量運算和函數,如加法、內積、距離和角度。我們還將描述如何在應用程序中使用向量來表示文檔中的字數、時間序列、病人的屬性、產品的銷售、音軌、圖像或投資組合。第二部分對矩陣也做了同樣的處理,最終以矩陣的逆和求解線性方程的方法結束。第三部分,關于最小二乘,是回報,至少在應用方面。我們展示了近似求解一組超定方程的簡單而自然的思想,以及對這一基本思想的一些擴展,可以用來解決許多實際問題。