強化學習
折扣因子(discount factor)
/ DIS-kownt FAK-tur /
折扣因子是一個旋鈕,通常寫作伽馬(γ),它設定智能體對「未來」相比「當下」有多在乎。一步之外的獎勵算足額;兩步之外的獎勵要乘上 γ;三步之外,γ 乘 γ;如此類推,每延遲一步就縮水一分。它是「雙鳥在林,不如一鳥在手」的數學表達——未來的獎勵,比當下的獎勵值得稍微少一點。
γ 落在 0 與 1 之間。把它設得接近 0,智能體就變得目光短淺,只抓眼前能立刻兌現的,無視長遠後果。把它設得接近 1(比如 0.99),智能體就變得高瞻遠矚,肯為多步之後一份更大的獎勵,放棄眼下一份小的。調 γ,實實在在就是在選擇智能體的性格——它有多大耐性。
γ 之所以存在,還有一個不動聲色的技術緣由。在那些可以永遠跑下去的任務裡,單純把獎勵一路相加會得到無窮大,這在比較策略時毫無用處。打折扣把那個無窮的總和馴成一個有限的數,於是「更好」與「更差」才仍有意義。難處在於,γ 是你設定的旋鈕,而非世界告訴你的——設得太低,智能體不會向前謀劃到足以解開任務;設得太高,學習又可能變得緩慢而不穩定。
面對「十步之後給+100」,當 γ 等於 0.9,智能體今天給它的估值是 100 × 0.9¹⁰ ≈ 35。當 γ 等於 0.99,它對同一份獎勵的估值約為 90——幾乎足額。同樣的獎品、同樣的延遲,卻是兩種截然不同的「等待胃口」。
每延遲一步,獎勵就乘一個 γ。γ 低=沒耐性;γ 高=看得遠。
γ 是一個設計選擇,而非關於任務的事實,它悄然塑造著智能體「甚至會去嘗試什麼」。太低,它就「看不見」一個遙遠的目標,於是永遠學不會抵達;太高,那些遙遠而不確定的總和又會讓學習更嘈雜、更慢才安定下來。
又稱
另見