Энгийнээр тайлбарлая: Бататгалтай сургалт буюу Reinforcement Learning

Indra A
Beyond Data Science
4 min readSep 4, 2019

--

Сүүлийн жилүүдэд уг сургалтын асар олон амжилттай хэрэгжүүлэлтүүдийн талаар дэлхий даяар яригдах болжээ. Маш алдартай бөгөөд сонирхолтой жишээ нь AlphaGO билээ.

2015 онд AI суурьтай AlphaGo гэгч систем GO тоглоомын Европын 3 удаагын аврага тоглогч Fan Hui-г 5:0 харьцаатайгаар ялан дийлсэн нь хэвлэл мэдээллийн томоохон сэдэв болоод байсан юм. GO хэмээх маш төвөгтэй тоглоомд хиймэл оюун ухаан хүнээс илүү байсан анхны тохиолдол бөгөөд тус AI нь Reinforcement Learning ашиглан бүтсэн байдаг.

Энэхүү сургалт нь машин сургалтын маш чухал бөгөөд ирээдүйтэй төрөл юм. Гол санаа нь агент өөрийн тойрон буй орчинд үйл хөдлөл хийн түүнээсээ эргэх холбоо үүсгэн хариу үйлдэл авч суралцахад оршино.

Хүрээлэн буй орчинтой харилцан суралцах чадвар хүмүүст байгалиасаа заяагдсан байдаг билээ.

Агентыг том өрөөндөө байгаа нялх хүүхэд гэж төсөөлье. Өрөөнд зуух мөн байгаа гэж үзье. Хүүхэд зууханд ойртох үед дулаахан санагдаж эерэг мэдрэмж хүлээн авна. Тийм учраас зуухыг сайн зүйл гэж бодно. Энэ бодолдоо автан зууханд хүрэх гэж оролдох үед гараа түлнэ. Өвдөнө. Уйлна. Сөрөг мэдрэмж. Иймд, зуух гэдэг зүйл нь холоос дулаан буюу эерэг мэдрэмж өгдөг, хэтэрхий ойртвол гараа түлдэг гэж сурч авлаа.

Бататгалтай сургалт /Жич: Монгол хэлэнд Reinforcement Learning гэдэг ойлголт албан ёсоор хэрхэн орчуулагдсан байдаг талаар мэдээлэлгүй байсан тул дээрх байдлаар бичлээ. Албан ёсны монгол нэр эсвэл арай дээр орчуулга байдаг бол надад хэлж тус болоорой/ үүнтэй адил байдлаар явагддаг. Өөрөөр хэлбэл, энэ нь үйлдэл болон түүний хариу үйдэлд тулгуурласан сургалт юм. Илүү дэлгэрэнгүй ярья.

Сургалтын процесс

Дараагийн жишээнд Агент Super Mario Bros. тоглоомыг тоглож сурах гэж байгаа гэж төсөөлье. Reinforcement learning-ийн процессийг дараах байдлаар ажилладаг цикл хэлбэрээр дүрслэх боломжтой:

  • Агент хүрээлэн буй орчноос S0 төлөв хүлээн авна /бидний тохиолдолд тоглоомын эхний кадр/
  • Энэхүү S0 төлвөөс гарч A0 үйлдэл хийнэ /баруун тийш хөдлөх/
  • Хүрээлэн буй орчин нь S1 төлөвт шилжинэ /кадр солигдох/
  • Хүрээлэн буй орчин тодорхой R1 шагнал өгнө /үхээгүй/

Энэхүү RL-цикл нь төлөв, үйлдэл, шагнал зэргийн дараалал бүхий ойлголт бөгөөд агентын гол зорилго бол аль болох олон шагнал цуглуулахад оршино. t хугацаа болгонд хуримтлагдах шагналыг дараах байдлаар бичье:

Гэтэл бодит байдалд бид эдгээр шагналуудыг зүгээр хооронд нь нэмэх нь тийм ч зүйтэй биш байдаг. Эхэнд байх шагналуудыг олох магадлал удаах шагналуудаасаа илүү өндөр байна. Жишээ нь, бидний агент — хулгана гэж үзье. Тэр мууранд баригдалгүйгээр аль болох олон бяслаг идэх ёстой гэж үзвэл түүний өөртэйгөө ойр байгаа бяслагуудыг идэх магадлал хамаагүй өндөр шүү дээ.

Муурын хажууд байгаа бяслаг хэдийгээр хэмжээ ихтэй байгаа ч бид тэднийг иднэ гэсэн итгэл багатай байгаа тул тухайн шагналыг дараах байдлаар бууруулах шаардлагатай.

  • [0,1] интервалд орших хөнгөлөлтийн хувь буюу гаммаг тодорхойлно.
  • Гамма их байх тусам хөнгөлөлт бага байна. Энэ нь манай агент урт хугацааны шагналд илүү сонирхолтой байгааг харуулна.
  • Нөгөө талаас гамма бага байх тусам хөнгөлөлтийн хувь их буюу манай агент богино хугацааны шагналд анхаарч байна /өөрт ойрхон бяслаг/

Хөнгөлөлтийн хувийг тооцсон хуримтлагдсан шагнал дараах байдлаар бичигдэнэ:

Өөрөөр хэлбэл, хугацаанаас хамаарч шагналын хэмжээ хөнгөлөлтийн хувиар буурна. Хугацаа өнгөрөх тоолонд муур бидэнтэй илүү ойр болох тул шагналуудын магадлал буурах юм.

Асуудлын төрөл

RL-ийн 2 төрлийн даалгавар бүхий асуудал байдаг: тасралтгүй болон хэсэг хэсгээс бүрдсэн/episodic/.

Тодорхой хэсгүүдээс бүрдсэн episodic даалгаврын хувьд эхлэл болон төгсгөлийн цэгтэй байна. Жишээ нь, бидний дээр авсан жишээ буюу SuperMario Bros. нь episodic юм: тоглоом шинээр эхлээд тоглогч үхэх үед дуусна.

Тасралтгүй төрлийн даалгаврууд нь байнга үргэлжилж байдаг бөгөөд энэ тохиолдолд агент маань хамгийн зөв үйлдлийг хийж хүрээлэн буй орчинтойгоо харилцах шаардлагатай. Жишээ нь, хувьцааны арилжааг автоматаар хийж гүйцэтгэдэг агентын хувьд эхлэл төгсгөлийн цэг гэж байхгүй. Биднийг зогсоох хүртэл агент ажилласаар л байх болно.

Exploration VS. Exploitation

Энэ бол RL сургалтын чухал ойлголтуудын нэг юм. Exploration буюу хайгуул нь хүрээлэн буй орчны талаар илүү их мэдээлэл олох үйл явц ба exploitation буюу ашиглалт нь одоо байгаа мэдээллээ ашиглах үйл явцыг хэлнэ.

Өмнөх жишээгээ арай өөр болгон авч үзвэл, хулганы ойролцоо маш олон жижиг бяслагууд байлаа гэж үзье. Харин хамгийн цаана асар том бяслагны уул байгаа бөгөөд хэрэв манай агент буюу хулгана маань өөрт ойр байгаа бяслагуудаа идээд байвал (exploitation буюу ашиглалт) хэзээ ч тэр том ууланд очиж чадахгүй. Бага зэрэг хайгуул хийж орчинтойгоо танилцвал (exploration буюу хайгуул) асар их бяслагны эх үүсвэр дээр очих боломжтой болно.

Үүнийг exploration-exploitation trade-off гэж нэрлээд байгаа юм.

За ингээд RL-ийн гол утга санаа бүхий ойлголтуудтай танилцлаа. Эх сурвалж бүхий нийтлэл маань энд байгаа тул илүү дэлгэрэнгүй мэдмээр, сонирхож байвал орж уншаарай.

--

--