Relooking:損失權重λ 、梯度權重α、學習率η

一般多任務,大家都喜歡疊加很多損失,由此產生很多損失權重系數。此外,有的學者直接對梯度進行操作。咋一看,上面三個系數貌似重復多余,直接用其中一個系數代替不行嗎?為此,回顧了下神經網絡的前向傳播和反向求導公式,感覺有點拉大旗作虎皮的意味。標題本來是“Rethinking”,想著會有一些新發現,但隨后就改成了“Relooking”蒜鳥。

形式化

直觀來說,損失權重 λ λ λ 、梯度權重 α α α、學習率 η η η可以看做是三個標量系數,即trade-off parameterweighting coefficient
L = λ 1 L 1 + λ 2 L 2 ? θ L = α 1 ? L 1 + α 2 ? L 2 θ : = θ ? η ? ? θ L \begin{aligned} L &=\lambda_1 L_1+\lambda_2 L_2\\ \nabla_\theta L &=\alpha_1 \nabla L_1+\alpha_2 \nabla L_2\\ \theta :&= \theta-\eta \cdot \nabla_\theta L \end{aligned} L?θ?Lθ:?=λ1?L1?+λ2?L2?=α1??L1?+α2??L2?=θ?η??θ?L?

作用:

  • 損失權重 λ λ λ:對相應任務的損失值進行縮放。 λ λ λ越大,表明該項貢獻越大(越重要),則要放大其損失值,促使模型對該項的優化。反之,越小,則是該項損失趨近0,貢獻被忽略。
  • 梯度權重 α α α:在反向傳播中,直接對梯度值進行縮放。
  • 學習率 η η η:對所有梯度統一縮放,以控制模型參數的更新步長。 η η η越大,則模型參數的步長越大。

案例講解

下面以一個神經網絡的為例,從底層原理來看它們的作用。

1. 網絡結構定義

考慮一個雙層網絡:

  • 輸入: x x x
  • 參數: W 1 , b 1 , W 2 , b 2 W_1, b_1, W_2, b_2 W1?,b1?,W2?,b2?
  • 激活函數: g ( ? ) g(\cdot) g(?) (如ReLU)
  • 輸出層未激活

2. 前向傳播

流程:Fc1 --> Activation --> Fc2。
z 1 = W 1 x + b 1 a 1 = g ( z 1 ) z 2 = W 2 a 1 + b 2 \begin{align} z_1 &= W_1 x + b_1 \\ a_1 &= g(z_1) \\ z_2 &= W_2 a_1 + b_2 \\ \end{align} z1?a1?z2??=W1?x+b1?=g(z1?)=W2?a1?+b2???

3. 多任務損失計算

為了方便展示損失任務的權重系數,這里假設兩個損失函數。其中,主任務交叉熵損失,輔助任務均方誤差損失。
L = λ 1 ? CE ( z 2 , y ce ) + λ 2 ? MSE ( a 1 , y mse ) = λ 1 ? l o s s 1 + λ 2 ? l o s s 2 \begin{align} L &= \lambda_1 \cdot \text{CE}(z_2, y_{\text{ce}}) + \lambda_2 \cdot \text{MSE}(a_1, y_{\text{mse}}) \\ &= \lambda_1 \cdot loss_1 + \lambda_2 \cdot loss_2 \end{align} L?=λ1??CE(z2?,yce?)+λ2??MSE(a1?,ymse?)=λ1??loss1?+λ2??loss2???

4. 反向傳播梯度計算

? L ? W 1 = ? ( λ 1 l o s s 1 + λ 2 l o s s 2 ) ? W 1 = α 1 ( λ 1 ? l o s s 1 ? W 1 ) + α 2 ( λ 2 ? l o s s 2 ? W 1 ) = α 1 λ 1 ? l o s s 1 ? W 1 + α 2 λ 2 ? l o s s 2 ? W 1 \begin{align} \frac{\partial L}{\partial W_1} &= \frac{\partial (\lambda_1 loss_1 + \lambda_2 loss_2)}{\partial W_1} \\ &= \alpha_1 \left( \lambda_1 \frac{\partial loss_1}{\partial W_1}\right) + \alpha_2 \left( \lambda_2 \frac{\partial loss_2}{\partial W_1}\right) \\ &= \alpha_1 \lambda_1 \frac{\partial loss_1}{\partial W_1} + \alpha_2 \lambda_2 \frac{\partial loss_2}{\partial W_1} \\ \end{align} ?W1??L??=?W1??(λ1?loss1?+λ2?loss2?)?=α1?(λ1??W1??loss1??)+α2?(λ2??W1??loss2??)=α1?λ1??W1??loss1??+α2?λ2??W1??loss2????

5. 參數更新

W 1 ← W 1 ? η ? ? L ? W 1 W_1 \leftarrow W_1 - \eta \cdot \frac{\partial L}{\partial W_1} W1?W1??η??W1??L?

即:

Δ W 1 = ? η [ α 1 ? 梯度權重 ( λ 1 ? 損失權重 ? l o s s 1 ? W 1 ) + α 2 ? 梯度權重 ( λ 2 ? 損失權重 ? l o s s 2 ? W 1 ) ] \Delta W_1 = -\eta \left[ \overbrace{\alpha_1}^{\text{梯度權重}} \left( \overbrace{\lambda_1}^{\text{損失權重}} \frac{\partial loss_1}{\partial W_1} \right) + \overbrace{\alpha_2}^{\text{梯度權重}} \left( \overbrace{\lambda_2}^{\text{損失權重}} \frac{\partial loss_2}{\partial W_1} \right) \right] ΔW1?=?η ?α1? ?梯度權重? ?λ1? ?損失權重??W1??loss1?? ?+α2? ?梯度權重? ?λ2? ?損失權重??W1??loss2?? ? ?

總結

  • 根據step4可知,一般不需要對梯度進行懲罰操作,且過于復雜,直接對損失函數施加權重具有同樣的功能。
  • 根據step5可知,學習率全局縮放梯度向量,即調整整體的步長。
  • 如梯度裁剪或者梯度歸一化等特殊情況才在內部對梯度操作,非必須,一般不作用于梯度。

注:上述情況與GPT 4O交流的結果。以當前本人的水平,還無法體會到更深層次的含義。

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

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

相關文章

數學復習筆記 20

復習方程組,還有隨便復習一下高數和矩陣,向量。現在是復習高數的導數這一章。兩個曲線相切,列出方程,然后解出參數,沒有任何難度呢。算切線方程,就是,算導數,導數就用導數定義&#…

Sqlalchemy 連mssql坑

連接失敗: (pyodbc.OperationalError) (08001, [08001] [Microsoft][ODBC Driver 17 for SQL Server]SSL Provider: [error:0A00014D:SSL routines::legacy sigalg disallowed or unsupported] (-1) (SQLDriverConnect)) (Background on this error at: https://sqlalche.me/e/…

AI大模型學習三十、ubuntu安裝comfyui,安裝插件,修改返回405 bug,值得一看喔

一、說明 ComfyUI是一個開源的、基于節點的Web應用。它允許用戶根據一系列文本提示(Prompt)生成圖像。 ComfyUI使用擴散模型作為基礎模型,并結合 ControlNet、Lora和LCM低階自適應等模型,每個工具都由程序中的一個節點表示 二、開…

MySQL(40)如何使用DROP TABLE刪除表?

DROP TABLE 語句用于從數據庫中永久刪除一個表及其所有數據。執行該語句后,表結構和數據都將被徹底刪除,且無法恢復。因此,在執行 DROP TABLE 操作之前,請確保已備份好相關數據。 基本語法 DROP TABLE table_name;如果要刪除多個…

element ui 表格 勾選復選框后點擊分頁不保存之前的數據問題

element ui 表格 勾選復選框后點擊分頁不保存之前的數據問題 給 el-table上加 :row-key"getRowKey"給type“selection” 上加 :reserve-selection"true"

vite常見面試問題

一、Vite 核心原理 1. Vite 為什么比 Webpack 快? 答案: Vite 的核心優勢在于開發環境和生產環境的雙重優化: 開發環境: 基于原生 ESM(ES Modules):瀏覽器直接加載 ES 模塊,無需打包,啟動時間極短(毫秒級)。按需編譯:僅編譯當前頁面所需的模塊,而非整個項目。預…

Screen 連接遠程服務器(Ubuntu)

連接 1. 安裝screen 默認預安裝&#xff0c;可以通過命令查看&#xff1a; screen --version 若未安裝&#xff1a; # Ubuntu/Debian sudo apt-get install screen 2. 本機連接遠程服務器 ssh root192.168.x.x 在遠程服務器中打開screen&#xff1a; screen -S <nam…

Flutter GridView網格組件

目錄 常用屬性 GridView使用配置 GridView.count使用 GridView.extent使用 GridView.count Container 實現列表 GridView.extent Container 實現列表 GridView.builder使用 GridView網格布局在實際項目中用的也是非常多的&#xff0c;當我們想讓可以滾動的元素使用矩陣…

Jenkins實踐(8):服務器A通過SSH調用服務器B執行Python自動化腳本

Jenkins實踐(8):服務器A通過SSH調用服務器B執行Python自動化腳本 1、需求: 1、Jenkins服務器在74上,Python腳本在196服務器上 2、需要在服務器74的Jenkins上調用196上的腳本執行Python自動化測試 2、操作步驟 第一步:Linux Centos7配置SSH免密登錄 Linux Centos7配置S…

C#二維碼:利用 ThoughtWorks.QRCode 庫實現二維碼生成與解析

C#二維碼&#xff1a;利用 ThoughtWorks.QRCode 庫實現二維碼生成與解析 在當今數字化信息交互頻繁的時代&#xff0c;二維碼憑借其信息容量大、容錯能力強、易識別等特點&#xff0c;廣泛應用于各個領域。從移動支付、產品溯源到活動簽到&#xff0c;二維碼無處不在。在 C# 開…

【Java Web】速通JavaScript

參考筆記:JavaWeb 速通JavaScript_javascript 速通-CSDN博客 目錄 一、JavaScript快速入門 1. 基本介紹 2. JavaScript特點 3. JavaScript的引入方式(重要) 3.1 寫在script標簽中 ?????3.2 以外部文件方式引入 二、JS的數據類型 1. 變量 2. 常用數據類型 3.特殊值 三、…

Python打卡訓練營-Day13-不平衡數據的處理

浙大疏錦行 知識點&#xff1a; 不平衡數據集的處理策略&#xff1a;過采樣、修改權重、修改閾值交叉驗證代碼 過采樣 過采樣一般包含2種做法&#xff1a;隨機采樣和SMOTE 過采樣是把少的類別補充和多的類別一樣多&#xff0c;欠采樣是把多的類別減少和少的類別一樣 一般都是缺…

Mac OS 使用說明

Mac 的啟動組合鍵 了解可通過在啟動時按住一個或多個按鍵來訪問的 Mac 功能和工具。 若要使用這些組合鍵中的任何一個&#xff0c;請在按下電源按鈕以開啟 Mac 后或在 Mac 開始重新啟動后&#xff0c;立即按住相應按鍵。請一直按住&#xff0c;直至電腦出現對應的行為。 !!!上…

LoadRunner 是什么

LoadRunner 是一款由 Micro Focus&#xff08;原惠普企業軟件部門&#xff09;開發的性能測試工具&#xff0c;廣泛應用于軟件、應用程序和系統的 負載測試、壓力測試 和 性能分析。它通過模擬大量用戶并發操作&#xff0c;幫助測試人員評估系統在高負載下的性能、穩定性和可擴…

RISC-V PMA、PMP機制深入分析

1 PMA PMA&#xff08;Physical Memory Attributes&#xff09;&#xff0c;物理內存屬性&#xff0c;顧名思義就是用來設置物理內存屬性的&#xff0c;但這里說“設置”&#xff0c;并不合理&#xff0c;因為一般情況下各存儲的屬性&#xff0c;在芯片設計時就固定了&#xf…

SQL正則表達式總結

這里寫目錄標題 一、元字符二、正則表達函數1、 regexp_like(x,pattern[,match_option])2、 regexp_instr(x,pattern[,start[,occurrence[,return_option[, match_option]]]]) 3、 REGEXP_SUBSTR(x,pattern[,start[,occurrence[, match_option]]]) 4、 REGEXP_REPLACE(x,patter…

Shortest path 代碼

Project https://graphics.cs.utah.edu/research/projects/shortest-path-to-boundary/ Build and Debug Fork:(在Win10上&#xff09; https://github.com/chunleili/Shortest-Path-to-Boundary-for-Self-Intersecting-Meshes commit hash d3160168d2b6a58188d12e6cd959da…

AMBA總線家族成員

在AMBA總線協議體系中&#xff0c;AXI4雖然是最新且性能最強的總線協議&#xff0c;但AHB和APB仍然被廣泛使用&#xff0c;主要原因在于??場景適配性、資源優化和系統兼容性??的綜合考量。以下是具體分析&#xff1a; AMBA 1?&#xff1a;僅包含ASB和APB1。?AMBA 2?&am…

前端高頻面試題1:HTML/CSS/瀏覽器/計算機網絡

目錄 1.為什么會出現margin塌陷&#xff1f; 2.如何解決margin塌陷&#xff1f; 3.HTML5有哪些新特性&#xff1f; 4.常見的語義化標簽有哪些&#xff1f;語義化標簽的好處&#xff1f; 5.使用css和js做動畫有何優劣 6.如何實現文本超出展示省略號 7.deep在css中存在嗎&…

基于 Spring Boot + Vue 的墻繪產品展示交易平臺設計與實現【含源碼+文檔】

項目簡介 本系統是一個基于 Spring Boot Vue 技術棧開發的墻繪產品展示交易平臺&#xff0c;旨在提供一個高效、便捷的在線商城平臺&#xff0c;方便用戶瀏覽、選購墻繪產品&#xff0c;并提供管理員進行商品管理、訂單管理等功能。系統采用了前后端分離的架構&#xff0c;前…