擬合函式
\(h_(x)=\theta_+\theta_ x\)
\(x=(x^,x^...x^)\)訓練集
\(h=(h^,h^...h^)\)訓練集
共m個樣本
參考知乎
**值與實際值差的平方和的最小值
取值才能讓這條直線最佳地擬合這些資料呢?這就是代價函式登場的時刻了
\(j\left(\theta_, \theta_\right)=\frac \sum_^\left(\hat_-y_\right)^=\frac \sum_^\left(h_\left(x_\right)-y_\right)^\)
這就是一次函式的代價函式 \(j\left(\theta_, \theta_\right)\)。
判斷擬合的這個函式是否準確就是判斷通過這個函式的出來的結果與實際結果有多大的誤差:
\(\left(h_\left(x_\right)-y_\right)^\)
i 為第 i 個資料,上式表示我通過擬合函式 \(h_(x)\)得到的第 i 個資料與真實的第 i 個資料的誤差。總共有 m 個資料,那麼我們就應該把 m 個資料的誤差求和然後再求出平均誤差,得到下面這個式子。
\(\frac \sum_^\left(h_\left(x_\right)-y_\right)^\)
只要我讓這個值盡可能的小,我所做的擬合函式就越準確,那麼剛才求擬合函式的問題就轉化成了通過 \(θ_0\) 和 \(θ_1\)求\(j\left(\theta_, \theta_\right)\)的最小值。
給出乙個gaminder資料集上面的單變數回歸模型
直接使用sklearn包裡面的線性回歸即可
# import linearregression
from sklearn.linear_model import linearregression
# create the regressor: reg
reg = linearregression()
# create the prediction space
prediction_space = np.linspace(min(x_fertility), max(x_fertility)).reshape(-1,1)
# fit the model to the data
reg.fit(x_fertility, y)
# compute predictions over the prediction space: y_pred
y_pred = reg.predict(prediction_space)
# print r^2
print(reg.score(x_fertility, y))
# plot regression line
plt.plot(prediction_space, y_pred, color='black', linewidth=3)
plt.show()
#因為是乙個基本模型,因此誤差很大
如果有人比較懶,不希望每次都要親自處理這些資料,從代價函式圖中找到最小值所在的點。有沒有一種演算法可以自動地求出使得代價函式最小的點呢?有,那就是梯度下降 2 1單變數線性回歸模型表示
首先舉乙個 住房 的例子,其中使用的資料集為某市住房尺寸及對應的 如果一間住房面積為1250平方尺,這間住房能賣多少錢?那麼,第一件事就是構建乙個模型,也許是條直線,從這個資料模型上看,大約能以220000 美元 左右的 賣掉這間房子。這就是監督學習演算法的乙個例子。它被稱作監督學習是因為對於每個資...
單變數線性回歸
參考 模型表示 線性回歸 linear regression 是利用稱為線性回歸方程的最小平方函式對乙個或多個自變數和因變數之間關係進行建模的一種回歸分析。這種函式是乙個或多個稱為回歸係數的模型引數的線性組合。只有乙個自變數的情況稱為簡單回歸,大於乙個自變數情況的叫做多元回歸。詳細描述 之前的房屋交...
單變數線性回歸
線性回歸模型 linear regression model 包括線性假設 linear hypothesis 和平方差代價函式 squared error cost function 字母的含義 m number of training examples 訓練樣本的數量 x input varia...