深度強化學習基礎 0:通用學習方法

過去自己學習深度強化學習的痛點:

  • 只能看到各種術語、數學公式勉強看懂,沒有建立清晰且準確關聯

  • 多變量交互關系浮于表面,有時候連環境、代理控制的變量都混淆

  • 模型種類繁多,概念繁雜難整合、對比或復用,無框架分析所有模型

  • 代碼實現步驟未清晰劃分:環境->定義獎勵->創建代理->訓練->部署

最根本的原因在于,我們需要一個既能全面表達復雜環境與交互結構,又能統一處理不確定性和動態決策的數學與計算(所有強化學習)框架

概率圖模型的“圖結構”天然適合分解復雜依賴:

  • 可以把一系列隨機變量之間的依賴關系用圖的結構直觀地呈現出來。

  • 不管是MDP、HMM(隱馬爾可夫模型)還是更復雜的POMDP和Bayesian網絡,都可以視作是對一系列隨機變量之間依賴關系的“圖”式表達。

  • 概率圖模型以直觀的圖形方式展示變量之間的因果或條件依賴關系,利于后續的解釋或擴展。

強化學習本質:一個序列決策過程,狀態?(St)、動作?(At)?以及獎勵?(Rt)?隨時間演化且相互影響

  • 圖模型優勢:通過節點和有向邊,清晰地展現“誰依賴于誰”,幫助我們明確:

    • 當前時刻狀態與動作是如何影響下一個時刻狀態與獎勵的?

    • 代理(Agent)與環境(Environment)分別控制或決定哪些隨機變量?

    • 哪些假設(如馬爾可夫性、完全可觀測或部分可觀測等)在圖中如何體現?

概率圖模型在統計推斷(如Bayesian推斷、最大似然估計)方面有完善的理論和工具,因此能與RL中的探索—利用(exploration-exploitation)過程自然結合。

當我們能用一個動態貝葉斯網絡或馬爾可夫隨機場來可視化時,序列之間的關系就變得更加透明。

對于多變量混雜可二分梳理,強化學習中的主體包括“環境”和“代理”。

  • 環境負責提供狀態和獎勵

  • 代理在環境中采取行動以實現累積收益最大化。

所有強化學習的“通用藍圖”:

沒有限定狀態空間、動作空間、獎勵形式、策略結構、環境類型(確定性/隨機性/部分可觀測...)。

只展示了宏觀的交互關系,而任何“特例”都可以往里套。

環境根據動作(at)和當前狀態(st)給出下一時刻狀態(st+1)及相應的獎勵(rt),然后智能體再繼續與環境交互……

  • 狀態(st)

    • 抽象了環境在時刻?t?的完整信息;如果不可完全觀測,就用觀測(ot)或者在 POMDP 框架里再對隱藏狀態建模。

    • 不同算法的差別,大多體現在怎樣定義或估計這個狀態,以及是否需要顯式建模環境動力學。

  • 動作(at)

    • 智能體在時刻?t?作出的決策,這個決策可來自直接表格型策略神經網絡近似;既可以是離散的也可以是連續的。

    • 但無論用什么表示方法,始終繞不開“在狀態下做動作”的這個核心過程。

  • 獎勵(rt)

    • 環境對當前狀態、動作的一次性反饋,用來指導智能體學習;兼容各種獎勵設計(稀疏獎勵、密集獎勵、多維獎勵等)。

    • 強化學習最核心的目標即是最大化“回報”,即從獎勵推導的累計收益,這也體現了動態規劃的思想。

  • 策略(π(at∣st))

    • 表示智能體在狀態?st?下選擇動作?at?的概率分布(或確定性函數),正是因為有這個策略才構成了完整的“閉環”。

    • 所有算法都需要“如何表示策略、如何更新/優化策略、如何評價策略的好壞”。

  • 狀態轉移和觀測模型

    • 用概率分布?P(st+1∣st,?at)?來刻畫環境動力學和不確定性;若有部分可觀測,則還要有?P(ot∣st)。

    • 任何隨機性、噪聲、對未來的不確定,都能融入到這條“狀態演化”的概率分布里,并且與獎勵、動作緊密結合。

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

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

相關文章

asm匯編源代碼之-字庫轉換程序

將標準的16x16點陣漢字庫(下載16x16漢字庫)轉換成適合VGA文本模式下顯示的點陣漢字庫 本程序需要調用file.asm中的子程序,所以連接時需要把file連接進來,如下 C:\> tlink chghzk file 調用參數描述如下 C:\> chghzk ; 無調用參數,轉換標準庫文件(SRC16.FNT)為適合VGA…

uniapp轉換markdown

效果 AI智能體 微信小程序 流式 1.安裝Node.js 參考:2024最新版Node.js下載安裝及環境配置教程(非常詳細)_node.js 安裝-CSDN博客 2.需要克隆項目到本地或直接到項目地址下載壓縮包。 參考:uniapp中解析markdown支持網頁和小程序_uniapp ma…

用java代碼如何存取數據庫的blob字段

一.業務 在業務中我們被要求將文件或圖片等轉成 byte[] 或 InputStream存到數據庫的Blob類型的字段中. 二.Blob類型介紹 在 MySQL 中,Blob 數據類型用于存儲二進制數據。MySQL 提供了四種不同的 Blob 類型: TINYBLOB: 最大存儲長度為 255 個字節。BL…

qemu(2) -- 定制開發板

1. 前言 qemu支持自定義開發板,本文就記錄一下折騰的過程。基于qemu-10.0.0-rc3添加x210vb3s開發板。 2. 添加板卡文件 網上參考了一些文章,有些文章使用的版本和我的不一樣,折騰起來費了點時間,最后發現還是直接參考qemu中已有…

Python在糖尿病分類問題上尋找具有最佳 ROC AUC 分數和 PR AUC 分數(決策樹、邏輯回歸、KNN、SVM)

Python在糖尿病分類問題上尋找具有最佳 ROC AUC 分數和 PR AUC 分數(決策樹、邏輯回歸、KNN、SVM) 問題模板解題思路1. 導入必要的庫2. 加載數據3. 劃分訓練集和測試集4. 數據預處理5. 定義算法及其參數6. 存儲算法和對應指標7. 訓練模型并計算指標8. 找…

CPU(中央處理器)

一、CPU的定義與核心作用 CPU 是計算機的核心部件,負責 解釋并執行指令、協調各硬件資源 以及 完成數據處理,其性能直接影響計算機的整體效率。 核心功能: 從內存中讀取指令并譯碼。執行算術邏輯運算。控制數據在寄存器、內存和I/O設備間的…

上層 Makefile 控制下層 Makefile 的方法

在復雜的項目中,通常會將項目劃分為多個模塊或子項目,每個模塊都有自己的 Makefile。上層 Makefile 的作用是協調和控制這些下層 Makefile 的構建過程。下面是幾種常見的示例,實現上層 Makefile 對下層 Makefile 的控制。 直接調用&#xff1…

prompts提示詞經典模板

prompts.py 中的提示詞模板詳解 文件中定義了兩個核心提示詞模板:REASON_PROMPT 和 RELEVANT_EXTRACTION_PROMPT。這兩個模板在 DeepResearcher 的推理過程中扮演著關鍵角色。下面我將詳細解析這兩個模板的結構和功能。 REASON_PROMPT 詳解 REASON_PROMPT 是用于指…

使用python獲取電腦硬盤信息

import psutil# 獲取硬盤信息 disk_partitions psutil.disk_partitions() print(disk_partitions) for partition in disk_partitions:print(f"設備: {partition.device}")print(f"掛載點: {partition.mountpoint}")print(f"文件系統類型: {partitio…

HarmonyOS-ArkUI V2裝飾器: @Provider和@Consumer裝飾器:跨組件層級雙向同步

作用 我們在之前學習的那些控件中,各有特點,也各有缺陷,至今沒有痛痛快快的出現過真正能跨組件的雙向綁定的裝飾器。 比如 @Local裝飾器,不能跨組件@Param裝飾器呢,能跨組件傳遞,但是僅僅就是下一層組件接收參數。另外,它是單向傳遞,不可被重新賦值。如果您非要改值則…

索引下推(Index Condition Pushdown, ICP)

概念 索引下推是一種數據庫查詢優化技術,通過在存儲引擎層面應用部分WHERE條件來減少不必要的數據讀取。它特別適用于復合索引的情況,因為它可以在索引掃描階段就排除不符合全部條件的數據行,而不是將所有可能匹配的記錄加載到服務器層再進行…

idea在線離線安裝插件教程

概述 對于小白來說,剛使用idea時,還有很多不懂的地方,這里,簡單介紹下如何安裝插件。讓小白能容易上手全盤idea。 1、File -> Settings 2、找到 Plugins -> Marketplace 3、安裝 3.1、在線安裝 輸入想搜索的內容&#x…

豪越賦能消防安全管控,解鎖一體化內管“安全密碼”

在消防安全保障體系中,內部管理的高效運作是迅速、有效應對火災及各類災害事故的重要基礎。豪越科技憑借在消防領域的深耕細作與持續創新,深入剖析消防體系內部管理的痛點,以自主研發的消防一體化安全管控平臺,為行業發展提供了創…

ES6學習03-字符串擴展(unicode、for...of、字符串模板)和新方法()

一、字符串擴展 1. eg: 2.for...of eg: 3. eg: 二。字符串新增方法 1. 2. 3. 4. 5.

探索Streamlit在測試領域的高效應用:文檔讀取與大模型用例生成的完美前奏

大模型用例生成前置工作之文檔讀取——構建你的自動化測試基礎 在群友的極力推薦下,開始了streamlit的學習之旅。本文將介紹如何使用Streamlit開發一個多功能文檔處理工具,支持讀取、預覽、格式轉換和導出多種測試相關文檔(YAML、JSON、DOCX…

flutter 桌面應用之窗口自定義

在開發桌面軟件的時候我們經常需要配置軟件的窗口的大小以及位置 我們有兩個框架選擇:window_manager和bitsdojo_window 對比bitsdojo_window 特性bitsdojo_windowwindow_manager自定義標題欄? 支持? 不支持控制窗口行為(大小/位置)?(基本…

Cyber Weekly #51

賽博新聞 1、英偉達開源新模型,性能直逼DeepSeek-R1 本周,英偉達開源了基于Meta早期Llama-3.1-405B-Instruct模型開發的Llama-3.1-Nemotron-Ultra-253B-v1大語言模型,該模型擁有2530億參數,在多項基準測試中展現出與6710億參數的…

【JS】關于原型/原型鏈

本文會講解什么是原型,什么是原型鏈,以及查找原型的方法,最后會實現一個函數:判斷某對象是否有某屬性。 定義 原型:函數都有prototype屬性,稱作原型/原型對象 原型可以放一些方法和屬性,共享…

deskflow使用教程:一個可以讓兩臺電腦鼠標鍵盤截圖剪貼板共同使用的開源項目

首先去開源網站下載:Release v1.21.2 deskflow/deskflow 兩臺電腦都要下載這個文件 下載好后直接打開找到你想要的exe desflow.exe 然后你打開他,將兩臺電腦的TLS都關掉 下面步驟兩臺電腦都要完成: 電腦點開edit-》preferences 把這個取…

啥是Spring,有什么用,既然收費,如何免費創建SpringBoot項目,依賴下載不下來的解決方法,解決99%問題!

一、啥是Spring,為啥選擇它 我們平常說的Spring指的是Spring全家桶,我們為什么要選擇Spring,看看官方的話: 意思就是:用這個東西,又快又好又安全,反正就是好處全占了,所以我們選擇它…