羅杰斯特回歸

定義

邏輯回歸其實就是原來的線性回歸加了激活函數,這個函數其實就是sigmoid函數,把一個回歸的連續數值壓縮到了0到1的空間,其實只要有函數能夠滿足把數值壓縮到0,1之間就可以(因為0到1之間的數值就是概率值)

在這里插入圖片描述
對于分類問題而言,不能和回歸問題一樣,計算與真值的距離,即MSE損失(均方誤差損失),為此人們發明了交叉熵損失。
對于單個樣本,其二元交叉熵損失為:
L = ? [ y log ? ( y ^ ) + ( 1 ? y ) log ? ( 1 ? y ^ ) ] L = - [y \log(\hat{y}) + (1 - y) \log(1 - \hat{y})] L=?[ylog(y^?)+(1?y)log(1?y^?)]

其中, y y y 是真實標簽(取值為 0 或 1), y ^ \hat{y} y^? 是模型預測的概率(取值范圍在 [ 0 , 1 ] [0, 1] [0,1] 之間)。
分析:當真實值為1的時候,損失變為:
L = ? y log ? ( y ^ ) L = - y \log(\hat{y}) L=?ylog(y^?)
為了讓損失最小,預測值 y ^ \hat{y} y^?越大越好,即越為1越好
當真實值為0的時候,損失變為:
L = ? log ? ( 1 ? y ^ ) L = - \log(1-\hat{y}) L=?log(1?y^?)
為了讓損失最小,預測值 y ^ \hat{y} y^?越小越好,即越為0越好
這個是符合損失函數概念的,即越接近真實值,損失越小。

對于 N N N 個樣本的平均二元交叉熵損失為:
L = ? 1 N ∑ i = 1 N [ y i log ? ( y ^ i ) + ( 1 ? y i ) log ? ( 1 ? y ^ i ) ] L = - \frac{1}{N} \sum_{i=1}^{N} [y_i \log(\hat{y}_i) + (1 - y_i) \log(1 - \hat{y}_i)] L=?N1?i=1N?[yi?log(y^?i?)+(1?yi?)log(1?y^?i?)]
對于多分類任務一樣,BCE損失函數如下:
H ( y , p ) = ? 1 n ∑ i = 1 n ∑ j = 1 C y i j log ? ( p i j ) H(y,p)=-\frac{1}{n}\sum_{i = 1}^{n}\sum_{j = 1}^{C}y_{ij}\log(p_{ij}) H(y,p)=?n1?i=1n?j=1C?yij?log(pij?)
C是類別,n是樣本數目
在這里插入圖片描述

pytorch框架編寫

不管什么模型,其實也是只有四部

  • (1)準備數據
import torch
import torch.nn.functional as F
# 準備數據
x_data = torch.tensor([[1.0],[2.0],[3.0]], dtype=torch.float32)
y_data = torch.tensor([[0.0],[0.0],[1.0]], dtype=torch.float32)
  • (2)構建模型
# 構建模型
class LogiscalRegression(torch.nn.Module):def __init__(self):super(LogiscalRegression,self).__init__()self.linear=torch.nn.Linear(1,1)def forward(self,x):y_pred=F.sigmoid(self.linear(x))return y_pred

核心在于

y_pred=F.sigmoid(self.linear(x))
線性回歸的值取了一個sigmoid激活,將其壓縮到【0,1】之間。

  • (3)初始化模型,并定義損失
# 實例化自己構建的模型
model=LogiscalRegression()
#定義損失函數
cretirion=torch.nn.BCELoss(reduction='sum')
# 定制優化器類型
optimizer=torch.optim.SGD(model.parameters(),lr=0.01)
  • (4)開始損失
#開始訓練
for epoch in range(100):#模型結果y_pred = model(x_data)#計算損失loss=cretirion(y_pred,y_data)print("loss:",loss.item())#梯度歸零optimizer.zero_grad()#反向轉播loss.backward()#更新optimizer.step()

全部代碼如下

import torch
import torch.nn.functional as F
# 準備數據
x_data = torch.tensor([[1.0],[2.0],[3.0]])
y_data = torch.tensor([[0.0],[0.0],[1.0]])
# 構建模型
class LogiscalRegression(torch.nn.Module):def __init__(self):super(LogiscalRegression,self).__init__()self.linear=torch.nn.Linear(1,1)def forward(self,x):y_pred=F.sigmoid(self.linear(x))return y_pred
# 實例化自己構建的模型
model=LogiscalRegression()
#定義損失函數
cretirion=torch.nn.BCELoss(size_average =False)
# 定制優化器類型
optimizer=torch.optim.SGD(model.parameters(),lr=0.01)
#開始訓練
for epoch in range(100):y_pred = model(x_data)loss=cretirion(y_pred,y_data)print("loss:",loss.item())optimizer.zero_grad()loss.backward()optimizer.step()

在這里插入圖片描述

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

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

相關文章

Java多線程與JConsole實踐:從線程狀態到性能優化!!!

目錄 一、前言二、JConsole 使用教程二、線程的基本狀態2.1新建狀態(New)2.2就緒狀態(Ready)2.3運行狀態(Running)2.4 阻塞狀態(Blocked)2.5. 等待狀態(Waiting&#xff…

基于django優秀少兒圖書推薦網(源碼+lw+部署文檔+講解),源碼可白嫖!

摘要 時代在飛速進步,每個行業都在努力發展現在先進技術,通過這些先進的技術來提高自己的水平和優勢,圖書推薦網當然不能排除在外。本次開發的優秀少兒圖書推薦網是在實際應用和軟件工程的開發原理之上,運用Python語言、爬蟲技術…

《網絡管理》實踐環節01:OpenEuler22.03sp4安裝zabbix6.2

蘭生幽谷,不為莫服而不芳; 君子行義,不為莫知而止休。 1 環境 openEuler 22.03 LTSsp4PHP 8.0Apache 2Mysql 8.0zabbix6.2.4 表1-1 Zabbix網絡規劃(用你們自己的特征網段規劃) 主機名 IP 功能 備注 zbx6svr 19…

Axure項目實戰:智慧城市APP(七)我的、消息(顯示與隱藏交互)

親愛的小伙伴,在您瀏覽之前,煩請關注一下,在此深表感謝! 課程主題:智慧城市APP 主要內容:我的、消息、活動模塊頁面 應用場景:消息頁設計、我的頁面設計以及活動頁面設計 案例展示&#xff…

晶晨S905L3A(B)-安卓9.0-開啟ADB和ROOT-支持IPTV6-支持外置游戲系統-支持多種無線芯片-支持救磚-完美通刷線刷固件包

晶晨S905L3A(B)-安卓9.0-開啟ADB和ROOT-支持IPTV6-支持外置游戲系統-支持多種無線芯片-支持救磚-完美通刷線刷固件包 適用型號:M401A、CM311-1a、CM311-1sa、B863AV3.1-M2、B863AV3.2-M、UNT403A、UNT413A、M411A、E900V22C、E900V22D、IP112H等等晶晨S905L3A(B)處…

【免費】2007-2019年各省地方財政科學技術支出數據

2007-2019年各省地方財政科學技術支出數據 1、時間:2007-2019年 2、來源:國家統計局、統計年鑒 3、指標:行政區劃代碼、地區、年份、地方財政科學技術支出 4、范圍:31省 5、指標說明:地方財政科學技術支出是指地方…

樹形結構的工具類TreeUtil

這個地方是以null為根節點,相關以null或者0自己在TreeUtil中加代碼,就行 基礎類 package com.jm.common.entity;import lombok.Data;import java.util.ArrayList; import java.util.List;/*** Author:JianWu* Date: 2025/3/26 9:02*/ Data public clas…

視頻聯網平臺智慧運維系統:智能時代的城市視覺中樞

引言:破解視頻運維的"帕累托困境" 在智慧城市與數字化轉型浪潮中,全球視頻監控設備保有量已突破10億臺,日均產生的視頻數據量超過10萬PB。然而,傳統運維模式正面臨三重困境: 海量設備管理失序:…

DeepSeek 助力 Vue3 開發:打造絲滑的表格(Table)之添加行拖拽排序功能示例9,TableView16_09 嵌套表格拖拽排序

前言:哈嘍,大家好,今天給大家分享一篇文章!并提供具體代碼幫助大家深入理解,徹底掌握!創作不易,如果能幫助到大家或者給大家一些靈感和啟發,歡迎收藏+關注哦 ?? 目錄 DeepSeek 助力 Vue3 開發:打造絲滑的表格(Table)之添加行拖拽排序功能示例9,TableView16_09 嵌…

QML中使用Image顯示圖片和使用QQuickItem顯示圖片

在QML中顯示圖片時,Image元素和自定義QQuickItem有不同的特性和適用場景。以下是兩者的詳細對比及性能分析: 1. Image 元素 優點: 聲明式語法:簡單直觀,適合靜態圖片或簡單動態需求 Image {source: "image.png&…

【力扣刷題|第十七天】0-1 背包 完全背包

目標和 力扣題目網址:目標和 這道題我們先用回溯的思想來做。首先我們設正數和為S,數組和為N,目標值為T,那么S-(N-S)T化簡之后可以得S(TN)/2即選擇的正數個數為偶數,而且NT也為偶數,那么第一個判斷條件我們就有了&…

【Linux網絡與網絡編程】01.初識網絡

一、計算機網絡的發展歷史 計算機是人的工具,人要協同工作,注定了網絡的產生是必然的。 二、協議 計算機之間的傳輸媒介是光信號和電信號,通過 "頻率" 和 "強弱" 來表示 0 和 1 這樣的信息,要想傳遞各種不同…

使用 Python 進行鏈上數據監控:讓區塊鏈數據觸手可及

使用 Python 進行鏈上數據監控:讓區塊鏈數據觸手可及 區塊鏈技術正以前所未有的速度改變著各行各業,特別是在金融、供應鏈、物聯網和智能合約等領域的應用,已經成為了一種新常態。然而,隨著區塊鏈網絡的快速擴展和去中心化特性的不斷強化,數據的可視化與監控變得愈發重要…

【SMBIOS數據塊類型列表】

SMBIOS數據塊類型列表 SMBIOS數據塊類型列表**SMBIOS 數據塊類型列表****如何查看實際的 SMBIOS 數據塊?****總結** SMBIOS數據塊類型列表 在 SMBIOS(System Management BIOS)中,Type 是用來標識不同類型的數據塊的。每種類型對應…

【測試】每日3道面試題 3/30

每日更新,建議關注收藏點贊。 白盒測試邏輯覆蓋標準?哪種覆蓋標準覆蓋率最高? 5種。語句覆蓋、分支/判定覆蓋、條件覆蓋、條件組合覆蓋【覆蓋率最高,所有可能條件組合都驗證】、路徑覆蓋【理論上最高,但實際很難實現】…

NFS掛載異常排查記錄

互相PING服務器看是否通;在ubuntu下看下服務器是否正常運行。導出目錄是否導出了。最后發現在掛載目錄的地方目錄路徑和后面沒有加空格。

1--當「窮舉」成為藝術:CTF暴力破解漏洞技術從入門到入刑指南(知識點講解版)

當「窮舉」成為藝術:CTF暴力破解漏洞技術從入門到入刑指南 引言:論暴力破解的哲學意義 “世界上本沒有漏洞,密碼設得簡單了,便成了漏洞。” —— 魯迅(并沒有說過) 想象你是個不會撬鎖的小偷,面…

Java實戰:實現用戶的登錄注冊功能

系列文章目錄 Java文件 I/O流的操作實戰和高級UI組件和事件監聽的綜合 文章目錄 系列文章目錄前言一、大致流程思路分析:二、定義用戶類:三、服務層的實現: 1.保護用戶數據功能的實現2.登錄操作的實現 四、實現用戶的注冊界面: 大…

SQLAlchemy 支持特殊字符

postgresql 實踐 pydantic 實踐(一)基礎 pydantic 實踐(二)數據校驗 SQLAlchemy 介紹與實踐 SQLAlchemy 支持特殊字符 SQLAlchemy 支持特殊字符 1. 字符集介紹分析2. MySQL 支持特殊字符2.1. 更新 MySQL 字符集為 utf8mb42.2 更新…

如何看待職場中的“向上管理”

向上管理的本質,是提供一份更精確的人力產品說明書, 利用市場的邏輯,引導領導,按照你的心意,使用你這款產品。 公司獲得更高的產出,領導獲得更多的成果,你獲得了自由支配的時間, 這是一場正和博弈。 ? 圖片來源:網絡 (1)具體案例: 把自己當成一款產品,使用者…