首頁 >科技週邊 >人工智慧 >強化學習:帶有python示例的介紹

強化學習:帶有python示例的介紹

William Shakespeare
William Shakespeare原創
2025-03-07 10:00:11304瀏覽

增強學習(RL):深入深入探究代理 - 環境相互作用

>

基本和高級強化學習(RL)模型與科幻AI相似,通常超過當前的大語言模型。 本文探討了RL如何使代理商征服超級馬里奧的具有挑戰性的水平。

Reinforcement Learning: An Introduction With Python Examples

最初,代理缺乏遊戲知識:控制,進步力學,障礙和勝利條件。 它通過強化學習算法在沒有人類干預的情況下自主學習所有這些。 RL的優勢在於解決問題,而沒有預定義的解決方案或明確的編程,通常具有最小的數據要求。這使其在各個領域的影響力很大:

>自動駕駛汽車: rl代理商根據實時交通和道路規則學習最佳駕駛策略。
  • 機器人:機器人通過RL訓練在動態環境中掌握複雜任務。
  • 遊戲AI: RL技術使AI代理能夠在GO和Starcraft II等遊戲中製定複雜的策略。
  • RL是一個迅速發展的領域,具有巨大的潛力。 預計未來的應用在資源管理,醫療保健和個性化教育中。 本教程介紹了RL基礎知識,解釋了諸如代理,環境,行動,國家,獎勵等的核心概念。
  • 代理和環境:貓的觀點 考慮訓練貓,鮑勃,以使用刮擦帖子而不是家具。鮑勃是學習者和決策者的
  • 代理人
。 房間是

>環境

,提出挑戰(家具)和目標(刮擦柱)。

RL環境被歸類為:

> iNCETE:>一個簡化的房間,例如基於網格的遊戲,限制了鮑勃的運動和房間變化。

連續:

>一個現實世界的房間為家具安排和鮑勃的行動提供了近乎無限的可能性。
  • 我們的房間示例是A 靜態
  • 環境(家具保持固定)。
  • 動態環境,例如超級馬里奧級別,隨著時間的流逝而變化,增加了學習複雜性。
  • >行動和狀態:定義可能性

狀態空間包括所有可能的代理 - 環境配置。 大小取決於環境類型:

有限:

離散環境的狀態數量有限(例如,棋盤遊戲)。

無限:

連續環境具有無限的狀態空間(例如機器人,現實世界情景)。
  • 動作空間代表所有可能的代理操作。 同樣,大小取決於環境:
    • 離散:有限的動作(例如,向上,向下,左,右)。 >
    • >
    • 連續:更廣泛的動作範圍(例如,任何方向,跳躍)。 >
    • 每個動作都將環境轉變為新狀態。

    獎勵,時間步驟和情節:測量進度

    獎勵

    激勵代理。 在國際象棋中,捕捉一塊是積極的。接受支票是負數。 對於鮑勃(Bob),請獎勵積極的動作(使用刮擦帖子),而水噴水會懲罰負面動作(刮擦家具)。

    時間步驟

    測量代理商的學習旅程。 每個步驟都涉及行動,從而產生新的狀態和獎勵。 >

    情節

    包括一系列時間步長,以默認狀態開始,並在實現目標或代理失敗時結束。 > 探索與剝削:平衡行為

    代理必須平衡

    探索

    (嘗試新的動作)和剝削(使用已知的最佳動作)。 策略包括:

      epsilon-greedy:
    • 隨機探索概率(Epsilon);否則,利用最著名的動作。 >
    • Boltzmann探索:>概率上有利於預期獎勵更高的動作。
    • >增強學習算法:基於模型的與模型
    • RL算法指導代理商的決策。 存在兩個主要類別:
    基於模型的RL

    代理建立了計劃行動的內部模型。對於復雜的環境來說,這是樣本效率但具有挑戰性的。 一個示例是Dyna-Q,結合了基於模型的學習和無模型學習。

    無模型的RL

    代理在沒有明確模型的情況下直接從經驗中學習。這更簡單,但樣品效率較低。 示例包括:

    Q-Learning:

    學習Q值(預期的未來獎勵)對國家行動對。

    >
      sarsa:
    • 類似於Q學習,但是根據採取的實際下一步操作更新值。 >
    • 策略梯度方法:
    • 直接學習策略映射狀態。 >
    • >深Q-networks(DQN):將Q學習與高維狀態空間的深神經網絡結合在一起。 算法選擇取決於環境複雜性和資源可用性。 > Q學習:詳細的外觀
    • Q學習是一種無模型算法教學代理的最佳策略。 Q桌子存儲每個州行動對的Q值。 該代理商根據Epsilon-Greedy政策選擇行動,平衡探索和剝削。 使用合併當前Q值,獎勵和下一個狀態的最大Q值的公式更新Q值。 諸如伽馬(折現因子)和alpha(學習率)之類的參數控制學習過程。 與體育館的python中的

      增強學習

      體育館為RL實驗提供了各種環境。 以下代碼片段演示了與突破環境的互動循環:>

      此代碼生成一個可視化代理操作的gif。 請注意,如果沒有學習算法,這些動作是隨機的。
      import gymnasium as gym
      env = gym.make("ALE/Breakout-v5", render_mode="rgb_array")
      # ... (interaction loop and GIF creation code as in the original article) ...
      >

      結論

      增強學習是一種具有廣泛應用的強大技術。 該教程涵蓋了基本概念,並為進一步探索提供了一個起點。 原始文章中列出了其他資源。

      >

以上是強化學習:帶有python示例的介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn