Съдържание[Крия][Покажи]
Светът бързо се променя благодарение на изкуствения интелект и машинното обучение, което оказва влияние върху всеки аспект от ежедневието ни.
От гласови асистенти, които използват NLP и машинно обучение, за да резервират срещи, да търсят събития в нашия календар и да пускат музика до устройства, които са толкова точни, че могат да предвидят нуждите ни, преди дори да ги обмислим.
Компютрите могат да играят шах, да правят операции и да се развиват в по-умни, по-човекоподобни машини с помощта на алгоритми за машинно обучение.
Намираме се във време на непрекъснат технологичен напредък и виждайки как компютрите са се развили във времето, можем да правим прогнози за това какво ще се случи в бъдеще.
Демократизацията на изчислителните инструменти и методи е един от ключовите аспекти на тази революция, която се откроява. Учени за данни създадоха мощни компютри за обработка на данни през последните пет години чрез безпроблемно прилагане на авангардни методологии. Резултатите са удивителни.
В тази публикация ще разгледаме отблизо машинно обучение алгоритми и всички техни вариации.
И така, какво представляват алгоритмите за машинно обучение?
Подходът, използван от системата за изкуствен интелект, за да изпълни своята задача - като цяло, прогнозиране на изходни стойности от дадени входни данни - е известен като алгоритъм за машинно обучение.
Алгоритъмът за машинно обучение е процес, който използва данни и се използва за създаване на модели за машинно обучение, които са готови за производство. Ако машинното обучение е влакът, който изпълнява дадена работа, то алгоритмите за машинно обучение са локомотивите, които придвижват работата.
Най-добрият подход за машинно обучение за използване ще се определя от бизнес проблема, който се опитвате да разрешите, типа набор от данни, който използвате, и ресурсите, с които разполагате.
Алгоритмите за машинно обучение са тези, които превръщат набор от данни в модел. В зависимост от вида на проблема, на който се опитвате да отговорите, наличната изчислителна мощност и вида на данните, които имате, контролираните, неконтролирани или подсилващи алгоритми за обучение могат да работят добре.
И така, говорихме за контролирано, неконтролирано и учене с подсилване, но какви са те? Нека ги изследваме.
Учене с надзор, без надзор и засилване
Контролирано обучение
При контролирано обучение моделът AI се разработва въз основа на предоставените данни и етикета, който представлява прогнозирания резултат. Въз основа на входовете и изходите, моделът разработва уравнение за картографиране и използвайки това уравнение за картографиране, прогнозира етикета на входовете в бъдеще.
Да кажем, че трябва да създадем модел, който да прави разлика между куче и котка. Множество снимки на котки и кучета се подават в модела с етикети, указващи дали са котки или кучета, за да се обучи моделът.
Моделът се стреми да установи уравнение, свързващо етикетите на входните снимки с тези изображения. Дори ако моделът никога не е виждал изображението преди, след тренировка може да определи дали е на котка или куче.
Неуправляемо обучение
Ученето без надзор включва обучение на AI модел само на входове, без да ги етикетира. Моделът разделя входните данни на групи със свързани характеристики.
След това бъдещият етикет на входа се прогнозира в зависимост от това доколко неговите атрибути съответстват на една от класификациите. Помислете за ситуацията, при която трябва да разделим група червени и сини топки на две категории.
Да приемем, че другите характеристики на топките са идентични, с изключение на цвета. Въз основа на това как може да раздели топките на два класа, моделът търси характеристиките, които са различни между топките.
Две групи топки - една синя и една червена - се получават, когато топките се разделят на две групи въз основа на техния нюанс.
Укрепване на обучението
При ученето с подсилване моделът на AI се стреми да максимизира общата печалба, като действа възможно най-добре при определени обстоятелства. Обратната връзка с предишните му резултати помага на модела да се научи.
Помислете за сценария, когато робот е инструктиран да избере маршрут между точки А и Б. Роботът първо избира някой от курсовете, защото няма предишен опит.
Роботът получава информация за маршрута, който поема, и получава знания от него. Роботът може да използва вход, за да отстрани проблема следващия път, когато срещне подобно обстоятелство.
Например, ако роботът избере опция B и получи награда, като положителна обратна връзка, този път той разбира, че трябва да избере начин B, за да увеличи наградата си.
Сега най-накрая това, което всички чакате, са алгоритмите.
Основни алгоритми за машинно обучение
1. Линейна регресия
Най-простият подход за машинно обучение, който се отклонява от контролираното обучение, е линейната регресия. Със знанията от независими променливи, той се използва най-вече за решаване на проблеми с регресията и създаване на прогнози за непрекъснати зависими променливи.
Намирането на линията на най-добро прилягане, която може да помогне при прогнозиране на резултата за непрекъснати зависими променливи, е целта на линейната регресия. Цените на жилищата, възрастта и заплатите са някои примери за непрекъснати стойности.
Модел, известен като проста линейна регресия, използва права линия за изчисляване на връзката между една независима променлива и една зависима променлива. Има повече от две независими променливи в множествена линейна регресия.
Моделът на линейна регресия има четири основни предположения:
- Линейност: Има линейна връзка между X и средната стойност на Y.
- Хомоскедастичност: За всяка стойност на X, остатъчната дисперсия е една и съща.
- Независимост: Наблюденията са независими едно от друго по отношение на независимостта.
- Нормалност: Когато X е фиксиран, Y е нормално разпределен.
Линейната регресия се представя чудесно за данни, които могат да бъдат разделени по линии. Той може да контролира свръхоборудването чрез използване на техники за регулиране, кръстосано валидиране и намаляване на размерността. Въпреки това, има случаи, когато се изисква обширно инженерство на функциите, което понякога може да доведе до прекомерно монтиране и шум.
2. Логистична регресия
Логистичната регресия е друга техника за машинно обучение, която се отклонява от контролираното обучение. Основната му употреба е класификация, докато може да се използва и за проблеми с регресия.
Логистичната регресия се използва за прогнозиране на категоричната зависима променлива, като се използва информацията от независимите фактори. Целта е да се класифицират изходите, които могат да попадат само между 0 и 1.
Претеглената сума на входовете се обработва от сигмоидната функция, функция за активиране, която преобразува стойности между 0 и 1.
Основата на логистичната регресия е оценката на максималната вероятност, метод за изчисляване на параметрите на предполагаемото разпределение на вероятностите при конкретни наблюдавани данни.
3. Дърво на решенията
Друг метод за машинно обучение, който се отделя от контролираното обучение, е дървото на решенията. И за проблемите с класификацията и за регресията може да се използва подходът на дървото на решенията.
Този инструмент за вземане на решения, който прилича на дърво, използва визуални представяния, за да покаже бъдещите резултати, разходи и последици от действията. Чрез разделянето на данните на отделни части идеята е аналогична на човешкия ум.
Данните са разделени на отделни части, доколкото можем да ги гранулираме. Основната цел на дървото на решенията е да се изгради модел за обучение, който може да се използва за прогнозиране на класа на целевата променлива. Липсващите стойности могат да се обработват автоматично с помощта на дървото на решенията.
Няма изискване за еднократно кодиране, фиктивни променливи или други стъпки за предварителна обработка на данните. Той е твърд в смисъл, че е трудно да се добавят нови данни към него. Ако имате допълнителни етикетирани данни, трябва да преучите дървото за целия набор от данни.
В резултат на това дърветата на решенията са лош избор за всяко приложение, което изисква динамична промяна на модела.
Въз основа на вида на целевата променлива, дърветата за решения се класифицират в два типа:
- Категорична променлива: Дърво на решенията, в което целевата променлива е категорична.
- Непрекъсната променлива: Дърво на решенията, в което променливата на целта е непрекъсната.
4. Случайна гора
Методът на произволната гора е следващата техника за машинно обучение и е контролиран алгоритъм за машинно обучение, използван широко при проблеми с класификацията и регресията. Това също е метод, базиран на дърво, подобен на дървото на решенията.
Гора от дървета или много дървета за решения се използва от метода на произволната гора за вземане на преценки. Когато се обработват задачи за класификация, методът на произволната гора използва категорични променливи, докато обработва задачи за регресия с набори от данни, които съдържат непрекъснати променливи.
Ансамбъл или смесване на много модели е това, което прави методът на произволната гора, което означава, че прогнозите се правят с помощта на група модели, а не само един.
Възможността да се използва както за проблеми с класификацията, така и за регресионни проблеми, които съставляват по-голямата част от съвременните системи за машинно обучение, е ключово предимство на произволната гора.
Ансамбълът използва две различни стратегии:
- Пакетиране: По този начин се произвеждат повече данни за набора от данни за обучение. Това се прави, за да се намали вариацията в прогнозите.
- Повишаването е процесът на комбиниране на слаби учащи се със силни учащи се чрез изграждане на последователни модели, което води до крайния модел с максимална точност.
5. Наивен Байес
Проблемът с двоична (двукласова) и многокласова класификация може да бъде решен с помощта на техниката на наивния Байес. Когато методът е обяснен с помощта на двоични или категорийни входни стойности, той е най-прост за разбиране. Предположение, направено от наивния байесов класификатор, е, че съществуването на една характеристика в клас няма отношение към наличието на други характеристики.
Горната формула показва:
- P(H): Вероятността хипотеза H да е вярна. Предходната вероятност се нарича това.
- P(E): Вероятността на доказателствата
- P(E|H): Вероятността хипотезата да бъде подкрепена от доказателствата.
- P(H|E): Вероятността хипотезата да е вярна, като се имат предвид доказателствата.
Наивният байесов класификатор ще вземе предвид всяка от тези характеристики поотделно, когато определя вероятността за определен резултат, дори ако тези атрибути са свързани един с друг. Наивният байесов модел е лесен за конструиране и ефективен за големи масиви от данни.
Известно е, че се представя по-добре дори от най-сложните техники за категоризиране, като същевременно е основен. Това е колекция от алгоритми, които всички се основават на теоремата на Байес, а не на един единствен метод.
6. K-Най-близки съседи
Техниката на K-най-близките съседи (kNN) е подмножество от контролирано машинно обучение, което може да се използва за решаване на проблеми с класификацията и регресията. Алгоритъмът на KNN предполага, че наблизо могат да бъдат намерени сравними обекти.
Спомням си го като събиране на съмишленици. kNN се възползва от идеята за прилика между други точки от данни, използвайки близост, близост или разстояние. За да се маркират невидимите данни въз основа на най-близките маркирани наблюдаеми точки от данни, се използва математически метод за определяне на разделянето между точките на графиката.
Трябва да определите разстоянието между точките с данни, за да идентифицирате най-близките сравними точки. За това могат да се използват измервания на разстояние, като евклидовото разстояние, разстоянието на Хаминг, разстоянието на Манхатън и разстоянието на Минковски. K е известно като най-близкото съседно число и често е нечетно число.
KNN може да се приложи към проблеми с класификацията и регресията. Прогнозата, направена, когато KNN се използва за проблеми с регресията, се основава на средната стойност или медианата на K-най-подобните събития.
Резултатът от алгоритъм за класификация, базиран на KNN, може да бъде определен като клас с най-висока честота сред K най-подобните събития. Всеки екземпляр по същество гласува за своя клас и прогнозата принадлежи на класа, който получава най-много гласове.
7. K-средни
Това е техника за учене без надзор, която се занимава с проблемите с клъстерирането. Наборите от данни са разделени на определен брой клъстери — да го наречем K — по такъв начин, че точките от данни на всеки клъстер са хомогенни и различни от тези в другите клъстери.
Методология за клъстериране на K-средства:
- За всеки клъстер алгоритъмът на K-средни избира k центроиди или точки.
- С най-близките центроиди или K клъстери всяка точка от данни образува клъстер.
- Сега се произвеждат нови центроиди в зависимост от вече наличните членове на клъстера.
- Най-близкото разстояние за всяка точка от данни се изчислява с помощта на тези актуализирани центроиди. Докато центроидите не се променят, този процес се повтаря.
Това е по-бързо, по-надеждно и по-лесно за разбиране. Ако има проблеми, адаптивността на k-means прави корекциите лесни. Когато наборите от данни са различни или добре изолирани един от друг, резултатите са най-добри. Не може да управлява нередовни данни или отклонения.
8. Поддържащи векторни машини
Когато използвате техниката SVM за класифициране на данни, необработените данни се показват като точки в n-мерно пространство (където n е броят на характеристиките, които имате). След това данните могат лесно да бъдат класифицирани, тъй като стойността на всеки елемент след това се свързва с конкретна координата.
За да разделите данните и да ги поставите на графика, използвайте линии, известни като класификатори. Този подход изобразява всяка точка от данни като точка в n-мерно пространство, където n е броят на характеристиките, които имате, а стойността на всеки елемент е конкретна координатна стойност.
Сега ще намерим линия, която разделя данните на два набора от данни, които са категоризирани по различен начин. Разстоянията от най-близките точки във всяка от двете групи ще бъдат най-отдалечени една от друга по тази линия.
Тъй като двете най-близки точки са тези, които са най-отдалечени от линията в примера по-горе, линията, която разделя данните на двете групи, които са категоризирани по различен начин, е средната линия. Нашият класификатор е тази линия.
9. Намаляване на размерността
Използвайки подхода на намаляване на размерността, данните за обучение може да имат по-малко входни променливи. С прости думи, това се отнася до процеса на свиване на размера на вашия набор от функции. Нека си представим, че вашият набор от данни има 100 колони; намаляването на размерността ще намали тази сума до 20 колони.
Моделът автоматично става по-усъвършенстван и има по-голям риск от преоборудване с увеличаване на броя на функциите. Най-големият проблем при работата с данни в по-големи измерения е това, което е известно като „проклятието на размерността“, което възниква, когато вашите данни съдържат прекомерен брой характеристики.
Следните елементи могат да се използват за постигане на намаляване на размерността:
- За намиране и избор на подходящи характеристики се използва избор на характеристики.
- Използвайки вече съществуващи функции, инженерингът на функции създава ръчно нови функции.
Заключение
Възможно е както неконтролирано, така и контролирано машинно обучение. Изберете контролирано обучение, ако вашите данни са по-малко изобилни и добре маркирани за обучение.
Големите набори от данни често биха се представили и биха довели до по-добри резултати, използвайки обучение без надзор. Дълбоко обучение Методите са най-добри, ако разполагате с голямо събиране на данни, което е лесно достъпно.
Укрепване на обучението и задълбочено обучение с подсилване са някои теми, които сте изучавали. Характеристиките, употребите и ограниченията на невронните мрежи вече са ви ясни. Не на последно място, разгледахте опциите за различни езици за програмиране, IDE и платформи, когато се стигна до създаване на ваши собствени модели за машинно обучение.
Следващото нещо, което трябва да направите, е да започнете да изучавате и използвате всеки машинно обучение Приближаване. Дори темата да е широка, всяка тема може да бъде разбрана за няколко часа, ако се съсредоточите върху нейната дълбочина. Всеки предмет стои сам от останалите.
Трябва да мислите за един проблем в даден момент, да го изучавате, да го прилагате на практика и да използвате език по ваш избор, за да приложите алгоритъма(ите) в него.
Оставете коментар