機器學習基石第四節筆記

2021-10-04 21:05:19 字數 691 閱讀 5619

1.首先我們一直說,訓練集,通過訓練資料得出模型。測試集驗證模型的準確率。但是為什麼要這樣做呢?

答:數學上有乙個不等式叫做霍夫丁不等式(hoeffding』s inequality),這個不等式:

當n足夠大的時候,v和u相等的概率很大,意思就是如果我從一大堆資料中,取一部分資料做訓練。如果這個訓練得到的模型的誤差很小,那麼這個模型在這一大堆資料中的誤差也很小。所以我們才會採取一部分訓練,取擬合整個資料集。

2.但是如果我們的資料集有問題的?訓練的時候最好的,測試最差?

答:假設我們的假設只有m個,也就是從m個模型中挑選最好的。那麼這個m個模型在訓練集的結果應該和測試集一樣。意思就是你訓練的結果不好,測試也不好。說明資料集是好的。如果你訓練的好,測試的不好。那麼你的資料集就有問題。

所以機器學習的流程就變成兩部了

1.使用m個模型對資料集測試

2.m個模型中損失最小的就是target了

如果m是有限的,資料量n足夠大,對於a選擇的所有g,都有eout(g)=ein(g);如果a找到了乙個g且ein(g)≈0時,pac保證了eout(g)≈0,這時候我們就說學習是可行的。新的問題又出現了,當m無限大的時候(就像在pla裡有無數條線一樣),那麼我們應該怎麼辦呢?請聽下回講解。

參考:

python學習 GUI第四節

今天用gui內容寫乙個加法計算器 需要三個對話方塊及乙個按鈕 from tkinter import master tk v1 strin ar v2 strin ar v3 strin ar def text content 測試輸入是否為數字,若不是數字則不能錄入 return content....

ObjC第四節 繼承

繼 承 1 繼承 1.1 nsobject,根類,oc建立的類都繼承自根類,位於類層次結構的頂層,沒有父類 1.2 父類的例項變數和方法都可以被隱式的繼承過來成為子類的一部分,子類就可以直接訪問這些例項變數和方法 1.3 alloc和init是繼承自nsobject的方法 1.4 繼承的概念呈單鏈繼...

第四節 條件語句

if語句 if v 100else if v 50elseif語句不需要括號 用法高階 const filename abc.txt if contents,error ioutil.readfile filename error nilelse注意 contents和error變數都是在if 塊中...