【導讀】推薦一個Github上的機器學習集:100 Days of ML Coding(機器學習100天),從第一天的數據預處理、第二天的簡單線性迴歸到第54天的層次聚類等,數據和代碼非常詳細,希望機器學習感興趣的讀者收藏和學習!
英文鏈接:
https://github.com/Avik-Jain/100-Days-Of-ML-Code
中文鏈接:
https://github.com/MLEveryday/100-Days-Of-ML-Code
目錄
- 有監督學習
- 數據預處理
- 簡單線性迴歸
- 多元線性迴歸
- 邏輯迴歸
- k近鄰法(k-NN)
- 支持向量機(SVM)
- 決策樹
- 隨機森林
- 無監督學習
- K-均值聚類
- 層次聚類
數據預處理 | 第1天
數據預處理實現
簡單線性迴歸 | 第2天
簡單線性迴歸實現
多元線性迴歸 | 第3天
多元線性迴歸實現
邏輯迴歸 | 第4天
邏輯迴歸 | 第5天
今天我深入研究了邏輯迴歸到底是什麼,以及它背後的數學是什麼。學習瞭如何計算代價函數,以及如何使用梯度下降法來將代價函數降低到最小。 由於時間關係,我將隔天發佈信息圖。如果有人在機器學習領域有一定經驗,並願意幫我編寫代碼文檔,也瞭解github的Markdown語法,請在領英聯繫我。
邏輯迴歸 | 第6天
邏輯迴歸實現
K近鄰法(k-NN) | 第7天
邏輯迴歸背後的數學 | 第8天
爲了使我對邏輯迴歸的見解更加清晰,我在網上搜索了一些資源或文章,然後我就發現了Saishruthi Swaminathan的這篇文章
它給出了邏輯迴歸的詳細描述。請務必看一看。
支持向量機(SVM) | 第9天
直觀瞭解SVM是什麼以及如何使用它來解決分類問題。
支持向量機和K近鄰法 | 第10天
瞭解更多關於SVM如何工作和實現knn算法的知識。
K近鄰法(k-NN) | 第11天
K近鄰法(k-NN)實現
支持向量機(SVM) | 第12天
支持向量機(SVM) | 第13天
SVM實現
支持向量機(SVM)的實現 | 第14天
今天我在線性相關數據上實現了SVM。使用Scikit-Learn庫。在scikit-learn中我們有SVC分類器,我們用它來完成這個任務。將在下一次實現時使用kernel-trick。Python代碼見此處,Jupyter notebook見此處。
樸素貝葉斯分類器(Naive Bayes Classifier)和黑盒機器學習(Black Box Machine Learning) | 第15天
學習不同類型的樸素貝葉斯分類器同時開始Bloomberg的課程。課程列表中的第一個是黑盒機器學習。它給出了預測函數,特徵提取,學習算法,性能評估,交叉驗證,樣本偏差,非平穩性,過度擬合和超參數調整的整體觀點。
通過內核技巧實現支持向量機 | 第16天
使用Scikit-Learn庫實現了SVM算法以及內核函數,該函數將我們的數據點映射到更高維度以找到最佳超平面。
在Coursera開始深度學習的專業課程 | 第17天
在1天內完成第1周和第2周內容以及學習課程中的邏輯迴歸神經網絡。
繼續Coursera上的深度學習專業課程 | 第18天
完成課程1。用Python自己實現一個神經網絡。
學習問題和Yaser Abu-Mostafa教授 | 第19天
開始Yaser Abu-Mostafa教授的Caltech機器學習課程-CS156中的課程1。這基本上是對即將到來的課程的一種介紹。他也介紹了感知算法。
深度學習專業課程2 | 第20天
完成改進深度神經網絡第1周內容:參數調整,正則化和優化。
網頁蒐羅 | 第21天
觀看了一些關於如何使用Beautiful Soup進行網絡爬蟲的教程,以便收集用於構建模型的數據。
學習還可行嗎? | 第22天
完成Yaser Abu-Mostafa教授的Caltech機器學習課程-CS156中的課程2。學習Hoeffding不等式。
決策樹 | 第23天
統計學習理論的介紹 | 第24天
Bloomberg ML課程的第3課介紹了一些核心概念,如輸入空間,動作空間,結果空間,預測函數,損失函數和假設空間。
決策樹 | 第25天
決策樹實現
跳到複習線性代數 | 第26天
發現YouTube一個神奇的頻道3Blue1Brown,它有一個播放列表《線性代數的本質》。看完了4個視頻,包括了向量,線性組合,跨度,基向量,線性變換和矩陣乘法。
B站播放列表在這裏。
跳到複習線性代數 | 第27天
繼續觀看了4個視頻,內容包括三維變換、行列式、逆矩陣、列空間、零空間和非方矩陣。
B站播放列表在這裏。
跳到複習線性代數 | 第28天
繼續觀看了3個視頻,內容包括點積和叉積。
B站播放列表在這裏。
跳到複習線性代數 | 第29天
觀看了剩餘的視頻12到14,內容包括特徵向量和特徵值,以及抽象向量空間。
B站播放列表在這裏。
微積分的本質 | 第30天
完成上一播放列表後,YouTube推薦了新內容《微積分的本質》,今天看完了其中的3個視頻,包括導數、鏈式法則、乘積法則和指數導數。
B站播放列表在這裏。
微積分的本質 | 第31天
觀看了2個視頻,內容包括隱分化與極限。
B站播放列表在這裏。
微積分的本質 | 第32天
觀看了剩餘的4個視頻,內容包括積分與高階導數。
B站播放列表在這裏。
隨機森林 | 第33天
隨機森林 | 第34天
隨機森林實現
什麼是神經網絡? | 深度學習,第1章 | 第 35天
Youtube頻道3Blue1Brown中有精彩的視頻介紹神經網絡。這個視頻提供了很好的解釋,並使用手寫數字數據集演示基本概念。
B站視頻在這裏。
梯度下降法,神經網絡如何學習 | 深度學習,第2章 | 第36天
Youtube頻道3Blue1Brown關於神經網絡的第2部分,這個視頻用有趣的方式解釋了梯度下降法。推薦必須觀看169.
B站視頻在這裏。
反向傳播法究竟做什麼? | 深度學習,第3章 | 第37天
Youtube頻道3Blue1Brown關於神經網絡的第3部分,這個視頻主要介紹了偏導數和反向傳播法。
B站視頻在這裏。
反向傳播法演算 | 深度學習,第4章 | 第38天
Youtube頻道3Blue1Brown關於神經網絡的第3部分,這個視頻主要介紹了偏導數和反向傳播法。
B站視頻在這裏。
第1部分 | 深度學習基礎Python,TensorFlow和Keras | 第39天
視頻地址在這裏。 中文文字版notebook。
第2部分 | 深度學習基礎Python,TensorFlow和Keras | 第40天
視頻地址在這裏。 中文文字版notebook。
第3部分 | 深度學習基礎Python,TensorFlow和Keras | 第41天
視頻地址在這裏。 中文文字版notebook。
第4部分 | 深度學習基礎Python,TensorFlow和Keras | 第42天
視頻地址在這裏。 中文文字版notebook。
K-均值聚類 | 第43天
轉到無監督學習,並研究了聚類。可在作者網站查詢。發現一個奇妙的動畫有助於理解K-均值聚類。
K-均值聚類 | 第44天
實現(待添加代碼)
深入研究 | NUMPY | 第45天
得到JK VanderPlas寫的書《Python數據科學手冊(Python Data Science HandBook)》,Jupyter notebooks在這裏。 高清中文版pdf 第2章:NumPy介紹,包括數據類型、數組和數組計算。 代碼如下: 2 NumPy入門 2.1 理解Python中的數據類型 2.2 NumPy數組基礎 2.3 NumPy數組的計算:通用函數
深入研究 | NUMPY | 第46天
第2章: 聚合, 比較運算符和廣播。 代碼如下: 2.4 聚合:最小值、最大值和其他值 2.5 數組的計算:廣播 2.6 比較、掩碼和布爾運算
深入研究 | NUMPY | 第47天
第2章: 花哨的索引,數組排序,結構化數據。 代碼如下: 2.7 花哨的索引 2.8 數組的排序 2.9 結構化數據:NumPy的結構化數組
深入研究 | PANDAS | 第48天
第3章:Pandas數據處理 包含Pandas對象,數據取值與選擇,數值運算方法,處理缺失值,層級索引,合併數據集。 代碼如下: 3 Pandas數據處理 3.1 Pandas對象簡介 3.2 數據取值與選擇 3.3 Pandas數值運算方法 3.4 處理缺失值 3.5 層級索引 3.6 合併數據集:ConCat和Append方法
深入研究 | PANDAS | 第49天
第3章:完成剩餘內容-合併與連接,累計與分組,數據透視表。 代碼如下: 3.7 合併數據集:合併與連接 3.8 累計與分組 3.9 數據透視表
深入研究 | PANDAS | 第50天
第3章:向量化字符串操作,處理時間序列。 代碼如下: 3.10 向量化字符串操作 3.11 處理時間序列 3.12 高性能Pandas:eval()與query()
深入研究 | MATPLOTLIB | 第51天
第4章:Matplotlib數據可視化 學習簡易線形圖, 簡易散點圖,密度圖與等高線圖. 代碼如下: 4 Matplotlib數據可視化 4.1 簡易線形圖 4.2 簡易散點圖 4.3 可視化異常處理 4.4 密度圖與等高線圖
深入研究 | MATPLOTLIB | 第52天
第4章:Matplotlib數據可視化 學習直方圖,配置圖例,配置顏色條,多子圖。 代碼如下: 4.5 直方圖 4.6 配置圖例 4.7 配置顏色條 4.8 多子圖 4.9 文字與註釋
深入研究 | MATPLOTLIB | 第53天
第4章:Matplotlib數據可視化 學習三維繪圖。 4.12 畫三維圖
層次聚類 | 第54天
動畫演示
原文鏈接:
https://github.com/Avik-Jain/100-Days-Of-ML-Code
https://github.com/MLEveryday/100-Days-Of-ML-Code
-END-