這份手冊最大的特點就是包含許多關于機器學習的經典公式和圖表,有助于您快速回憶有關機器學習的知識點。非常適合那些正在準備與機器學習相關的工作面試的人。
項目地址: //github.com/soulmachine/machine-learning-cheat-sheet
該手冊雖然只有 135 頁,但麻雀雖小五臟俱全,包含了 28 個主題內容,目錄如下:
自然語言處理(NLP)為解決人工智能方面的問題提供了無限的機會,使Amazon Alexa和谷歌翻譯等產品成為可能。如果您是NLP和深度學習的新手,那么本實用指南將向您展示如何使用PyTorch(一個基于python的深度學習庫)應用這些方法。
作者Delip Rao和Brian McMahon為您提供了關于NLP和深度學習算法的堅實基礎,并演示了如何使用PyTorch構建應用程序,其中包含針對您所面臨問題的文本的豐富表示。每一章包括幾個代碼示例和插圖。
//www.oreilly.com/library/view/natural-language-processing/9781491978221/
機器學習簡明指南,不可錯過!
A Machine Learning Primer
亞馬遜研究科學家Mihail Eric關于機器學習實踐重要經驗。包括監督學習、機器學習實踐、無監督學習以及深度學習。具體為:
監督學習
機器學習實踐
無監督學習
深度學習
這是第一本介紹隨機過程貝葉斯推理程序的書。貝葉斯方法有明顯的優勢(包括對先驗信息的最佳利用)。最初,這本書以貝葉斯推理的簡要回顧開始,并使用了許多與隨機過程分析相關的例子,包括四種主要類型,即離散時間和離散狀態空間以及連續時間和連續狀態空間。然后介紹了理解隨機過程所必需的要素,接著是專門用于此類過程的貝葉斯分析的章節。重要的是,這一章專門討論隨機過程中的基本概念。本文詳細描述了離散時間馬爾可夫鏈、馬爾可夫跳躍過程、常規過程(如布朗運動和奧恩斯坦-烏倫貝克過程)、傳統時間序列以及點過程和空間過程的貝葉斯推理(估計、檢驗假設和預測)。書中著重強調了許多來自生物學和其他科學學科的例子。為了分析隨機過程,它將使用R和WinBUGS。
如果您是用Python編程的新手,并且正在尋找可靠的介紹,那么這本書就是為您準備的。由計算機科學教師開發,在“為絕對初學者”系列叢書通過簡單的游戲創造教授編程的原則。您將獲得實際的Python編程應用程序所需的技能,并將了解如何在真實場景中使用這些技能。在整個章節中,你會發現一些代碼示例來說明所提出的概念。在每一章的結尾,你會發現一個完整的游戲,展示了這一章的關鍵思想,一章的總結,以及一系列的挑戰來測試你的新知識。當你讀完這本書的時候,你將非常精通Python,并且能夠將你所學到的基本編程原理應用到你要處理的下一種編程語言。
使用Python的高級數據科學和分析使數據科學家能夠繼續發展他們的技能,并將其應用于商業和學術設置中。這本書中討論的主題是補充和后續主題討論的數據科學和分析與Python。其目的是使用Python開發的工具,如SciKit-learn、Pandas、Numpy、Beautiful Soup、NLTK、NetworkX等,覆蓋數據科學中重要的高級領域。使用Keras、TensorFlow、Core ML等框架,以及用于iOS和MacOS應用開發的Swift來支持模型開發。
管理統計和數據科學的原理包括:數據可視化;描述性措施;概率;概率分布;數學期望;置信區間;和假設檢驗。方差分析;簡單線性回歸;多元線性回歸也包括在內。另外,本書還提供了列聯表、卡方檢驗、非參數方法和時間序列方法。
教材:
Python 官方教程(//docs.python.org/3/tutorial/)的開頭是這樣寫的:“Python 是一門既容易上手又強大的編程語言。”這句話本身并無大礙,但需要注意的是,正因為它既好學又好用,所以很多Python程序員只用到了其強大功能的一小部分。
只需要幾個小時,經驗豐富的程序員就能學會用 Python 寫出實用的程序。然而隨著這最初高產的幾個小時變成數周甚至數月,在那些先入為主的編程語言的影響下,開發者們會慢慢地寫出帶著“口音”的 Python 代碼。即便 Python 是你的初戀,也難逃此命運。因為在學校里,抑或是那些入門書上,教授者往往會有意避免只跟語言本身相關的特性。
另外,向那些已在其他語言領域里有了豐富經驗的程序員介紹 Python 的時候,我還發現了一個問題:人們總是傾向于尋求自己熟悉的東西。受到其他語言的影響,你大概能猜到Python會支持正則表達式,然后就會去查閱文檔。但是如果你從來沒見過元組拆包(tuple unpacking),也沒聽過描述符(descriptor)這個概念,那么估計你也不會特地去搜索它們,然后就永遠失去了使用這些Python獨有的特性的機會。這也是本書試圖解決的一個問題。
第一部分
第一部分只有單獨的一章,講解的是 Python 的數據模型(datamodel),以及如何為了保證行為一致性而使用特殊方法(比如__repr__),畢竟 Python 的一致性是出了名的。其實整本書幾乎都是在講解 Python 的數據模型,第 1 章算是一個概覽。
第二部分
第二部分包含了各種集合類型:序列(sequence)、映射(mapping)和集合(set),另外還提及了字符串(str)和字節序列(bytes)的區分。說起來,最后這一點也是讓親者(Python 3 用戶)快,仇者(Python 2 用戶)痛的一個關鍵,因為這個區分致使 Python 2代碼遷移到 Python 3 的難度陡增。第二部分的目標是幫助讀者回憶起Python 內置的類庫,順帶解釋這些類庫的一些不太直觀的地方。具體的例子有 Python 3 如何在我們觀察不到的地方對 dict 的鍵重新排序,或者是排序有區域(locale)依賴的字符串時的注意事項。為了達到本部分的目標,有些地方的講解會比較大而全,像序列類型和映射類型的變種就是這樣;有時則會寫得很深入,比方說我會對dict 和 set 底層的散列表進行深層次的討論。
第三部分
如何把函數作為一等對象(first-order object)來使用。第三部分首先會解釋前面這句話是什么意思,然后話題延伸到這個概念對那些被廣泛使用的設計模型的影響,最后讀者會看到如何利用閉包(closure)的概念來實現函數裝飾器(function decorator)。這一部分的話題還包括Python 的這些基本概念:可調用(callable)、函數屬性(functionattribute)、內省(introspection)、參數注解(parameter annotation)和Python 3 里新出現的 nonlocal 聲明。
第四部分
到了這里,書的重點轉移到了類的構建上面。雖然在第二部分里的例子里就有類聲明(class declaration)的出現,但是第四部分會呈現更多的類。和任何面向對象語言一樣,Python 還有些自己的特性,這些特性可能并不會出現在你我學習基于類的編程的語言中。這一部分的章節解釋了引用(reference)的原理、“可變性”的概念、實例的生命周期、
如何構建自定義的集合類型和 ABC、多重繼承該怎么理順、什么時候應該使用操作符重載及其方法。
第五部分
Python 中有些結構和庫不再滿足于諸如條件判斷、循環和子程序(subroutine)之類的順序控制流程,第五部分的筆墨會集中在這些構造和庫上。我們會從生成器(generator)起步,然后話題會轉移到上下文管理器(context manager)和協程(coroutine),其中會涵蓋新增的功能強大但又不容易理解的 yield from 語法。這一部分以并發性和面向事件的 I/O 來結尾,其中跟并發性相關的是 collections.futures這個很新的包,它借助 futures 包把線程和進程的概念給封裝了起
來;而跟面向事件 I/O 相關的則是 asyncio,它的背后是基于協程和yield from 的 futures 包。
第六部分
第六部分的開頭會講到如何動態創建帶屬性的類,用以處理諸如JSON 這類半結構化的數據。然后會從大家已經熟悉的特性(property)機制入手,用描述符從底層來解釋 Python 對象屬性的存取。同時,函數、方法和描述符的關系也會被梳理一遍。第六部分會從頭至尾地實現一個字段驗證器,在這個過程中我們會遇到一些微妙的問題,然后在最后一章中就自然引出像類裝飾器(class decorator)和元類(metaclass)這些高級的概念。
本備忘單是機器學習手冊的濃縮版,包含了許多關于機器學習的經典方程和圖表,旨在幫助您快速回憶起機器學習中的知識和思想。
這個備忘單有兩個顯著的優點:
清晰的符號。數學公式使用了許多令人困惑的符號。例如,X可以是一個集合,一個隨機變量,或者一個矩陣。這是非常混亂的,使讀者很難理解數學公式的意義。本備忘單試圖規范符號的使用,所有符號都有明確的預先定義,請參見小節。
更少的思維跳躍。在許多機器學習的書籍中,作者省略了數學證明過程中的一些中間步驟,這可能會節省一些空間,但是會給讀者理解這個公式帶來困難,讀者會在中間迷失。
【導讀】UC.Berkeley CS189 《Introduction to Machine Learning》是面向初學者的機器學習課程在本指南中,我們創建了一個全面的課程指南,以便與學生和公眾分享我們的知識,并希望吸引其他大學的學生對伯克利的機器學習課程感興趣。
講義目錄:
Note 1: Introduction
Note 2: Linear Regression
Note 3: Features, Hyperparameters, Validation
Note 4: MLE and MAP for Regression (Part I)
Note 5: Bias-Variance Tradeoff
Note 6: Multivariate Gaussians
Note 7: MLE and MAP for Regression (Part II)
Note 8: Kernels, Kernel Ridge Regression
Note 9: Total Least Squares
Note 10: Principal Component Analysis (PCA)
Note 11: Canonical Correlation Analysis (CCA)
Note 12: Nonlinear Least Squares, Optimization
Note 13: Gradient Descent Extensions
Note 14: Neural Networks
Note 15: Training Neural Networks
Note 16: Discriminative vs. Generative Classification, LS-SVM
Note 17: Logistic Regression
Note 18: Gaussian Discriminant Analysis
Note 19: Expectation-Maximization (EM) Algorithm, k-means Clustering
Note 20: Support Vector Machines (SVM)
Note 21: Generalization and Stability
Note 22: Duality
Note 23: Nearest Neighbor Classification
Note 24: Sparsity
Note 25: Decision Trees and Random Forests
Note 26: Boosting
Note 27: Convolutional Neural Networks (CNN)
討論目錄:
Discussion 0: Vector Calculus, Linear Algebra (solution)
Discussion 1: Optimization, Least Squares, and Convexity (solution)
Discussion 2: Ridge Regression and Multivariate Gaussians (solution)
Discussion 3: Multivariate Gaussians and Kernels (solution)
Discussion 4: Principal Component Analysis (solution)
Discussion 5: Least Squares and Kernels (solution)
Discussion 6: Optimization and Reviewing Linear Methods (solution)
Discussion 7: Backpropagation and Computation Graphs (solution)
Discussion 8: QDA and Logistic Regression (solution)
Discussion 9: EM (solution)
Discussion 10: SVMs and KNN (solution)
Discussion 11: Decision Trees (solution)
Discussion 12: LASSO, Sparsity, Feature Selection, Auto-ML (solution)
講義下載鏈接://pan.baidu.com/s/19Zmws53BUzjSvaDMEiUhqQ 密碼:u2xs
Fundamentals of Python Programming