大語言模型基礎(chǔ)微課版課件 第8章 強化學(xué)習(xí)方法_第1頁
大語言模型基礎(chǔ)微課版課件 第8章 強化學(xué)習(xí)方法_第2頁
大語言模型基礎(chǔ)微課版課件 第8章 強化學(xué)習(xí)方法_第3頁
大語言模型基礎(chǔ)微課版課件 第8章 強化學(xué)習(xí)方法_第4頁
大語言模型基礎(chǔ)微課版課件 第8章 強化學(xué)習(xí)方法_第5頁
已閱讀5頁,還剩74頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

浙江省普通本科高?!笆奈濉敝攸c教材建設(shè)成果之一大語言模型基礎(chǔ)大語言模型基礎(chǔ)周蘇教授QQ:81505050第8章強化學(xué)習(xí)方法通過有監(jiān)督微調(diào),大語言模型初步具備了遵循人類指令完成各類型任務(wù)的能力。然而,有監(jiān)督微調(diào)需要大量指令和對應(yīng)的高質(zhì)量的標(biāo)準(zhǔn)回復(fù),因此會耗費許多人力和時間成本。由于有監(jiān)督微調(diào)通常目標(biāo)是調(diào)整參數(shù)使模型輸出與標(biāo)準(zhǔn)答案完全相同,不能從整體上對模型輸出質(zhì)量進行判斷,因此,模型不能適應(yīng)自然語言的多樣性,也不能解決微小變化的敏感性問題。第8章強化學(xué)習(xí)方法強化學(xué)習(xí)則將模型輸出文本作為一個整體進行考慮,其優(yōu)化目標(biāo)是使模型生成高質(zhì)量回復(fù)。此外,強化學(xué)習(xí)方法不依賴人工回復(fù),其模型根據(jù)指令生成回復(fù),獎勵模型針對所生成的回復(fù)給出質(zhì)量判斷。強化學(xué)習(xí)的模型通過生成回復(fù)并接收反饋進行學(xué)習(xí),可以生成多個答案,獎勵模型對輸出文本質(zhì)量進行排序。模型強化學(xué)習(xí)方法更適合生成式任務(wù),也是大模型構(gòu)建中必不可少的關(guān)鍵步驟。第8章強化學(xué)習(xí)方法01強化學(xué)習(xí)的概念02強化學(xué)習(xí)基礎(chǔ)03強化學(xué)習(xí)分類04深度強化學(xué)習(xí)目錄/CONTENTSPART01強化學(xué)習(xí)的概念強化學(xué)習(xí)的基本元素包括智能體、環(huán)境、狀態(tài)、動作和獎勵,其中,智能體和環(huán)境間通過獎勵、狀態(tài)、動作3個信號進行交互,不斷地根據(jù)環(huán)境的反饋信息進行試錯學(xué)習(xí)。強化學(xué)習(xí)把學(xué)習(xí)看作試探評價過程。智能體選擇一個動作用于環(huán)境,環(huán)境接受該動作后狀態(tài)發(fā)生變化,同時產(chǎn)生一個強化信號(獎或懲)反饋給智能體,智能體根據(jù)強化信號和環(huán)境當(dāng)前狀態(tài)再選擇下一個動作,選擇的原則是使受到正強化(獎)的概率增大。選擇的動作不僅影響立即強化值,而且影響環(huán)境下一時刻的狀態(tài)及最終的強化值。8.1強化學(xué)習(xí)的概念1997年,當(dāng)“深藍”擊敗國際象棋世界冠軍加里·卡斯帕羅夫時,人們就把抵御的希望寄托在了圍棋上。當(dāng)時,天體物理學(xué)家,也是圍棋愛好者的皮特·赫特曾預(yù)測稱:“計算機在圍棋上擊敗人類需要一百年的時間(甚至可能更久)?!钡珜嶋H上僅僅20年后,阿爾法狗(AlphaGo)就超越了人類棋手。世界冠軍柯潔說:“一年前的阿爾法狗還比較接近于人,現(xiàn)在它越來越像圍棋之神?!卑柗ü返靡嬗趯θ祟惼迨诌^去數(shù)十萬場棋局的研究以及對團隊中圍棋專家的知識的提煉。8.1.1強化學(xué)習(xí)的定義后繼項目AlphaZero不再借助于人類輸入,它通過游戲規(guī)則自我學(xué)習(xí),在圍棋、國際象棋和日本將棋領(lǐng)域中擊敗了包括人類和機器在內(nèi)的所有對手。與此同時,人類選手也在各種游戲中被人工智能系統(tǒng)擊敗,包括《危險邊緣》、撲克以及電子游戲《刀塔2》《星際爭霸11》《雷神之錘3》。這些進展顯示了強化學(xué)習(xí)的巨大作用。強化學(xué)習(xí)讓智能體在環(huán)境里通過分析數(shù)據(jù)來學(xué)習(xí),每個行動對應(yīng)于各自的獎勵。智能體關(guān)注不同情況下應(yīng)該做怎樣的事情——這樣的學(xué)習(xí)過程和人類的自然經(jīng)歷十分相似。8.1.1強化學(xué)習(xí)的定義想象一個小孩子第一次看到火,他小心地走到火邊?!じ惺艿搅藴嘏?。火是個好東西(+1)?!と缓?,試著去摸。哇,這么燙(-1)。這個嘗試所得到的結(jié)論是,在稍遠的地方火是好的,靠得太近就不好——這是人類與環(huán)境交互的學(xué)習(xí)方式,強化學(xué)習(xí)也是這樣的道理。8.1.1強化學(xué)習(xí)的定義比如,智能體要學(xué)著玩一個新的游戲。強化學(xué)習(xí)過程可以用一個循環(huán)來表示:·智能體在游戲環(huán)境里獲得初始狀態(tài)S0(游戲的第一幀);·在S0的基礎(chǔ)上,智能體做出第一個行動A0(如向右走);·環(huán)境變化,獲得新的狀態(tài)S1(A0發(fā)生后的某一幀);·環(huán)境給出第一個獎勵R1(沒死或成功:+1)。于是,這個回合輸出的就是一個由狀態(tài)、獎勵和行動組成的序列,而智能體的目標(biāo)就是讓預(yù)期累積獎勵最大化。8.1.1強化學(xué)習(xí)的定義強化學(xué)習(xí)是機器學(xué)習(xí)的一個分支,它是一種廣泛應(yīng)用于創(chuàng)建智能系統(tǒng)的學(xué)習(xí)模式,在描述和解決智能體與環(huán)境的交互過程中,以“試錯”方式,通過學(xué)習(xí)策略達成回報最大化或?qū)崿F(xiàn)特定目標(biāo)問題。強化學(xué)習(xí)側(cè)重于在線學(xué)習(xí)并試圖在探索和利用之間保持平衡,其目標(biāo)是使智能體在復(fù)雜且不確定的環(huán)境中,只依靠于對環(huán)境的感知和偶爾的獎勵,對某項任務(wù)變得精通,使未來的獎勵最大化。

圖8-1強化學(xué)習(xí)8.1.1強化學(xué)習(xí)的定義強化學(xué)習(xí)基本框架主要由智能體和環(huán)境兩部分組成。在強化學(xué)習(xí)過程中,智能體與環(huán)境不斷交互。智能體在環(huán)境中獲取某個狀態(tài)后,會根據(jù)該狀態(tài)輸出一個動作,也稱為決策。動作會在環(huán)境中執(zhí)行,環(huán)境會根據(jù)智能體采取的動作,給出下一個狀態(tài)及當(dāng)前動作帶來的獎勵。8.1.1強化學(xué)習(xí)的定義由于強化學(xué)習(xí)涉及的知識面廣,尤其是涵蓋了諸多數(shù)學(xué)知識,更需要對強化學(xué)習(xí)有系統(tǒng)性的梳理與認(rèn)識。強化學(xué)習(xí)問題主要在信息論、博弈論、自動控制等領(lǐng)域討論,用于解釋有限理性條件下的平衡態(tài)、設(shè)計推薦系統(tǒng)和機器人交互系統(tǒng)。一些復(fù)雜的強化學(xué)習(xí)算法在一定程度上具備解決復(fù)雜問題的通用智能,可以在圍棋和電子游戲中達到人類水平。8.1.1強化學(xué)習(xí)的定義從嚴(yán)格意義上說,阿爾法狗程序在人機圍棋對弈中贏了人類圍棋大師,其中深度強化學(xué)習(xí)起了主要的作用。所謂深度強化學(xué)習(xí),就是在強化學(xué)習(xí)里加入深度神經(jīng)網(wǎng)絡(luò)。例如Q學(xué)習(xí)是利用傳統(tǒng)算法創(chuàng)建Q-table,幫助智能體找到下一步要采取的行動;DQN是利用深度神經(jīng)網(wǎng)絡(luò)來近似Q值。智能系統(tǒng)必須能夠在沒有持續(xù)監(jiān)督信號的情況下自主學(xué)習(xí),而深度強化學(xué)習(xí)正是其最佳代表,能夠帶來更多發(fā)展空間與想象力。8.1.1強化學(xué)習(xí)的定義機器學(xué)習(xí)方法主要分為監(jiān)督學(xué)習(xí)、無監(jiān)督學(xué)習(xí)和強化學(xué)習(xí)。強化學(xué)習(xí)和監(jiān)督學(xué)習(xí)的共同點是兩者都需要大量的數(shù)據(jù)進行學(xué)習(xí)訓(xùn)練,但學(xué)習(xí)方式有所不同,所需的數(shù)據(jù)類型也有差異,監(jiān)督學(xué)習(xí)需要多樣化的標(biāo)簽數(shù)據(jù),強化學(xué)習(xí)則需要帶有回復(fù)的交互數(shù)據(jù)。圖8-2機器學(xué)習(xí)領(lǐng)域中的3大分支8.1.2不同于監(jiān)督和無監(jiān)督學(xué)習(xí)與監(jiān)督和無監(jiān)督學(xué)習(xí)的最大不同是,強化學(xué)習(xí)里并沒有給定的一組數(shù)據(jù)供智能體學(xué)習(xí)。環(huán)境是不斷變化的,強化學(xué)習(xí)中的智能體要在變化的環(huán)境里做出一系列動作的決策,結(jié)合起來就是策略。強化學(xué)習(xí)就是通過不斷與環(huán)境互動(不斷試錯)和更新策略的過程。8.1.2不同于監(jiān)督和無監(jiān)督學(xué)習(xí)強化學(xué)習(xí)與監(jiān)督和無監(jiān)督學(xué)習(xí)的不同之處具體有以下5個方面。(1)沒有監(jiān)督者,只有獎勵信號。監(jiān)督學(xué)習(xí)基于大量作為訓(xùn)練與學(xué)習(xí)目標(biāo)的標(biāo)注數(shù)據(jù)進行,而強化學(xué)習(xí)中沒有監(jiān)督者,智能體是從環(huán)境的反饋中獲得獎勵信號。(2)反饋延遲。實際上是延遲獎勵,環(huán)境可能不會在每一步動作上都給予獎勵,有時候需要完成一連串的動作,甚至是完成整個任務(wù)后才能獲得獎勵。8.1.2不同于監(jiān)督和無監(jiān)督學(xué)習(xí)(3)試錯學(xué)習(xí)。因為沒有監(jiān)督,所以沒有直接的指導(dǎo)信息,智能體要與環(huán)境不斷進行交互,通過試錯的方式來獲得最優(yōu)策略。(4)智能體的動作會影響后續(xù)的數(shù)據(jù)。智能體選擇不同動作會進入不同的狀態(tài)。由于強化學(xué)習(xí)基于馬爾可夫決策過程(MDP,當(dāng)前狀態(tài)只與上一個狀態(tài)有關(guān),與其他狀態(tài)無關(guān)),因此,根據(jù)下一個時間步獲得的狀態(tài)變化,環(huán)境的反饋也會隨之發(fā)生變化。(5)時間序列很重要。強化學(xué)習(xí)更加注重輸入數(shù)據(jù)的序列性,下一個時間步t的輸入依賴于前一個時間步t-1的狀態(tài)(即馬爾可夫?qū)傩裕?.1.2不同于監(jiān)督和無監(jiān)督學(xué)習(xí)一般而言,監(jiān)督學(xué)習(xí)是通過對數(shù)據(jù)進行分析,找到數(shù)據(jù)的表達模型,隨后利用該模型,在新輸入的數(shù)據(jù)上進行決策,它主要分為訓(xùn)練階段和預(yù)測階段。在訓(xùn)練階段,首先根據(jù)原始數(shù)據(jù)進行特征提取(特征工程),之后可以使用決策樹、隨機森林等機器學(xué)習(xí)算法去分析數(shù)據(jù)之間的關(guān)系,最終得到關(guān)于輸入數(shù)據(jù)的模型。在預(yù)測階段,按特征工程方法抽取數(shù)據(jù)特征,使用訓(xùn)練階段得到的模型對特征向量進行預(yù)測,最終得到數(shù)據(jù)所屬的分類標(biāo)簽。值得注意的是,驗證模型使用驗證集數(shù)據(jù)對模型進行反向驗證,確保模型的正確性和精度。8.1.3不同于傳統(tǒng)機器學(xué)習(xí)

圖8-3監(jiān)督學(xué)習(xí)的一般方法8.1.3不同于傳統(tǒng)機器學(xué)習(xí)與監(jiān)督學(xué)習(xí)相比,深度學(xué)習(xí)的一般方法少了特征工程,從而大大降低了業(yè)務(wù)領(lǐng)域門檻與人力成本。圖8-4深度學(xué)習(xí)的一般方法8.1.3不同于傳統(tǒng)機器學(xué)習(xí)監(jiān)督學(xué)習(xí)的學(xué)習(xí)只能發(fā)生在訓(xùn)練階段,該階段會出現(xiàn)一個監(jiān)督信號(即具有學(xué)習(xí)的能力,數(shù)學(xué)上稱為“差分信號”)。例如在語音識別任務(wù)中,需要收集大量的語音語料數(shù)據(jù)和該語料對應(yīng)標(biāo)注好的文本內(nèi)容。有了原始的語音數(shù)據(jù)和對應(yīng)的語音標(biāo)注數(shù)據(jù)后,可通過監(jiān)督學(xué)習(xí)方法收集數(shù)據(jù)中的模式,例如對語音分類、判別該語音音素所對應(yīng)的單詞等。8.1.3不同于傳統(tǒng)機器學(xué)習(xí)上述標(biāo)注語音文本內(nèi)容相當(dāng)于一個監(jiān)督信號,訓(xùn)練完成后,預(yù)測階段不需要該監(jiān)督信號,生成的語言識別模型用作新數(shù)據(jù)的預(yù)測。如果想要修改監(jiān)督信號,則需要對語言識別模型進行重新訓(xùn)練,但監(jiān)督學(xué)習(xí)的訓(xùn)練階段非常耗時。強化學(xué)習(xí)與監(jiān)督學(xué)習(xí)不同,其學(xué)習(xí)過程與生物的自然學(xué)習(xí)過程非常類似。具體而言,智能體在與環(huán)境的互動過程中,通過不斷探索與試錯的方式,利用基于正/負(fù)獎勵的方式進行學(xué)習(xí)。8.1.3不同于傳統(tǒng)機器學(xué)習(xí)強化學(xué)習(xí)在大模型上的重要作用可以概括為以下幾個方面。(1)相較于監(jiān)督學(xué)習(xí),強化學(xué)習(xí)更有可能考慮整體影響。監(jiān)督學(xué)習(xí)針對單個詞元進行反饋,其目標(biāo)是要求模型針對給定的輸入給出確切的答案;而強化學(xué)習(xí)針對整個輸出文本進行反饋,不針對特定詞元。反饋粒度不同,使強化學(xué)習(xí)更適合大模型,既可以兼顧多樣性表達,又可以增強對微小變化的敏感性。自然語言十分靈活,可以用多種不同的方式表達相同的語義。8.1.4大模型的強化學(xué)習(xí)另外,有監(jiān)督微調(diào)通常采用交叉熵?fù)p失作為損失函數(shù),由于遵循總和規(guī)則,造成這種損失對個別詞元變化不敏感。改變個別詞元對整體損失產(chǎn)生的影響較小,而一個否定詞可以完全改變文本的整體含義。強化學(xué)習(xí)則可以通過獎勵函數(shù)同時兼顧多樣性和微小變化敏感性兩個方面。8.1.4大模型的強化學(xué)習(xí)(2)強化學(xué)習(xí)更容易解決幻覺問題。用戶在大模型上主要有三類輸入:①文本型,用戶輸入相關(guān)文本和問題,讓模型基于所提供的文本生成答案(例如,“本文中提到的人名和地名有哪些”);②求知型,用戶僅提出問題,模型根據(jù)內(nèi)在知識提供真實回答(例如,“流感的常見原因是什么”);③創(chuàng)造型,用戶提供問題或說明,讓模型進行創(chuàng)造性輸出(例如,“寫一個關(guān)于·的故事”)。8.1.4大模型的強化學(xué)習(xí)監(jiān)督學(xué)習(xí)算法非常容易使得求知型查詢產(chǎn)生幻覺,在模型并不包含或者知道答案的情況下,有監(jiān)督訓(xùn)練仍然會促使模型給出答案。而使用強化學(xué)習(xí)方法,則可以通過定制獎勵函數(shù),將正確答案賦予較高的分?jǐn)?shù),放棄回答的答案賦予中低分?jǐn)?shù),不正確的答案賦予非常高的負(fù)分,使得模型學(xué)會依賴內(nèi)部知識選擇放棄回答,從而在一定程度上緩解模型的幻覺問題。8.1.4大模型的強化學(xué)習(xí)(3)強化學(xué)習(xí)可以更好地解決多輪對話獎勵累積問題。多輪對話是大模型重要的基礎(chǔ)能力之一。多輪對話是否達成最終目標(biāo),需要考慮多次交互過程的整體情況,因此很難使用監(jiān)督學(xué)習(xí)的方法來構(gòu)建。而使用強化學(xué)習(xí)方法,可以通過構(gòu)建獎勵函數(shù),根據(jù)整個對話的背景及連貫性對當(dāng)前模型輸出的優(yōu)劣進行判斷。8.1.4大模型的強化學(xué)習(xí)強化學(xué)習(xí)不需要像監(jiān)督學(xué)習(xí)那樣依賴先驗知識數(shù)據(jù)。例如線上游戲,越來越多的用戶使用移動終端進行游戲,使數(shù)據(jù)的獲取來源更為廣泛。比如圍棋游戲,圍棋的棋譜可以很容易得到,這些棋譜是人類玩家的動作行為記錄,如果只用監(jiān)督學(xué)習(xí)進行建模,模型學(xué)習(xí)出的對弈技能很有可能只局限在所收集的有限棋譜內(nèi)。當(dāng)出現(xiàn)新的下棋方式時,模型可能會因為找不到全局最優(yōu)解而使得棋力大減。8.1.5先驗知識與標(biāo)注數(shù)據(jù)強化學(xué)習(xí)通過自我博弈方式產(chǎn)生更多的標(biāo)準(zhǔn)數(shù)據(jù)。在強化學(xué)習(xí)中,如果有基本棋譜,便可以利用系統(tǒng)自我學(xué)習(xí)和獎勵的方式,系統(tǒng)自動學(xué)習(xí)更多的棋譜或者使用兩個智能體進行互相博弈,進而為系統(tǒng)自身補充更多的棋譜信息,不受標(biāo)注數(shù)據(jù)和先驗知識的限制。強化學(xué)習(xí)利用較少的訓(xùn)練信息,讓系統(tǒng)不斷地自主學(xué)習(xí),自我補充更多的信息,進而免受監(jiān)督者的限制。8.1.5先驗知識與標(biāo)注數(shù)據(jù)另外,可以使用遷移學(xué)習(xí)來減少標(biāo)注數(shù)據(jù)的數(shù)量,它在一定程度上突破了監(jiān)督學(xué)習(xí)中存在的限制,提前在大量標(biāo)注數(shù)據(jù)信息中提取高維特征,從而減少后續(xù)復(fù)用模型的輸入數(shù)據(jù)。遷移學(xué)習(xí)是把已經(jīng)訓(xùn)練好的模型參數(shù)遷移到新的模型以幫助訓(xùn)練新模型??紤]到大部分?jǐn)?shù)據(jù)或任務(wù)存在相關(guān)性,通過遷移學(xué)習(xí)可以將已經(jīng)學(xué)到的模型參數(shù)(也可理解為模型學(xué)到的知識)通過某種方式分享給新模型,進而不需要從零開始學(xué)習(xí),加快并優(yōu)化新模型的學(xué)習(xí)效率。8.1.5先驗知識與標(biāo)注數(shù)據(jù)PART02強化學(xué)習(xí)基礎(chǔ)由于交互方式與人類和環(huán)境的交互方式類似,可以認(rèn)為強化學(xué)習(xí)是一套通用的學(xué)習(xí)框架,用來解決通用人工智能問題,因此它也被稱為通用人工智能的機器學(xué)習(xí)方法。8.2強化學(xué)習(xí)基礎(chǔ)在強化學(xué)習(xí)中,按智能體所處的環(huán)境,將不同的算法分成兩種類型:一種是環(huán)境已知,即智能體已經(jīng)對環(huán)境建模,叫作基于模型;另一種是環(huán)境未知,叫作免模型。8.2.1基于模型與免模型環(huán)境(1)基于模型的強化學(xué)習(xí)。例如,工廠載貨機器人通過傳感器感應(yīng)地面上的航線來控制其行走。由于地面上的航線是事先規(guī)劃好的,工廠的環(huán)境也是可控已知的,因此可以將其視為基于模型的任務(wù)。圖8-5基于模型的任務(wù):工廠AGV自動載重車8.2.1基于模型與免模型環(huán)境在這基于模型的方法中,智能體使用環(huán)境的轉(zhuǎn)移模型來幫助解釋獎勵信號并決定如何行動。模型最初可能是未知的,智能體通過觀測其行為的影響來學(xué)習(xí)模型;或者它也可能是已知的,例如,國際象棋程序可能知道國際象棋的規(guī)則,即便它不知道如何選擇好的走法。在部分可觀測的環(huán)境中,轉(zhuǎn)移模型對于狀態(tài)估計也是很有用的。不過在現(xiàn)實情況下,環(huán)境的狀態(tài)轉(zhuǎn)移概率、獎勵函數(shù)往往很難提前獲取,甚至很難知道環(huán)境中一共有多少個狀態(tài)。8.2.1基于模型與免模型環(huán)境(2)免模型強化學(xué)習(xí)。例如汽車的自動駕駛系統(tǒng),在現(xiàn)實交通環(huán)境下,很多事情是無法預(yù)先估計的,例如路人的行為、往來車輛的行走軌跡等情況,因此可以將其視為免模型的任務(wù)。在這種方式下,智能體不知道環(huán)境的轉(zhuǎn)移模型,相反,它直接學(xué)習(xí)如何采取行為方式,可以使用動態(tài)規(guī)劃法求解,其中主要有動作效用函數(shù)學(xué)習(xí)和策略搜索兩種形式,包括蒙特卡洛法、時間差分法、值函數(shù)近似、梯度策略等方法。8.2.1基于模型與免模型環(huán)境在強化學(xué)習(xí)中,“探索”的目的是找到更多環(huán)境信息,而“利用”(或者說“開發(fā)”)的目的是通過已知環(huán)境信息來使預(yù)期累積獎勵最大化。也就是,“探索”是嘗試新的動作行為,而“利用”則是從已知動作中選擇下一步的行動。也正因如此,有時候會陷入一種困境。例如,小老鼠可以吃到無窮多塊分散的奶酪(每塊+1),但在迷宮上方有許多堆在一起的奶酪(+1000),或者看成巨型奶酪。如果只關(guān)心吃了多少,小老鼠就永遠不會去找那些大奶酪。它只會在安全的地方一塊一塊地吃,這樣獎勵累積比較慢,但它不在乎。如果它跑去遠的地方,也許就會發(fā)現(xiàn)大獎的存在,但也有可能發(fā)生危險。8.2.2探索與利用實際上,“探索”和“利用”哪個重要,以及如何權(quán)衡兩者之間的關(guān)系,是需要深入思考的。在基于模型的環(huán)境下,已經(jīng)知道環(huán)境的所有信息(環(huán)境完備信息),智能體不需要在環(huán)境中探索,而只要簡單利用環(huán)境中已知信息即可;可是在免模型環(huán)境下,探索和利用兩者同等重要,既需要知道更多有關(guān)環(huán)境的信息,又需要針對這些已知信息來提高獎勵。8.2.2探索與利用不過,“探索”和“利用”兩者本身是矛盾的,因為在實際運行中,算法能夠嘗試的次數(shù)有限,增加探索的次數(shù)則利用的次數(shù)會降低,反之亦然。這就是強化學(xué)習(xí)中的探索—利用困境,設(shè)計者需要設(shè)定一種規(guī)則,讓智能體能夠在探索和利用之間進行權(quán)衡。8.2.2探索與利用在求解強化學(xué)習(xí)問題時,具體還有免模型預(yù)測和免模型控制,以及基于模型預(yù)測和基于模型控制?!邦A(yù)測”的目的是驗證未來——對于一個給定的策略,智能體需要去驗證該策略能夠到達的理想狀態(tài)值,以確定該策略的好壞。而“控制”則是優(yōu)化未來——給出一個初始化策略,智能體希望基于該給定的初始化策略,找到一個最優(yōu)的策略。實際上,預(yù)測和控制是探索和利用的抽象。預(yù)測希望在未知環(huán)境中探索更多可能的策略,然后驗證其狀態(tài)值函數(shù)??刂茖?yīng)于利用,希望在未知環(huán)境中找到的策略中發(fā)現(xiàn)一個最好的。8.2.2探索與利用強化學(xué)習(xí)的任務(wù)分為片段和連續(xù)兩種。(1)片段任務(wù)。這類任務(wù)有個起點和終點,兩者之間有一堆狀態(tài),一堆行動,一堆獎勵和一堆新的狀態(tài),它們共同構(gòu)成了一“集”。當(dāng)一集結(jié)束,也就是到達終止?fàn)顟B(tài)時,智能體會看一下獎勵累積了多少,以此評估自己的表現(xiàn),然后就帶著之前的經(jīng)驗開始一局新游戲,并且智能體做決定的依據(jù)會更充分一些。8.2.3片段還是連續(xù)任務(wù)以貓鼠迷宮的一集為例:·永遠從同一個起點開始;·如果被貓吃掉或者走了超過20步,則游戲結(jié)束;·結(jié)束時得到一系列狀態(tài)、行動、獎勵和新狀態(tài);·算出獎勵的總和(看看表現(xiàn)如何);·更有經(jīng)驗地開始新游戲。集數(shù)越多,智能體的表現(xiàn)會越好。8.2.3片段還是連續(xù)任務(wù)(2)連續(xù)任務(wù)。游戲永遠不會結(jié)束。智能體要學(xué)習(xí)如何選擇最佳的行動,和環(huán)境進行實時交互,就像自動駕駛汽車。這樣的任務(wù)是通過時間差分學(xué)習(xí)來訓(xùn)練的,每一個時間步都會有總結(jié)學(xué)習(xí),并不是等到一集結(jié)束再分析結(jié)果。8.2.3片段還是連續(xù)任務(wù)強化學(xué)習(xí)的基本組成元素定義如下。(1)智能體:強化學(xué)習(xí)的本體,作為學(xué)習(xí)者或者決策者。(2)環(huán)境:強化學(xué)習(xí)智能體以外的一切,主要由狀態(tài)集組成。(3)狀態(tài):表示環(huán)境的數(shù)據(jù)。狀態(tài)集是環(huán)境中所有可能的狀態(tài)。(4)動作:智能體可以做出的動作。動作集是智能體可以做出的所有動作。8.2.4網(wǎng)絡(luò)模型設(shè)計(5)獎勵:智能體在執(zhí)行一個動作后,獲得的正/負(fù)獎勵信號。獎勵集是智能體可以獲得的所有反饋信息,正/負(fù)獎勵信號亦可稱作正/負(fù)反饋信號。(6)策略:從環(huán)境狀態(tài)到動作的映射學(xué)習(xí),該映射關(guān)系稱為策略。通俗地說,智能體選擇動作的思考過程即為策略。(7)目標(biāo):智能體自動尋找在連續(xù)時間序列里的最優(yōu)策略,這通常指最大化長期累積獎勵。8.2.4網(wǎng)絡(luò)模型設(shè)計在強化學(xué)習(xí)中,每一個自主體由兩個神經(jīng)網(wǎng)絡(luò)模塊組成,即行動網(wǎng)絡(luò)和評估網(wǎng)絡(luò)。行動網(wǎng)絡(luò)是根據(jù)當(dāng)前的狀態(tài)而決定下一個時刻施加到環(huán)境上去的最好動作。圖8-6強化學(xué)習(xí)的網(wǎng)絡(luò)模型設(shè)計8.2.4網(wǎng)絡(luò)模型設(shè)計對于行動網(wǎng)絡(luò),強化學(xué)習(xí)算法允許它的輸出結(jié)點進行隨機搜索,有了來自評估網(wǎng)絡(luò)的內(nèi)部強化信號后,行動網(wǎng)絡(luò)的輸出結(jié)點即可有效地完成隨機搜索,并且大大提高選擇好的動作的可能性,同時可以在線訓(xùn)練整個行動網(wǎng)絡(luò)。用一個輔助網(wǎng)絡(luò)來為環(huán)境建模,評估網(wǎng)絡(luò)可單步和多步預(yù)報當(dāng)前由行動網(wǎng)絡(luò)施加到環(huán)境上的動作強化信號,根據(jù)當(dāng)前狀態(tài)和模擬環(huán)境預(yù)測其標(biāo)量值??梢蕴崆跋蛐袆泳W(wǎng)絡(luò)提供有關(guān)將候選動作的強化信號,以及更多的獎懲信息(內(nèi)部強化信號),以減少不確定性并提高學(xué)習(xí)速度。8.2.4網(wǎng)絡(luò)模型設(shè)計強化學(xué)習(xí)使人們從手動構(gòu)造行為和標(biāo)記監(jiān)督學(xué)習(xí)所需的大量數(shù)據(jù)集(或不得不人工編寫控制策略)中解脫了出來,它在機器人技術(shù)中的應(yīng)用中特別有價值,該領(lǐng)域需要能夠處理連續(xù)、高維、部分可觀測環(huán)境的方法,在這樣的環(huán)境中,成功的行為可能包含成千上萬的基元動作。8.2.4網(wǎng)絡(luò)模型設(shè)計PART03強化學(xué)習(xí)分類強化學(xué)習(xí)中,智能體在沒有“老師”的情況下,通過考慮自己的最終成功或失敗,根據(jù)獎勵與懲罰,主動地從自己的經(jīng)驗中學(xué)習(xí),以使未來的獎勵最大化。按給定條件,除了基于模型和免模型,還有主動和被動強化學(xué)習(xí)。強化學(xué)習(xí)的變體包括逆向強化學(xué)習(xí)、階層強化學(xué)習(xí)和部分可觀測系統(tǒng)的強化學(xué)習(xí)。求解強化學(xué)習(xí)問題所使用的算法可分為策略搜索算法和值函數(shù)算法兩類。在強化學(xué)習(xí)中使用深度學(xué)習(xí)模型,形成深度強化學(xué)習(xí)。8.3強化學(xué)習(xí)分類考慮學(xué)習(xí)下國際象棋的問題。我們首先來考慮監(jiān)督學(xué)習(xí)。下棋智能體函數(shù)把棋盤局面作為輸入并返回對應(yīng)的棋子招式,因此,通過為它提供關(guān)于國際象棋棋盤局面的樣本來訓(xùn)練此函數(shù),其中每個樣本都標(biāo)有正確的走法。假設(shè)我們恰好有一個可用數(shù)據(jù)庫,其中包括數(shù)百萬局象棋大師的對局,每場對局都包含一系列的局面和走法。除少數(shù)例外,一般認(rèn)為獲勝者的招式即便不總是完美的,但也是較好的,因此得到一個很有前途的訓(xùn)練集。8.3.1從獎勵中學(xué)習(xí)問題在于,與所有可能的國際象棋局面構(gòu)成的空間(約1040個)相比,樣本相當(dāng)少(約108個)。在新的對局中,人們很快就會遇到與數(shù)據(jù)庫中明顯不同的局面,此時經(jīng)過訓(xùn)練的智能體很可能會失效——不僅是因為它不知道自己下棋的目標(biāo)是什么(把對手將死),它甚至不知道這些招式對棋子的局面有什么影響。當(dāng)然,國際象棋只是真實世界的一小部分。對于更加實際的問題,需要更大的專業(yè)數(shù)據(jù)庫,而它們實際上并不存在。8.3.1從獎勵中學(xué)習(xí)取而代之的另一種選擇是使用強化學(xué)習(xí),在這種學(xué)習(xí)中,智能體與世界進行互動,并不時收到反映其表現(xiàn)的獎勵(強化)。例如,在國際象棋中,獲勝的獎勵為1,失敗的獎勵為0,平局的獎勵為1/2。強化學(xué)習(xí)的目標(biāo)也是相同的:最大化期望獎勵總和。想象一下你正在玩一個你不了解規(guī)則的新游戲,那么在采取若干個行動后,裁判會告訴“你輸了”。這個簡單例子就是強化學(xué)習(xí)的一個縮影。8.3.1從獎勵中學(xué)習(xí)從設(shè)計者的角度來看,向智能體提供獎勵信號通常比提供有標(biāo)簽的行動樣本要容易得多。首先,獎勵函數(shù)通常非常簡潔且易于指定;它只需幾行代碼就可以告訴國際象棋智能體這局比賽是贏了還是輸了,或者告訴賽車智能體它贏得或輸?shù)袅吮荣?,或者它崩潰了。其次,我們不必是相關(guān)領(lǐng)域的專家,即不需要能在任何情況下提供正確動作,但如果試圖應(yīng)用監(jiān)督學(xué)習(xí)的方法,那么這些將是必要的。8.3.1從獎勵中學(xué)習(xí)事實證明,一點點的專業(yè)知識對強化學(xué)習(xí)會有很大的幫助??紤]國際象棋和賽車比賽的輸贏獎勵(被稱為稀疏獎勵),因為在絕大多數(shù)狀態(tài)下,智能體根本沒有得到任何有信息量的獎勵信號。網(wǎng)球和板球等游戲中可以輕松地為每次擊球得分與跑壘得分提供額外的獎勵。在賽車比賽中,可以獎勵在賽道上朝著正確方向前進的智能體。在學(xué)習(xí)爬行時,任何向前的運動都是一種進步。這些中間獎勵將使學(xué)習(xí)變得更加容易。8.3.1從獎勵中學(xué)習(xí)只要可以為智能體提供正確的獎勵信號,強化學(xué)習(xí)就提供了一種非常通用的構(gòu)建人工智能系統(tǒng)的方法。對模擬環(huán)境來說尤其如此,因為在這種情況下,我們不乏獲得經(jīng)驗的機會。在強化學(xué)習(xí)系統(tǒng)中引入深度學(xué)習(xí)作為工具,也使新的應(yīng)用成為可能,其中包括從原始視覺輸入學(xué)習(xí)玩電子游戲、控制機器人以及玩紙牌游戲。8.3.1從獎勵中學(xué)習(xí)考慮一個簡單情形:有少量動作和狀態(tài),且環(huán)境完全可觀測,其中智能體已經(jīng)有了能決定其動作的固定策略。智能體將嘗試學(xué)習(xí)效用函數(shù)——從狀態(tài)出發(fā),采用策略得到的期望總折扣獎勵,稱之為被動學(xué)習(xí)智能體。被動學(xué)習(xí)任務(wù)類似于策略評估任務(wù),可以將其表述為直接效用估計、自適應(yīng)動態(tài)規(guī)劃和時序差分學(xué)習(xí)。8.3.2被動與主動強化學(xué)習(xí)被動學(xué)習(xí)智能體用固定策略來決定其行為,而主動學(xué)習(xí)智能體可以自主決定采取什么動作。從自適應(yīng)動態(tài)規(guī)劃智能體入手,考慮如何對它進行修改以利用這種新的自由度。智能體首先需要學(xué)習(xí)一個完整的轉(zhuǎn)移模型,其中包含所有動作可能導(dǎo)致的結(jié)果及概率,而不僅僅是固定策略下的模型。8.3.2被動與主動強化學(xué)習(xí)假設(shè)效用函數(shù)可以用表格形式表示,其中每個狀態(tài)有一個輸出值。這種方法適用于狀態(tài)多達106的狀態(tài)空間,這對處在二維網(wǎng)格環(huán)境中的玩具模型來說足夠了。但在有更多狀態(tài)的現(xiàn)實環(huán)境中,其收斂速度會很慢。西洋雙陸棋比大多數(shù)真實世界的應(yīng)用簡單,但它的狀態(tài)已經(jīng)多達約1020個。我們不可能為了學(xué)習(xí)如何玩游戲而簡單地訪問每一個狀態(tài)。8.3.3學(xué)徒學(xué)習(xí)一些領(lǐng)域過于復(fù)雜,以至于很難在其中定義強化學(xué)習(xí)所需的獎勵函數(shù)。例如,我們到底想讓自動駕駛汽車做什么?當(dāng)然,希望它到達目的地花費的時間不要大長,但它也不應(yīng)開得大快,以免帶來不必要的危險或超速罰單;它應(yīng)該節(jié)省能源;它應(yīng)該避免碰撞或由于突然變速給乘客帶來的劇烈晃動,但它仍可以在緊急情況下猛踩利車,等等,為這些因素分配權(quán)重比較困難。更糟糕的是,人們幾乎必然會忘記一些重要的因素,例如它有義務(wù)為其他司機著想。忽略一個因素通常會導(dǎo)致學(xué)習(xí)系統(tǒng)為被忽略的因素分配一個極端值,在這種情況下,汽車可能會為了使剩余的因素最大化而進行極不負(fù)責(zé)任的駕駛。8.3.3學(xué)徒學(xué)習(xí)一種解決問題的方法是在模擬中進行大量的測試并關(guān)注有問題的行為,再嘗試通過修改獎勵函數(shù)以消除這些行為。另一種解決方法是尋找有關(guān)適合的獎勵函數(shù)的其他信息來源。這種信息來源之一是獎勵函數(shù)已經(jīng)完成優(yōu)化(或幾乎完成優(yōu)化)的智能體的行為,在這個例子中來源可以是專業(yè)的人類駕駛員。學(xué)徒學(xué)習(xí)研究這樣的問題:在提供一些對專家行為觀測的基礎(chǔ)上,如何讓學(xué)習(xí)表現(xiàn)得較好。以專業(yè)駕駛算法為例,告訴學(xué)習(xí)者“像這樣去做”。至少有兩種方法來解決學(xué)徒學(xué)習(xí)問題。8.3.3學(xué)徒學(xué)習(xí)第一種方法:假設(shè)環(huán)境是可觀測的,對觀測到的狀態(tài)—動作對應(yīng)用監(jiān)督學(xué)習(xí)方法以學(xué)習(xí)其中的策略,這被稱作模仿學(xué)習(xí)。它在機器人技術(shù)方面取得了成果,但也面臨學(xué)習(xí)較為脆弱這類問題:訓(xùn)練集中的微小誤差將隨著時間累積增長,并最終導(dǎo)致學(xué)習(xí)失敗。并且,模仿學(xué)習(xí)最多只能復(fù)現(xiàn)教師的表現(xiàn),而不能超越。模仿學(xué)習(xí)者常常不明白為什么它應(yīng)該執(zhí)行指定的動作。8.3.3學(xué)徒學(xué)習(xí)第二種方法旨在理解原因:觀察專家的行為(和結(jié)果狀態(tài)),并試圖找出專家最大化的獎勵函數(shù),然后可以得到一個關(guān)于這個獎勵函數(shù)的最優(yōu)策略。人們期望這種方法能從相對較少的專家行為樣本中得到較為健壯的策略,畢竟強化學(xué)習(xí)本身是基于獎勵函數(shù)(而不是策略或價值函數(shù))是對任務(wù)最簡潔、最健壯和可遷移的定義這樣一種想法的。此外,如果學(xué)習(xí)者恰當(dāng)?shù)乜紤]了專家可能存在的次優(yōu)問題,那么通過優(yōu)化真實獎勵函數(shù)的某個較為精確的近似函數(shù),學(xué)習(xí)者可能會比專家表現(xiàn)得更好。我們稱該方法為逆強化學(xué)習(xí):通過觀察策略來學(xué)習(xí)獎勵,而不是通過觀察獎勵來學(xué)習(xí)策略。8.3.3學(xué)徒學(xué)習(xí)PART04深度強化學(xué)習(xí)對于強化學(xué)習(xí)來說,很多實際應(yīng)用問題的輸入數(shù)據(jù)是高維的,比如,對于自動駕駛算法,要根據(jù)當(dāng)前的畫面決定汽車的行駛方向和速度。在機器學(xué)習(xí)和強化學(xué)習(xí)領(lǐng)域,Q函數(shù)是一個非常重要的概念,特別是在強化學(xué)習(xí)的Q學(xué)習(xí)(Q-learning)算法中。Q函數(shù)是用來評估在給定狀態(tài)下采取特定動作的預(yù)期累積獎勵的函數(shù),它是狀態(tài)-動作值函數(shù)的一種。8.4深度強化學(xué)習(xí)Q函數(shù)(Q(s,a))表示在狀態(tài)(s)下采取動作(a)后,從當(dāng)前狀態(tài)開始,按照某一策略進行下去預(yù)期所能獲得的總回報的折現(xiàn)值。簡單說,它衡量了某個狀態(tài)下執(zhí)行某動作的好壞。Q函數(shù)通過不斷更新來學(xué)習(xí)最優(yōu)策略。8.4深度強化學(xué)習(xí)在Q學(xué)習(xí)中,有兩種常用的動作選擇策略:①貪心策略:總是選擇最大Q值的動作。②ε-貪婪策略:以ε的概率隨機選擇動作,1-ε的概率選擇當(dāng)前最大Q值的動作,這樣既探索又利用。Q學(xué)習(xí)的最終目標(biāo)是學(xué)習(xí)一個最優(yōu)策略,即在任意狀態(tài)下選擇動作,使得長期獎勵最大化。通過不斷迭代更新Q函數(shù),最終收斂到最優(yōu)Q函數(shù),進而找到最優(yōu)策略。它結(jié)合探索與利用,平衡了學(xué)習(xí)過程中的立即獎勵與未來收益。8.4深度強化學(xué)習(xí)Q學(xué)習(xí)需要列

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論