有什麼網站介紹數據挖掘演算法的實現過程的?
01-07
有沒有什麼網站、博客或者書籍是講數據挖掘的各種演算法(像是神經網路啊,回歸分析啊,樹)是怎麼通過手工去計算的過程,或者像是r軟體或者python軟體裡面命令的講解,可以通過一個例子,一步步講解每一步計算的方式的。
你看看這位的博客是否符合你的需要? 結構之法 演算法之道
廣義綫性模型基本上就是凸優化相關的東西,補充 @Tang Boyun 的答案,還有一本《最優化方法與程序設計》,有理論的證明及matlab代碼,甚至不需要用他的代碼,自己用numpy對著理論實現一遍也不大難,可以直接基於這些優化演算法實現logistic回歸、svm等等(親測可用,綫搜索、梯度下降、共軛梯度、DFP或BFGS、內點法及乘子法,實現了這些基本夠用);其他模型零零散散,或者有理論相關的文獻或博客,或者有純編碼實現,但是兼顧兩者的似乎還沒發現;另外可以參考scikit-learn的源碼及《scikit-learn_user_guide_x.xx.x》,非常詳細的文檔;
————————
另外,總覺得july的博客運營味道很重。。題主說的這些,其實本質是如何求解最優化方程。我推薦一本, 大部分帶matlab示例,可以根據需要去翻成其他語言:目錄:
前言
第1章 緒論1.1 最優化方法的發展歷史1.2 最優化問題舉例
1.3 最優化問題的數學模型及相關概念1.3.1 最優化問題的數學模型及三要素1.3.2 可行點、非可行點、可行域1.3.3 其他形式優化問題的轉化1.4 最優化方法的分類1.5 最優化方法的演算法基本結構1.6 最優化演算法的評價指標第2章 無約束優化問題的基本概念與理論2.1 梯度信息2.1.1 梯度向量
2.1.2 Hesse矩陣2.1.3 Hesse矩陣的正定、半正定、負定、半負定、不定性質及判定2.1.4 梯度向量與Hesse矩陣的關係2.2 Taylor展開式與函數逼近2.2.1 一維函數的Taylor展開式2.2.2 多維函數的Taylor展開式2.2.3 多維函數的一階與二階Taylor展開式2.3 極值點與穩定點2.3.1 極值點2.3.2 穩定點
2.4 凸集、凸函數與凸優化2.4.1 凸集2.4.2 凸函數和凹函數2.4.3 凸函數的相關性質2.4.4 函數凹凸性的判定2.4.5 凸優化問題的定義2.4.6 凸優化問題的判定準則2.5 無約束優化問題的最優性條件2.5.1 一階必要條件2.5.2 二階必要條件
2.5.3 二階充分條件2.6 下降方向習題第3章 精確一維搜索方法3.1 精確一維搜索介紹3.1.1 一維搜索在最優化方法中的地位3.1.2 精確一維搜索的問題描述與基本原理3.1.3 區間消去思想3.1.4 精確一維搜索方法的分類3.2 對分搜索法
3.2.1 對分搜索法的原理3.2.2 對分搜索法的實現難點3.2.3 對分搜索法的計算步驟3.2.4 對分搜索法的流程圖3.2.5 對分搜索法的MATLAB程序3.2.6 實例測試3.3 三點等間隔搜索法3.3.1 等間隔搜索原理3.3.2 三點等間隔搜索法的原理3.3.3 三點等間隔搜索法的計算步驟
3.3.4 三點等間隔搜索法的流程圖3.3.5 三點等間隔搜索法的MATLAB程序3.3.6 實例測試3.4 Fibonacci搜索法3.4.1 對稱區間消去原理3.4.2 對稱區間消去法的縮減率特點3.4.3 Fibonacci搜索法的原理3.4.4 Fibonacci搜索法的實現難點3.4.5 Fibonacci搜索法的計算步驟3.4.6 Fibonacci搜索法的流程圖
3.4.7 Fibonacci搜索法的MATLAB程序3.4.8 實例測試3.5 黃金分割法3.5.1 黃金分割法的基本原理3.5.2 黃金分割法與Fibonacci搜索法的關係3.5.3 黃金分割法的計算步驟3.5.4 黃金分割法的流程圖3.5.5 黃金分割法的MATLAB程序3.5.6 實例測試3.6 三點二次插值法
3.6.1 三點二次插值法的原理3.6.2 四種不同的區間消去情況3.6.3 三點二次插值法的計算步驟3.6.4 三點二次插值法的流程圖3.6.5 三點二次插值法的MATLAB程序3.6.6 實例測試習題第4章 非精確一維搜索方法4.1 非精確一維搜索介紹4.1.1 非精確一維搜索方法的優勢4.1.2 非精確一維搜索的問題描述與基本原理4.1.3 更新步長區間的兩點拋物線插值方法4.2 Armijo非精確搜索方法4.2.1 Armijo條件4.2.2 Armijo非精確搜索方法的計算步驟4.2.3 Armijo非精確搜索方法的流程圖4.2.4 Armijo非精確搜索方法的MATLAB程序4.2.5 實例測試4.3 Goldstein非精確搜索方法4.3.1 Goldstein條件4.3.2 Goldstein非精確搜索方法的計算步驟4.3.3 Goldstein非精確搜索方法的流程圖4.3.4 Goldstein非精確搜索方法的MATLAB程序4.3.5 實例測試4.4 Wolfe非精確搜索方法4.4.1 Wolfe條件4.4.2 Wolfe非精確搜索方法的計算步驟4.4.3 Wolfe非精確搜索方法的流程圖4.4.4 Wolfe非精確搜索方法的MATLAB程序4.4.5 實例測試4.5 強Wolfe非精確搜索方法4.5.1 強Wolfe條件4.5.2 強Wolfe非精確搜索方法的計算步驟4.5.3 強Wolfe非精確搜索方法的流程圖4.5.4 強Wolfe非精確搜索方法的MATLAB程序4.5.5 實例測試習題第5章 基本多維無約束優化方法5.1 多維無約束優化方法介紹5.1.1 多維無約束優化方法的地位5.1.2 多維無約束優化問題的描述5.1.3 多維無約束優化的方法分類5.1.4 演算法的收斂準則5.2 最速下降法5.2.1 最速下降法的原理5.2.2 最速下降法的特點5.2.3 最速下降法的計算步驟5.2.4 最速下降法的流程圖5.2.5 最速下降法的MATLAB程序5.2.6 實例測試5.3 牛頓法5.3.1 牛頓法的原理5.3.2 牛頓方向的特點5.3.3 牛頓法的實現難點5.3.4 牛頓法的計算步驟5.3.5 牛頓法的流程圖5.3.6 牛頓法的MATLAB程序5.3.7 實例測試5.4 高斯牛頓法5.4.1 高斯牛頓法的原理5.4.2 高斯牛頓法的實現難點5.4.3 高斯牛頓法的計算步驟5.4.4 高斯牛頓法的流程圖5.4.5 高斯牛頓法的MATLAB程序5.4.6 實例測試習題第6章 高級多維無約束優化方法6.1 共軛梯度法6.1.1 向量組共軛的相關概念與定理6.1.2 共軛方向法的基本原理6.1.3 共軛梯度法的基本原理6.1.4 共軛梯度法的性質6.1.5 共軛梯度法的計算步驟6.1.6 共軛梯度法的流程圖6.1.7 Dai-Yuan共軛梯度法的MATLAB程序6.1.8 Hager-Zhang共軛梯度法的MATLAB程序6.1.9 實例測試6.2 擬牛頓法6.2.1 擬牛頓法的基本思想6.2.2 校正矩陣的構造方法6.2.3 DFP校正公式6.2.4 DFP擬牛頓法的性質6.2.5 Sherman-Morrison公式及BFGS校正公式6.2.6 DFP/BFGS擬牛頓法的計算步驟6.2.7 DFP/BFGS擬牛頓法的流程圖6.2.8 DFP擬牛頓法的MATLAB程序6.2.9 BFGS擬牛頓法的MATLAB程序6.2.10 實例測試習題第7章 帶約束優化問題的基本概念與理論7.1 約束的分類及對求解的影響7.1.1 帶約束優化問題的定義7.1.2 約束的分類7.1.3 約束對可行域的影響7.1.4 帶不等式約束優化問題的可行方向7.2 帶約束優化問題的最優性條件7.2.1 幾個重要概念7.2.2 一階必要條件7.2.3 KKT條件的幾何解釋7.2.4 KKT條件的拉格朗日函數表達形式7.2.5 二階必要條件7.2.6 二階充分條件7.2.7 對比無約束優化問題的最優性條件7.3 凸優化問題的性質7.4 凸優化問題的對偶性7.4.1 凸優化問題的拉格朗日對偶問題7.4.2 原問題與對偶問題之間的理論聯繫7.5 帶約束優化問題的演算法思想7.5.1 代入消去思想7.5.2 積極集思想7.5.3 內點逼近思想7.5.4 序列子問題逼近思想習題第8章 線性規劃問題的單純形法8.1 線性規劃問題的模型及基本理論8.1.1 線性規劃在優化中的地位8.1.2 線性規劃問題的標準形式及轉換方法8.1.3 標準型線性規劃問題解的相關概念8.1.4 線性規劃問題解的基本定理8.1.5 線性規劃問題最優解的可能情況8.1.6 線性規劃問題的圖解法8.1.7 線性規劃問題的窮舉法8.1.8 線性規劃問題的單純形法8.1.9 單純形法的難點8.2 決策變數非負線性規劃問題的單純形法8.2.1 問題形式8.2.2 決策變數非負線性規劃問題單純形法的基本原理8.2.3 通過兩階段法獲取初始可行基8.2.4 兩階段改進型單純形法的實現難點8.2.5 兩階段改進型單純形法的計算步驟8.2.6 兩階段改進型單純形法的流程圖8.2.7 兩階段改進型單純形法的MATLAB程序8.2.8 實例測試8.3 決策變數有界線性規劃問題的單純形法8.3.1 決策變數有界的標準型線性規劃問題及轉換方法8.3.2 決策變數有界問題的解的相關概念8.3.3 問題形式8.3.4 決策變數有界問題單純形法針對的基本原理8.3.5 通過兩階段法獲取初始可行基8.3.6 兩階段改進型單純形法的計算步驟8.3.7 兩階段改進型單純形法的流程圖8.3.8 實例測試8.4 對單純形法的進一步討論8.4.1 兩類標準型線性規劃問題的關係8.4.2 線性規劃問題的退化情況8.4.3 單純形法的收斂性8.4.4 從凸優化的角度看線性規劃問題8.4.5 從積極集思想看單純形法8.4.6 實現單純形法時的其他注意事項習題第9章 線性規劃問題的內點法9.1 內點法的相關概念與基本原理9.1.1 內點法與單純形法9.1.2 線性規劃問題的對偶問題與對偶間隔9.1.3 內點與中心路徑9.1.4 內點法的基本原理9.2 原-對偶可行路徑跟蹤法9.2.1 問題形式9.2.2 原-對偶可行路徑跟蹤法的基本原理9.2.3 原-對偶可行路徑跟蹤法的計算步驟9.2.4 原-對偶可行路徑跟蹤法的流程圖9.2.5 原-對偶可行路徑跟蹤法的MATLAB程序9.2.6 實例測試9.3 原-對偶非可行路徑跟蹤法9.3.1 原-對偶非可行路徑跟蹤法的基本原理9.3.2 原-對偶非可行路徑跟蹤法的計算步驟9.3.3 原-對偶非可行路徑跟蹤法的流程圖9.3.4 原-對偶非可行路徑跟蹤法的MATLAB程序9.3.5 實例測試9.4 帶預測校正的原-對偶路徑跟蹤法9.4.1 帶預測校正的原-對偶路徑跟蹤法的基本原理9.4.2 帶預測校正的原-對偶路徑跟蹤法的計算步驟9.4.3 帶預測校正的原-對偶路徑跟蹤法的流程圖9.4.4 實例測試習題第10章 二次規劃問題的積極集法10.1 二次規劃問題介紹10.1.1 二次規劃問題的標準形式及在優化中的地位10.1.2 凸二次規劃問題10.2 等式約束凸二次規劃問題的解法10.2.1 問題形式10.2.2 基於SVD分解轉化為無約束問題10.2.3 基於QR分解轉化為無約束問題10.2.4 基於KKT條件求解10.2.5 等式約束凸二次規劃問題的解法比較10.2.6 等式約束凸二次規劃問題的QR分解法計算步驟10.2.7 等式約束凸二次規劃問題的QR分解法流程圖10.2.8 等式約束凸二次規劃問題的QR分解法MATLAB程序10.2.9 實例測試10.3 凸二次規劃問題的積極集法10.3.1 問題形式10.3.2 凸二次規劃的積極集法原理10.3.3 利用輔助線性規劃問題尋找初始可行點10.3.4 「構造問題」與最優解的判斷準則10.3.5 「構造問題」的「等價問題」10.3.6 待求問題、「構造問題」、「等價問題」之間的關係10.3.7 尋找使目標函數值更優的可行點10.3.8 凸二次規劃問題的積極集法的計算步驟10.3.9 凸二次規劃問題的積極集法的流程圖10.3.10 凸二次規劃問題的積極集法MATLAB程序10.3.11 實例測試習題第11章 二次規劃問題的內點法11.1 原-對偶非可行路徑跟蹤法11.1.1 凸二次規劃問題的內點法11.1.2 凸二次規劃問題的對偶問題與對偶間隔11.1.3 原-對偶非可行路徑跟蹤法的基本原理11.1.4 原-對偶非可行路徑跟蹤法的計算步驟11.1.5 原-對偶非可行路徑跟蹤法的流程圖11.1.6 原-對偶非可行路徑跟蹤法的MATLAB程序11.1.7 實例測試11.2 帶預測校正的原-對偶路徑跟蹤法11.2.1 帶預測校正的原-對偶路徑跟蹤法的基本原理11.2.2 帶預測校正的原-對偶路徑跟蹤法的計算步驟11.2.3 帶預測校正的原-對偶路徑跟蹤法的流程圖11.2.4 實例測試習題第12章 序列二次規劃方法12.1 從序列無約束優化到序列二次規劃12.2 等式約束非線性優化問題的局部SQP方法12.2.1 問題形式12.2.2 拉格朗日函數以及相關記號12.2.3 用牛頓法解待求問題的KKT條件12.2.4 KKT條件的線性化12.2.5 SQP方法的基本思想12.2.6 二次規划子問題的進一步討論12.2.7 等式約束非線性優化問題的局部SQP方法計算步驟12.2.8 等式約束非線性優化問題的局部SQP方法流程圖12.2.9 等式約束非線性優化問題的局部SQP方法MATLAB程序12.2.10 實例測試12.3 一般非線性優化問題的局部SQP方法12.3.1 問題形式12.3.2 拉格朗日函數以及相關記號12.3.3 KKT條件的線性化12.3.4 二次規划子問題的進一步討論12.3.5 一般非線性優化問題的局部SQP方法計算步驟12.3.6 一般非線性優化問題的局部SQP方法流程圖12.3.7 一般非線性優化問題的局部SQP方法MATLAB程序12.3.8 實例測試12.4 擴展為全局SQP方法的難點及對策12.4.1 擴展局部SQP方法的難點12.4.2 拉格朗日函數Hesse矩陣的BFGS近似12.4.3 使二次規划子問題有唯一解12.4.4 效益函數與全局收斂性12.4.5 二次規划子問題的可行性保證12.4.6 Maratos效應的克服12.5 一般非線性優化問題的全局SQP方法12.5.1 非線性優化問題的全局SQP方法12.5.2 非線性優化問題的全局SQP方法計算步驟12.5.3 非線性優化問題的全局SQP方法流程圖12.5.4 實例測試
http://deeplearning.net最近follow了這個教程感覺挺好
《Collective Intelligence Programming》
集體智慧編程,機器學習實戰,裡面有大量的實現。
推薦閱讀:
※如何設計權重演算法?
※Google 如何管理龐大的搜索結果排序規則集合?
※如何設計一個演算法實現商品的展示排序按照用戶的點擊量和發布時間綜合排序?
※從損失函數的角度解釋為什麼lr做點擊率預測不如GBDT好???
※你同意「數據比演算法重要」這個說法嗎?