這本書的目的是教你像計算機科學家一樣思考。這種思維方式結合了數學、工程和自然科學的一些最好的特點。像數學家一樣,計算機科學家使用形式語言來表示思想(特別是計算)。就像工程師一樣,他們設計東西,將組件組裝成系統,并在備選方案中進行權衡。像科學家一樣,他們觀察復雜系統的行為,形成假設,并測試預測。
計算機科學家最重要的技能是解決問題。解決問題的能力是指組織問題,創造性地思考解決方案,并清晰準確地表達解決方案的能力。事實證明,學習編程的過程是練習解決問題技巧的絕佳機會。這就是為什么這一章叫做,程序之道。
在某種程度上,你將學習編程,這本身就是一項有用的技能。在另一個層面上,您將把編程作為達到目的的一種手段。隨著時間的推移,這個目標會越來越清晰。
《如何像計算機科學家一樣思考》(How to Think Like a Computer Scientist)已經是目前最好的Python入門書籍了,但我們將其重新出版:
使用在線IDE Replit,而不是向學生展示如何在Windows上設置Python(許多有抱負的程序員都放棄了這一點)。
使展示現代化,并將源代碼轉換為Markdown,這樣讀者可以更容易地作出貢獻。
使用在線應用程序PythonTutor.com逐步可視化和逐步執行代碼。
本書使用高級Python語言首次介紹科學應用的計算機編程。該闡述以實例和問題為導向,其中應用程序取自數學、數值微積分、統計學、物理學、生物學和金融。這本書教授“matlab風格”和過程編程以及面向對象編程。高中數學是一個必要的背景,它有利于學習經典和數字一元微積分并行閱讀這本書。除了學習如何編寫計算機程序,讀者還將學習如何利用數值方法和程序設計來解決科學和工程的各個分支中出現的數學問題。通過混合編程,數學和科學應用,這本書為實踐計算科學奠定了堅實的基礎。
這本書的目的是使用從數學和自然科學的例子來教授計算機編程。我們選擇使用Python編程語言,因為它結合了非凡的表達能力和非常干凈、簡單和緊湊的語法。Python很容易學習,非常適合作為計算機編程的入門。Python也非常類似于MATLAB,是一種很好的數學計算語言。將Python與編譯語言(如Fortran、C和c++)相結合很容易,這些語言被廣泛用于科學計算。
本書中的例子將編程與數學、物理、生物和金融的應用程序相結合。讀者需要具備基本的一元微積分知識,在高中數學強化課程中教授。這當然是一個優勢,以并行的大學微積分課程,最好包含經典和數值方面的微積分。雖然不是嚴格要求,高中物理背景使許多例子更有意義。
許多入門編程書籍都很緊湊,重點是列出編程語言的功能。然而,學習編程就是學習如何像程序員一樣思考。這本書主要關注的是思考過程,或者等價地說: 編程是一種解決問題的技術。這就是為什么大多數頁面都致力于編程中的案例研究,在這里我們定義一個問題并解釋如何創建相應的程序。新的結構和編程風格(我們可以稱之為理論)通常也通過示例介紹。
掌握使用PyTorch實現深度學習解決方案的實踐方面,使用實踐方法理解理論和實踐。Facebook的人工智能研究小組開發了一個名為PyTorch的平臺,該平臺擁有良好的理論基礎和實用技能,為你在現實世界中應用深度學習做好了準備。
首先,您將了解PyTorch的深度學習是如何以及為什么成為一種具有開創性的框架,它帶有一組工具和技術來解決現實世界中的問題。接下來,這本書將為你打下線性代數、向量微積分、概率和最優化的數學基礎。在建立了這個基礎之后,您將繼續討論PyTorch的關鍵組件和功能,包括層、損失函數和優化算法。
您還將了解基于圖形處理單元(GPU)的計算,這對訓練深度學習模型是必不可少的。介紹了深度學習的前饋網絡、卷積神經網絡、循環神經網絡、長短時記憶網絡、自動編碼器網絡和生成對抗網絡等關鍵網絡結構。在許多訓練和優化深度學習模型的技巧的支持下,這個版本的Python深度學習解釋了使用PyTorch將這些模型帶到生產中的最佳實踐。
你會: 回顧機器學習的基本原理,如過擬合、欠擬合和正則化。 了解深度學習的基本原理,如前饋網絡,卷積神經網絡,遞歸神經網絡,自動微分和隨機梯度下降。 使用PyTorch深入應用線性代數 探索PyTorch的基本原理及其構建塊 使用調優和優化模型
這本書是為任何想學習如何開發機器學習系統的人準備的。我們將從理論和實踐兩方面涵蓋關于機器學習算法的最重要概念,并將使用Python編程語言中的Scikit-learn庫實現許多機器學習算法。在第一章中,您將學習機器學習最重要的概念,在下一章中,您將主要學習分類。在最后一章中,你將學習如何訓練你的模型。我假定你已經了解了編程的基礎知識。
學習使用Python分析數據和預測結果的更簡單和更有效的方法
Python機器學習教程展示了通過關注兩個核心機器學習算法家族來成功分析數據,本書能夠提供工作機制的完整描述,以及使用特定的、可破解的代碼來說明機制的示例。算法用簡單的術語解釋,沒有復雜的數學,并使用Python應用,指導算法選擇,數據準備,并在實踐中使用訓練過的模型。您將學習一套核心的Python編程技術,各種構建預測模型的方法,以及如何測量每個模型的性能,以確保使用正確的模型。關于線性回歸和集成方法的章節深入研究了每種算法,你可以使用書中的示例代碼來開發你自己的數據分析解決方案。
機器學習算法是數據分析和可視化的核心。在過去,這些方法需要深厚的數學和統計學背景,通常需要結合專門的R編程語言。這本書演示了機器學習可以如何實現使用更廣泛的使用和可訪問的Python編程語言。
使用線性和集成算法族預測結果
建立可以解決一系列簡單和復雜問題的預測模型
使用Python應用核心機器學習算法
直接使用示例代碼構建自定義解決方案
機器學習不需要復雜和高度專業化。Python使用了更簡單、有效和經過良好測試的方法,使這項技術更容易為更廣泛的受眾所接受。Python中的機器學習將向您展示如何做到這一點,而不需要廣泛的數學或統計背景。
歡迎學習Python的基礎知識。不僅僅是高級語法和編寫干凈代碼的熟練技巧的集合,您將學習如何通過使用命令行和其他專業工具(如代碼格式化器、類型檢查器、linters和版本控制)來提高您的Python編程技能。
Sweigart帶您通過設置開發環境、命名變量和提高可讀性的最佳實踐,然后處理文檔、組織和性能度量,以及面向對象設計和編程面試中常用的Big-O算法分析。你所學的技能將會提高你編程的能力——不僅僅是用Python,而是用任何語言。
//nostarch.com/beyond-basic-stuff-python
你將學習:
Graph Data Science For Dummies將帶您了解圖數據科學的基礎——從定義圖分析和算法到向您展示如何使用它們進行機器學習和解決現實世界的問題。
了解圖表數據科學基礎
用圖表分析做出更好的預測
使用GDS技術升級您的應用程序
這本書的前半部分快速而徹底地概述了Python的所有基礎知識。你不需要任何以前的經驗與編程開始,我們將教你一切你需要知道,一步一步。
第二部分著重于用Python以實用的方式解決有趣的、真實的問題。一旦你掌握了基礎知識,你就會通過跟隨我們的動手編程練習和項目迅速提高。
我們在書中的每一頁都精心安排了漂亮的排版,代碼示例的語法高亮顯示,以及教學截圖,這樣你可以有效地處理和記憶信息:
所有材料都是Python 3.9的最新版本,Python編程語言在2020年發布的最新和最好的版本。簡而言之,以下是你將學到的Python基礎知識:Python 3的實用介紹:
安裝和運行Python:在Windows、macOS或Linux上設置Python 3.9編碼環境
核心Python 3概念和約定:解釋器會話、腳本、查找和修復代碼bug、如何組織代碼和構造Python程序、如何有效地學習和實踐
Python 3.9基本原理:變量、基本數據類型、函數和循環、條件邏輯和控制流、字符串格式、列表/元組/字典、文件輸入和輸出、錯誤處理。
中級Python概念:面向對象編程(OOP)、正則表達式、名稱空間和作用域、異常處理、安裝第三方包。
Python的實際使用:創建和修改PDF文件、使用數據庫、從web下載和抓取內容、數據科學基礎(科學計算和繪圖)、圖形用戶界面和GUI編程。
如果您是用Python編程的新手,并且正在尋找可靠的介紹,那么這本書就是為您準備的。由計算機科學教師開發,在“為絕對初學者”系列叢書通過簡單的游戲創造教授編程的原則。您將獲得實際的Python編程應用程序所需的技能,并將了解如何在真實場景中使用這些技能。在整個章節中,你會發現一些代碼示例來說明所提出的概念。在每一章的結尾,你會發現一個完整的游戲,展示了這一章的關鍵思想,一章的總結,以及一系列的挑戰來測試你的新知識。當你讀完這本書的時候,你將非常精通Python,并且能夠將你所學到的基本編程原理應用到你要處理的下一種編程語言。
本書建立在基本的Python教程的基礎上,解釋了許多沒有被常規覆蓋的Python語言特性:從通過利用入口點作為微服務扮演雙重角色的可重用控制臺腳本,到使用asyncio高效地整理大量來源的數據。通過這種方式,它涵蓋了基于類型提示的linting、低開銷測試和其他自動質量檢查,以演示一個健壯的實際開發過程。
Python的一些功能強大的方面通常用一些設計的示例來描述,這些示例僅作為一個獨立示例來解釋該特性。通過遵循從原型到生產質量的真實應用程序示例的設計和構建,您不僅將看到各種功能是如何工作的,而且還將看到它們如何作為更大的系統設計過程的一部分進行集成。此外,您還將受益于一些有用的附加說明和庫建議,它們是Python會議上問答會議的主要內容,也是討論現代Python最佳實踐和技術的主要內容,以便更好地生成易于維護的清晰代碼。
高級Python開發是為已經能用Python編寫簡單程序的開發人員準備的,這些開發人員希望了解什么時候使用新的和高級語言特性是合適的,并且能夠以一種自信的方式這樣做。它對于希望升級到更高級別的開發人員和迄今為止使用過較老版本Python的非常有經驗的開發人員特別有用。
你將學習
這本書是給誰的 -已經有Python經驗的中高級開發人員。
理解并實施panda的大數據分析解決方案,強調性能。本書通過探索其底層實現和數據結構,增強了您使用Python數據分析庫pandas的直覺。
《Pandas 編程思想》介紹了大數據的主題,并通過觀看pandas幫助解決的激動人心和有影響力的項目來展示概念。從那里,您將學習按大小和類型評估您自己的項目,以確定pandas是否適合您的需要。作者Hannah Stepanek解釋了如何在pandas中有效地加載和規范化數據,并回顧了一些最常用的加載器和它們的幾個最強大的選項。然后,您將了解如何有效地訪問和轉換數據,應該避免哪些方法,以及何時使用更高級的性能技術。您還將學習基本的數據訪問、學習panda和直觀的字典語法。此外,還討論了如何選擇正確的DataFrame格式、使用多層次的DataFrame以及將來如何改進panda。
在本書結束時,您將對pandas庫的底層工作原理有一個牢固的理解。準備好用正確的方法在你自己的項目中做出自信的決定。
你將學到什么
這本書是給誰的