Машинното обучение е подмножество от AI, което позволява на машината автоматично да се учи от данни, да подобрява производителността от минали преживявания и да прави прогнози . Машинното обучение съдържа набор от алгоритми, които работят върху огромно количество данни. Данните се подават към тези алгоритми, за да ги обучат и въз основа на обучението те изграждат модела и изпълняват конкретна задача.
линукс архитектура
Тези ML алгоритми помагат за решаването на различни бизнес проблеми като регресия, класификация, прогнозиране, групиране и асоциации и др.
Въз основа на методите и начина на обучение, машинното обучение се разделя основно на четири типа, които са:
- Контролирано машинно обучение
- Машинно обучение без надзор
- Полуконтролирано машинно обучение
- Обучение с подсилване
В тази тема ще предоставим подробно описание на типовете машинно обучение заедно със съответните им алгоритми:
1. Контролирано машинно обучение
Както подсказва името му, Контролирано машинно обучение се основава на надзор. Това означава, че при техниката на контролирано обучение ние обучаваме машините, използвайки „маркирания“ набор от данни и въз основа на обучението машината прогнозира изхода. Тук етикетираните данни указват, че някои от входовете вече са картографирани към изхода. По-ценно, можем да кажем; първо обучаваме машината с входа и съответния изход и след това молим машината да предвиди изхода, използвайки тестовия набор от данни.
Нека разберем контролираното обучение с пример. Да предположим, че имаме набор от входни данни за изображения на котки и кучета. Така че, първо, ние ще осигурим обучение на машината за разбиране на изображенията, като например форма и размер на опашката на котка и куче, форма на очите, цвят, височина (кучетата са по-високи, котките са по-малки) и др. След завършване на обучението въвеждаме снимката на котка и молим машината да идентифицира обекта и да предвиди изхода. Сега машината е добре обучена, така че ще провери всички характеристики на обекта, като височина, форма, цвят, очи, уши, опашка и т.н., и ще открие, че това е котка. Така че ще го постави в категорията Cat. Това е процесът на начина, по който машината идентифицира обектите в контролираното обучение.
Основната цел на техниката за контролирано обучение е да съпостави входната променлива (x) с изходната променлива (y). Някои реални приложения на контролирано обучение са Оценка на риска, откриване на измами, филтриране на спам, и т.н.
Категории контролирано машинно обучение
Контролираното машинно обучение може да се класифицира в два типа проблеми, които са дадени по-долу:
а) Класификация
Алгоритмите за класификация се използват за решаване на проблеми с класификацията, при които изходната променлива е категорична, като например ' Да или Не, мъж или жена, червен или син и т.н . Алгоритмите за класификация предвиждат категориите, присъстващи в набора от данни. Някои реални примери за класификационни алгоритми са Откриване на спам, филтриране на имейли и др.
Някои популярни алгоритми за класификация са дадени по-долу:
б) Регресия
Регресионните алгоритми се използват за решаване на регресионни проблеми, при които има линейна зависимост между входните и изходните променливи. Те се използват за прогнозиране на непрекъснати променливи на изхода, като пазарни тенденции, прогноза за времето и др.
Някои популярни регресионни алгоритми са дадени по-долу:
Предимства и недостатъци на контролираното обучение
Предимства:
- Тъй като контролираното обучение работи с етикетирания набор от данни, така че можем да имаме точна представа за класовете обекти.
- Тези алгоритми са полезни при прогнозиране на резултата въз основа на предишен опит.
Недостатъци:
- Тези алгоритми не могат да решават сложни задачи.
- Може да предвиди грешен изход, ако данните от теста са различни от данните за обучение.
- Изисква много изчислително време за обучение на алгоритъма.
Приложения на контролирано обучение
Някои често срещани приложения на контролираното обучение са дадени по-долу:
При сегментирането на изображението се използват алгоритми за контролирано обучение. В този процес се извършва класифициране на изображения върху различни данни за изображения с предварително дефинирани етикети.
Контролираните алгоритми се използват и в областта на медицината за диагностични цели. Извършва се чрез използване на медицински изображения и минали етикетирани данни с етикети за болестни състояния. С такъв процес машината може да идентифицира заболяване за новите пациенти.
2. Машинно обучение без надзор
Учене без надзор g е различна от техниката на обучение под наблюдение; както подсказва името му, няма нужда от надзор. Това означава, че при неконтролирано машинно обучение машината се обучава с помощта на немаркирания набор от данни и машината предвижда изхода без никакъв надзор.
При обучение без надзор моделите се обучават с данни, които не са нито класифицирани, нито етикетирани, и моделът действа върху тези данни без никакъв надзор.
Основната цел на алгоритъма за неконтролирано обучение е да групира или категоризира несортирания набор от данни според приликите, моделите и разликите. Машините са инструктирани да намерят скритите модели от входния набор от данни.
Нека вземем пример, за да го разберем по-ценно; да предположим, че има кошница с изображения на плодове и ние я въвеждаме в модела за машинно обучение. Изображенията са напълно непознати за модела, а задачата на машината е да намира моделите и категориите на обектите.
И така, сега машината ще открие своите модели и разлики, като разлика в цвета, разлика във формата, и ще предвиди изхода, когато бъде тестван с тестовия набор от данни.
Категории неконтролирано машинно обучение
Неконтролираното обучение може допълнително да се класифицира в два вида, които са дадени по-долу:
1) Групиране
Техниката за групиране се използва, когато искаме да намерим присъщите групи от данните. Това е начин за групиране на обектите в клъстер, така че обектите с най-много прилики да останат в една група и да имат по-малко или никакви прилики с обектите от други групи. Пример за алгоритъм за клъстериране е групирането на клиентите според тяхното покупателно поведение.
Някои от популярните алгоритми за групиране са дадени по-долу:
2) Асоциация
Обучението на правила за асоцииране е техника за обучение без надзор, която намира интересни връзки между променливи в рамките на голям набор от данни. Основната цел на този алгоритъм за обучение е да открие зависимостта на един елемент от данни от друг елемент от данни и съответно да картографира тези променливи, така че да генерира максимална печалба. Този алгоритъм се прилага основно в Анализ на пазарната кошница, извличане на уеб използване, непрекъснато производство и т.н.
Някои популярни алгоритми за обучение на правила за асоцииране са Apriori алгоритъм, Eclat, FP-алгоритъм за растеж.
Предимства и недостатъци на алгоритъма за неконтролирано обучение
Предимства:
- Тези алгоритми могат да се използват за сложни задачи в сравнение с контролираните, тъй като тези алгоритми работят върху немаркирания набор от данни.
- Неконтролираните алгоритми са за предпочитане за различни задачи, тъй като получаването на немаркирания набор от данни е по-лесно в сравнение с етикетирания набор от данни.
Недостатъци:
- Резултатът от неконтролиран алгоритъм може да бъде по-малко точен, тъй като наборът от данни не е етикетиран и алгоритмите не са обучени с точния резултат преди това.
- Работата с неконтролирано обучение е по-трудна, тъй като работи с немаркиран набор от данни, който не се съпоставя с изхода.
Приложения на неконтролирано обучение
3. Полу-контролирано обучение
Полуконтролираното обучение е вид алгоритъм за машинно обучение, който се намира между контролираното и неконтролираното машинно обучение . Той представлява междинната основа между алгоритмите за контролирано (с етикетирани данни за обучение) и неконтролирано обучение (без етикетирани данни за обучение) и използва комбинацията от етикетирани и немаркирани набори от данни по време на периода на обучение.
А Въпреки че полуконтролираното обучение е средата между контролираното и неконтролираното обучение и оперира с данните, които се състоят от няколко етикета, то се състои предимно от немаркирани данни. Тъй като етикетите са скъпи, но за корпоративни цели те може да имат малко етикети. То е напълно различно от контролираното и неконтролираното обучение, тъй като се основава на наличието и отсъствието на етикети.
За да се преодолеят недостатъците на алгоритмите за контролирано и неконтролирано обучение, се въвежда концепцията за полу-контролирано обучение . Основната цел на полу-контролираното обучение е ефективното използване на всички налични данни, а не само етикетирани данни, както при контролираното обучение. Първоначално подобни данни се групират заедно с алгоритъм за неконтролирано обучение и освен това помага да се етикетират немаркираните данни в етикетирани данни. Това е така, защото етикетираните данни са сравнително по-скъпо придобиване от немаркираните данни.
Можем да си представим тези алгоритми с пример. Наблюдаваното обучение е, когато ученикът е под наблюдението на инструктор у дома и в колежа. Освен това, ако този ученик самоанализира същата концепция без никаква помощ от инструктора, става въпрос за обучение без надзор. При полу-контролирано обучение студентът трябва да преразгледа себе си, след като анализира същата концепция под ръководството на инструктор в колежа.
Предимства и недостатъци на полуконтролираното обучение
Предимства:
- Алгоритъмът е прост и лесен за разбиране.
- Той е високоефективен.
- Използва се за отстраняване на недостатъците на алгоритмите за контролирано и неконтролирано обучение.
Недостатъци:
- Резултатите от итерациите може да не са стабилни.
- Не можем да приложим тези алгоритми към данни на ниво мрежа.
- Точността е ниска.
4. Учене с подсилване
Обучението с подсилване работи върху процес, базиран на обратна връзка, при който AI агент (софтуерен компонент) автоматично изследва обкръжението си, като удря и следи, предприема действия, учи се от опита и подобрява ефективността си. Агентът получава награда за всяко добро действие и получава наказание за всяко лошо действие; следователно целта на агента за обучение с подсилване е да увеличи максимално наградите.
При обучението с подсилване няма етикетирани данни като контролирано обучение и агентите се учат само от своя опит.
Процесът на учене с подсилване е подобен на човешкия; например едно дете научава различни неща чрез преживявания в ежедневния си живот. Пример за обучение за подсилване е да играете игра, където Играта е средата, движенията на агент на всяка стъпка определят състояния и целта на агента е да получи висок резултат. Агентът получава обратна връзка по отношение на наказания и награди.
Поради начина си на работа, обучението с подсилване се използва в различни области, като напр Теория на игрите, изследване на операциите, теория на информацията, мултиагентни системи.
Проблемът с обучението за укрепване може да бъде формализиран с помощта на Марков процес на вземане на решения (MDP). В MDP агентът постоянно взаимодейства със средата и извършва действия; при всяко действие околната среда реагира и генерира ново състояние.
Категории на обучението за засилване
Обучението с подсилване се категоризира главно в два типа методи/алгоритми:
Реални случаи на използване на Reinforcement Learning
RL алгоритмите са много популярни в приложенията за игри. Използва се за постигане на свръхчовешко представяне. Някои популярни игри, които използват RL алгоритми, са AlphaGO и AlphaGO Zero .
Документът „Управление на ресурсите с дълбоко укрепване на обучението“ показа как да използвате RL в компютъра за автоматично обучение и планиране на ресурсите да чакат за различни задачи, за да се минимизира средното забавяне на работата.
RL се използва широко в приложенията на роботиката. Роботите се използват в индустриалната и производствената зона и тези роботи са направени по-мощни с подсилващо обучение. Има различни индустрии, които имат своята визия за изграждане на интелигентни роботи, използващи AI и технологии за машинно обучение.
Извличането на текст, едно от страхотните приложения на НЛП, сега се прилага с помощта на Reinforcement Learning от компанията Salesforce.
Предимства и недостатъци на обучението с подсилване
Предимства
- Помага при решаването на сложни проблеми от реалния свят, които са трудни за решаване с общи техники.
- Моделът на учене на RL е подобен на ученето на човешки същества; следователно могат да бъдат намерени най-точни резултати.
- Помага за постигане на дългосрочни резултати.
Недостатък
- RL алгоритмите не се предпочитат за прости проблеми.
- RL алгоритмите изискват огромни данни и изчисления.
- Твърде много учене за подсилване може да доведе до претоварване на състояния, което може да отслаби резултатите.
Проклятието на размерността ограничава обучението за подсилване за реални физически системи.