邏輯回歸和線性回歸不太一樣,邏輯回歸做的是分類。
其實和線性回歸都是廣義線性模型(generalizedlinear model)。
這一家族中的模型形式基本上都差不多,不同的就是因變數不同。
這類監督學習的總體思路如下:
1、確定**函式,就是樣本和**結果的大致關係的函式,線性回歸是線性方程或者多項式方程,邏輯回歸是sigmoid函式。
2、確定損失函式,線性回歸是連續型的高斯分布概率密度(通過線性方程求解出來誤差項帶入),邏輯回歸是離散的01的二項分布函式(**函式就是概率,直接帶入二項分布的分布函式)。
3、通過最大似然估計求解,損失函式連乘,求解一般用的是log,後用梯度下降或上公升法,迭代引數,迭代的量一般是極大似然估計求導後的一些線性變換 。
接著上次博文,邏輯回歸是把線性回歸的目標函式轉化到sigmoid函式,sigmoid函式是乙個轉化為0到1也就是概率的函式。既然是分類就和線性回歸不一樣,線性回歸是利用了誤差的特性,高斯函式,做的連續性密度函式,利用最大似然估計法和梯度下降法估算出來x的係數的值。邏輯回歸是分類,概率分布函式是離散的,通過概率分布函式的最大似然估計來算出來使得樣本發生的概率最大的x的係數。
步驟如下:
1、計算到線性回歸的目標函式(這裡沒有了線性回歸的誤差項):
在 回歸裡面上個式子是y,除了沒有誤差項。帶入到sigmoid函式:
函式的圖形如下:
帶入後如下:
sigmoid函式可以幫助把原來的y值轉化為離散的概率值。方便使用二項分布。
2、尋找損失函式,二分類如下:
其實就是下面式子中的y=0 or y=1
這就是損失函式,就是二項分布的分布函式。
3、求最大似然函式,梯度下降求解 :
通過梯度下降法迭代求解:
對損失函式最大似然估計求導:
得出來的就是引數更新需要的量。i為樣本序列,j表示樣本的第幾個特徵。y是**值。
引數更新:
多分類可以如下計算:
進行了歸一化。就是概率。
機器學習 監督學習 (回歸)嶺回歸
1 嶺回歸 標準方程法 import numpy as np from numpy import genfromtxt import matplotlib.pyplot as plt 讀入資料 data genfromtxt r longley.csv delimiter 切分資料 x data d...
機器學習之監督學習 回歸
回歸問題和 分類問題的區別在於 其待 的目標是 連續變數 線性回歸器 如果面對訓練資料十分龐大的任務,隨機梯度法不論是在分類還是在回歸問題上都表現得十分高效,可以在不損失過多效能的前提下,節省大量計算時間 根據scikit learn官網的建議,如果資料規模超過10萬,推薦使用隨機梯度估計引數模型 ...
機器學習之有監督學習 回歸
線性回歸.py import matplotlib.pyplot as plt import numpy as np from sklearn import linear model 讀取資料集 datasets x 房屋尺寸 datasets y 房屋 fr open prices.txt r l...