機器學習之有監督學習 回歸

2021-10-18 02:08:26 字數 3224 閱讀 3803

#線性回歸.py

import matplotlib.pyplot as plt

import numpy as np

from sklearn import linear_model

# 讀取資料集

datasets_x =

#房屋尺寸

datasets_y =

#房屋**

fr =

open

('prices.txt'

,'r'

)lines = fr.readlines(

)#一次性讀取檔案

for line in lines:

items = line.strip(

).split(

',')

#去除檔案中逗號

int(items[0]

))#將讀取的資料轉換為int型

int(items[1]

))length =

len(datasets_x)

#資料總數

datasets_x = np.array(datasets_x)

.reshape(

[length,1]

)#轉換為陣列,變為二維,以符合線性回歸擬合函式輸入引數要求

datasets_y = np.array(datasets_y)

#轉換為陣列

minx =

min(datasets_x)

maxx =

max(datasets_x)

x = np.arange(minx,maxx)

.reshape([-

1,1]

)#建立等差數列,方便畫圖

linear = linear_model.linearregression(

)#呼叫線性回歸模組,建立回歸方程,擬合資料

linear.fit(datasets_x, datasets_y)

# 影象中顯示

plt.scatter(datasets_x, datasets_y, color =

'red'

)#繪製資料點

plt.plot(x, linear.predict(x)

, color =

'blue'

)#繪製直線

#多項式回歸.py

import matplotlib.pyplot as plt

import numpy as np

from sklearn import linear_model

from sklearn.preprocessing import polynomialfeatures

# 讀取資料集

datasets_x =

#房屋尺寸

datasets_y =

#房屋**

fr =

open

('prices.txt'

,'r'

)lines = fr.readlines(

)#一次性讀取檔案

for line in lines:

items = line.strip(

).split(

',')

#去除檔案中逗號

int(items[0]

))#將讀取的資料轉換為int型

int(items[1]

))length =

len(datasets_x)

#資料總數

datasets_x = np.array(datasets_x)

.reshape(

[length,1]

)#轉換為陣列,變為二維,以符合線性回歸擬合函式輸入引數要求

datasets_y = np.array(datasets_y)

#轉換為陣列

minx =

min(datasets_x)

maxx =

max(datasets_x)

x = np.arange(minx,maxx)

.reshape([-

1,1]

)#建立等差數列,方便畫圖

poly_reg = polynomialfeatures(degree =2)

#degree=2表示建立datasets_x的二次多項式特徵x_poly

x_poly = poly_reg.fit_transform(datasets_x)

lin_reg_2 = linear_model.linearregression(

)lin_reg_2.fit(x_poly, datasets_y)

# 影象中顯示

plt.scatter(datasets_x, datasets_y, color =

'red'

)#繪製資料點

plt.plot(x, lin_reg_2.predict(poly_reg.fit_transform(x)

), color =

'blue'

)#繪製直線

plt.xlabel(

'area'

)plt.ylabel(

'price'

)plt.show(

)

機器學習 監督學習 (回歸)嶺回歸

1 嶺回歸 標準方程法 import numpy as np from numpy import genfromtxt import matplotlib.pyplot as plt 讀入資料 data genfromtxt r longley.csv delimiter 切分資料 x data d...

機器學習之監督學習 回歸

回歸問題和 分類問題的區別在於 其待 的目標是 連續變數 線性回歸器 如果面對訓練資料十分龐大的任務,隨機梯度法不論是在分類還是在回歸問題上都表現得十分高效,可以在不損失過多效能的前提下,節省大量計算時間 根據scikit learn官網的建議,如果資料規模超過10萬,推薦使用隨機梯度估計引數模型 ...

AI 機器學習 監督學習 邏輯回歸

邏輯回歸和線性回歸不太一樣,邏輯回歸做的是分類。其實和線性回歸都是廣義線性模型 generalizedlinear model 這一家族中的模型形式基本上都差不多,不同的就是因變數不同。這類監督學習的總體思路如下 1 確定 函式,就是樣本和 結果的大致關係的函式,線性回歸是線性方程或者多項式方程,邏...