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