用Python學(xué)透線性代數(shù)和微積分

發(fā)布時間:2022-04-17 22:14:08  |  來源:騰訊網(wǎng)  

程序員一定要有數(shù)學(xué)功底嗎?這是一個老生常談的問題。

比起循序漸進地學(xué)習(xí)數(shù)學(xué)知識,大多數(shù)程序員是在遇到跟數(shù)學(xué)相關(guān)的問題時才去主動了解的。

雖然這種“遇到問題解決問題”的學(xué)習(xí)方法會讓人陷入短暫的自我否定之中,但是等到真正掌握了某個數(shù)學(xué)知識點,那種“久旱逢甘霖”的感覺會讓人非??鞓?。

為了延續(xù)這種快樂,有的人從箱子里翻出了當(dāng)年的高等數(shù)學(xué)、線性代數(shù)以及概率論與數(shù)理統(tǒng)計教材,但翻了幾頁之后又重歸自我否定;還有的人會繼續(xù)這種臨時抱佛腳的學(xué)習(xí)模式,從而進入“盲人摸象”模式:了解了許多知識點,卻始終不能形成完整的知識網(wǎng)絡(luò)。

由此可見,對于程序員而言,擁有一定的數(shù)學(xué)功底是十分必要的。

目前,數(shù)學(xué)技能對于專業(yè)軟件開發(fā)人員來說越來越重要,尤其是在公司為數(shù)據(jù)科學(xué)和機器學(xué)習(xí)搭建團隊的時候。數(shù)學(xué)在其他現(xiàn)代應(yīng)用中也扮演著不可或缺的角色,如游戲開發(fā)、計算機圖形學(xué)和動畫、圖像和信號處理、定價引擎以及股票市場分析等。

在這里,向大家推薦這本《程序員數(shù)學(xué):用Python學(xué)透線性代數(shù)和微積分》,它讓作為程序員的讀者,從程序員的角度、以程序員易于理解的方式來學(xué)習(xí)數(shù)學(xué)。

保羅·奧蘭德(Paul Orland) 譯者:百度KFive

比起完全的啟發(fā)式寫作,本書作者更關(guān)注讀者是否真正掌握了相關(guān)的數(shù)學(xué)知識,主要體現(xiàn)在以下三點。

本書作者規(guī)劃了詳細的學(xué)習(xí)路徑——從基礎(chǔ)的向量計算到最終的神經(jīng)網(wǎng)絡(luò)訓(xùn)練,基本涵蓋了業(yè)務(wù)工程師和初級算法工程師所需了解的所有數(shù)學(xué)知識。

作者的寫作基于大量的代碼片段,且以 Jupyter Notebook 為載體,讀者可以直接把學(xué)到的數(shù)學(xué)知識轉(zhuǎn)化為代碼。當(dāng)然,作為讀者的你也不必有太大的心理負擔(dān),本書中的代碼完全遵循“夠用就好”的原則,不會增加額外的學(xué)習(xí)開銷。

作者為各章添加了大量的練習(xí)(事實上,很少見到一本書里有這么多練習(xí))。這些練習(xí)既有開放式的提問,又有針對正文內(nèi)容的擴展和提升。

這本書適合具備扎實的編程基礎(chǔ)、想提升數(shù)學(xué)技能或想了解數(shù)學(xué)在軟件中的應(yīng)用的所有人。你 不需要事先接觸過微積分或線性代數(shù),只需要了解高中水平的代數(shù)和幾何學(xué)知識就足夠了(即使那是很久以前所學(xué)的)。閱讀本書的時候最好坐在計算機前面,如果你能跟隨示例敲出代碼并做完所有的練習(xí),會收獲很多。

本書結(jié)構(gòu)

第 1 章帶你進入數(shù)學(xué)的世界。它涵蓋數(shù)學(xué)在計算機編程中的一些重要應(yīng)用,介紹本書中的一

些主題,并解釋編程如何成為一個數(shù)學(xué)學(xué)習(xí)者的寶貴工具。

之后,本書分為三個部分。

第一部分介紹二維和三維向量、向量空間、線性變換和矩陣,這些都是線性代數(shù)的基礎(chǔ);

第二部分介紹微積分,并重點講解幾個對程序員特別實用的知識點:導(dǎo)數(shù)、梯度、歐拉方法和符號求值;

最后,第三部分介紹一些重要的機器學(xué)習(xí)算法的工作原理。

如果你在閱讀每一章的時候都掌握了前面章節(jié)中的知識,那么不會遇到任何障礙。將所有概 念按順序排列的缺點是,應(yīng)用程序代碼看起來很繁雜。各種示例會讓本書讀起來更有趣,幫你了解本書所涉及的數(shù)學(xué)知識以及對這些知識的廣泛應(yīng)用。

以下展示了部分目錄內(nèi)容:

本書的閱讀體驗很棒,學(xué)習(xí)曲線十分平緩,并且章節(jié)之間環(huán)環(huán)相扣。最關(guān)鍵的是,它能幫你通過代碼來學(xué)習(xí)數(shù)學(xué),并且用包含數(shù)學(xué)知識的代碼來解決實際問題。

內(nèi)容簡介

代碼和數(shù)學(xué)是相知相惜的好伙伴,它們基于共同的理性思維,數(shù)學(xué)公式的推導(dǎo)可以自然地在編寫代碼的過程中展開。本書帶領(lǐng)程序員使用自己熟知的工具,即代碼,來理解機器學(xué)習(xí)和游戲設(shè)計中的數(shù)學(xué)知識。通過Python代碼和300多個練習(xí),讀者將掌握二維向量、三維向量、矩陣變換、線性方程、微積分、線性回歸、邏輯回歸、梯度下降等。

作譯者簡介

作者:保羅·奧蘭德(Paul Orland)

硅谷創(chuàng)業(yè)公司Tachyus的聯(lián)合創(chuàng)始人兼CEO,擁有耶魯大學(xué)數(shù)學(xué)學(xué)士學(xué)位和華盛頓大學(xué)物理學(xué)碩士學(xué)位,曾任微軟公司軟件開發(fā)工程師,近10年來一直致力于使用數(shù)學(xué)和函數(shù)式編程來優(yōu)化能源生產(chǎn)。

譯者:百度KFive

KFive是百度App大前端團隊,成員涵蓋PC端和手機百度的大前端研發(fā)者。在業(yè)務(wù)支持之外,KFive研究的技術(shù)方向還包括前端基礎(chǔ)架構(gòu)、跨端開發(fā)、Node.js、端智能和前端智能化等,并且積累了豐富的產(chǎn)出。KFive的名稱不僅來源于起初的辦公地點在百度科技園五號樓,更體現(xiàn)了其對軟件開發(fā)的理解,即“五Key”:Key1者,精益求精;Key2者,大巧不工;Key3者,獨運匠心;Key4者,百煉千錘;Key5者,善始善終。

大佬推薦

“這本書循序漸進地介紹了程序員應(yīng)該掌握的有用的數(shù)學(xué)概念?!?/p>

——Christopher Haupt,Swoogo公司工程副總裁

“這本書嚴謹而簡明地概述了對現(xiàn)代編程起支撐作用的數(shù)學(xué)知識。”

——Dan Sheikh,BCG Digital Ventures公司工程師

“實用、引人入勝。推薦所有程序員閱讀?!?/p>

——Vincent Zhu,RethinkXSocial網(wǎng)站聯(lián)合創(chuàng)始人兼CTO

“這本書為需要提高數(shù)學(xué)技能的程序員建造了一座橋梁,使數(shù)學(xué)不再那么神秘、那么難以理解?!?/p>

——Robert Walsh,Excalibur Solutions公司總裁

關(guān)鍵詞: 用Python學(xué)透線性代數(shù)和微積分 python

 

網(wǎng)站介紹  |  版權(quán)說明  |  聯(lián)系我們  |  網(wǎng)站地圖 

星際派備案號:京ICP備2022016840號-16 營業(yè)執(zhí)照公示信息版權(quán)所有 郵箱聯(lián)系:920 891 263@qq.com