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

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

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

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

  • Класификационни модели
  • Регресионни модели
  • Групирането
  • Намаляване на размерите
  • Дълбоко обучение и т.н.

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

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

  1. K-Най-близките съседи алгоритъм - прост, но изчислително изчерпателен.
  2. Naive Bayes - Базира се на теоремата на Bayes.
  3. Логистична регресия - линеен модел за двоична класификация.
  4. SVM - може да се използва за двоични / многокласови класификации.
  5. Дърво на решения - Класификатор, базиран на Ако е друг , по-здрав за остатъците.
  6. Ансамбли - Комбинация от няколко модела за машинно обучение, които се събират заедно, за да получите по-добри резултати.

2) Регресия

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

  1. Линейна регресия - Най-простият моделен модел за регресионна задача, работи добре само когато данните са линейно разделими и много по-малко или липсва мултиколинеарност.
  2. Ласо регресия - линейна регресия с L2 регуларизация.
  3. Регрес на хребета - линейна регресия с L1 регуларизация.
  4. SVM регресия
  5. Регресия на дърво с решения и т.н.

3) Клъстеризиране

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

  1. K означава - Просто, но страда от голяма дисперсия.
  2. K означава ++ - Модифицирана версия на K означава.
  3. К медоиди.
  4. Агломеративно клъстериране - йерархичен модел на клъстериране.
  5. DBSCAN - Алгоритъм за клъстериране на базата на плътност и т.н.

4) Намаляване на размерите

Размерността е броят на променливите на прогнозата, използвани за прогнозиране на независимата променлива или target.often в реалните набори от данни, броят на променливите е твърде висок. Твърде много променливи също носят проклятието за преобличане на моделите. На практика сред тези голям брой променливи, не всички променливи допринасят еднакво към целта и в голям брой случаи всъщност можем да запазим отклонения с по-малък брой променливи. Нека изброим някои често използвани модели за намаляване на размерите.

  1. PCA - Създава по-малък брой нови променливи от голям брой предиктори. Новите променливи са независими една от друга, но по-малко интерпретируеми.
  2. TSNE - Осигурява вграждане в по-ниски размери на по-високомерни точки от данни.
  3. SVD - Сингулярно разлагане на стойност се използва за разлагане на матрицата на по-малки части с цел ефективно изчисляване.

5) Дълбоко обучение

Дълбокото обучение е подмножество от машинно обучение, което се занимава с невронни мрежи. Въз основа на архитектурата на невронните мрежи нека изброим важни модели на задълбочено обучение:

  1. Многослоен персептрон
  2. Невронни мрежи за завъртане
  3. Повтарящи се невронни мрежи
  4. Болцман машина
  5. Автоенкодери и т.н.

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

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

Как да изградим модел?

Нека да видим как да изградим прост логистичен регресионен модел, използвайки библиотеката на Scikit Learn на python. За простота, ние приемаме, че проблемът е стандартен модел за класификация и 'train.csv' е влакът, а 'test.csv' е съответно данните за влака и теста.

заключение

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

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

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

  1. Методи за машинно обучение
  2. Видове машинно обучение
  3. Алгоритми за машинно обучение
  4. Какво е машинно обучение?
  5. Хиперпараметрово машинно обучение
  6. KPI в Power BI
  7. Йерархичен алгоритъм на клъстериране
  8. Йерархично клъстериране | Агломеративно и разделно клъстеризиране

Категория: