Машыннае навучанне

З пляцоўкі Вікіпедыя

Машыннае навучанне (англ.: Machine learning, ML) — галіна інфарматыкі, якая займаецца стварэннем камп’ютарных праграм, здольных самаўдасканальвацца, выкарыстоўваючы вопыт[1]. Часта машыннае навучанне разглядаецца як раздзел штучнага інтэлекту.

Алгарытмы машыннага навучання ствараюць мадэль на аснове выбаркі даных, каб рабіць прагнозы або прымаць рашэнні без яўнага праграмавання[2]. Алгарытмы машыннага навучання выкарыстоўваюцца ў самых розных сферах прымянення, напрыклад, у медыцыне, фільтраванні электроннай пошты(англ.) бел., распазнаванні маўлення, сельскай гаспадарцы і камп’ютарным зроку, дзе цяжка ці немагчыма распрацаваць звычайныя алгарытмы для выканання неабходных задач[3][4].

Некаторыя метады машыннага навучання цесна звязаныя з вылічальнай статыстыкай(англ.) бел., якая займаецца прагназаваннем з дапамогай камп’ютараў, але не ўсё машыннае навучанне ёсць статыстычным навучаннем. Развіццё матэматычнай аптымізацыі(англ.) бел. пашырае метады, тэорыю і вобласці прымянення машыннага навучання. Здабыванне даных(англ.) бел. — гэта роднасная вобласць даследаванняў, якая засяроджваецца на выведным аналізе даных(англ.) бел. праз некіраванае навучанне(англ.) бел.[6][7].

Прымяненне машыннага навучання ў бізнес-задачах называюць яшчэ прагнастычнай аналітыкай(англ.) бел..

Агульныя звесткі[правіць | правіць зыходнік]

Прыклады рукапісных лічбаў з набору даных MNIST

Алгарытмы навучання грунтуюцца на дапушчэнні, што стратэгіі, алгарытмы і высновы, якія добра працавалі ў мінулым, верагодна, будуць добра працаваць і ў будучыні. Гэтыя высновы могуць быць трывіяльнымі, напрыклад, «сонца ўзыходзіла штораніцы цягам апошніх 10 000 дзён, таму яно, верагодна, узыдзе і заўтра зранку». Яны могуць быць і больш складанымі, напрыклад «X% сямействаў маюць геаграфічна адасобленыя віды з рознымі варыянтамі афарбоўкі, таму не знойдзеныя дагэтуль чорныя лебедзі існуюць з імавернасцю Y%»[8].

Праграмы машыннага навучання могуць выконваць задачы без яўнага іх на гэта праграмавання. Камп’ютары навучаюцца рабіць гэта з дапамогай пэўнага набору даных. Для простых задач можна яўна запраграмаваць алгарытмы, што паведамляюць машыне, якія крокі неабходна выканаць для развязання пастаўленай задачы; з боку камп’ютара навучанне не патрабуецца. Для больш складаных задач чалавеку можа быць цяжка самастойна сфармуляваць неабходны набор інструкцый. На практыцы для праграміста можа быць больш эфектыўным дапамагчы машыне распрацаваць уласны алгарытм, чым уручную пазначаць кожны неабходны крок[9].

Галіна машыннага навучання выкарыстоўвае розныя падыходы, каб навучыць камп’ютары выконваць задачы ў выпадках, калі яўная распрацоўка алгарытму немагчымая або немэтазгодная. У такіх выпадках адным з падыходаў можа быць збор прыкладаў правільнага развязання задачы. Пасля гэтыя прыклады могуць быць выкарыстаныя камп’ютарам як даныя для навучання, каб палепшыць алгарытм. Напрыклад, каб навучыць сістэму распазнавання лічбаў, часта выкарыстоўваецца набор даных рукапісных лічбаў MNIST(англ.) бел.[9].

Падыходы[правіць | правіць зыходнік]

Падыходы да машыннага навучання традыцыйна падзяляюцца на тры шырокія катэгорыі, якія адпавядаюць парадыгмам навучання паводле характару «сігналу» або «зваротнай сувязі», даступнай сістэме навучання:

  • Кіраванае навучанне(англ.) бел.: камп’ютар мае прыклады запытаў і пажаданых адказаў на іх, і на прыкладах навучаецца правілу, паводле якога запыт можа быць пераўтвораны ў правільны адказ.
  • Некіраванае навучанне(англ.) бел.: камп’ютар атрымлівае даныя без разметкі, каб вызначыць іх структуру і заканамернасці. Некіраванае навучанне можа быць самамэтай (выяўленне невядомай структуры ў даных), або інструментам для іншых падыходаў (навучанне прыкметам(англ.) бел.).
  • Навучанне з падмацаваннем(англ.) бел.: камп’ютар узаемадзейнічае з дынамічным асяроддзем, у якім павінна быць выкананая пэўная задача (напрыклад, кіраванне аўтамабілем(англ.) бел. або гульня з апанентам). У працэсе даследавання асяроддзя, камп’ютар атрымлівае зваротную сувязь у выглядзе ўзнагарод за правільныя дзеянні, і навучаецца іх максімізаваць[5].

Кіраванае навучанне[правіць | правіць зыходнік]

Метад апорных вектараў(англ.) бел. — мадэль кіраванага навучання, якая падзяляе прастору даных на рэгіёны лінейнай мяжой. На рысунку лінейная мяжа аддзяляе чорныя меткі ад белых.

Алгарытмы кіраванага навучання ствараюць матэматычную мадэль з набору даных, які змяшчае як запыты, так і пажаданыя адказы (разметку). Такія даныя называюцца трэніровачнымі, і складаюцца з набору трэніровачных прыкладаў[10]. Кожны трэніровачны прыклад змяшчае адзін ці больш запытаў і пажаданых адказаў, таксама вядомы як кіроўны сігнал. У матэматычнай мадэлі кожны трэніровачны прыклад прадстаўлены масівам(англ.) бел. або вектарам, які часам называюць вектарам прыкмет, а трэніровачныя даныя прадстаўленыя ў выглядзе матрыцы. Праз ітэратыўную аптымізацыю алгарытмы кіраванага навучання вывучаюць функцыю, якая можа быць выкарыстана для атрымання адказаў на новыя запыты, якія не ўваходзілі ў трэніровачны набор[11]. Пра алгарытм, які пакрысе паляпшае правільнасць сваіх адказаў, кажуць, што ён навучаецца выконваць пэўную задачу[12].

Тыпамі алгарытмаў кіраванага навучання ёсць класіфікацыя(англ.) бел. і рэгрэсія(англ.) бел.[13]. Класіфікацыя выкарыстоўваецца тады, калі адказы абмежаваныя канечным наборам значэнняў, а рэгрэсія тады, калі адказы прымаюць якія заўгодна лікавыя значэнні ў пэўным дыяпазоне. Напрыклад для алгарытму класіфікацыі электронных лістоў запытам будзе сам уваходны ліст, а адказам — імя папкі, у якую гэты ліст мусіць быць пакладзены.

Навучанне падабенству(англ.) бел. — галіна кіраванага навучання, цесна звязаная з класіфікацыяй і рэгрэсіяй, але яе мэтай ёсць навучанне на прыкладах функцыі падабенства паміж аб’ектамі. Навучанне падабенству мае прымяненні ў рангаванні(англ.) бел., рэкамендацыйных сістэмах(англ.) бел., адсочванні візуальнай ідэнтычнасці, верыфікацыі твараў і прамоўцаў.

Некіраванае навучанне[правіць | правіць зыходнік]

Алгарытмы некіраванага навучання працуюць з данымі без разметкі, і знаходзяць у іх структуру, напрыклад групы ці кластары аб’ектаў. Замест таго, каб рэагаваць на зваротную сувязь, алгарытмы некіраванага навучання вызначаюць агульныя рысы ў даных і рэагуюць на наяўнасць або адсутнасць такіх агульных рыс у кожнай новай порцыі даных. Некіраванае навучанне знаходзіць сваё асноўнае прымяненне ў задачы ацэнкі шчыльнасці(англ.) бел. размеркавання ў статыстыцы[14]. Пры гэтым некіраванае навучанне ахоплівае і іншыя дамены, звязаныя з абагульненнем і тлумачэннем прыкмет даных.

Кластарны аналіз — гэта разбіццё назіранняў на падмноствы (якія завуцца кластарамі) такім чынам, што назіранні ўнутры аднаго кластара падобныя паводле аднаго ці больш абраных крытэраў, у той час як назіранні з розных кластараў непадобныя. Розныя тэхнікі кластарызацыі грунтуюцца на розных дапушчэннях пра структуру даных, часта вызначанай пэўнай метрыкай падабенства, і ацэньваюцца, напрыклад, унутранай кампактнасцю, ці падабенствам паміж аб’ектамі ўнутры кластара, і сепарацыяй, розніцай паміж кластарамі. Іншыя метады грунтуюцца на ацэнках шчыльнасці і звязнасці графаў.

Паўкіраванае навучанне[правіць | правіць зыходнік]

Паўкіраванае навучанне ляжыць паміж некіраваным навучаннем (без аніякай разметкі) і кіраваным навучаннем (з поўнасцю размечанымі трэніровачнымі данымі). У паўкіраваным навучанні некаторыя з трэніровачных прыкладаў не маюць разметкі, пры гэтым многія даследчыкі машыннага навучання прыйшлі да высновы, што неразмечаныя даныя ў спалучэнні з невялікай колькасцю размечаных могуць значна палепшыць якасць мадэлі.

У слаба кіраваным навучанні(англ.) бел. трэніровачная разметка шумная, абмежаваная або недакладная. Часта такую разметку прасцей і танней здабыць, і гэта дае магчымасць павялічыць колькасць трэніровачных даных[15].

Навучанне з падмацаваннем[правіць | правіць зыходнік]

Навучанне з падмацаваннем даследуе тое, як павінны паводзіць сябе праграмныя агенты(англ.) бел. ў пэўным асяроддзі, каб максімізаваць кумулятыўную ўзнагароду. Праз сваю ўніверсальнасць, гэты падыход вывучаюць у мностве іншых дысцыплін, такіх як тэорыя гульняў, тэорыя кіравання(англ.) бел., даследаванне аперацый(англ.) бел., тэорыя інфармацыі, аптымізацыя праз сімуляцыю(англ.) бел., шматагентныя сістэмы(англ.) бел., роевы інтэлект(англ.) бел., статыстыка і генетычныя алгарытмы(англ.) бел.. У машынным навучанні асяроддзе звычайна прадстаўлена як маркаўскі працэс прыняцця рашэнняў(англ.) бел.. Многія алгарытмы навучання з падмацаваннем выкарыстоўваюць тэхнікі дынамічнага праграмавання(англ.) бел.[16]. Алгарытмы навучання з падмацаваннем не патрабуюць ведання дакладнай матэматычнай мадэлі асяроддзя і выкарыстоўваюцца калі стварыць дакладную мадэль немагчыма. Прыклад такога алгарытму — праграма для гульні ў го, шахматы і сёгі AlphaZero.

Зноскі[правіць | правіць зыходнік]

  1. Mitchell, Tom (1997). Machine Learning. New York: McGraw Hill. ISBN 0-07-042807-7. OCLC 36417892. http://www.cs.cmu.edu/~tom/mlbook.html. 
  2. Азначэнне "без яўнага праграмавання" часта прыпісваюць Артуру Самуэлю, які стварыў тэрмін "машыннае навучанне" ў 1959, але даслоўная цытата не знойдзена ў гэтай публікацыі, і можа быць пазнейшай парафразай. Гл. "Paraphrasing Arthur Samuel (1959), the question is: How can computers learn to solve problems without being explicitly programmed?" у (1996) "Artificial Intelligence in Design '96" in Artificial Intelligence in Design '96.: 151–170, Springer, Dordrecht. DOI:10.1007/978-94-009-0279-4_9. 
  3. Hu, J.; Niu, H.; Carrasco, J.; Lennox, B.; Arvin, F., «Voronoi-Based Multi-Robot Autonomous Exploration in Unknown Environments via Deep Reinforcement Learning» IEEE Transactions on Vehicular Technology, 2020.
  4. Yoosefzadeh-Najafabadi, Mohsen; Hugh, Earl; Tulpan, Dan; Sulik, John; Eskandari, Milad (2021). "Application of Machine Learning Algorithms in Plant Breeding: Predicting Yield From Hyperspectral Reflectance in Soybean?". Front. Plant Sci. 11: 624273. doi:10.3389/fpls.2020.624273. PMID 33510761. 
  5. а б Bishop, C. M. (2006). Pattern Recognition and Machine Learning. Springer. ISBN 978-0-387-31073-2. 
  6. Machine learning and pattern recognition "can be viewed as two facets of the same field."[5]:vii
  7. Friedman, Jerome H. (1998). "Data Mining and Statistics: What's the connection?". Computing Science and Statistics 29 (1): 3–9. 
  8. Domingos, 2015, Chapter 6, Chapter 7
  9. а б Ethem Alpaydin (2020). Introduction to Machine Learning (Fourth ed.). MIT. pp. xix, 1–3, 13–18. ISBN 978-0262043793. 
  10. Russell, Stuart J.; Norvig, Peter (2010). Artificial Intelligence: A Modern Approach (Third ed.). Prentice Hall. ISBN 9780136042594. 
  11. Mohri, Mehryar; Rostamizadeh, Afshin; Talwalkar, Ameet (2012). Foundations of Machine Learning. The MIT Press. ISBN 9780262018258. 
  12. Mitchell, T. (1997). Machine Learning. McGraw Hill. pp. 2. ISBN 978-0-07-042807-2. https://archive.org/details/machinelearning0000mitc. 
  13. Alpaydin, Ethem (2010). Introduction to Machine Learning. MIT Press. p. 9. ISBN 978-0-262-01243-0. https://books.google.com/books?id=7f5bBAAAQBAJ. 
  14. Jordan, Michael I.; Bishop, Christopher M. (2004). "Neural Networks". in Allen B. Tucker. Computer Science Handbook, Second Edition (Section VII: Intelligent Systems). Boca Raton, Florida: Chapman & Hall/CRC Press LLC. ISBN 978-1-58488-360-9. 
  15. Weak Supervision: A New Programming Paradigm for Machine Learning. The Stanford AI Lab Blog.
  16. van Otterlo, M.; Wiering, M. (2012). Reinforcement learning and Markov decision processes. Adaptation, Learning, and Optimization. 12. 3–42. doi:10.1007/978-3-642-27645-3_1. ISBN 978-3-642-27644-6.