多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > 綜合技術 > Coursera機器學習-第六周-Advice for Applying Machine Learning

Coursera機器學習-第六周-Advice for Applying Machine Learning

來源:程序員人生   發布時間:2016-06-06 08:38:24 閱讀次數:4648次

Evaluating a Learning Algorithm


Desciding What to Try Next

先來看1個有正則的線性回歸例子:

這里寫圖片描述

當在預測時,有很大的誤差,該如何處理?

這里寫圖片描述

1.得到更多的訓練樣本
2.選取少許的特點
3.得到更多的特點項
4.加入特點多項式
5.減少正則項系數λ
6.增加正則項系數λ

很多人,在遇到預測結果其實不理想的時候,會憑著感覺在上面的6個方案當選取1個進行,但是常?;ㄙM了大量時間卻得不到改進。

因而引入了機器學習診斷,在后面會詳細論述,

這里寫圖片描述


Evaluating a Hypothesis

怎樣用你學過的算法來評估假定函數 ,討論如何避免 過擬合和欠擬合的問題。
對這個簡單的例子,我們可以對假定函數hθ(x) 進行畫圖 ,然后視察圖形趨勢, 但對特點變量不止1個的這類1般情況 ,還有像有很多特點變量的問題 想要通過畫出假定函數來進行視察,就會變得很難乃至是不可能實現。因此, 我們需要另外一種方法來評估我們的假定函數 。

這里寫圖片描述

以下,給出了1種評估假定函數的標準方法:

這里寫圖片描述

將這些數據集分為兩個部份:Training set 和 Test set, 即是 訓練集和測試集,
其中1種典型的分割方法是, 依照7:3的比例 ,將70%的數據作為訓練集, 30%的數據作為測試集 。

PS:如果數據集是有順序的話,那末最好還是隨機取樣。比如說上圖的例子中,如果price或size是按遞增或遞減排列的話,那末就應當隨機取樣本,而不是將前70%作為訓練集,后30%作為測試集了。

接下來 這里展現了1種典型的方法,你可以依照這些步驟訓練和測試你的學習算法 比如線性回歸算法 。首先 ,你需要對訓練集進行學習得到參數θ, 具體來說就是最小化訓練誤差J(θ) ,這里的J(θ) 是使用那70%數據 來定義得到的,也就是僅僅是訓練數據 。接下來,你要計算出測試誤差,用Jtest(θ)來表示測試誤差, 那末你要做的就是 取出你之前從訓練集(Training set)中學習得到的參數θ放在這里, 來計算你的測試誤差 Jtest(θ)

這里寫圖片描述

Jtest(θ)分為Linear Regreesion與Logistic Regression:

Linear Regreesion error:
這里寫圖片描述

Logistic Regression error:
這里寫圖片描述


Model Selection and Train/Validation/Test sets

假設你想要肯定對某組數據, 最適合的多項式次數是幾次 ?怎樣選用正確的特點來構造學習算法 或假設你需要正確選擇 學習算法中的正則化參數λ ,你應當怎樣做呢?

Model Selection:
這里寫圖片描述

1.首先,建立d個model 假定(圖中有10個,d表示其id),分別在training set 上求使其training error最小的θ向量,那末得到d個θ

2.然后,對這d個model假定,帶入θ,在cross validation set上計算JCV,即cv set error最小的1個model 作為 hypothesis,以下圖中|J(CV)|在第4組中最小,便取d=4的假定。

PS: 其實d表示dimension,也就是維度,表示該hypothesis的最大polynomial項是d維的。
PS’: 1般地,|J(CV)|是大于等于|J(train)|的,| * |表示數量

選擇第1個模型(d=1), 然后求訓練誤差的最小值Jtrain(θ(1)) 這樣你就會得到 1個參數向量θ(1) 然后你再選擇第2個模型(d=2) 2次函數模型 ,進行一樣的進程 這樣你會得到另外一個參數向量 θ(2),以此類推,直到第10個模型(d=10),10次函數模型,訓練誤差最小值Jtrain(θ(10))。

接下來,我們需要做的是對所有這些模型,求出測試集誤差(Test Error),順次求出Jtest(θ(1))~Jtest(θ(10))當選取測試集誤差最小的作為多項式模型。

這里寫圖片描述

這里選擇的是5項式。那末問題來了,現在我想知道這個模型能不能很好地推行到新樣本,我們還能通過測試集來驗證1般性嗎?這看起來仿佛有點不公道,由于我們剛才是通過測試集跟假定擬合來得到多項式次數d這個參數,也就是說我們選擇了1個能夠最好地擬合測試集的參數d的值,因此,我們的參數向量θ(5)在擬合測試集時的結果,極可能致使1個比實際泛化誤差更完善的預測結果,也就是說泛化能力不足!

所以,為了解決這個問題,在模型選擇中,我們將數據集不單單是分為訓練集,測試集,而是分為訓練集,交叉驗證集和測試集{60%,20%,20%}的比例

這里寫圖片描述

1種典型的分割比例是 將60%的數據分給訓練集,大約20%的數據給交叉驗證集 ,最后20%給測試集。這個比例可以略微調劑,但這類分法是最典型的。

這里寫圖片描述
依照上面所述的步驟,這里不再贅述! (詳情在上面Model Selection下面有解釋)


Bias vs. Variance

當你運行1個學習算法時 ,如果這個算法的表現不理想, 那末多半是出現 兩種情況 :要末是偏差比較大, 要末是方差比較大, 換句話說, 出現的情況要末是欠擬合, 要末是過擬合問題 。
那末這兩種情況, 哪一個和偏差有關, 哪一個和方差有關, 或是否是和兩個都有關 。弄清楚這1點非常重要 ,由于能判斷出現的情況, 是這兩種情況中的哪種, 實際上是1個很有效的唆使器, 指引著可以改進算法的 ,最有效的方法和途徑 。

1. bias指hypothesis與正確的hypothesis(如果有的話)的偏差.
2. varience是指各樣本與hypothesis的偏差和


Diagnosing Bias vs. Variance

先來看1個整體概括:
高偏差(欠擬合) —-High bias(underfit)
平衡(正好)—Just right
高方差(過擬合)—-High variance(overfit)
這里寫圖片描述

從下圖,橫軸表示多項式的次數d,縱軸表示誤差error,我們可以看出,當d很小時,也就是處于underfit狀態時,Jtrain(θ)JCV(θ)差不多大小,隨著d增大,JCV 生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生

------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: www.亚洲5555.com | 国产成人免费片在线观看 | 欧美成人免费在线 | 天堂mv亚洲mv在线播放9蜜 | 秋霞网站一级一片 | 国产视频一区在线 | 中文字幕区 | 欧美日韩你懂的 | 久久大香伊蕉在人线国产联合 | 精品亚洲欧美中文字幕在线看 | 免费羞羞视频 | 欧美 日韩 中字 国产 | 欧美日韩国产中文字幕 | 爱爱小视频在线看免费 | 亚洲第九十七页 | 久久乐国产综合亚洲精品 | 成人久久伊人精品伊人 | www在线观看免费视频 | 国语高清精品一区二区三区 | 亚洲精品福利一区二区 | 性视频一区二区三区免费 | 欧美xxxx在线 | 性做久久久久久久 | 欧美色欧美亚洲另类二区 | 亚洲一区二区三区四区在线 | 综合五月 | 日本不卡视频一区二区 | 国产视频中文字幕 | 亚洲高清视频在线播放 | 免费观看亚洲 | 视频在线观看高清免费 | 图片区小说区av区 | 国产精品国产午夜免费福利看 | 天堂在线亚洲 | 亚洲精品久久一区影院 | 豆国产96在线 | 亚洲 | 美女无遮挡免费视频观看网站 | 欧美日韩国产精品 | 亚洲韩国欧美 | 最新日本免费一区二区三区中文 | 欧美free三人性高清 |