【Scikit-Learn 中文文檔】內核嶺迴歸 - 監督學習 - 用戶指南 | ApacheCN

中文文檔: http://sklearn.apachecn.org/cn/0.19.0/tutorial/basic/tutorial.html

英文文檔: http://sklearn.apachecn.org/en/0.19.0/tutorial/basic/tutorial.html

官方文檔: http://scikit-learn.org/0.19/

GitHub: https://github.com/apachecn/scikit-learn-doc-zh(覺得不錯麻煩給個 Star,我們一直在努力)

貢獻者: https://github.com/apachecn/scikit-learn-doc-zh#貢獻者

關於我們: http://www.apachecn.org/organization/209.html




1.3. 內核嶺迴歸

Kernel ridge regression (KRR) (內核嶺迴歸)[M2012]_ 由 使用內核方法的 :ref:`ridge_regression`(嶺迴歸)(使用 l2 正則化的最小二乘法)所組成。因此,它所學習到的在空間中不同的線性函數是由不同的內核和數據所導致的。對於非線性的內核,它與原始空間中的非線性函數相對應。

由 KernelRidge 學習的模型的形式與支持向量迴歸( SVR ) 是一樣的。但是他們使用不同的損失函數:內核嶺迴歸(KRR)使用 squared error loss (平方誤差損失函數)而 support vector regression (支持向量迴歸)(SVR)使用 \epsilon-insensitive loss ( ε-不敏感損失 ),兩者都使用 l2 regularization (l2 正則化)。與 SVR 相反,擬合 KernelRidge 可以以 closed-form (封閉形式)完成,對於中型數據集通常更快。另一方面,學習的模型是非稀疏的,因此比 SVR 慢, 在預測時間,SVR 學習了:math:epsilon > 0 的稀疏模型。

下圖比較了人造數據集上的 KernelRidge 和 SVR 的區別,它由一個正弦目標函數和每五個數據點產生一個強噪聲組成。圖中分別繪製了由 KernelRidge 和 SVR 學習到的迴歸曲線。兩者都使用網格搜索優化了 RBF 內核的 complexity/regularization (複雜性/正則化)和 bandwidth (帶寬)。它們的 learned functions (學習函數)非常相似;但是,擬合 KernelRidge 大約比擬合 SVR 快七倍(都使用 grid-search ( 網格搜索 ) )。然而,由於 SVR 只學習了一個稀疏模型,所以 SVR 預測 10 萬個目標值比使用 KernelRidge 快三倍以上。SVR 只使用了百分之三十的數據點做爲支撐向量。

../_images/sphx_glr_plot_kernel_ridge_regression_0011.png

下圖顯示不同大小訓練集的 KernelRidge 和 SVR 的 fitting (擬合)和 prediction (預測)時間。 對於中型訓練集(小於 1000 個樣本),擬合 KernelRidge 比 SVR 快; 然而,對於更大的訓練集 SVR 通常更好。 關於預測時間,由於學習的稀疏解,SVR 對於所有不同大小的訓練集都比 KernelRidge 快。 注意,稀疏度和預測時間取決於 SVR 的參數 \epsilon 和 C ; \epsilon = 0 將對應於密集模型。

../_images/sphx_glr_plot_kernel_ridge_regression_0021.png

參考:

[M2012] “Machine Learning: A Probabilistic Perspective” Murphy, K. P. - chapter 14.4.3, pp. 492-493, The MIT Press, 2012




中文文檔: http://sklearn.apachecn.org/cn/0.19.0/tutorial/basic/tutorial.html

英文文檔: http://sklearn.apachecn.org/en/0.19.0/tutorial/basic/tutorial.html

官方文檔: http://scikit-learn.org/0.19/

GitHub: https://github.com/apachecn/scikit-learn-doc-zh(覺得不錯麻煩給個 Star,我們一直在努力)

貢獻者: https://github.com/apachecn/scikit-learn-doc-zh#貢獻者

關於我們: http://www.apachecn.org/organization/209.html

有興趣的大佬們也可以和我們一起來維護,持續更新中 。。。

機器學習交流羣: 629470233

發佈了25 篇原創文章 · 獲贊 67 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章