Днес ще пиша за машинно обучение. Смятам се за ентусиаст, а не за експерт, така че имайте това предвид. С това казано искам да обясня защо машинното обучение има значение. За да бъда съвсем откровен за това, машинното обучение и евентуалното навлизане на изкуствения интелект е може би най-великото изобретение на човечеството след пожара. Защо? Много антрополози вярват, че именно използването на огън е дало на телата ни гориво, за да развият по-големи и умни мозъци и да се превърнат в доминиращ вид на земята. Машинното обучение има потенциала да направи същото, да позволи на нашето ниво на интелигентност да расте, но този път изглежда няма никакви ограничения за това колко големи могат да растат нашите нови мозъци. По-голямата част от нашата енергия все още идва от изгаряне на неща, но от появата на огъня до изобретяването на автомобила са минали хиляди години. Сега просто откриваме огъня на машинното обучение, трудно е да се каже къде ще ни отведе този нов огън, какви нови изобретения ни очакват след 10 години, 25, или 50? Трудно е да се каже, областта на машинното обучение по своята същност ще расте експоненциално. Докато сме умни за това и не позволяваме на този нов огън да ни изгори, вярвам, че машинното обучение ще реши много от основните проблеми, пред които сме изправени в момента. След като привлякох вниманието ви, нека навлезем в подробности как работи.

Нека започнем с алгоритми за контролирано обучение, има няколко от тях и те също попадат в категории. Първо нека започнем с класификацията, класификацията е, когато имате етикети и ги присвоявате на данните, които се извеждат, както в примера с котка и куче по-горе, това се нарича двоична класификация. Въпреки това можем да имаме толкова категории, колкото искаме, това се нарича многокласова класификация, така че можем да имаме голямо кафяво куче или малка жълта котка, въпросът е, че има множество възможни етикети за многокласова класификация. Второ, има регресия. Регресията е, когато има реална стойност, като например долари или препоръчан котешки видеоклип за следващо гледане, тя взема данни в реално време и минали данни и прави препоръки или предположения за бъдещето въз основа на тези данни. И накрая има прогнозиране, това е може би най-лесното за обяснение, тъй като звучи така. Прогнозирането взема минали и настоящи данни и прави прогнози за бъдещето, като например как ще изглежда фондовият пазар след час или какво ще бъде времето утре. Това се постига чрез анализиране на тенденциите в миналото и след това проектиране на това, което ще се случи в бъдещето. Сега, когато тези обяснения са изчерпани, нека най-накрая обясним някои алгоритми.

Ще започна с може би най-простия алгоритъм, дървото на решенията, това е алгоритъм за контролирано обучение, който използва класификация или регресия в зависимост от проблема. Дървото на решенията работи, като взема решения, да кажем, че имаме дърво на решенията, за да определим каква форма е даден обект. Можем да имаме клон в това дърво, който търси извити или прави линии, ако имаме извити линии, можем да го сравним с овал или кръг, ако имаме прави линии, можем да го сравним с квадрат или правоъгълник. Ако нашето дърво е достатъчно голямо и всички наши данни са правилно етикетирани, можем да определим каква е всяка основна форма. Дървото на решенията е бързо, но не винаги точно, ако искате точност, можете да използвате произволна гора.

Случайната гора е куп дървета за вземане на решения, защото са необходими няколко дървета, за да се създаде гора. Този алгоритъм има предимствата да бъде много точен в сравнение с едно дърво на решенията, но поради размера на гората може да бъде по-бавен. Работи, като има множество дървета на решения и всяко от тях получава глас. В примера по-горе някои може да гласуват с кръг, докато други ще гласуват с овална форма, който спечели най-много гласове и така се класифицира входът. Това може да премахне пристрастията, тъй като едно дърво може да иска да гласува повече за овали, отколкото за кръгове и обратното, колкото по-голяма е гората, толкова по-точна е тя.

Следва моят личен фаворит, невронната мрежа, идеята зад това как работи този алгоритъм е да се възпроизведе структурата на човешкия неврон и след това да се направи мрежа от тях, структура, подобна на мозъка. Аз не съм биолог, така че не мога да обясня как един неврон работи биологично, но това, което мога да направя, е да обясня как работи алгоритмично. Имайки това предвид, нека да разгледаме как работи виртуален неврон. Първо имате вашите входни неврони, те могат да се считат за очите или ушите на мрежата, след това имате вашите скрити слоеве, можете да имате толкова много от тях, колкото е необходимо, и накрая имате вашите изходни неврони. Мислете за това като за устата на мрежата, която съобщава отговора на външния свят. Невронът ще изпрати сигнал до своите съседи в мрежата, като започне от входните неврони и ще се разпространи в мрежата, като всеки неврон ще вземе решение въз основа на входовете от своите съседи. Нека използваме примера с фигурите от по-горе, нека кажем, че формата е картина с определен размер и разделяме картината на равни квадрати или пиксели, като за всеки пиксел тя може да бъде включена или изключена. След това имаме един слой, който определя дали пикселите образуват прави линии или криви линии, след това имаме друг слой, който разглежда пропорциите на формата, за да определи дали е квадрат, правоъгълник, овал или кръг. Това е грубо опростяване на това как работят, ако искате да научите повече, можете да гледате това «видео». Невронната мрежа е много гъвкава и може да бъде както контролирана, така и полуконтролирана и може да използва класификация, регресия или прогнозиране. Гъвкавостта на невронната мрежа не би трябвало да е изненада, тъй като се основава на най-сложното нещо във вселената - човешкия мозък.

Има много други форми на контролирано обучение, но вярвам, че покрих основите. Нека сега се съсредоточим върху обучението без надзор. Ученето без надзор е малко по-абстрактно според мен. Така че нека дадем практически пример, аз съм малко маниак на космоса, така че ще използваме примера със звездите. Някои звезди са големи, други са малки, някои са горещи, други са студени, някои са червени, други жълти, а други сини, но има модел на звезди, наречен Главна последователност

(виж снимката). Тази снимка има много точки с данни и има още повече звезди в небето, как може човек да се надява да категоризира всички звезди в нощното небе? Е, това е идеална задача за машинно обучение и тъй като е невъзможно да се обозначат всички звезди, това определено е работа за неконтролирано обучение. Методът, използван за категоризиране на точките от данни, като например звезди, и графиката им се нарича клъстериране, има много методи за клъстериране, като: йерархично клъстериране, клъстериране на K-средните, смесени модели на Гаус, самоорганизиращи се карти и скрити модели на Марков за да назовем няколко. Групирането ни позволява да видим как данните са организирани в групи и ни помага да видим естествените модели. Съществува и друг основен метод за неконтролирано обучение, това е намаляването на измеренията. Нека продължим с примера със звездите и да кажем, че искаме да гледаме само звезди, които биха могли да имат земя като планети около себе си, добре, какво знаем за слънцето? Не е твърде горещо или твърде студено и е със среден размер и на определена възраст. Можем да вземем тези съответни точки от данни и да игнорираме другите, нека пренебрегнем размера до известна степен и да включим звезди със същия размер като слънцето или по-малки, които са в главната последователност, това е форма на намаляване на измеренията. Можем да извършим няколко редукции на измеренията на основната последователност, докато останем с обитаеми звезди, където можем да открием планети, подобни на земята. Този метод се използва за търсене на Земята като планети около звезди. Има много сложни и многометодични подходи на машинното обучение, които се използват за обработка на астрономически данни.

Машинното обучение има много практически приложения и има много налични методи за използване. По-горе е диаграма, която да ви помогне да решите какъв алгоритъм да използвате. В бъдеще няма да има индустрия, незасегната от машинното обучение, неговите приложения са неограничени, здравеопазването, научните изследвания, образованието, правителството, каквото и да е, машинното обучение ще го промени. Машинното обучение обаче не е перфектно, то е предразположено към пристрастия точно като хората и е важно да сте наясно с тези пристрастия. Знаейки какъв алгоритъм да използвате е от ключово значение, тъй като не винаги има идеално прилягане за всеки проблем, но обикновено има най-добрият метод за използване и е възможно да се използват множество методи, не съм споменал всички възможни налични методи само основни, за които знам. Това е обширна тема и има много за разглеждане, надявам се, че успях да обясня сложността на машинното обучение.

източници:

„Кой алгоритъм за машинно обучение да използвам?“:

Кой алгоритъм за машинно обучение да използвам?
Този ресурс е предназначен предимно за начинаещи до специалисти по данни или анализатори, които се интересуват от...blogs.sas.com



„Алгоритми за контролирано и неконтролирано машинно обучение“:



Алгоритми за контролирано и неконтролирано машинно обучение
Какво е контролирано машинно обучение и каква е връзката му с неконтролираното машинно обучение? В тази публикация ще…machinelearningmastery.com



ФУНДАМЕНТАЛНИ ПАРАМЕТРИ НА ЗВЕЗДИ ОТ ОСНОВНА ПОСЛЕДОВАТЕЛНОСТ В МИГ С МАШИННО ОБУЧЕНИЕ:

https://iopscience.iop.org/article/10.3847/0004-637X/830/1/31

Основна последователност от звезди:

https://upload.wikimedia.org/wikipedia/commons/6/6b/HRDiagram.png

„Техника за машинно обучение за намиране на скрити модели или присъщи структури в данните“:

Неконтролирано обучение
Научете за неконтролирано обучение с помощта на MATLAB. Ресурсите включват видеоклипове, примери и документация, обхващаща...www.mathworks.com



„Как работят дълбоките невронни мрежи“:



Code Bullet (предупреждение, много псувни):

Code Bullet
Добре дошли в Code Bullet, място, където да получите всичко свързано с компютърните науки. Ако искате смесица между изперкало и страхотно, тогава…www.youtube.com



Въведение в машинното обучение