《機器學習100天》一份超全機器學習實戰資料,初學者必備!

【導讀】推薦一個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-

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章