Преглед на хиперпараметровото машинно обучение

За всеки модел се нуждаем от някои параметри, които помагат за осигуряване на база за решаване на проблема / анализ и оценка на модела. Някои от тези параметри трябва да се научат от данните, а някои трябва да дефинираме изрично от нашия край. Параметрите, които могат да се научат от данните, без да бъдат дефинирани изрично, се наричат ​​параметри на модела. Параметърът, който е дефиниран изрично от потребителя, се нарича Hyperparameters. Хиперпараметрите са също параметри само на модела, но терминът хиперпараметри се използва при машинно обучение, така че те да бъдат лесно разграничени и да не се бъркат с параметрите на модела, които се научават от набора от данни.

Какво е хиперпараметрично машинно обучение?

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

  • Настройката на цигулката е много решаваща, когато човек е в етап на обучение, защото по това време човек създава връзки между различни сетива. Ушите, пръстите и очите всички учат цигулката едновременно. Сега в началото Привикването на звука на цигулката извън тон създава лош вкус на звука, което ще развали цялото им преживяване да се влюбят в процеса на обучение на цигулката.
  • Ето защо настройката на цигулка наистина може да помогне на човек в процеса на изучаване на цигулката. По същия начин хиперпараметърът е един вид настройка на модела за машинно обучение, така че да даде правилната посока.
  • Хиперпараметрите обикновено се дефинират преди прилагането на алгоритъм за машинно обучение към набор от данни.
  • Следващата задача е какъв трябва да бъде хиперпараметърът и каква трябва да бъде неговата стойност. Защото човек трябва да знае какви струни са необходими, за да бъде настроен и как да настроите цигулката, преди да я настроите. Същото се отнася и за хиперпараметрите, ние трябва да определим какви са хиперпараметрите и каква трябва да бъде стойността му, като цяло това зависи от всяка задача и всеки набор от данни.
  • За да разберем това, нека да разгледаме перспективата на оптимизацията на модела.
  • При прилагането на модела на машинно обучение, оптимизацията на модела играе жизненоважна роля. Има голям брой клонове на машинно обучение, които са посветени единствено на оптимизирането на модела на машинно обучение. Обикновено се възприема, че за да оптимизираме модела, трябва да модифицираме кода, така че грешката да бъде сведена до минимум.
  • Съществуват обаче скрити елементи, които влияят на оптимизацията за машинно обучение, която е извън модела и оказват голямо влияние върху поведението на модела. Тези скрити елементи се наричат ​​хиперпараметри, това са критични компоненти за оптимизиране на всеки модел на машинно обучение.
  • Хиперпараметрите са фини тунери / настройки, които контролират поведението на модела. Тези хиперпараметри са дефинирани извън модела, но имат пряка връзка с представянето на модела. Хиперпараметрите могат да се считат за ортогонални за моделиране.
  • Критериите за определяне на хиперпараметър са много гъвкави и абстрактни. Със сигурност има някои хиперпараметри като броя на скритите слоеве, степента на учене на модела, които са добре установени, а също така има някои настройки, които могат да бъдат третирани като хиперпараметър за конкретен модел, като контролиране на капацитета на модела.
  • Съществуват шансове на алгоритъма да надстрои модел, ако алгоритмите учат директно чрез настройки. Тъй като е ясно, хиперпараметрите не се научават / настройват чрез тренировъчен комплект, така че селекцията от тестове или валидации се използва за подбора на хиперпараметри. В широко отношение ние задаваме различни стойности на хиперпараметъра, тази, която работи най-добре с набор от тестове или валидиране, се счита за най-добрият ни хиперпараметър.

Категории на хиперпараметър

За различни видове набори от данни и според модела можем да имаме различни хиперпараметри, за да подобрим производителността на модела. Като цяло хиперпараметрите могат да бъдат категоризирани в две категории.

  • Хиперпараметър за оптимизация
  • Хиперпараметри за конкретни модели

Нека обсъдим всяко от тях.

1. Хиперпараметри за оптимизация

Както подсказва името, тези хиперпараметри се използват за оптимизиране на модела.

  • Степен на обучение

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

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

  • Размер на партидата

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

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

  • Брой епохи

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

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

2. Хиперпараметри за конкретни модели

Някои хиперпараметри са включени в структурата на самия модел. Някои от тях са както следва.

  • Брой скрити единици

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

  • Брой слоеве

Очевидно е, че невронната мрежа с 3 слоя ще даде по-добри резултати от тази на 2 слоя. Увеличаването на повече от 3 не помага толкова много в невронните мрежи. В случая на CNN, нарастващият брой слоеве прави модела по-добър.

заключение

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

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

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

  1. Въведение в машинното обучение
  2. Неподдържано машинно обучение
  3. Видове алгоритми за машинно обучение
  4. Приложения на машинно обучение
  5. Внедряване на невронни мрежи
  6. Топ 6 сравнения между CNN и RNN

Категория: