Манай машин сургалтын загварт илүү нарийвчлалтай хүрэхийн тулд бид туршиж болох хэд хэдэн гиперпараметрүүд байдаг. Гиперпараметрүүд нь сургалтын үйл явц эхлэхээс өмнө тохируулагддаг параметрүүд юм. Тэд сургалтын алгоритмын үйл ажиллагааг хянаж, загварын гүйцэтгэлд чухал нөлөө үзүүлдэг.
Анхаарах ёстой нэг чухал гиперпараметр бол суралцах хурд юм. Сурах хурд нь сургалтын алгоритмын давталт бүрийн алхамын хэмжээг тодорхойлдог. Суралцах түвшин өндөр байгаа нь загварт илүү хурдан суралцах боломжийг олгодог боловч оновчтой шийдлийг давахад хүргэж болзошгүй юм. Нөгөөтэйгүүр, суралцах хурд бага байгаа нь нийлэлтийг удаашруулж болох ч загвар нь хэт давахаас зайлсхийхэд тусална. Конвергенцийн хурд ба нарийвчлалын хоорондын зөрүүг тэнцвэржүүлсэн сургалтын оновчтой түвшинг олох нь маш чухал юм.
Туршилт хийх өөр нэг гиперпараметр бол багцын хэмжээ юм. Багцын хэмжээ нь сургалтын алгоритмын давталт бүрт боловсруулсан сургалтын жишээнүүдийн тоог тодорхойлдог. Бага хэмжээний багц нь градиентийг илүү нарийвчлалтай тооцоолох боломжтой боловч нийлэлтийг удаашруулж болзошгүй. Үүний эсрэгээр, илүү том багцын хэмжээ нь сургалтын үйл явцыг хурдасгах боловч градиент тооцоонд дуу чимээг оруулж болзошгүй. Багцын зөв хэмжээг олох нь өгөгдлийн багцын хэмжээ болон тооцооллын нөөцөөс хамаарна.
Мэдрэлийн сүлжээн дэх далд нэгжийн тоо нь тохируулж болох өөр нэг гиперпараметр юм. Нуугдсан нэгжийн тоог нэмэгдүүлэх нь загварын нарийн төвөгтэй хэв маягийг сурах чадавхийг нэмэгдүүлэх боловч зөв тохируулаагүй тохиолдолд хэт тохируулгад хүргэж болзошгүй юм. Үүний эсрэгээр, далд нэгжийн тоог багасгах нь загварыг хялбарчлах боловч дутуу тохироход хүргэж болзошгүй юм. Загварын нарийн төвөгтэй байдал болон ерөнхий ойлголтын хоорондох тэнцвэрийг бий болгох нь чухал юм.
Зохицуулалт нь гиперпараметрээр дамжуулан хянаж болох өөр нэг арга юм. Зохицуулалт нь алдагдлын функцэд торгуулийн хугацааг нэмснээр хэт их ачааллаас урьдчилан сэргийлэхэд тусалдаг. Зохицуулалтын хүч нь зохицуулалтын параметр гэж нэрлэгддэг гиперпараметрээр хянагддаг. Зохицуулалтын өндөр параметр нь илүү энгийн загвар гаргахад хүргэдэг боловч дутуу тохируулгад хүргэж болзошгүй юм. Эсрэгээр, бага зохицуулалтын параметр нь загварт сургалтын өгөгдөлд илүү нягт нийцэх боломжийг олгодог боловч хэт тохируулгад хүргэж болзошгүй юм. Тогтворжуулах оновчтой параметрийг олохын тулд хөндлөн баталгаажуулалтыг ашиглаж болно.
Оновчлолын алгоритмыг сонгох нь бас чухал гиперпараметр юм. Gradient descent нь түгээмэл хэрэглэгддэг оновчлолын алгоритм боловч stochastic gradient descent (SGD), Adam, RMSprop зэрэг хувилбарууд байдаг. Алгоритм бүр нь импульс, суралцах хурдны бууралт зэрэг тохируулж болох өөрийн гиперпараметрүүдтэй байдаг. Өөр өөр оновчлолын алгоритмууд болон тэдгээрийн гиперпараметрүүдтэй туршилт хийх нь загварын гүйцэтгэлийг сайжруулахад тусална.
Эдгээр гиперпараметрүүдээс гадна судлах боломжтой бусад хүчин зүйлүүд нь сүлжээний бүтэц, ашигласан идэвхжүүлэх функцууд, загварын параметрүүдийг эхлүүлэх зэрэг орно. Хувирмал мэдрэлийн сүлжээ (CNN) эсвэл давтагдах мэдрэлийн сүлжээ (RNN) гэх мэт өөр өөр архитектурууд нь тодорхой ажлуудад илүү тохиромжтой байж болно. ReLU эсвэл sigmoid гэх мэт тохирох идэвхжүүлэх функцуудыг сонгох нь загварын гүйцэтгэлд нөлөөлж болно. Загварын параметрүүдийг зөв эхлүүлэх нь сургалтын алгоритмыг илүү хурдан нэгтгэж, илүү нарийвчлалтай болоход тусална.
Манай машин сургалтын загварт илүү өндөр нарийвчлалд хүрэхийн тулд янз бүрийн гиперпараметрүүдийг туршиж үзэх шаардлагатай. Сурах хурд, багцын хэмжээ, далд нэгжийн тоо, тогтмолжуулах параметр, оновчлолын алгоритм, сүлжээний архитектур, идэвхжүүлэх функцууд, параметрүүдийг эхлүүлэх зэрэг нь загварын гүйцэтгэлийг сайжруулахын тулд тохируулж болох гиперпараметрүүд юм. Конвергенцийн хурд ба нарийвчлалын тэнцвэрийг бий болгохын тулд эдгээр гиперпараметрүүдийг анхааралтай сонгож, тохируулах нь чухал бөгөөд түүнчлэн хэт тохирох эсвэл дутуу тохирохоос сэргийлнэ.
Сүүлийн үеийн бусад асуулт, хариулт EITC/AI/GCML Google Cloud Machine Learning:
- Текстээс яриа (TTS) гэж юу вэ, энэ нь хиймэл оюун ухаантай хэрхэн ажилладаг вэ?
- Машин сургалтын явцад том өгөгдлийн багцтай ажиллахад ямар хязгаарлалт байдаг вэ?
- Машины сургалт нь харилцан ярианы тусламж үзүүлж чадах уу?
- TensorFlow тоглоомын талбай гэж юу вэ?
- Том өгөгдлийн багц нь үнэндээ юу гэсэн үг вэ?
- Алгоритмын гиперпараметрийн зарим жишээ юу вэ?
- Ансамблийн сургалт гэж юу вэ?
- Сонгосон машин сургалтын алгоритм тохиромжгүй бол яах вэ, зөвийг нь хэрхэн сонгох вэ?
- Машин сургалтын загвар нь сургалтын явцад хяналт тавих шаардлагатай юу?
- Мэдрэлийн сүлжээнд суурилсан алгоритмд ашигладаг гол параметрүүд юу вэ?
EITC/AI/GCML Google Cloud Machine Learning-ээс бусад асуулт, хариултуудыг харна уу