Въведение в алгоритмите за научни данни

Описание на високо ниво на основните алгоритми, използвани в Data Science. Както вече знаете, науката за данни е поле за проучване, в което решенията се вземат въз основа на прозренията, които получаваме от данните, вместо класическите детерминирани подходи, базирани на правила. Обикновено можем да разделим задача за машинно обучение на три части

  • Получаване на данните и картографиране на бизнес проблема,
  • Прилагане на техники за машинно обучение и спазване на показателя за ефективност
  • Тестване и внедряване на модела

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

Видове алгоритми за научни данни

Въз основа на методологиите за учене можем просто да разделим алгоритмите за машинно обучение или наука за данни на следните видове

  1. Поддържани алгоритми
  2. Неподдържани алгоритми

1. Поддържани алгоритми

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

  • K Най-близките съседи

K най-близките съседи (KNN) е един от най-простите, но мощни алгоритми за машинно обучение. Това е контролиран алгоритъм, при който класификацията се извършва въз основа на k най-близките точки от данни. Идеята зад KNN е, че подобни точки са групирани заедно, като измерваме свойствата на най-близките точки от данни, можем да класифицираме точка за тестови данни. Например ние решаваме стандартен проблем с класификацията, при който искаме да предвидим, че точка от данни принадлежи към клас A или клас B.Поставете k = 3, сега ще изпробваме 3 най-близки точки за данни от точката с данни от теста, ако две от тях принадлежат към клас A ние ще декларираме точката на тестовите данни като клас A, в противен случай клас B. Правилната стойност на K се намира чрез кръстосана проверка. Той има линейна сложност на времето, поради което не може да се използва за приложения с ниска латентност.

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

Линейната регресия е контролиран алгоритъм за научни данни.

изход:

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

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

Въпреки че името казва регресия, логистичната регресия е контролиран алгоритъм за класификация.

изход:

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

  • Подкрепа Векторна машина

В логистичната регресия основното ни мото беше да намерим разделителна линейна повърхност.

изход:

Можем да разгледаме машината за поддръжка като разширение на тази идея, където трябва да намерим хиперплан, който максимално увеличава маржа. Но какво е марж ?. За вектор W (повърхността на решението, която трябва да измислим), изчертаваме две успоредни линии от двете страни. Разстоянието между тези две линии се нарича марж. SVM приема, че данните са линейно разделими. Въпреки че можем да използваме SVM за нелинейни данни, използвайки трика на Kernel.

  • Дърво на решения

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

  • ансамбли

Ансамблите са популярна категория алгоритми за научни данни, при които множество модели се използват заедно за постигане на по-добра производителност. Ако сте запознати с Kaggle (платформа от Google за практикуване и състезаване в предизвикателствата на науката за данни), ще откриете, че повечето победители решения използват някакъв вид ансамбли.

Грубо можем да разделим ансамблите в следните категории

  • зебло
  • Увеличаване
  • Полагане
  • Cascading

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

2. Неподдържани алгоритми

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

  • K означава

K Means е рандомизиран неподдържан алгоритъм, използван за клъстериране. K Means следва следните стъпки

1.Инициализирайте K точки на случаен принцип (c1, c2..ck)

2. За всяка точка (Xi) в набора от данни

Изберете най-близкия Ci (i = 1, 2, 3..k)

Добавете Xi към Ci

3. Преизчислете центроида, използвайки правилни показатели (т.е. вътрекластерно разстояние)

4, Повторете стъпка (2) (3), докато се сближи

  • K означава ++

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

  • K Медоиди:

K medoids е също алгоритъм за клъстериране, базиран на K средства. Основната разлика между двата е центроидите на K средствата не съществуват непременно в набора от данни, което не е така за K медоиди. K медоидите предлагат по-добра интерпретируемост на клъстерите. K означава, минимизира общата грешка в квадрат, докато K медоидите минимизират различието между точките.

заключение

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

Препоръчителни статии

Това е ръководство за алгоритмите за научни данни. Тук сме обсъдили преглед на алгоритмите за наука на данни и два типа алгоритми за наука на данни. Можете също да прегледате нашите статии, за да научите повече-

  1. Платформа за научни данни
  2. Езици на науката за данни
  3. Алгоритми за класификация
  4. Алгоритми за извличане на данни
  5. Най-използваните техники на ансамбълното обучение
  6. Прости начини за създаване на дърво за решения
  7. Пълно ръководство за жизнения цикъл на научните данни

Категория: