1. 程式人生 > >機器學習之梯度下降法數學推導--分類

機器學習之梯度下降法數學推導--分類

PS:本文中的log等同於我們國內的ln

sigmoid函式

    之前那一文中提到了一般的梯度上升的公式推導,但是在《機器學習實戰》一書中,實現的是分類方法,因此,雖然最終的結果相似,但是其實本質有很大的不同。

    一般來講我們把實物分成兩類,因此我們需要將結果對映到兩個結果(是或非),因為一般的階躍函式在求導之類的問題上會變得相當複雜,因此我們用一個更加圓滑的sigmoid函式來對映,所有輸入到這個函式的實數都會被轉化到0-1之間,它的公式為g(z)=11+ez

    同時它對應的影象如圖所示:
sigmoid

    於是我們可以將得到的結果進行四捨五入,分類成0或1

Logistic 迴歸

    這裡的意思是,將我們的分類邊界線作模型,進行擬合,並以此來分類。

     我們假設經過sigmoid函式處理過的結果為hΘ(x),因為是在0-1之間,因此可以看做是概率,另外,我們可以假設,分類到0或者1的概率。

P(y=1|x;θ)=hθ(x)P(y=0|x;θ)=1hθ(x)(1)
將以上兩個概率公式整合一下成為一個概率公式,
p(y|x;θ)=(hθ(x))y(1hθ(x))1y(2)

梯度上升解決迴歸問題

1. 最大似然估計

     這裡我們使用最大似然估計法,這個在大學的高等數學中應該都有學習過,就不在贅述。這裡假設我們有m個訓練集。

L(θ)
=i=1mp(y(i)|x(i);θ)=i=1m(hθ(x(i)))y(i)(1hθ(x(i)))1y(i)
(3)

     為了求導方便,我們一般會將似然函式L加上log函式,因為log函式是遞增函式,因此不影響似然函式求最值。
這裡會用到一個log函式的性質logab=bloga,推導得:
l(θ)=logL(θ)=i=1my(i)logh(x(i))+(1y(i))log(1h(x(i)))(4)
     將l函式對θ求導
θjl(θ)=(y1hθ(x)(1y)11hθ(x))θjhθx(5)

2. sigmoid函式求導

h(x)=dd
x
11+ex
=1(1+ex)2(ex)=1(1+ex)(11(1+

相關推薦

機器學習梯度下降數學推導--分類

PS:本文中的log等同於我們國內的ln sigmoid函式     之前那一文中提到了一般的梯度上升的公式推導,但是在《機器學習實戰》一書中,實現的是分類方法,因此,雖然最終的結果相似,但是其實本質有很大的不同。     一般來講我們把實物分

機器學習梯度下降

梯度 學習 模型 最快 參數 nbsp 函數 bsp 每一個 在吳恩達的機器學習課程中,講了一個模型,如何求得一個參數令錯誤函數值的最小,這裏運用梯度下降法來求得參數。 首先任意選取一個θ 令這個θ變化,怎麽變化呢,怎麽讓函數值變化的快,變化的小怎麽變化,那麽函數值怎麽才能

機器學習--監督學習梯度下降

最近在看stanford 吳恩達老師的機器學習課程,附上網易公開課的地址http://open.163.com/special/opencourse/machinelearning.html 突然心血

吳恩達機器學習筆記——梯度下降

1:假設函式的引數更新要做到同時更新,即先將求得的引數放在統一的temp中,然後同時賦值給對應的引數w0,w1,w2,w3..... 2:特徵縮放和收斂速度問題 倘若,特徵向量中一些特徵值相差太大,就會導致代價函式特徵引數的函式曲線很密集,以至於需要多次迭代才能達到最小值。 學習率:決定

機器學習--梯度下降演算法

貌似機器學習最繞不過去的演算法,是梯度下降演算法。這裡專門捋一下。 1. 什麼是梯度 有知乎大神已經解釋的很不錯,這裡轉載並稍作修改,加上自己的看法。先給出連結,畢竟轉載要說明出處嘛。為什麼梯度反方向是函式值區域性下降最快的方向? 因為高等數學都忘光了,先從導數/偏倒數/方向

機器學習梯度下降詳解

一、導數 導數 就是曲線的斜率,是曲線變化快慢的一個反應。 二階導數 是斜率變化的反應,表現曲線的 凹凸性 y

影象與機器學習-1-梯度下降與ubuntu

現值研一,進入了飛行器控制實驗室,在我迷茫不知學什麼的時候,這時候劉洋師兄帶著影象識別與跟蹤這個課題來到了我們面前,師兄傾其所有交給我們學習的方法和步驟與資料,第一節課,師兄給我們講解了影象識別與跟蹤以及機器學習或深度學習的應用和前景以及基本框架和概念。可以說帶領我進入了影象與機器學習的第一步。

機器學習(7)--梯度下降(GradientDescent)的簡單實現

曾經在  機器學習(1)--神經網路初探  詳細介紹了神經網路基本的演算法,在該文中有一句weights[i] += 0.2 * layer.T.dot(delta) #0.2學習效率,應該是一個小於0.5的數,同時在  tensorflow例項(2)--機器學習初試

機器學習梯度下降演算法Gradient Descent

      梯度下降演算法: 機器學習實現關鍵在於對引數的磨合,其中最關鍵的兩個數:代價函式J(θ),代價函式對θ的求導∂J/∂θj。 如果知道這兩個數,就能對引數進行磨合了:其中 α   為每步調整的幅度。 其中代價函式公式J(θ): 代價函式對θ的求導∂J/∂θj:

機器學習梯度下降和牛頓的比較

在機器學習的優化問題中,梯度下降法和牛頓法是常用的兩種凸函式求極值的方法,他們都是為了求得目標函式的近似解。在邏輯斯蒂迴歸模型的引數求解中,一般用改良的梯度下降法,也可以用牛頓法。由於兩種方法有些相似,我特地拿來簡單地對比一下。下面的內容需要讀者之前熟悉兩種演算

機器學習--梯度下降和最小二乘法算線性回歸

http 線性 nbsp mat 需要 圖片 span 數據 .com o1 = 0 o2 = 0 o3 = 0 a = 0.002 x = [1,3,5,3,5,7,2,6,7,3,6,9,4,8,9,6,5,3,3,2,7,1,1,1,2,2,2,3,3,3

機器學習梯度下降原理及用其解決線性迴歸問題的C語言實現

本文講梯度下降(Gradient Descent)前先看看利用梯度下降法進行監督學習(例如分類、迴歸等)的一般步驟: 1, 定義損失函式(Loss Function) 2, 資訊流forward propagation,直到輸出端 3, 誤差訊號back propagation。採用“鏈式法則”,求損失函式關

機器學習筆記梯度下降

梯度下降法/批量梯度下降法BGD 梯度下降法是一種基於搜尋的最優化方法,即通過不斷地搜尋找到函式的最小值.並不是機器學習專屬的方法.但是在機器學習演算法中求解損失函式的最小值時很常用. 還記得之前說過的機器學習演算法的普遍套路嗎? 定義一個合理的損失函式 優化這個損失函式,求解最小值.

梯度下降基本推導--機器學習最基本的起點

仍然是一篇入門文,用以補充以前文章中都有意略過的部分。 之前的系列中,我們期望對數學並沒有特別喜好的程式設計師,也可以從事人工智慧應用的開發。但走到比較深入之後,基本的數學知識,還是沒辦法躲過的。 導言 所有的深度學習,始於一個最簡單的公式: \[ y=ax+b \] 如果不理解的,可以去看一下房價預

機器學習梯度下降和牛頓

一、問題描述 考慮將基本梯度下降和牛頓法應用到表中的資料上。 (a)用這兩種演算法對二維資料給出 和 的判別。對梯度下降法取 。畫出以迭代次數為準則函式的曲線。 (b)估計這兩種方法的數學運算量。 (c)畫出收斂時間-學習率曲線。求出無法收斂的最小學習率。 二、

機器學習筆記(1)---監督學習梯度下降

基本概念 線性迴歸 梯度下降法 前言 本機器學習筆記是跟著原斯坦福大學吳恩達老師cs229課程學習後做的課後筆記。每次課程都會涉及到很多數學知識,我在記錄課程核心內容的同時,會把數學基礎知識在其它博文中單獨記下,並在《機器學習筆記》系

Python機器學習梯度提升樹

pri () 糾正 ensemble depth del gbrt 1.5 cer #和隨機森林一樣,基於決策樹,采用連續的方式構建樹,深度很小max_depth<5.重要的參數n_estimate和learning_rate,這兩個參數的y作用在於對模型過擬合化得調

機器學習——正規方程

計算 很多 矩陣 運行 比較 梯度下降 nbsp 梯度 缺點 1.梯度下降法 (1)需要選擇學習率a (2)需要多次叠代 優點:梯度下降法在特征變量很多的情況下也能運行地相當好 2.正規方程法 (1)不需要選擇學習率a (2)不需要叠代 (3) 正規方程法不需要做特征縮放

機器學習梯度下降gradient descent

視屏地址:https://www.bilibili.com/video/av10590361/?p=6  引數優化方法:梯度下降法  learning rate  learning rate : 選擇rate大小 1、自動調learning ra

機器學習筆記——梯度下降(Gradient Descent)

梯度下降演算法(Gradient Descent) 在所有的機器學習演算法中,並不是每一個演算法都能像之前的線性迴歸演算法一樣直接通過數學推導就可以得到一個具體的計算公式,而再更多的時候我們是通過基於搜尋的方式來求得最優解的,這也是梯度下降法所存在的意義。 不是一個機器學習演