中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

廣州做手機(jī)網(wǎng)站建設(shè)營(yíng)銷咨詢公司

廣州做手機(jī)網(wǎng)站建設(shè),營(yíng)銷咨詢公司,做網(wǎng)站的數(shù)據(jù)庫(kù)的步驟,wordpress插件目錄下目錄 摘要: 一、簡(jiǎn)單線性回歸與多元線性回歸 1、簡(jiǎn)單線性回歸 2、多元線性回歸 3、殘差 二、線性回歸的正規(guī)方程解 1、線性回歸訓(xùn)練流程 2、線性回歸的正規(guī)方程解 (1)適用場(chǎng)景 (2)正規(guī)方程解的公式 三、衡量…

目錄

摘要:

一、簡(jiǎn)單線性回歸與多元線性回歸

1、簡(jiǎn)單線性回歸

2、多元線性回歸

3、殘差

二、線性回歸的正規(guī)方程解

1、線性回歸訓(xùn)練流程

2、線性回歸的正規(guī)方程解

(1)適用場(chǎng)景

(2)正規(guī)方程解的公式

三、衡量線性回歸的性能指標(biāo)

四、scikit-learn線性回歸實(shí)踐 - 波斯頓房?jī)r(jià)預(yù)測(cè)

1、數(shù)據(jù)集介紹

2、LinearRegression

摘要:

????????文章主要介紹了線性回歸相關(guān)內(nèi)容,包括簡(jiǎn)單線性回歸與多元線性回歸的概念及示例,闡述了殘差的定義、在理想與非理想模型中的情況及意義,還講解了線性回歸的正規(guī)方程解,涵蓋其適用場(chǎng)景、公式推導(dǎo)與代碼實(shí)現(xiàn),提及衡量線性回歸性能指標(biāo)可參考其他文章,最后以 scikit-learn 中的 LinearRegression 類為例,介紹了其在波士頓房?jī)r(jià)預(yù)測(cè)實(shí)踐中的應(yīng)用,包括數(shù)據(jù)集情況、類的常用參數(shù)及訓(xùn)練、預(yù)測(cè)函數(shù)的使用等。

一、簡(jiǎn)單線性回歸與多元線性回歸

1、簡(jiǎn)單線性回歸

????????在生活中,我們常常能碰到這么一種情況,一個(gè)變量會(huì)跟著另一個(gè)變量的變化而變化,如圓的周長(zhǎng)與半徑的關(guān)系,當(dāng)圓的半徑確定了,那么周長(zhǎng)也就確定了。還有一種情況就是,兩個(gè)變量之間看似存在某種關(guān)系,但又沒(méi)那么確定,如青少年的身高與體重,他們存在一種近似的線性關(guān)系:
身高/cm = 體重/kg +105。
????????但是,并不是每個(gè)青少年都符合這個(gè)公式,只能說(shuō)每個(gè)青少年的身高體重都存在這么一種近似的線性關(guān)系。這就是其實(shí)就是簡(jiǎn)單的線性回歸,那么,到底什么是線性回歸呢?假如我們將青少年的身高和體重值作為坐標(biāo),不同人的身高體重就會(huì)在平面上構(gòu)成不同的坐標(biāo)點(diǎn),然后用一條直線,盡可能的去擬合這些點(diǎn),這就是簡(jiǎn)單的線性回歸,如下圖:

????????簡(jiǎn)單的線性回歸模型:y=wx+b

????????其中x表示特征值(如:體重值),w表示權(quán)重,b表示偏置,y表示標(biāo)簽(如:身高值)。

2、多元線性回歸

????????簡(jiǎn)單線性回歸中,一個(gè)變量跟另一個(gè)變量的變化而變化,但是生活中,還有很多變量,可能由多個(gè)變量的變化決定著它的變化,比如房?jī)r(jià),影響它的因素可能有:房屋面積、地理位置等等。如果我們要給它們建立出近似的線性關(guān)系,這就是多元線性回歸,多元線性回歸模型如下:

y = b + w_{1}x_{1}+ w_{2}x_{2}+ ...+w_{n}x_{n}

其中,x_{n}表示第n個(gè)特征值,w_{i}表示第n個(gè)特征對(duì)應(yīng)的權(quán)重,b表示偏置,y表示標(biāo)簽。

3、殘差

  • 定義
    • 殘差是指在回歸分析中,觀測(cè)值與預(yù)測(cè)值之間的差異,即e_{i}=y_{i}-\hat{y}_{i},其中\hat{y}_{i}是第個(gè)觀測(cè)值,是對(duì)應(yīng)的預(yù)測(cè)值。殘差均值就是所有殘差的平均值,即\bar{e}=\frac{1}{n}\sum_{i=1}^{n}e_{i},其中n是樣本數(shù)量。
  • 在理想線性回歸模型中的情況
    • 在理想的線性回歸模型(基于普通最小二乘法估計(jì)參數(shù))中,殘差均值為零。這是因?yàn)槠胀ㄗ钚《朔ǖ哪繕?biāo)是最小化殘差平方和。
    • 從幾何角度看,線性回歸是在尋找一條直線(在簡(jiǎn)單線性回歸中)或一個(gè)超平面(在多元線性回歸中),使得數(shù)據(jù)點(diǎn)到該直線或超平面的垂直距離(即殘差)的平方和最小。在這個(gè)最優(yōu)擬合的情況下,殘差會(huì)在零附近分布,正殘差和負(fù)殘差相互抵消,導(dǎo)致殘差均值為零。
  • 殘差均值不為零的情況及意義
    • 如果殘差均值不為零,這可能意味著模型存在偏差。例如,如果殘差均值大于零,說(shuō)明模型整體上低估了觀測(cè)值;如果殘差均值小于零,則說(shuō)明模型整體上高估了觀測(cè)值。
    • 這可能是由于模型設(shè)定不正確(如遺漏了重要的變量、函數(shù)形式錯(cuò)誤等)或者數(shù)據(jù)存在異常情況(如存在離群點(diǎn)等)導(dǎo)致的。在實(shí)際應(yīng)用中,殘差均值是評(píng)估模型擬合質(zhì)量的一個(gè)簡(jiǎn)單指標(biāo),發(fā)現(xiàn)殘差均值不為零后,需要進(jìn)一步分析模型和數(shù)據(jù),以改進(jìn)模型的擬合效果。

如果線性回歸方程有多個(gè)解,可以如何解決?

解決方法包括但不限于:

  • 獲取更多的訓(xùn)練樣本
  • 選取樣本有效的特征,使樣本數(shù)量大于特征數(shù)
  • 加入正則化項(xiàng)

二、線性回歸的正規(guī)方程解

1、線性回歸訓(xùn)練流程

????????以波士頓房?jī)r(jià)數(shù)據(jù)集為例,該數(shù)據(jù)集每條數(shù)據(jù)包括對(duì)指定房屋的13項(xiàng)數(shù)值型特征和目標(biāo)房?jī)r(jià)組成:

????????由數(shù)據(jù)集可以知道,每一個(gè)樣本有13個(gè)特征與目標(biāo)房?jī)r(jià),而我們要做的事就是通過(guò)這13個(gè)特征來(lái)預(yù)測(cè)房?jī)r(jià),我們可以構(gòu)建一個(gè)多元線性回歸模型,來(lái)對(duì)房?jī)r(jià)進(jìn)行預(yù)測(cè)。模型如下:

y = b + w_{1}x_{1}+ w_{2}x_{2}+ ...+w_{n}x_{n}

????????其中,x_{n}表示第n個(gè)特征值,w_{n}表示第n個(gè)特征對(duì)應(yīng)的權(quán)重,b表示偏置,y表示目標(biāo)房?jī)r(jià)。

????????為了方便,我們稍微將模型進(jìn)行變換(下面求解會(huì)用到):

y = w_{0}x_{0} + w_{1}x_{1}+ w_{2}x_{2}+ ...+w_{n}x_{n}

????????其中x_{0}=1。令Y=\Theta X,其中\Theta =(w_{0},w_{1},w_{2},...,w_{n})X=(1,x_{1},x_{2},...,x_{n})。

????????而我們的目的就是找出能夠正確預(yù)測(cè)的多元線性回歸模型,即找出正確的參數(shù)\Theta。那么如何尋找呢?通常在監(jiān)督學(xué)習(xí)里面都會(huì)使用這么一個(gè)套路,構(gòu)造一個(gè)損失函數(shù),用來(lái)衡量真實(shí)值與預(yù)測(cè)值之間的差異,然后將問(wèn)題轉(zhuǎn)化為最優(yōu)化損失函數(shù)。既然損失函數(shù)是用來(lái)衡量真實(shí)值與預(yù)測(cè)值之間的差異,那么很多人自然而然的想到了用所有真實(shí)值與預(yù)測(cè)值的差的絕對(duì)值來(lái)表示損失函數(shù)。不過(guò)帶絕對(duì)值的函數(shù)不容易求導(dǎo),所以我們可以采用采用MSE(均方誤差)作為損失函數(shù)(相關(guān)內(nèi)容可以查看另一篇文章:機(jī)器學(xué)習(xí) ---模型評(píng)估、選擇與驗(yàn)證(1)),公式如下:

\frac{1}{m}\sum_{i = 1}^{m}(y^{i}-p^{i})^{2}

????????其中y^{i}?表示第 i 個(gè)樣本的真實(shí)標(biāo)簽,p^{i}?表示模型對(duì)第 i 個(gè)樣本的預(yù)測(cè)標(biāo)簽,m為樣本總個(gè)數(shù)。最后,我們?cè)偈褂谜?guī)方程解來(lái)求得我們所需要的參數(shù)。線性回歸模型訓(xùn)練流程如下:

2、線性回歸的正規(guī)方程解

(1)適用場(chǎng)景

  • 數(shù)據(jù)集規(guī)模較小且特征數(shù)量不是很多的情況下,正規(guī)方程解是比較常用的(對(duì)于其他方法,比如梯度下降法等將在之后的文章中提到)。例如,當(dāng)我們處理一些簡(jiǎn)單的實(shí)驗(yàn)數(shù)據(jù)或者小型的商業(yè)分析數(shù)據(jù)集時(shí),假設(shè)特征數(shù)量m較小(比如m<1000),數(shù)據(jù)樣本數(shù)量n也不大(比如n<10000)。
  • 因?yàn)檎?guī)方程解的公式在這種情況下計(jì)算起來(lái)相對(duì)簡(jiǎn)單直接。它不需要像梯度下降法那樣進(jìn)行多次迭代來(lái)收斂到最優(yōu)解,只要能夠計(jì)算矩陣的逆,就可以一次性得到參數(shù)θ的最優(yōu)解。
  • 例如,在一個(gè)簡(jiǎn)單的房?jī)r(jià)預(yù)測(cè)模型中,我們僅考慮房屋面積、房間數(shù)量這兩個(gè)特征來(lái)預(yù)測(cè)房?jī)r(jià)。數(shù)據(jù)集包含 100 套房子的數(shù)據(jù),通過(guò)正規(guī)方程解可以快速得到線性回歸模型的參數(shù),從而構(gòu)建預(yù)測(cè)模型。

(2)正規(guī)方程解的公式

????????對(duì)線性回歸模型,假設(shè)訓(xùn)練集中m個(gè)訓(xùn)練樣本,每個(gè)訓(xùn)練樣本中有n個(gè)特征,可以使用矩陣的表示方法,預(yù)測(cè)函數(shù)可以寫(xiě)為:Y=\Theta X,其損失函數(shù)可以表示為:(Y-\Theta X)^{T}(Y-\Theta X)

其中,標(biāo)簽Y為m\times 1的矩陣,訓(xùn)練特征X為m\times (n+1)的矩陣,回歸系數(shù)θ為(n+1)\times1的矩陣,對(duì)θ求導(dǎo),并令其導(dǎo)數(shù)等于0,可以得到:X^{T}(Y-\Theta X)=0。所以,最優(yōu)解為:

\Theta =(X^{T}X)^{-1}X^{T}Y

這個(gè)就是正規(guī)方程解,我們可以通過(guò)最優(yōu)方程解直接求得我們所需要的參數(shù)。

代碼實(shí)現(xiàn):

import numpy as np
def mse_score(y_predict,y_test):'''input:y_predict(ndarray):預(yù)測(cè)值y_test(ndarray):真實(shí)值ouput:mse(float):mse損失函數(shù)值'''mse = np.mean((y_predict-y_test)**2)return mseclass LinearRegression :def __init__(self):'''初始化線性回歸模型'''self.theta = Nonedef fit_normal(self,train_data,train_label):'''input:train_data(ndarray):訓(xùn)練樣本train_label(ndarray):訓(xùn)練標(biāo)簽'''# 在訓(xùn)練數(shù)據(jù)的特征矩陣前面添加一列全為1的列,用于表示截距項(xiàng)X = np.hstack((np.ones((train_data.shape[0], 1)), train_data))# 根據(jù)正規(guī)方程公式計(jì)算模型參數(shù)theta# 先計(jì)算X的轉(zhuǎn)置與X的乘積的逆矩陣inverse_term = np.linalg.inv(X.T.dot(X))# 再計(jì)算X的轉(zhuǎn)置與訓(xùn)練標(biāo)簽的乘積product_term = X.T.dot(train_label)# 最后將逆矩陣與上述乘積相乘,得到模型參數(shù)thetaself.theta = inverse_term.dot(product_term)return self.theta

三、衡量線性回歸的性能指標(biāo)

????????這部分在上面提到的另外一篇文章中有提到過(guò),感興趣的話可以去看一看,這里就不再過(guò)多贅述。

四、scikit-learn線性回歸實(shí)踐 - 波斯頓房?jī)r(jià)預(yù)測(cè)

1、數(shù)據(jù)集介紹

????????波斯頓房?jī)r(jià)數(shù)據(jù)集共有506條波斯頓房?jī)r(jià)的數(shù)據(jù),每條數(shù)據(jù)包括對(duì)指定房屋的13項(xiàng)數(shù)值型特征和目標(biāo)房?jī)r(jià)組成。用數(shù)據(jù)集的80%作為訓(xùn)練集,數(shù)據(jù)集的20%作為測(cè)試集,訓(xùn)練集和測(cè)試集中都包括特征和目標(biāo)房?jī)r(jià)。

數(shù)據(jù)集中部分?jǐn)?shù)據(jù)與標(biāo)簽如下圖所示:

2、LinearRegression

LinearRegression?是?scikit-learn?庫(kù)(通常簡(jiǎn)稱為sklearn)中用于實(shí)現(xiàn)線性回歸算法的一個(gè)類。

LinearRegression的構(gòu)造函數(shù)中有兩個(gè)常用的參數(shù)可以設(shè)置:

  • fit_intercept:是否有截距,如果沒(méi)有則直線過(guò)原點(diǎn),默認(rèn)為T(mén)ure。
  • normalize:是否將數(shù)據(jù)歸一化,默認(rèn)為False。

LinearRegression類中的fit函數(shù)用于訓(xùn)練模型,fit函數(shù)有兩個(gè)向量輸入:

  • X:大小為[樣本數(shù)量,特征數(shù)量]的ndarray,存放訓(xùn)練樣本。
  • Y:值為整型,大小為[樣本數(shù)量]的ndarray,存放訓(xùn)練樣本的標(biāo)簽值。

LinearRegression類中的predict函數(shù)用于預(yù)測(cè),返回預(yù)測(cè)值,predict函數(shù)有一個(gè)向量輸入:

  • X:大小為[樣本數(shù)量,特征數(shù)量]的ndarray,存放預(yù)測(cè)樣本。

????????利用LinearRegression進(jìn)行線性回歸,代碼及相應(yīng)的注釋如下:(此處僅為一個(gè)簡(jiǎn)單的線性回歸的示例)

from sklearn.datasets import load_boston
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
import pandas as pd
from sklearn.metrics import mean_squared_error, mean_absolute_error, r2_score# 加載波士頓房?jī)r(jià)數(shù)據(jù)集
boston = load_boston()# 將數(shù)據(jù)轉(zhuǎn)換為DataFrame格式,這里的特征數(shù)據(jù)
train_data = pd.DataFrame(boston.data, columns=boston.feature_names)# 目標(biāo)數(shù)據(jù)(房?jī)r(jià))作為訓(xùn)練標(biāo)簽
train_label = pd.Series(boston.target)# 劃分訓(xùn)練集和測(cè)試集,測(cè)試集占比可自行設(shè)置,這里設(shè)為0.2(即20%)
X_train, X_test, y_train, y_test = train_test_split(train_data, train_label, test_size=0.2, random_state=42)# 創(chuàng)建線性回歸模型對(duì)象
lr = LinearRegression()# 模型訓(xùn)練
lr.fit(X_train, y_train)# 模型預(yù)測(cè)
pred = lr.predict(X_test)# 將預(yù)測(cè)結(jié)果轉(zhuǎn)換為DataFrame
pred_df = pd.DataFrame({'result': pred})# 模型評(píng)估
mse = mean_squared_error(y_test, pred)
mae = mean_absolute_error(y_test, pred)
r2 = r2_score(y_test, pred)print("\n模型評(píng)估指標(biāo):")
print(f"均方誤差(MSE): {mse}")
print(f"平均絕對(duì)誤差(MAE): {mae}")
print(f"決定系數(shù)(R2): {r2}")
http://www.risenshineclean.com/news/59332.html

相關(guān)文章:

  • 做網(wǎng)站的流程分析-圖靈吧哪個(gè)行業(yè)最需要推廣
  • 望城經(jīng)濟(jì)建設(shè)開(kāi)區(qū)門(mén)戶網(wǎng)站百度電腦版網(wǎng)址
  • 做軟測(cè)的網(wǎng)站自己怎么做網(wǎng)站網(wǎng)頁(yè)
  • b2b電子商務(wù)網(wǎng)站的盈利模式廊坊百度seo公司
  • 網(wǎng)站免費(fèi)正能量小說(shuō)聚合搜索引擎接口
  • 培訓(xùn)中心網(wǎng)站建設(shè)方案seo網(wǎng)站怎么優(yōu)化
  • 武漢做網(wǎng)站互助系統(tǒng)南昌seo外包公司
  • 企業(yè)建站公司推薦上海熱點(diǎn)新聞
  • 個(gè)人網(wǎng)站有哪些舉例抖音營(yíng)銷
  • 做app還要做網(wǎng)站么百度一下照片識(shí)別
  • wordpress 角色和權(quán)限管理外鏈seo招聘
  • 在線做圖網(wǎng)站今日全國(guó)疫情一覽表
  • 現(xiàn)在建網(wǎng)站賺錢(qián)嗎杭州互聯(lián)網(wǎng)公司排名榜
  • 怎么搭建一個(gè)博客網(wǎng)站武漢seo搜索引擎優(yōu)化
  • 男女之間做那個(gè)的網(wǎng)站宣傳推廣圖片
  • 優(yōu)秀政府門(mén)戶網(wǎng)站前端seo優(yōu)化
  • java新手編程入門(mén)福建seo顧問(wèn)
  • 寵物網(wǎng)站模版百度一下你就知道搜索
  • 黃驊做網(wǎng)站_黃驊昊信科技|黃驊網(wǎng)站|黃驊網(wǎng)站開(kāi)發(fā)|黃驊微信|黃驊惡意點(diǎn)擊競(jìng)價(jià)時(shí)用的什么軟件
  • 數(shù)據(jù)做圖網(wǎng)站有哪些內(nèi)容域名服務(wù)器查詢
  • 關(guān)于做旅游網(wǎng)站的參考文獻(xiàn)營(yíng)銷策劃書(shū)
  • 西安網(wǎng)站建設(shè)制作專業(yè)公司電子商務(wù)網(wǎng)站
  • 泉州專業(yè)網(wǎng)站制作廈門(mén)seo收費(fèi)
  • 溧陽(yáng)網(wǎng)站開(kāi)發(fā)網(wǎng)絡(luò)營(yíng)銷企業(yè)網(wǎng)站
  • 制作公司網(wǎng)站需要幾個(gè)數(shù)據(jù)表seo交流論壇
  • 做包裝設(shè)計(jì)的網(wǎng)站色盲測(cè)試圖片60張
  • 河南鄭州建設(shè)網(wǎng)站制作seo推廣技術(shù)培訓(xùn)
  • 網(wǎng)站設(shè)計(jì)工資怎么樣北京網(wǎng)站優(yōu)化頁(yè)面
  • 如何做自己的網(wǎng)站商城實(shí)時(shí)seo排名點(diǎn)擊軟件
  • 做網(wǎng)站需要哪些工程師win10優(yōu)化大師怎么樣