
- 機器學習基礎
- ML - 首頁
- ML - 簡介
- ML - 入門
- ML - 基本概念
- ML - 生態系統
- ML - Python 庫
- ML - 應用
- ML - 生命週期
- ML - 必備技能
- ML - 實現
- ML - 挑戰與常見問題
- ML - 限制
- ML - 真實案例
- ML - 資料結構
- ML - 數學基礎
- ML - 人工智慧
- ML - 神經網路
- ML - 深度學習
- ML - 獲取資料集
- ML - 分類資料
- ML - 資料載入
- ML - 資料理解
- ML - 資料準備
- ML - 模型
- ML - 監督學習
- ML - 無監督學習
- ML - 半監督學習
- ML - 強化學習
- ML - 監督學習 vs. 無監督學習
- 機器學習資料視覺化
- ML - 資料視覺化
- ML - 直方圖
- ML - 密度圖
- ML - 箱線圖
- ML - 相關矩陣圖
- ML - 散點矩陣圖
- 機器學習統計學
- ML - 統計學
- ML - 均值、中位數、眾數
- ML - 標準差
- ML - 百分位數
- ML - 資料分佈
- ML - 偏度和峰度
- ML - 偏差和方差
- ML - 假設
- ML中的迴歸分析
- ML - 迴歸分析
- ML - 線性迴歸
- ML - 簡單線性迴歸
- ML - 多元線性迴歸
- ML - 多項式迴歸
- ML中的分類演算法
- ML - 分類演算法
- ML - 邏輯迴歸
- ML - K近鄰演算法 (KNN)
- ML - 樸素貝葉斯演算法
- ML - 決策樹演算法
- ML - 支援向量機
- ML - 隨機森林
- ML - 混淆矩陣
- ML - 隨機梯度下降
- ML中的聚類演算法
- ML - 聚類演算法
- ML - 基於中心的聚類
- ML - K均值聚類
- ML - K中心點聚類
- ML - 均值漂移聚類
- ML - 層次聚類
- ML - 基於密度的聚類
- ML - DBSCAN 聚類
- ML - OPTICS 聚類
- ML - HDBSCAN 聚類
- ML - BIRCH 聚類
- ML - 親和傳播
- ML - 基於分佈的聚類
- ML - 凝聚層次聚類
- ML中的降維
- ML - 降維
- ML - 特徵選擇
- ML - 特徵提取
- ML - 向後消除法
- ML - 向前特徵構造
- ML - 高相關性過濾
- ML - 低方差過濾
- ML - 缺失值比率
- ML - 主成分分析
- 強化學習
- ML - 強化學習演算法
- ML - 利用與探索
- ML - Q學習
- ML - REINFORCE 演算法
- ML - SARSA 強化學習
- ML - 演員評論家方法
- 深度強化學習
- ML - 深度強化學習
- 量子機器學習
- ML - 量子機器學習
- ML - 使用 Python 的量子機器學習
- 機器學習雜項
- ML - 效能指標
- ML - 自動工作流程
- ML - 提升模型效能
- ML - 梯度提升
- ML - 自舉匯聚 (Bagging)
- ML - 交叉驗證
- ML - AUC-ROC 曲線
- ML - 網格搜尋
- ML - 資料縮放
- ML - 訓練和測試
- ML - 關聯規則
- ML - Apriori 演算法
- ML - 高斯判別分析
- ML - 成本函式
- ML - 貝葉斯定理
- ML - 精度和召回率
- ML - 對抗性
- ML - 堆疊
- ML - 輪次
- ML - 感知器
- ML - 正則化
- ML - 過擬合
- ML - P 值
- ML - 熵
- ML - MLOps
- ML - 資料洩漏
- ML - 機器學習的貨幣化
- ML - 資料型別
- 機器學習 - 資源
- ML - 快速指南
- ML - 速查表
- ML - 面試題
- ML - 有用資源
- ML - 討論
SARSA 強化學習
SARSA 代表 **狀態-動作-獎勵-狀態-動作**,它是 Q 學習演算法 的改進版本,其中目標策略與行為策略相同。兩個連續的狀態-動作對以及智慧體從第一個狀態轉換到下一個狀態時接收的即時獎勵決定了更新後的 Q 值,因此這種方法被稱為 SARSA。
什麼是 SARSA?
狀態-動作-獎勵-狀態-動作 (SARSA) 是一種 強化學習 演算法,它解釋了學習過程中一系列事件。它是智慧體在各種情況下做出正確選擇的有效 **“策略上”** 學習技術之一。SARSA 背後的主要思想是反覆試驗。智慧體在一個情境中採取行動,觀察結果,並根據結果修改其計劃。
例如,假設您正在教機器人如何走迷宮。機器人從特定位置開始,這就是 **“狀態”**,您的目標是找到到達迷宮盡頭的最佳路線。機器人可以在每個步驟中選擇不同的方向移動,這被稱為 **“動作”**。機器人會收到獎勵形式的反饋,無論是正面的還是負面的,以指示它的表現如何。
SARSA 演算法中更新語句的方程式如下:

SARSA 的組成部分
SARSA 演算法的一些核心組成部分包括:
- **狀態 (S)** - 狀態反映了環境,包含關於智慧體當前情況的所有細節。
- **動作 (A)** - 動作代表智慧體根據其當前情況做出的決定。它從庫中選擇的動作導致從當前狀態到下一個狀態的改變。這種轉變是智慧體如何與環境互動以產生預期結果的方式。
- **獎勵 (R)** - 獎勵是由環境提供的變數,是對智慧體在特定狀態下采取的行動的回應。此反饋訊號顯示智慧體選擇的即時結果。獎勵透過顯示哪些行動在某些情況下是可取的來幫助智慧體學習。
- **下一個狀態 (S')** - 當智慧體在一個特定狀態下采取行動時,它會導致轉變到一個不同的情況,稱為“下一個狀態”。這個新狀態 (s') 是智慧體更新後的環境。
SARSA 演算法的工作原理
SARSA 強化學習演算法允許智慧體透過使用狀態-動作-獎勵-狀態-動作序列隨著時間的推移最大化累積獎勵來學習並在環境中做出決策。它涉及與環境互動的迭代迴圈、從過去事件中獲得見解以及增強決策策略。讓我們分析 SARSA 演算法的工作原理:
- **Q 表初始化** - SARSA 透過初始化 Q(S,A) 開始,它表示將狀態-動作對設定為任意值。在此過程中,確定起始狀態 (s),並透過採用根據當前 Q 值做出回應的 epsilon-greedy 演算法策略來選擇初始動作 (A)。
- **探索與利用** - 利用涉及使用之前估計的已知值來提高在學習過程中獲得獎勵的機會。另一方面,探索涉及選擇可能帶來短期利益但可能有助於在未來發現更好行動和獎勵的行動。
- **動作執行和反饋** - 一旦選擇的動作 (A) 被執行,它就會產生獎勵 (R) 並轉換到下一個狀態 (S')。
- **Q 值更新** - 當前狀態-動作對的 Q 值根據接收到的獎勵和新狀態進行更新。下一個動作 (A') 從 Q 表中更新的值中選擇。
- **迭代和學習** - 以上步驟重複進行,直到狀態終止。在整個過程中,SARSA 透過考慮狀態-動作-獎勵的轉換來不斷更新其 Q 值。這些改進增強了演算法預測狀態-動作對未來獎勵的能力,引導智慧體從長遠來看做出更好的決策。
SARSA 與 Q 學習
SARSA 和 Q 學習是強化學習中的兩種演算法,都屬於基於值的演算法。SARSA 遵循當前策略,而 Q 學習不遵循當前策略。這種差異會影響每種演算法調整其動作值函式的方式。一些差異如下表所示:
特徵 | SARSA | Q 學習 |
---|---|---|
策略型別 | 策略上 | 策略外 |
更新規則 | Q(s,a) = Q(s,a) + ɑ(r + γmaxaQ(s',a)-Q(s,a)) | Q(s,a) = Q(s,a) + ɑ(r + γ Q(s',a')-Q(s,a)) |
收斂性 | 收斂到最優策略的速度較慢。 | 通常收斂到最優策略的速度更快。 |
探索與利用 | 探索直接影響學習更新。 | 探索策略可能與學習策略不同。 |
策略更新 | 根據實際採取的行動更新動作值函式。 | 更新動作值函式,假設始終採取最佳行動。 |
用例 | 適用於需要穩定性的環境。 | 適用於需要效率的環境。 |
示例 | 醫療保健、交通管理、個性化學習。 | 遊戲、機器人技術、金融交易 |
廣告