logo

Хиперпараметри в машинното обучение

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

Хиперпараметри в машинното обучение

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

Какво представляват хиперпараметрите?

В Machine Learning/Deep Learning моделът се представя от неговите параметри. Обратно, процесът на обучение включва избор на най-добрите/оптимални хиперпараметри, които се използват от алгоритмите за обучение, за да осигурят най-добрия резултат. И така, какви са тези хиперпараметри? Отговорът е, ' Хиперпараметрите се дефинират като параметри, които са изрично дефинирани от потребителя за контрол на процеса на обучение.'

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

как да изтеглите видео от youtube vlc

Някои примери за хиперпараметри в машинното обучение

  • K в алгоритъма kNN или K-Nearest Neighbor
  • Скорост на обучение за обучение на невронна мрежа
  • Коефициент на разделяне на влак-тест
  • Размер на партидата
  • Брой епохи
  • Клонове в дървото на решенията
  • Брой клъстери в алгоритъма за клъстериране

Разлика между параметър и хиперпараметър?

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

Параметри на модела:

Параметрите на модела са конфигурационни променливи, които са вътрешни за модела и моделът ги научава сам. Например , W Тегла или коефициенти на независими променливи в линейния регресионен модел . или Тегла или коефициенти на независими променливи в SVM, тегло и отклонения на невронна мрежа, центроид на клъстер в клъстеризиране. Някои ключови точки за параметрите на модела са както следва:

  • Те се използват от модела за правене на прогнози.
  • Те се научават от модела от самите данни
  • Те обикновено не се настройват ръчно.
  • Това са част от модела и ключ към алгоритъм за машинно обучение.

Хиперпараметри на модела:

Хиперпараметрите са тези параметри, които са изрично дефинирани от потребителя, за да контролират процеса на обучение. Някои ключови точки за параметрите на модела са както следва:

  • Те обикновено се дефинират ръчно от инженера за машинно обучение.
  • Човек не може да знае точната най-добра стойност за хиперпараметри за дадения проблем. Най-добрата стойност може да се определи или чрез правилото на палеца, или чрез проба и грешка.
  • Някои примери за хиперпараметри са скоростта на обучение за обучение на невронна мрежа, K в алгоритъма KNN,

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

Най-общо хиперпараметрите могат да бъдат разделени на две категории, които са дадени по-долу:

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

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

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

Хиперпараметри в машинното обучение

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

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

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

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

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

Хиперпараметрите, които участват в структурата на модела, са известни като хиперпараметри за конкретни модели. Те са дадени по-долу:

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

Важно е да се посочи хиперпараметърът брой скрити единици за невронната мрежа. Трябва да е между размера на входния слой и размера на изходния слой. По-конкретно, броят на скритите единици трябва да бъде 2/3 от размера на входния слой плюс размера на изходния слой.

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

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

Заключение

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