機器學習-線性回歸模型和梯度算法

1. 線性回歸模型

1.1 線性回歸模型

線性回歸模型:將數據擬合成一條直線。

作用:預測數字作為輸出。

例子:

房子的大小與房價的估計

(圖表)

(數據表)

1.2 訓練集

訓練集:用于訓練模型的數據集

訓練集作業例子:要預測客戶的房價,首先要訓練模型以從訓練集中學習,然后該模型可以預測客戶的房價。

輸入的標準符號:x(輸入變量/特征/輸入特征)

預測的輸出變量的標準符號:y(目標變量)

單個訓練示例:(x,y)

引用一個具體的訓練例子:

i表示第幾個訓練示例。

1.3?監督學習的工作工作過程

要訓練模型,需要將訓練集(包括輸入特征和輸出目標)提供給學習算法。然后監督學習算法會產生一些功能(函數f)。

函數f:輸入x,輸出預測y值。

如何表示函數f:

上面的直線即單線性回歸模型。

1.4 代價函數/成本函數

代價函數:表示一個用于衡量模型預測值與真實值之間差異的函數,目標是通過最小化這個函數來優化模型參數。

成本函數(平方誤差成本函數):

成本函數在三個維度:

如何實現最小化成本函數---梯度算法。

2. 梯度算法

2.1?梯度算法

梯度算法:每次稍微改變參數w和b以嘗試降低w和b的成本j,知道希望j穩定最小值或者接近最小值。對于某些可能不是弓形或者吊床形的函數j,可能存在不止一個最小值。

2.2 實現梯度下降

梯度下降算法:

a:學習率,取值0~1,控制下坡步幅。

導數:成本函數j的導數項,控制往哪個方向邁步。

2.3 梯度下降的直觀理解

上面解釋了w會正確移向最低點。

2.4 學習率

a太小時:梯度下降會起作用,但是下降的速度太慢。

a太大時:梯度下降可能會超過,并且可能永遠不會達到。(梯度下降可能無法達到收斂,甚至可能發散)

當更新時候w不變,表示參數已經使得j達到局部最小值。

當接近局部最小梯度下降時,會自動采取更小的步長。(因為斜率在變小)

2.5 線性回歸中的梯度下降

重復執行上面式子知道收斂為止。

運行梯度下降:

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/89282.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/89282.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/89282.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

時序預測 | Matlab代碼實現VMD-TCN-GRU-MATT變分模態分解時間卷積門控循環單元多頭注意力多變量時序預測

預測效果代碼功能 代碼主要功能 該代碼實現了一個變分模態分解時間卷積門控循環單元多頭注意力多變量時間序列預測模型,核心功能為: 使用VMD(變分模態分解)將原始信號分解為多個IMF分量對每個IMF分量構建TCN-GRU-MATT混合神經網絡…

HTML5 離線存儲

HTML5 離線存儲(通常指 Application Cache)是早期用于實現 Web 應用離線訪問的技術,但由于其設計缺陷已被廢棄。現代 Web 開發中,取而代之的是更強大的 Service Worker Cache API 方案(屬于 Progressive Web Apps 技術…

JavaScript 性能優化實戰:深入性能瓶頸,精煉優化技巧與最佳實踐

前言 現代前端開發,不僅要“能跑”,更要“跑得快”。在用戶體驗為王的時代,JavaScript 性能優化已經成為前端工程師的必修課。 為什么要關注 JavaScript 性能 加載緩慢 → 用戶流失卡頓滯后 → 交互體驗崩潰資源浪費 → 設備電量與內存被吞…

文心4.5開源背后的戰略棋局:百度為何選擇All in開放?

文章目錄引言:一場顛覆AI行業格局的孤注國內開源模型的崛起與威脅國際競爭格局的重塑1.技術維度:開源是突破模型性能瓶頸的“加速器”1.1 閉源模型的“內卷化”困境1.2 文心4.5的開源技術架構:從“黑箱”到“樂高”1.2.1文心4.5的技術創新1.2…

SAP學習筆記 - 開發46 - RAP開發 Managed App Metadata Extension 2 - Booking_M,BookSuppl_M

上一章講了 RAP開發中,New Service Definition,Metadata Extension,在Metadata 文件中 復習了 lineItem,selectionField,Search,ObjectModel,Value Help,headerInfo 等內容。 SAP學…

# Win11開機卡死?無法進入登錄界面?3招強制進安全模式,快速修復系統

Win11開機卡死?無法進入登錄界面?3招強制進安全模式,快速修復系統一、問題描述: 當你的win11電腦開機后卡在圖片界面就死機,無法進入登錄界面,不顯示windows徽標,不能正常啟動,可能的…

快捷支付與網關支付:兩種主流支付方式的深度解析

在當今數字化支付時代,快捷支付和網關支付作為兩種主流的電子支付方式,為消費者和商家提供了多樣化的支付選擇。本文將深入探討這兩種支付方式的區別、適用場景及各自的優劣勢,幫助您更好地理解現代支付生態。一、快捷支付:便捷高…

【WRFDA數據教程第一期】LITTLE_R 格式詳細介紹

目錄LITTLE_R 格式概述LITTLE_R 的結構1-Header Record 詳解:觀測的“身份證”2-Data Record:觀測數據本體3-Ending Record:終止標志4-Tail Integers:尾部校驗字段另-Missing Values(缺測值處理)Mandatory,…

一文讀懂循環神經網絡—從零實現長短期記憶網絡(LSTM)

目錄 一、遺忘門(Forget Gate):決定 “該忘記什么” 二、輸入門(Input Gate):決定 “該記住什么新信息” 三、輸出門(Output Gate):決定 “該輸出什么” 四、候選記憶…

FreeRTOS之鏈表關鍵數據結構和函數操作接口-1

FreeRTOS之鏈表操作相關接口1 FreeRTOS源碼下載地址2 任務控制塊TCB2.1 任務控制塊TCB2.1.1 任務控制塊的關鍵成員2.1.2 TCB 的核心作用2.2 ListItem_t2.3 List_t3 函數接口3.1 vListInitialise3.2 vListInitialiseItem1 FreeRTOS源碼下載地址 https://www.freertos.org/ 2 …

OpenVela之 Arch Timer 驅動框架使用指南

一、概述 在嵌入式系統開發中,定時器是實現任務調度、精確延時等功能的核心組件。Arch Timer 作為基于 Timer Driver 實現的間隔定時器,在系統調度中扮演著重要角色。本文將全面介紹 Arch Timer 驅動框架,從基本概念到實際應用,幫…

AAC編解碼

AAC(Advanced Audio Coding,高級音頻編碼)是一種基于心理聲學原理的有損音頻編解碼技術,廣泛應用于流媒體、數字廣播、移動音頻等場景。其編解碼流程圍繞 “保留人耳可感知信息、去除冗余” 設計,分為編碼(…

STM32 | HC-SR04 超聲波傳感器測距

模塊:HC-SR04感應角度:不大于15度 探測距離:2cm-450cm 高精度:可達0.3cmTrig:觸發信號,接收MCU發送的控制脈沖,MCU對應GPIO 設置為輸出Echo:反饋信號,向MCU發送數據…

【RTSP從零實踐】12、TCP傳輸H264格式RTP包(RTP_over_TCP)的RTSP服務器(附帶源碼)

😁博客主頁😁:🚀https://blog.csdn.net/wkd_007🚀 🤑博客內容🤑:🍭嵌入式開發、Linux、C語言、C、數據結構、音視頻🍭 🤣本文內容🤣&a…

【unitrix】 6.1 類型化整數特征(t_int.rs)

一、源碼 這段代碼定義了一個 Rust 特征(trait)TInt 和一些實現,用于表示類型化的整數。 use crate::number::{Null, B, Bit, TNumber};/// 類型化整數標記特征 /// /// 要求: /// - 實現 TNumber /// - 可復制 (Copy) /// - 默認…

速通LVS

一、LVS的使用lvs部署命令介紹lvs軟件相關信息:程序包:ipvsadm Unit File: ipvsadm.service 主程序:/usr/sbin/ipvsadm 規則保存工具:/usr/sbin/ipvsadm-save 規則重載工具:/usr/sbin/ipvsadm-restore 配置文件&#x…

Nginx,MD5和Knife4j

一、 Nginx: 項目網關與流量調度核心原理反向代理 (Reverse Proxy):在Web架構中,Nginx作為系統的統一入口(API網關),接收所有外部客戶端請求。它通過解析請求的URL路徑(location指令),判斷請求的…

多態,內部類(匿名內部類),常用API(1)

多態 什么是多態? 同一個對象在不同時刻表現出來的不同形態(多種形態) 例:Cat extends Animal 第一種形態:Cat c1 new Cat(); //c1是只貓 第二種形態:Animal c2 new Cat(); //c2是個動物 &#xff08…

Qt小組件 - 7 SQL Thread Qt訪問數據庫ORM

簡介網上關于Qt訪問數據庫的資料大多使用QSqlDatabase模塊。雖然這在C中尚可接受,但在Python中使用就顯得過于繁瑣了——不僅要手動編寫SQL語句,還與Python追求簡潔的理念背道而馳。在這里寫一個基于sqlalchemy的示例,也可以使用其他的ORM庫 …

使用Gin框架構建高并發教練預約微服務:架構設計與實戰解析

項目概述 技術棧 Web框架:Gin(高性能HTTP框架)數據存儲:Redis(內存數據庫,用于高并發讀寫) 項目結構 coach-booking-service ├── main.go # 程序入口,路由初始化&am…