線性邏輯回歸是最基礎,也是最基本的線性模型,也就是說理解該模型,對於後續其他線性模型的研究有重要意義。所以今天找了時間專門回憶了一下。
一、什麼是回歸,什麼是邏輯回歸?
用一條直線對資料點進行擬合,擬合過程稱為回歸。
logistic回歸:根據現有資料對分類邊界線建立回歸公式,以此進行分類。
二、如何建立回歸公式?
我們使用sigmoid函式建立回歸公式,它的y值在(0,1)區間,符合分類需求。
回歸公式:構建z為特徵*特徵權重的總和,特徵是人為設定的,特徵權重便是我們模型的優化目標。
優化目標:找到最佳擬合引數,即最佳特徵權重向量。
三、如何尋找最佳特徵權重向量?
隨機梯度上公升法
思想:迴圈迭代n次,直到分類誤差小於某個閾值,或者迭代次數達到某個上限。
在迭代的過程中,每次使用隨機樣本通過誤差進行引數更新。
**如下:
def stocgradascent1(datamatrix,classlabels,numiter=150):
m,n = shape(datamatrix)
weights = ones(n)
for j in range(numiter): dataindex = range(m)
for i in range(m):
alpha = 4/(1.0+j+i) +0.01 # alpha在每次都會更新 減少波動 alpha會不斷減少,既能夠防止高頻波動,又能夠保證多次迭代後新資料仍然有影響,#如果需要保證新資料的大影響,那麼alpha需要加大
randindex = int(random.uniform(0,len(dataindex))) # 隨機生成0,資料大小的實數 隨機數 用隨機數訓練
h = sigmoid(sum(datamatrix[randindex]*weights))
error = classlabels[randindex] - h
weights = weights +alpha * error * datamatrix[randindex]
del(dataindex[randindex]) # 刪除該隨機數
return weights
線性回歸與邏輯回歸
cost functionj 12m i 1m h x i y i hypothesish x tx 梯度下降求解 為了最小化j j j 1m i 1m h x i y i x i j 每一次迭代更新 j j 1m i 1m h x i y i x i j 正規方程求解 最小二乘法 xtx 1x t...
線性回歸和邏輯回歸
最近開始學習機器學習,有點心得體會,記錄一下,希望大家批評指正 監督學習 supervised learning 根據已有的資料集,知道輸入和輸出結果之間的關係。根據這種已知的關係,訓練得到乙個最優的模型。也就是說,在監督學習中訓練資料既有特徵 feature 又有標籤 label 通過訓練,讓機器...
線性回歸 和 邏輯回歸
跟著b站乙個小姐姐學的 很不錯 1 什麼是回歸 什麼是分類?簡單來說一般回歸問題在數值上是乙個連續的 而分類問題在數值上一般是離散型的 回歸 回歸模型的更傾向於很小的區域 或者是乙個x對應乙個y 線性回歸就不在討論了 這裡學習一下 邏輯回歸 邏輯回歸 聽起來是回歸 但實際上他是解決分類問題的 是乙個...