邏輯回歸 最基礎的線性邏輯回歸詳解

2021-08-20 14:14:37 字數 1197 閱讀 1416

線性邏輯回歸是最基礎,也是最基本的線性模型,也就是說理解該模型,對於後續其他線性模型的研究有重要意義。所以今天找了時間專門回憶了一下。

一、什麼是回歸,什麼是邏輯回歸?

用一條直線對資料點進行擬合,擬合過程稱為回歸。

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 線性回歸就不在討論了 這裡學習一下 邏輯回歸 邏輯回歸 聽起來是回歸 但實際上他是解決分類問題的 是乙個...