1. 程式人生 > >Stanford機器學習---第三週.邏輯迴歸、正則化

Stanford機器學習---第三週.邏輯迴歸、正則化

第三週 邏輯迴歸與正則化

學完前三週簡要做個總結,梳理下知識框架:

第一講 邏輯迴歸Logistic Regression

1.分類問題Classification Problem

for example

->Email: Spam / Not Spam 判斷一封郵件是不是垃圾郵件?

->Online Transaction:Fraudulent(Yes/NO)?判斷某個網路交易是否是詐騙?

->Tumor:Malignant / Benign?判斷腫瘤是惡性還是良性?

綜上,分類問題就是這樣一類問題:針對某個實際樣本,根據某種標準,判斷它屬於哪一個類別,其最終結果是離散的輸出值。

分類問題在生活中很常見,除了以上的例子外,想對某水體取樣判斷水質的酸鹼性、對某地大氣取樣判斷其空氣汙染級別,以上問題的解決都屬於今天我們討論的話題。

2.名次解釋

   對於分類classification問題,要構建邏輯迴歸模型去預測,注意:這裡的邏輯迴歸雖然也有‘迴歸’二字,但並不是針對迴歸問題而言,因為其預測的結果是離散值,所以不要被“迴歸”二字混淆,邏輯迴歸並不屬於迴歸問題。

3.假設函式Hypothesis

分類問題要求Classification: y = 0 or 1

相應地預測結果 h(x) need to be limited to : 0 <= h(x) <= 1

所以,對於邏輯迴歸中的假設函式我們有如下定義(線上性迴歸模型上進行改進):


當樣本預測結果h(x)>=0.5時,預測輸出值y=1;若h(x)<0.5時,預測輸出值y = 0;

所以這使得假設函式h(x)有這樣的物理意義:h(x)表徵預測結果y=1的概率;


4.決策邊界Decision boundary

決策邊界是假設函式h(x)的一個屬性,當通過訓練集擬合出了一條曲線-----即x對應的θ確定,那麼相應的決策邊界也就確定。

決策邊界就是θ^(T)x=0的曲線,曲線的兩側分別對應y=0 or 1。根據一個樣本落在曲線的哪一側,從而對結果進行決策。


4.代價函式J(θ)

代價函式J如果採用線性迴歸模型中的平方誤差函式定義,得到的J是一個non-convex(凸),採用梯度下降不易得到全域性最優解,這裡我們採用概率論中的極大似然估計對J做一個凸優化,有:


整理可得:

               

   代價函式雖然重新定義,但是更符合邏輯問題的預測情況,當y=1時:若h(x)->1,cost->0;若h(x)->0,cost->

∞,代價函式J很好的體現了“代價”這一含義。

★★★5.邏輯迴歸模型Logistic Regression Model

與線性迴歸模型的區別:y = 0 or 1 

                                 0 <= h(x) <= 1 

①假設/擬合函式Hypothesis:


②引數Parameter:


③代價函式Cost Function:


④目標Goal: 


對於邏輯迴歸模型Logistic Regression Model的求解主要有:梯度下降和高階優化演算法。

6.梯度下降Gradient Decent

    梯度下降演算法在第二週的線性迴歸模型中有詳細描述,思路就是沿著J(θ)偏導數的方向以α的步伐下降,同時同步更新θ,迭代下去直至J(θ)收斂。

    對於Logistic Regression由於J(θ)有變化,梯度下降演算法雖然在原理上沒有任何變化,就其表達形式我們也重新做一下推導:

   

對於θ的更新第二個等號的後面表示式的由來,就是對J(θ)求偏導,筆者曾經詳細的推導過,利用了一點g(z)函式的性質和適當的換元,感興趣的讀者可以試著推到下,最終你會驚人的發現:邏輯迴歸在改變J的前提下梯度下降演算法的表達形式與Linear Regression表達形式出奇的一致:-),當然,h(x)的形式不同啦!QAQ

7.高階優化演算法Advanced Optimization

   Andrew Ng在這裡講到了三種高階優化演算法,它們的高階是指相對於梯度下降演算法而言,有更快的收斂速度和自適應性,無需人工選擇學習速率α,缺點就是太複雜。

   Andrew Ng坦言,對於這些高階優化演算法,重要的是成功應用這些演算法於不同的學習問題,而不太需要真正理解這些演算法的內環間在做什麼。


8.多類別分類問題Multi-class classification

之前講的都是兩種輸出y = 0 or 1,實際生活中會遇到多種類別的問題,解決這類多類別分類問題的基礎,就是之前的邏輯迴歸。

for example

Weather : Sunny , Cloudy , Rain , Snow(預測天氣情況)

Email tagging : Work , Friends , Family , Hobby(郵件歸類)

這時候相應的,y = 1 , 2 , 3 ,4 ....

One-vs-all思路:

選中某一類,其餘歸於一類,對於這樣的邏輯迴歸問題進行求解得到分類器h1(x);

再依次選擇其他類別,分別求解得到h2(x)....hn(x)(假設有n類)

最終,對某個樣本x進行預測時,挑選hi(x)中的最大值(可以理解為交集)



第二講 正則化Regularization

正則化是一種處理過擬合問題的有效手段,Andrew Ng調侃道熟練掌握和使用梯度下降+高階優化演算法+正則化,就能在silicon valley混得不錯TAT.

1.過擬合現象overfitting

所謂的過擬合,就是特徵量冗餘,導致擬合函式雖然能夠很好的滿足訓練集,但是波動性大、方差大,對於新的樣本值不能很好的預測(用老話講,有點“過猶不及”的味道)

以下是欠擬合、正確擬合、過擬合的圖示比較,更直觀一些:


解決過擬合的方法,這裡介紹用處很大的正則化方法Regularization

★★★2.正則化對代價函式的改進

思路:引入θ求和項對1-n的θ進行懲罰,λ稱為正則化引數


因為有sigmaθ項的存在,在最小化代價函式的最終結果除了θ0外所有的θ都趨近於0。

λ很大時,擬合曲線趨近於一條水平直線,結果欠擬合,且梯度下降演算法不能很好工作,通常λ選作1,就可以優化過擬合的情況。

至於如何將正則化的原理應用到線性迴歸模型、邏輯迴歸模型中去,就需要包括筆者在內的大家在實際問題中去動手實踐了!~

第三週的課程結束,伴隨著寒假的來臨,臨近新年要給自己大大的禮物才是,明天week4,Go~生氣

相關推薦

Stanford機器學習---.邏輯迴歸

第三週 邏輯迴歸與正則化 學完前三週簡要做個總結,梳理下知識框架: 第一講 邏輯迴歸Logistic Regression 1.分類問題Classification Problem for e

Coursera機器學習--邏輯迴歸Logistic Regression

Classification and Representation 1. Classification Linear Regression (線性迴歸)考慮的是連續值([0,1]之間的數)的問題,而Logistic Regression(邏輯迴歸)考

Stanford機器學習 邏輯迴歸

一、邏輯迴歸 1.1 分類問題 判斷一封電子郵件是否是垃圾郵件;判斷一次金融交易是否是欺詐;判斷腫瘤是惡性的還是良性的等屬於分類問題。 Eg:預測病人的腫瘤是惡性(malignant)還是良性(benign),用線性迴歸的方法擬合一條直線如圖 當hθ大於等於0.5時,預測 y

吳恩達 機器學習

轉載https://www.cnblogs.com/LoganGo/p/8562575.html 一.邏輯迴歸問題(分類問題) 生活中存在著許多分類問題,如判斷郵件是否為垃圾郵件;判斷腫瘤是惡性還是良性等。機器學習中邏輯迴歸便是解決分類問題的一種方法。 二分類:通常表示為yϵ{0,1}

機器學習 | 吳恩達機器學習程式設計作業(Python版)

實驗指導書  下載密碼:fja4 本篇部落格主要講解,吳恩達機器學習第三週的程式設計作業,作業內容主要是利用邏輯迴歸演算法(正則化)進行二分類。實驗的原始版本是用Matlab實現的,本篇部落格主要用Python來實現。   目錄 1.實驗包含的檔案 2.使用邏

機器學習(下)

擬合 1、擬合程度 1.1、過擬合 1.1.1、原因 1.1.2、理論解決方法 1.1.3、實際解決方法之一:正則化 1.1.3.1、正則化線性迴歸 1.1.3.2、正則化正規方

機器學習 | 吳恩達機器學習學習筆記

第三週PPT彙總下載連結:https://pan.baidu.com/s/101uY5KV_2i3Ey516DYma_A  密碼:8o4e 上一篇部落格主要介紹了第二週的課程的內容,包括多變數線性迴歸,使用梯度下降法求解多變數線性迴歸的實用技巧,特徵縮放與模型特徵選擇並

FPGA機器學習stanford機器學習堂2

             我已經寫過一遍了,為了我的分享事業,我在寫一次吧。            上一次我寫到了,這裡加號後面的那個就是錯誤率。為什麼會引入這個,上一篇,我有寫清楚。          這裡,我們假定它符合高斯分佈。為什麼是高斯分佈,上一篇也寫了。 這裡引

機器學習入門系列(關鍵詞:邏輯迴歸

一、邏輯迴歸 1.邏輯迴歸 什麼是邏輯迴歸問題,通俗地講就是監督下的分類問題。通過前面的學習,我們已經掌握如何解決線性(非線性)迴歸的問題。那面對分類問題我們是否也可以用線性迴歸呢?簡單起見,我們先討論二元分類,首先讓我們來看一個例子,腫瘤的大小與是否是惡性的關係,其中紅色的×表示腫瘤大小,對應的y軸

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

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

機器學習基礎(十) —— 線性迴歸(regularized)線性迴歸區域性加權線性迴歸(LWLR)

1. 線性迴歸 線性迴歸根據最小二乘法直接給出權值向量的解析解(closed-form solution): w=(XTX)−1XTy 線性迴歸的一個問題就是有可能出現欠擬合現象,因為它求的是具有最小均方誤差(LSE,Least Square Erro

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

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

線性迴歸邏輯迴歸regularization

線性迴歸 介紹 為了防止過度擬合,正則化是一種不錯的思路。能夠使得獲得的邊界函式更加平滑。更好的模擬現實資料,而非訓練樣本。 方法 可以說,regularization是新增懲罰,使得引數接近於零,

概率統計與機器學習:極大後驗概率以及

先驗概率 概念:本質上就是古典概型,是利用當前狀態對求解狀態的一種概率估計,可以理解為“由 因求果”中“因”出現的概率。 條件: (1)實驗所有的可能結果是有限的; (2) 每一種出現

Stanford機器學習---三講. 邏輯迴歸和過擬合問題的解決 logistic Regression & Regularization

在每次迭代中,按照gradient descent的方法更新引數θ:θ(i)-=gradient(i),其中gradient(i)是J(θ)對θi求導的函式式,在此例中就有gradient(1)=2*(theta(1)-5), gradient(2)=2*(theta(2)-5)。如下面程式碼所示:

【轉載】Stanford機器學習---三講. 邏輯迴歸和過擬合問題的解決 logistic Regression & Regularization

在每次迭代中,按照gradient descent的方法更新引數θ:θ(i)-=gradient(i),其中gradient(i)是J(θ)對θi求導的函式式,在此例中就有gradient(1)=2*(theta(1)-5), gradient(2)=2*(theta(2)-5)。如下面程式碼所示:

小白學習機器學習---章(2):對數機率迴歸python實現

上程式碼~~~~~~~~###梯度下降法實現多元線性迴歸 def loadDataSet(): ###資料匯入函式### dataMatrix=[] #資料矩陣,第一列是w=1.0,第2,3列是特徵 labelMatrix=[] #標籤矩陣

機器學習練:為慈善機構尋找捐助者

alt earch .get 變量 照相 標簽 log 比較 random 這個任務同樣是在Jupyter Notebook中完成, 項目目的是通過前面的所有特征列,當然去掉序號列,然後預測最後一列,收入‘income‘,究竟是大於50K,還是小於等於50K. 第一

【原】Andrew Ng斯坦福機器學習 Programming Exercise 2——邏輯迴歸

作業說明   Exercise 2,Week 3,使用Octave實現邏輯迴歸模型。資料集  ex2data1.txt ,ex2data2.txt   實現 Sigmoid 、代價函式計算Computing Cost 和 梯度下降Gradient Descent。   檔案清單

Coursera-吳恩達-機器學習--測驗-Support Vector Machines

  忘記截圖了,做了二次的,有點繞這裡,慢點想就好了。 正確選項是,It would be reasonable to try increasing C. It would also be reasonable to try decreasing σ2.  &n