logo

Модели на машинно обучение

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

Модели на машинно обучение

Нека разберем пример за ML модела, където създаваме приложение за разпознаване на емоциите на потребителя въз основа на изражението на лицето. И така, създаването на такова приложение е възможно чрез модели за машинно обучение, където ще обучим модел, като подаваме изображения на лица с различни емоции, отбелязани върху тях. Всеки път, когато това приложение се използва за определяне на настроението на потребителя, то чете всички подадени данни, след което определя настроението на всеки потребител.

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

Какво е модел на машинно обучение?

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

Налични са различни видове модели за машинно обучение въз основа на различни бизнес цели и набори от данни.

Класификация на моделите за машинно обучение:

Въз основа на различни бизнес цели и набори от данни има три модела на обучение за алгоритми. Всеки алгоритъм за машинно обучение се установява в един от трите модела:

  • Контролирано обучение
  • Учене без надзор
  • Обучение с подсилване
Модели на машинно обучение

Контролираното обучение се разделя допълнително на две категории:

  • Класификация
  • Регресия

Неконтролираното обучение също е разделено на следните категории:

  • Клъстеризиране
  • Правило за асоцииране
  • Намаляване на размерността

1. Модели за контролирано машинно обучение

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

Можем да приложим модел на обучение под наблюдение върху прости проблеми от реалния живот. Например, имаме набор от данни, състоящ се от възраст и височина; след това можем да изградим модел на контролирано обучение, за да предвидим височината на човека въз основа на възрастта му.

Моделите на контролирано обучение се класифицират допълнително в две категории:

Регресия

При проблеми с регресия изходът е непрекъсната променлива. Някои често използвани регресионни модели са както следва:

а) Линейна регресия

Линейната регресия е най-простият модел на машинно обучение, в който се опитваме да предвидим една изходна променлива, използвайки една или повече входни променливи. Представянето на линейната регресия е линейно уравнение, което комбинира набор от входни стойности (x) и прогнозиран изход (y) за набора от тези входни стойности. Той е представен под формата на линия:

Y = bx + c.

Модели на машинно обучение

Основната цел на модела на линейна регресия е да се намери най-подходящата линия, която най-добре отговаря на точките от данни.

Линейната регресия се разширява до множествена линейна регресия (намиране на равнина с най-добро прилягане) и полиномна регресия (намиране на най-подходящата крива).

б) Дърво на решенията

java дата сега

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

Дървото на решенията използва дървовидна структура от решения заедно с техните възможни последствия и резултати. При това всеки вътрешен възел се използва за представяне на тест на атрибут; всеки клон се използва за представяне на резултата от теста. Колкото повече възли има дървото на решенията, толкова по-точен ще бъде резултатът.

Предимството на дърветата на решенията е, че са интуитивни и лесни за изпълнение, но им липсва точност.

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

в) Случайна гора

Random Forest е методът на обучение в ансамбъл, който се състои от голям брой дървета на решения. Всяко дърво на решенията в произволна гора прогнозира резултат и прогнозата с мнозинството от гласовете се счита за резултат.

Случаен горски модел може да се използва както за проблеми с регресия, така и за класификация.

За задачата за класификация резултатът от произволната гора се взема от мнозинството гласове. Докато в задачата за регресия, резултатът се взема от средната или средната стойност на прогнозите, генерирани от всяко дърво.

г) Невронни мрежи

Невронните мрежи са част от машинното обучение и са известни също като изкуствени невронни мрежи. Невронните мрежи са съставени от изкуствени неврони и са проектирани по начин, който наподобява структурата и работата на човешкия мозък. Всеки изкуствен неврон се свързва с много други неврони в невронна мрежа и такива милиони свързани неврони създават сложна когнитивна структура.

Модели на машинно обучение

Невронните мрежи се състоят от многослойна структура, съдържаща един входен слой, един или повече скрити слоеве и един изходен слой. Тъй като всеки неврон е свързан с друг неврон, той прехвърля данни от един слой към другия неврон на следващите слоеве. Накрая данните достигат последния слой или изходния слой на невронната мрежа и генерират изход.

Невронните мрежи зависят от данните за обучение, за да научат и подобрят своята точност. Въпреки това една перфектно обучена и точна невронна мрежа може бързо да групира данни и да се превърне в мощен инструмент за машинно обучение и AI. Една от най-известните невронни мрежи е Алгоритъмът за търсене на Google.

Класификация

Класификационните модели са вторият тип техники за контролирано обучение, които се използват за генериране на заключения от наблюдаваните стойности в категорична форма. Например, класификационният модел може да идентифицира дали имейлът е спам или не; купувачът ще закупи продукта или не и т.н. Алгоритмите за класифициране се използват за прогнозиране на два класа и категоризиране на изхода в различни групи.

При класификацията се проектира модел на класификатор, който класифицира набора от данни в различни категории и на всяка категория се присвоява етикет.

Има два вида класификации в машинното обучение:

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

Някои популярни алгоритми за класификация са както следва:

а) Логистична регресия

Логистичната регресия се използва за решаване на проблемите с класификацията в машинното обучение. Те са подобни на линейната регресия, но се използват за прогнозиране на категоричните променливи. Той може да предвиди изхода с Да или Не, 0 или 1, Вярно или Невярно и т.н. Въпреки това, вместо да дава точните стойности, той предоставя вероятностните стойности между 0 и 1.

b) Поддържаща векторна машина

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

Модели на машинно обучение

в) Наивен Байес

Naive Bayes е друг популярен алгоритъм за класификация, използван в машинното обучение. Нарича се така, тъй като се основава на теоремата на Байс и следва наивното (независимо) предположение между характеристиките, което е дадено като:

Модели на машинно обучение

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

2. Модели за машинно обучение без надзор

Моделите за машинно обучение без надзор прилагат процеса на обучение, противоположен на контролираното обучение, което означава, че позволява на модела да се учи от немаркирания набор от данни за обучение. Въз основа на немаркирания набор от данни моделът прогнозира изхода. Използвайки обучение без надзор, моделът научава скрити модели от набора от данни сам без надзор.

Моделите на обучение без надзор се използват главно за изпълнение на три задачи, които са както следва:

    Клъстеризиране
    Групирането е техника за обучение без надзор, която включва групиране или групиране на точките от данни в различни клъстери въз основа на прилики и разлики. Обектите с най-много прилики остават в същата група и нямат или имат много малко прилики от други групи.
    Алгоритмите за клъстериране могат да бъдат широко използвани в различни задачи, като напр Сегментиране на изображения, анализ на статистически данни, сегментиране на пазара и т.н.
    Някои често използвани алгоритми за групиране са K-означава групиране, йерархично групиране, DBSCAN и т.н.
    Модели на машинно обучение Изучаване на правило за асоцииране
    Обучението на правила за асоцииране е техника за обучение без надзор, която намира интересни връзки между променливи в рамките на голям набор от данни. Основната цел на този алгоритъм за обучение е да открие зависимостта на един елемент от данни от друг елемент от данни и съответно да картографира тези променливи, така че да генерира максимална печалба. Този алгоритъм се прилага основно в Анализ на пазарната кошница, извличане на уеб използване, непрекъснато производство и т.н.
    Някои популярни алгоритми за обучение на правила за асоцииране са Apriori алгоритъм, Eclat, FP-алгоритъм за растеж. Намаляване на размерността
    Броят характеристики/променливи, присъстващи в набор от данни, е известен като размерност на набора от данни, а техниката, използвана за намаляване на размерността, е известна като техника за намаляване на размерността.
    Въпреки че повече данни осигуряват по-точни резултати, те също могат да повлияят на ефективността на модела/алгоритъма, като например проблеми с пренастройването. В такива случаи се използват техники за намаляване на размерността.
    ' Това е процес на преобразуване на набор от данни с по-високи измерения в набор от данни с по-малки измерения, като се гарантира, че предоставя подобна информация .'
    Различни методи за намаляване на размерността като като PCA (анализ на основните компоненти), разлагане на единична стойност и др.

Обучение с подсилване

При обучението с подсилване алгоритъмът научава действия за даден набор от състояния, които водят до целево състояние. Това е модел на обучение, базиран на обратна връзка, който приема сигнали за обратна връзка след всяко състояние или действие чрез взаимодействие с околната среда. Тази обратна връзка работи като награда (положителна за всяко добро действие и отрицателна за всяко лошо действие), а целта на агента е да увеличи максимално положителните награди, за да подобри представянето си.

Поведението на модела при учене с подсилване е подобно на човешкото учене, тъй като хората научават неща чрез опит като обратна връзка и взаимодействат с околната среда.

По-долу са някои популярни алгоритми, които попадат в обучението за укрепване:

    Q-обучение:Q-обучението е един от популярните безмоделни алгоритми за обучение с подсилване, който се основава на уравнението на Белман.

Той има за цел да научи политиката, която може да помогне на агента с ИИ да предприеме най-доброто действие за максимизиране на наградата при конкретни обстоятелства. Той включва Q стойности за всяка двойка състояние-действие, които показват наградата за следване на даден път на състояние, и се опитва да максимизира Q-стойността.

    Състояние-действие-награда-държавно действие (SARSA):SARSA е алгоритъм за политика, базиран на процеса на вземане на решения на Марков. Той използва действието, извършено от текущата политика, за да научи Q-стойността. Алгоритъмът SARSA стои за State Action Reward State Action, което символизира кортежа (s, a, r, s', a'). Deep Q мрежа:DQN или Deep Q Neural network е Q-обучение в рамките на невронната мрежа. Основно се използва в среда с голямо пространство на състоянието, където дефинирането на Q-таблица би било сложна задача. Така че в такъв случай, вместо да използва Q-таблица, невронната мрежа използва Q-стойности за всяко действие въз основа на състоянието.

Обучение на модели за машинно обучение

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

Как да изберем най-добрия модел?

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

Разлика между модела на машинно обучение и алгоритмите

Един от най-объркващите въпроси сред начинаещите е дали моделите за машинно обучение и алгоритмите са еднакви? Тъй като в различни случаи в машинното обучение и науката за данни тези два термина се използват взаимозаменяемо.

Отговорът на този въпрос е Не и моделът на машинно обучение не е същият като алгоритъм. По прост начин, ан ML алгоритъмът е като процедура или метод, който работи върху данни, за да открие модели от тях и генерирайте модела. В същото време, а моделът на машинно обучение е като компютърна програма, която генерира резултат или прави прогнози . По-конкретно, когато обучаваме алгоритъм с данни, той се превръща в модел.

 Machine Learning Model = Model Data + Prediction Algorithm