機器學習實戰(簡單的線性回歸)

2021-09-25 13:18:56 字數 879 閱讀 9861

n是特徵數量

xi是第i個特徵值

這可以用更簡潔的向量公式表示,博主有點懶不想打了

我們在訓練線性回歸模型的時候,需要找到最小化均方誤差(mse)的引數

找到使成本函式最小的模型引數值就可以啦

以下就是簡單實現線性回歸的**

import matplotlib.pyplot as plt

import numpy as np

x = 2*np.random.rand(100,1)#生成100行一列的隨機數樣本值

y = 4+3*x+np.random.rand(100,1)#生成結果值

x_b = np.c_[np.ones((100,1)),x]

theta_best = np.linalg.inv(x_b.t.dot(x_b)).dot(x_b.t).dot(y)#利用標準方程的公式

x_new = np.array([[0],[2]])

x_new_b = np.c_[np.ones((2,1)),x_new]

y_predict = x_new_b.dot(theta_best)

plt.plot(x_new,y_predict,"r-")

plt.plot(x,y,"b.")

plt.axis([0,2,0,15])

plt.show()

#sklearn-learn 的等效**

from sklearn.linear_model import linearregression

lin_reg = linearregression()

lin_reg.fit(x,y)

print(lin_reg.predict(x_new))

機器學習實戰之線性回歸

之前我們學習的機器學習演算法都是屬於分類演算法,也就是 值是離散值。當 值為連續值時,就需要使用回歸演算法。本文將介紹線性回歸的原理和 實現。如圖所示,這時一組二維的資料,我們先想想如何通過一條直線較好的擬合這些散點了?直白的說 盡量讓擬合的直線穿過這些散點 這些點離擬合直線很近 目標函式 要使這些...

機器學習實戰之線性回歸

線性回歸原理與推導 如圖所示,這時一組二維的資料,我們先想想如何通過一條直線較好的擬合這些散點了?直白的說 盡量讓擬合的直線穿過這些散點 這些點離擬合直線很近 目標函式 要使這些點離擬合直線很近,我們需要用數學公式來表示。首先,我們要求的直線公式為 y xtw。我們這裡要求的就是這個w向量 類似於l...

線性回歸 機器學習實戰筆記

前言 剛開始看到線性回歸,總覺得這是不是和羅輯回歸又啥關係。對比一下吧。線性回歸用於數值 羅輯回歸用於分類。對於羅輯回歸 來說,用於分類的神經網路的最後一層也是乙個羅輯回歸。線性回歸 線性回歸比較簡單,找到一條最佳直線來擬合資料。擬合的目標可以是均方誤差最小。求最優的線性回歸直線的解法就是使用最小二...