1. 程式人生 > >機器學習:正則化

機器學習:正則化

Coursera公開課筆記: 斯坦福大學機器學習第七課“正則化(Regularization)”

斯坦福大學機器學習第七課"正則化“學習筆記,本次課程主要包括4部分:

1)  The Problem of Overfitting(過擬合問題)

2)  Cost Function(成本函式)

3)  Regularized Linear Regression(線性迴歸的正則化)

4)  Regularized Logistic Regression(邏輯迴歸的正則化)

以下是每一部分的詳細解讀。

1)  The Problem of Overfitting(過擬合問題)

擬合問題舉例-線性迴歸之房價問題:

a) 欠擬合(underfit, 也稱High-bias)

欠擬合-我愛公開課-52opencourse.com

b) 合適的擬合:

擬合問題-我愛公開課-52opencourse.com

c) 過擬合(overfit,也稱High variance)

過擬合-我愛公開課-52opencourse.com

什麼是過擬合(Overfitting):

如果我們有非常多的特徵,那麼所學的Hypothesis有可能對訓練集擬合的非常好(                ),但是對於新資料預測的很差。

過擬合例子2-邏輯迴歸:

與上一個例子相似,依次是欠擬合,合適的擬合以及過擬合:

a) 欠擬合

邏輯迴歸欠擬合-我愛公開課-52opencourse.com

b) 合適的擬合

邏輯迴歸合適的擬合-我愛公開課-52opencourse.com

c) 過擬合

邏輯迴歸過擬合-我愛公開課-52opencourse.com

如何解決過擬合問題:

首先,過擬合問題往往源自過多的特徵,例如房價問題,如果我們定義瞭如下的特徵:

特徵選擇-我愛公開課-52opencourse.com

那麼對於訓練集,擬合的會非常完美:

房價問題過擬合-我愛公開課-52opencourse.com

所以針對過擬合問題,通常會考慮兩種途徑來解決:

a) 減少特徵的數量:

-人工的選擇保留哪些特徵;

-模型選擇演算法(之後的課程會介紹)

b) 正則化

-保留所有的特徵,但是降低引數   的量/值;

-正則化的好處是當特徵很多時,每一個特徵都會對預測y貢獻一份合適的力量;

2)  Cost Function(成本函式)

依然從房價預測問題開始,這次採用的是多項式迴歸:

a) 合適的擬合:

多項式迴歸正則化-我愛公開課-52opencourse.com

b) 過擬合

多項式迴歸過擬合-我愛公開課-52opencourse.com

直觀來看,如果我們想解決這個例子中的過擬合問題,最好能將     的影響消除,也就是讓     .

假設我們對     進行懲罰,並且令其很小,一個簡單的辦法就是給原有的Cost function加上兩個略大懲罰項,例如:

成本函式-我愛公開課-52opencourse.com

這樣在最小化Cost function的時候,     .

正則化:

引數       取小一點的值,這樣的優點:

-“簡化”的hypothesis;

-不容易過擬合;

對於房價問題:

-特徵包括:       

-引數包括:       

我們對除   以為的引數進行懲罰,也就是正則化:

對cost function進行正則化-我愛公開課-52opencourse.com

正式的定義-經過正則化的Cost Function有如下的形式:

正則化正式的定義-我愛公開課-52opencourse.com

其中 稱為正則化引數,我們的目標依然是最小化 :   

例如,對於正則化的線性迴歸模型來說,我們選擇 來最小化如下的正則化成本函式:
正則化的線性迴歸模型—我愛公開課-52opencourse.com

如果將   設定為一個極大的值(例如對於我們的問題,設    )? 那麼

-演算法依然會正常的工作, 將  設定的很大不會影響演算法本身;

-演算法在去除過擬合問題上會失敗;

-演算法的結構將是欠擬合(underfitting),即使訓練資料非常好也會失敗;

-梯度下降演算法不一定會收斂;

這樣的話,除了   ,其他的引數都約等於0,     , 將得到類似如下的欠擬合圖形:

欠擬合線性迴歸-我愛公開課——52opencourse.com

關於正則化,以下引自李航博士《統計學習方法》1.5節關於正則化的一些描述:

模型選擇的典型方法是正則化。正則化是結構風險最小化策略的實現,是在經驗風險上加一個正則化項(regularizer)或罰項(penalty term)。正則化項一般是模型複雜度的單調遞增函式,模型越複雜,正則化值就越大。比如,正則化項可以是模型引數向量的範數。

正則化符合奧卡姆剃刀(Occam's razor)原理。奧卡姆剃刀原理應用於模型選擇時變為以下想法:在所有可能選擇的模型中,能夠很好地解釋已知資料並且十分簡單才是最好的模型,也就是應該選擇的模型。從貝葉斯估計的角度來看,正則化項對應於模型的先驗概率。可以假設複雜的模型有較大的先驗概率,簡單的模型有較小的先驗概率。

3)  Regularized Linear Regression(線性迴歸的正則化)

線性迴歸包括成本函式,梯度下降演算法及正規方程解法等幾個部分,不清楚的讀者可以回顧第二課第四課的筆記,這裡將分別介紹正則化後的線性迴歸的成本函式,梯度下降演算法及正規方程等。

首先來看一下線性迴歸正則化後的Cost function:

線性迴歸正則化Cost function-我愛公開課-52opencourse.com

我們的目標依然是最小化 ,從而得到相應的引數 . 梯度下降演算法是其中的一種優化演算法,由於正則化後的線性迴歸Cost function有了改變,因此梯度下降演算法也需要相應的改變:

正則化線性迴歸梯度下降演算法-我愛公開課-52opencourse.com

注意,對於引數 ,梯度下降演算法需要區分          

同樣的正規方程的表示式也需要改變,對於

X 是m * (n+1)矩陣

正規方程-我愛公開課——52opencourse.com

y是m維向量:

正規方程表示式-我愛公開課-52opencourse.com

正則化後的線性迴歸的Normal Equation的公式為:

線性迴歸正則化Normal Equation-我愛公開課-52opencourse.com

假設樣本數m小於等於特徵數x, 如果沒有正則化,線性迴歸Normal eqation如下:

       

如果   不可逆怎麼辦?之前的辦法是刪掉一些冗餘的特徵,但是線性迴歸正則化後,如果 ,之前的公式依然有效:

不可逆後的正規方程-我愛公開課-52opencourse.com

其中括號中的矩陣可逆。

4)  Regularized Logistic Regression(邏輯迴歸的正則化)

和線性迴歸相似,邏輯迴歸的Cost Function也需要加上一個正則化項(懲罰項),梯度下降演算法也需要區別對待引數\(\theta).

再次回顧一些邏輯迴歸過擬合的情況,形容下面這個例子:

邏輯迴歸過擬合-我愛公開課-52opencourse.com

其中Hypothesis是這樣的:

邏輯迴歸假設空間-我愛公開課-52opencourse.com

邏輯迴歸正則化後的Cost Function如下:

正則化邏輯迴歸Cost Function-我愛公開課-52opencourse.com

梯度下降演算法如下:

正則化邏輯迴歸梯度下降演算法-我愛公開課-52opencourse.com

其中   

相關推薦

機器學習——-L2

學了線性迴歸和邏輯迴歸後不得不提一下正則化 正則化是解決過擬合問題,是機器學習演算法中為防止資料過擬合而採取的“懲罰”措施。 擬合:通俗的講就是貼近的關係,擬合的三種狀態,欠擬合(貼的不夠緊),just right(剛剛好,恰到好處),過擬合(貼的太緊,以至於很容易出錯,不能泛化) 故事: 校服的故事

機器學習

正則化項可以是模型引數向量的範數 首先,範數是指推廣到高維空間中的模,給定向量x=(x1,x2,x3,...,xn),常用的向量的範數如下: L0範數:向量非零元素的個數 L1範數:向量各個元素絕對值之和 ,也被稱為“稀疏規則運算元” L2範數:向量各個元素的平方和然

機器學習 - 方法:L1和L2 regularization、資料集擴增、dropout

正則化方法:防止過擬合,提高泛化能力   常用的正則化方法有:L1正則化;L2正則化;資料集擴增;Droupout方法   (1) L1正則化 (2) L2正則化 (3) Droupout 【參考】https://blog.cs

機器學習:

Coursera公開課筆記: 斯坦福大學機器學習第七課“正則化(Regularization)” 斯坦福大學機器學習第七課"正則化“學習筆記,本次課程主要包括4部分: 1)  The Problem of Overfitting(過擬合問題) 2)  Cost Fu

[機器學習]方法 -- Regularization

       首先了解一下正則性(regularity),正則性衡量了函式光滑的程度,正則性越高,函式越光滑。(光滑衡量了函式的可導性,如果一個函式是光滑函式,則該函式無窮可導,即任意n階可導)。        機器學習中幾乎都可以看到損失函式後面會新增一個額外項,常用的額外

python機器學習——

我們在訓練的時候經常會遇到這兩種情況: 1、模型在訓練集上誤差很大。 2、模型在訓練集上誤差很小,表現不錯,但是在測試集上的誤差很大 我們先來分析一下這兩個問題: 對於第一個問題,明顯就是沒有訓練好,也就是模型沒有很好擬合數據的能力,並沒有學會如何擬合,可能是因為在訓練時我們選擇了較少的特徵,或者是我們選擇的

深度學習---提前終止

VM bsp jsb img tle 過程 部分 pos mdf 提前終止 ??在對模型進行訓練時,我們可以將我們的數據集分為三個部分,訓練集、驗證集、測試集。我們在訓練的過程中,可以每隔一定量的step,使用驗證集對訓練的模型進行預測,一般來說,模型在訓練集和驗證集的損失

深度學習---數據增強

clas pos 深度 偏移 噪聲 不同 更多 種類 圖片尺寸 在深度學習應用中訓練數據往往不夠,可以通過添加噪聲、裁剪等方法獲取更多的數據。另外,考慮到噪聲的多樣性,可以通過添加不同種類的噪聲獲取更多類型的數據,比如裁剪、旋轉、扭曲、拉伸等不同的方法生成不同的數據。 主要

深度學習-引數範數懲罰(L1,L2範數)

L0範數懲罰 機器學習中最常用的正則化措施是限制模型的能力,其中最著名的方法就是L1和L2範數懲罰。         假如我們需要擬合一批二次函式分佈的資料,但我們並不知道資料的分佈規律,我們可能會先使用一次函式去擬合,再

深度學習

以前總是不瞭解什麼是正則化   今天看書 算是有點體會   根據阿卡姆剃刀原理,如果一件事情有兩種解釋,那麼相對簡單的那個解釋更可能是正確的解釋,即假設更少的那個。 這個原理用在神經網路中,給定一些訓練資料和一種網路架構,很多組權重值(即很多種模型)都可以解釋這些資料,簡

深度學習:方法

正則化是機器學習中非常重要並且非常有效的減少泛華誤差的技術,特別是在深度學習模型中,由於其模型引數非常多非常容易產生過擬合。因此研究者也提出很多有效的技術防止過擬合,比較常用的技術包括: 引數新增約束,例如L1、L2範數等訓練集合擴充,例如新增噪聲、資料變換等D

深度學習Tricks——dropout

drop Out——神經網路中的模型平均 寫在前面 帶我入機器學習的偉大導師Andrew Ng曾經做過一個非常好的比喻。他把深度學習比作火箭,對於一個火箭來說,最重要的一部分必然是引擎,而在這個領域,目前來看引擎的核心是神經網路。但是要讓一個火箭執行,除了的

[轉] [機器學習] 常用數據標準化()的方法

機器學習 數據 評價 分享 函數 http mean 常用方法 訓練 數據正則化 目的:為了加快訓練網絡的收斂性,可以不進行歸一化處理 源地址:http://blog.sina.com.cn/s/blog_8808cae20102vg53.html 而在多指標評價體系中,

機器學習中的

道理 lazy 算法 htbox 而且 有趣的 文章 很難 直接 作者:陶輕松鏈接:https://www.zhihu.com/question/20924039/answer/131421690來源:知乎著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請註明出處。

斯坦福大學公開課機器學習: advice for applying machine learning | regularization and bais/variance(機器學習中方差和偏差如何相互影響、以及和算法的之間的相互關系)

交叉 來講 相對 同時 test 如果 開始 遞增 相互 算法正則化可以有效地防止過擬合, 但正則化跟算法的偏差和方差又有什麽關系呢?下面主要討論一下方差和偏差兩者之間是如何相互影響的、以及和算法的正則化之間的相互關系 假如我們要對高階的多項式進行擬合,為了防止過擬合現象

ng機器學習視頻筆記(五) ——過擬合與

哪些 重復 關註 osi 現實 regular 鏈接 梯度下降 簡單 ng機器學習視頻筆記(五) ——過擬合與正則化 (轉載請附上本文鏈接——linhxx) 一、過擬合和欠擬合 1、概念 當針對樣本集和特征值,進行預測的時候,推導θ、梯度下降等,都在

機器學習之路: python線性回歸 過擬合 L1與L2

擬合 python sco bsp orm AS score 未知數 spa git:https://github.com/linyi0604/MachineLearning 正則化: 提高模型在未知數據上的泛化能力 避免參數過擬合正則化常用的方法: 在目

吳恩達《機器學習》課程總結(7)

額外 分享 哪些 TP 回歸 分享圖片 表現 例子 兩個 7.1過擬合的問題 訓練集表現良好,測試集表現差。魯棒性差。以下是兩個例子(一個是回歸問題,一個是分類問題) 解決辦法: (1)丟棄一些不能幫助我們正確預測的特征。可以使用工選擇保留哪些特征,或者使用一些模型選擇

吳恩達機器學習(第八章)---

在我們擬合的時候,根據我們選擇函式的不同可能會出現欠擬合,擬合程度較好,過擬合。 1.欠擬合和過擬合        欠擬合,上面第一張圖就是欠擬合情況,欠擬合表現為所選的函式沒有很好的擬合所給的資料,從影象上看就是很多資料都不在函式上,偏

吳恩達機器學習 - 邏輯迴歸的 吳恩達機器學習 - 邏輯迴歸的

原 吳恩達機器學習 - 邏輯迴歸的正則化 2018年06月19日 15:07:25 離殤灬孤狼 閱讀數:181 更多