機器學習 單變數線性回歸

2021-09-25 14:39:46 字數 2675 閱讀 6049

你有乙個10000平方英呎的房子,現在要進行轉買,能賣多少錢呢?

單變數線性回歸,顧名思義是乙個變數對結果產生的影響,例如上題房屋面積對房屋**的影響

回歸是統計學的乙個重要概念,其本意是根據之前的資料**乙個準確的輸出值,解題思路如下:

1、定義乙個模型 hθ(x)=θ0+θ1x,並初始化θ0 θ1的值就會產生乙個如下的影象

然後就會發現這條直線並不能很好的彌合這些資料,所以需要更新引數,但是更新引數前需要求一下這條直線的代價

2.求代價函式

3.進行梯度下降更新引數並取得θ的最小值

梯度下降後會發現這條線比之前的要好一點,接著我們重複這個步驟,最後我們會獲得這樣的乙個影象

接下來我們就以乙個例子來看一下這個流程

import numpy as np

import matplotlib.pyplot as plt

plt.rcparams[

'font.sans-serif']=

['simhei'

]plt.rcparams[

'axes.unicode_minus']=

false

# 讀取資料

data = np.loadtxt(r'c:\users\shy\pycharmprojects\untitled\week3\ex1data1.txt'

,delimiter=

',')

# print(data.shape)

# 資料提取

x = data[:,

:-1]

y = data[:,

-1]# 資料初始化

x = np.c_[np.ones(

len(x)

),x]

y = np.c_[y]

# 定義模型

defmodel

(x,theta)

: h = np.dot(x,theta)

return h

# 定義代價函式

defcostfunc

(h,y)

: m = y.shape[0]

j =1.0/(2

*m)*np.

sum(np.square(h-y)

)# j = 1.0/(2*m)*np.dot((h-y).t,(h-y))

return j

# 定義梯度下降函式

defgraddesc

(x,y,alpha=

0.01

,iter_num=

15000):

m,n = x.shape

theta = np.zeros(

(n,1))

# 初始化theta值

j_history = np.zeros(iter_num)

# 初始化代價函式值

# 執行梯度下降

for i in

range

(iter_num)

: h = model(x,theta)

j_history[i]

= costfunc(h,y)

deltatheta =

(1.0

/m)*np.dot(x.t,h-y)

theta -= alpha*deltatheta

return j_history,theta

# 呼叫梯度下降演算法

j_history,theta = graddesc(x,y)

# 畫圖

# 畫代價曲線

plt.title(

'代價曲線'

)plt.plot(j_history)

plt.xlabel(

'迭代次數'

)plt.ylabel(

'代價值'

)plt.show(

)# 畫樣本散點圖和線性回歸方程

plt.title(

'樣本分佈圖'

)# 散點圖

plt.scatter(x[:,

1],y[:,0

],c=

'pink'

)# 畫回歸方程

通過這個訓練模型,你就能清晰的看出房屋面積對**的影響,也可以知道10000平方英呎的房子能賣多少了

機器學習 單變數線性回歸

1.模型描述 1 常見的字元的意義 2 乙個監督學習演算法的工作方式 2.代價函式 1 什麼是代價函式 平方誤差函式 目標函式 我在網上找了很長時間代價函式的定義,但是準確定義並沒有,我理解的代價函式就是用於找到最優解的目的函式,這也是代價函式的作用。注意 上面的代價函式是二變數的,事實上代價函式可...

機器學習 單變數線性回歸

給定房屋面積和房屋 的資料,然後以房屋面積為橫座標,房屋 為縱座標,繪製資料點。通過繪製曲線,獲得房屋房價的模型,根據房屋面積獲得房屋 這就是乙個regression problem 回歸問題 regression指的是根據之前的資料 出乙個準確的輸出值,即predict real valued o...

機器學習 單變數線性回歸

之前寫過一篇關於線性回歸的博文,今天就單變數的線性回歸做以歸納總結。模型表達 model representation 我們的第乙個學習演算法是線性回歸演算法,讓我們通過乙個例子來開始。這個例子用來 住房 我們使用乙個資料集,該資料集包含奧勒岡州波特蘭市的住房 在這裡,我要根據不 屋尺寸所售出的 畫...