偏差是指我們忽略了多少資料,而方差是指我們的模型對資料的依賴程度。
說你想學英語。你沒有先前的語言知識,但你聽說最偉大的英國作家是莎士比亞。乙個自然的行動方式當然必須是將自己鎖定在圖書館並記住他的作品。經過一年的學習,你從學業中走出來,前往紐約市,並向你看到的第乙個人打招呼,「good dawning to thee, friend!」(這種用法貌似只在莎士比亞作品出現過)作為回應,你看到一臉鄙視和嘀咕'瘋狂'。不受干擾,你再試一次:「dear gentlewoman, how fares our gracious lady?」另一次失敗,匆匆撤退。在第三次嘗試失敗後,你心煩意亂:"悲傷!多麼可悲!"。實際上很遺憾:你剛剛犯了建模中最基本的錯誤之一,過度擬合了訓練資料。
過擬合模型表現為在訓練集上具有高方差和低偏差。
這會導致對新測試資料**時與訓練資料的不一致。讓我們從學習英語的嘗試中打破這個令人困惑的定義。我們想要構建的模型是如何使用英語進行交流的表示。我們的訓練資料是莎士比亞的全部作品,我們的測試集是紐約。如果我們根據社會接受度來衡量績效,那麼我們的模型就無法應用於測試資料。到目前為止,這似乎很簡單,但差異和偏見呢?
方差是模型響應訓練資料而變化的程度。由於我們只是記憶訓練集,我們的模型具有很大的差異:它高度依賴於訓練資料。如果我們閱讀jk羅琳而不是莎士比亞的全部作品,模型將完全不同。當在新測試集上應用具有高方差的模型時,它不能很好地執行。這就像乙個學生已經記住了教科書中的問題,但在面對現實世界面臨的問題時無助。
有時即使是研究生也應該到外面去
偏差是方差的另一面,因為它代表了我們對資料做出的假設的強度。在我們學習英語的過程中,我們沒有形成初步的模型假設,並且信任bard的工作,教我們關於語言的一切。這種低偏見似乎是積極的 - 為什麼我們想要偏向於我們的資料呢?但是,我們應該始終對資料告訴我們完整故事的能力持懷疑態度。任何自然過程都會產生噪音,我們無法確信我們的訓練資料會捕獲所有噪音。通常,我們應該對我們的資料做一些初步的假設,並在我們的模型中為訓練資料中沒有看到的波動留出空間。
總結到目前為止:偏差是指我們忽略了多少資料,而方差是指我們的模型對資料的依賴程度。在任何建模中,總是會在偏差和方差之間進行權衡,當我們建立模型時,我們會嘗試達到最佳平衡。偏差與方差適用於任何模型,從最簡單到最複雜,是資料科學家理解的關鍵概念!我們看到乙個過擬合的模型具有高方差和低偏差。反過來怎麼樣:低方差和高偏差?這被稱為欠擬合:不是過於密切地跟蹤訓練資料,而是乙個不合適的模型忽略了訓練資料的教訓,並且無法學習輸入和輸出之間的潛在關係。
讓我們從我們的例子來考慮這個問題。從我們之前嘗試建立英語模型中學習,我們決定提前對模型做出一些假設。我們還會切換我們的訓練資料,並**節目朋友的所有劇集,自學英語。為了避免從第一次嘗試中重複我們的錯誤,我們提前做出乙個假設,即只有以語言中最常見的單詞開頭的句子 ,be,to,of和an才是重要的。當我們學習時,我們不注意其他句子,相信我們會建立乙個更好的模型。
經過長時間的訓練,我們再次前往紐約的街道。這次我們的表現略好一些,但是我們的談話再次無處可去,我們不得不承認失敗。雖然我們知道一些英語並能理解有限數量的句子,但由於我們對訓練資料的偏見,我們未能學習語言的基本結構。該模型不會受到高度變化的影響,但我們從最初的嘗試過度校正!
我們能做什麼?嚴格關注資料會過擬合,忽略資料會欠擬合。必須有一種方法來找到最佳平衡!幸運的是,資料科學中存在一種稱為驗證的完善解決方案。在我們的示例中,我們僅使用了訓練集和測試集。這意味著我們無法提前知道我們的模型在現實世界中的作用。理想情況下,我們會設定乙個"**試"來評估我們的模型,並在真正的測試之前進行改進。這種"**試"被稱為驗證集,是模型開發的關鍵部分。
我們學習英語的兩次失敗讓我們變得更加聰明,現在我們決定使用驗證集。我們同時使用莎士比亞的作品和朋友show因為我們已經學到了更多的資料,幾乎總能改進模型。這次的不同之處在於,經過訓練之後,在我們上街之前,我們會在一群朋友中評估我們的模型,這些朋友每週聚在一起討論當前的英語。第一周,我們幾乎被踢出談話,因為我們的語言模型非常糟糕。但是,這只是驗證集,每次我們犯錯誤時都可以調整我們的模型。最終,我們可以與小組進行對話並宣告我們已準備好進行測試。再次在現實世界中冒險,我們終於成功了!我們的模型現在非常適合通訊,因為我們有乙個關鍵元素,乙個用於模型開發和優化的驗證集。在資料科學模型中,我們使用了大量的驗證集,因為否則我們最終會過度擬合驗證集!這是通過我們將訓練資料分成不同的子集,或者如果我們有大量資料,我們可以使用多個驗證集。這個概念性示例仍然涵蓋了問題的所有方面。現在,當你聽說過擬合與欠擬合以及偏見與差異時,你有乙個概念框架來理解問題以及如何解決它!
資料科學和其他技術領域不應脫離我們的日常生活。通過用現實世界的例子解釋概念,我們可以將它們放入上下文中。如果我們理解框架,那麼我們可以通過使用有關解決問題的技術來補完細節。
欠擬合與過擬合
在用機器學習搭建模型時,經常會碰到這樣一種情況,你的模型演算法在樣本資料中匹配的非常完美。但用新資料測試,發現模型結果和實際差距非常大。那麼恭喜你!你掉進了機器學習中常見的乙個大坑 過擬合。什麼是過擬合呢?機器學習本質上是通過建立資料模型,使其和現有資料相吻合,從而找到資料中內在的規律。如下面三張圖...
欠擬合與過擬合
一 1.欠擬合 訓練集上表現很差 這種情況在測試集上也不會好 高偏差 bias 解決辦法 選擇更複雜的網路 有正則項就減小正則項引數等。2.過擬合 訓練集上表現很好,但測試集上表現很差,高方差 variance 解決辦法 採用更多資料 如果有正則化就增加正則化引數,沒有就加上正則化 dropout等...
過擬合與欠擬合
過擬合與欠擬合 欠擬合 個人理解就是由於資料少 正則化太厲害 模型複雜度太簡單等原因,導致模型沒有學習到足夠的規律,準確率與模型可達到的準確率差距較大。但是模型在訓練集和測試集的曲線趨勢是正常收斂的。解決方法為有 增加特徵,尋找與標籤相關性較大的特徵,在保證特徵沒有共線性的前提下,增加特徵的數量 減...