機器學習關鍵步驟(四)

2021-10-25 15:16:17 字數 1644 閱讀 9116

機器學習有四個關鍵步驟。

(1) 資料準備,理和準備待分析的資料。

(2) 演算法選擇,根據需求挑選演算法為資料建立模型。

(3) 引數調優,優化模型結果。

(4) 模型評估,根據準確度評價模型選出最好的。建好模型之後,必須對它進行評價。經常會使用一些評價指標來比較模型的**準確度。對於如何定義和懲罰不同型別的**誤差,不同的評價指標各不相同。

接下來,將** 3 種常用的評價指標:**準確率、混淆矩陣和均方根誤差。根據學習目標的要求,有時甚至會設計新的評價指標,以便針對特定型別的誤差進行懲罰和規避。

關於**準確率,最簡單的定義就是正確的**所佔的比例。回到表的例子,對買魚與否的**準確率,可以這樣表述:在**某位顧客是否買魚時,模型在 90% 的時間裡都是對的。雖然**準確率這個指標很容易理解,但無法通過它得知**誤差是如何產生的。

混淆矩陣可以進一步了解**模型的優缺點。

從表可知,雖然模型的總體分類準確率是 90%,但相比於對顧客買魚的**,它對不買魚的**更準確。此外,假正型別和假負型別的**錯誤一樣多,分別有 5 個錯誤。

表混淆矩陣揭示了模型在**買魚與否時的準確度

在某些情況下,分辨**錯誤的型別至關重要。以****為例,假負型別的錯誤(即**不會發生**,實際上卻發生了)所付出的代價要遠高於假正型別的錯誤(即**會發生**,實際上卻未發生)。

由於回歸**使用連續值,因此誤差一般被量化成**值和實際值之差,懲罰隨誤差大小而不同。均方根誤差是乙個常用的回歸指標,尤其可用於避免較大的誤差:因為每個誤差都取了平方,所以大誤差就被放大了。這使得均方根誤差對異常值極其敏感,對這些值的懲罰力度也更大。

指標並不能完整地體現模型的效能。過擬合模型在面對當前資料時表現良好,但是在面對新資料時可能表現得很糟糕。為了避免出現這種情況,必須使用合適的驗證過程對模型進行評價。

驗證是指評估模型對新資料的**準確度。然而,在評估模型時,並不一定非要使用新資料,而是可以把當前的資料集劃分成兩部分:一部分是訓練集,用來生成和調整**模型;另一部分是測試集,用來充當新資料並評估模型的**準確度。最好的模型,針對測試集所做的**一定是最準確的。為了使驗證過程行之有效,需要不帶偏差地把資料點隨機分派到訓練集和測試集中。

然而,如果原始資料集很小,可能無法留出足夠的資料來形成測試集,因為當用於訓練模型的資料較少時,準確度無法得到保障。為了解決這個問題,有人提出了交叉驗證這個方法:使用同乙個資料集進行訓練和測試。

交叉驗證最大限度地利用了可用的資料,它把資料集劃分成若干組,用來對模型進行反覆測試。在單次迭代中,除了某一組以外,其他各組都被用來訓練**模型;然後,留下的那組被用來測試模型。這個過程重複進行,直到每一組都測試過模型,並且只測試過一次,如圖所示。

圖資料集的交叉驗證過程。資料集被劃分成 4 組,模型最終的**準確度是 4 個結果的平均值

由於每次迭代用來做**的資料各不相同,因此每次得到的**結果都不同。綜合考慮這些差異,就可以對模型的實際**能力做出更為可靠的評估。對所有評估結果取平均值,即為**準確度的最終評估值。

如果交叉驗證結果表明模型的**準確度較低,可以重新調整模型的引數或者重新處理資料。

redis延時佇列實現關鍵步驟

延時佇列 對於這種5分鐘後執行的操作,30分鐘後執行操作,我們如何實現了?關鍵實現原理 1.所有的訊息的延遲儲存在redis.sortset中,sortset中的每乙個物件為全域性生成的訊息id,score為到期時間時間戳。定時掃瞄timer,輪訓redis.sortset佇列,使用zrangeby...

企業物聯網安全的四個關鍵步驟

目前,有很多關於物聯網的安全問題的新聞 很容易破解的智慧型門鎖,風險諸多的大眾汽車,甚至脆弱的燈泡。以下是應用在企業物聯網安全的未來的一些關鍵概念 1 物聯網將拯救很多生命 重要的一點是,採用物聯網的最直接的結果是提供更好的物理安全性。採用 便宜,易於安裝的感測器意味著關鍵基礎設施中的監控漏洞更少。...

直播系統搭建關鍵步驟與要點!

2017直播火了整整一年,現在2018年了,直播行業還是非常讓人想分一杯羹,許多 密謀 已久的人也漸漸開始動身了,陸陸續續的現在直播平台變的越來越多。但是很多質量低體驗低的平台也是層出不窮,為了想馬上進軍直播行業撈金卻沒有把地基打牢,一到伺服器承受不住或者系統沒有更新就會出現很多漏洞和問題,直接讓你...