Појачавање алгоритма - Врсте унапређења алгоритма њиховим радом

Преглед садржаја:

Anonim

Шта је појачани алгоритам?

Појачавање је метода у алгоритам који слаб ученик претвара у јаког ученика. То је техника која додаје нове моделе да исправи грешке постојећих модела.

Пример:

Да разумемо овај концепт уз помоћ следећег примера. Узмимо пример е-поште. Како ћете препознати вашу е-пошту да ли је нежељена или не? Можете га препознати по следећим условима:

  • Ако адреса е-поште садржи пуно извора, то значи да је нежељена пошта.
  • Ако адреса е-поште садржи само једну слику датотеке, онда је нежељена пошта.
  • Ако адреса е-поште садржи поруку „поседујете лутрију у износу од $ ккккк“, то значи да је непожељна.
  • Ако адреса е-поште садржи неки познати извор, онда то није нежељена пошта.
  • Ако садржи званични домен попут едуцба.цом, итд., То значи да није нежељена пошта.

Горе наведена правила нису толико моћна да препознају нежељену пошту или не, стога се ова правила називају слабим ученицима.

За претварање слабог ученика у јаког ученика комбинујте предвиђање слабог ученика користећи следеће методе.

  1. Користећи просек или пондерисани просек.
  2. Узмите у обзир да предвиђање има већи глас.

Узмите у обзир горе наведених 5 правила, постоје 3 гласа за нежељену пошту и 2 гласа за нежељену пошту. Будући да постоји велика количина нежељене поште, сматрамо је као нежељену пошту.

Како функционира потискивање алгоритама?

Појачавање алгоритама комбинује сваког слабог ученика који ствара једно снажно правило предвиђања. Да бисте препознали слабо правило, постоји основни алгоритам учења (машинско учење). Кад год се примењује алгоритам Басе, он ствара нова правила предвиђања користећи процес итерације. Након неке итерације, он комбинује сва слаба правила како би створио једно јединствено правило предвиђања.

Да бисте изабрали праву дистрибуцију, следите доле наведене кораке:

Корак 1: Алгоритам основног учења комбинује сваку дистрибуцију и на сваку поделу даје једнаку тежину.

Корак 2: Ако се било какво предвиђање догоди током првог алгоритма основног учења, тада обраћамо велику пажњу на ту грешку предвиђања.

Корак 3: Понављајте корак 2 док се не достигне ограничење алгоритма основног учења или висока тачност.

Корак 4: Коначно, комбинује све слабе ученике како би створио једну јаку наповедну прогнозу.

Врсте алгоритама за јачање

Алгоритми за јачање користе различите моторе, као што су печат одлуке, максимизирање маргине класификације, итд. Постоје три врсте појачаних алгоритама који су следећи:

  1. Алгоритам АдаБоост (Адаптиве Боостинг)
  2. Алгоритам за јачање градијента
  3. КСГ алгоритам за појачавање

Алгоритам АдаБоост (Адаптиве Боостинг)

Да бисте разумели АдаБоост, погледајте слику испод:

Поље 1: У пољу 1 за сваки скуп података додељени смо једнаки пондери и да класификујемо плус (+) и минус (-) знак примењујемо плочицу Д1 која ствара вертикалну линију на левој страни поља 1. Ова линија је погрешна предвидио три плус знака (+) као минус (-), према томе применимо већу тежину на ове плус знакове и применимо још један корак.

Поље 2: У пољу 2 величина три погрешно предвиђена знака плус (+) постаје већа у односу на другу. Друга одлука пањева Д2 на десној страни блока предвиђа да је овај тачно погрешно предвиђен знак плус (+) тачан. Али пошто је грешка погрешног класификовања настала због неједнаке тежине са знаком минус (-), доделимо већу тежину знаку минус (-) и применимо други пањ одлуке.

Поље 3: У пољу три због грешке погрешне класификације три знака минус (-) имају велику тежину. овде се примењује код Д3 да се предвиди та погрешна класификација и исправи. Овај пут за класификацију знака плус (+) и минус (-) креира се хоризонтална линија.

Оквир 4: У пољу 4 решетке Д1, Д2 и Д3 комбиновани су да би се створило ново снажно предвиђање.

Радови адаптивног потицања су слични горе поменутим. Комбинује групу слабих основа ученика на основу тежине да би створио снажног ученика. У првој итерацији он даје једнаку тежину сваком скупу података и започиње предвиђање тог скупа података. Ако се догоди погрешно предвиђање, то запажање даје велику тежину. Адаптивно појачавање поновите овај поступак у следећој фази понављања и наставите све док се не постигне тачност. Затим комбинује ово да би створио снажно предвиђање.

Алгоритам за јачање градијента

Алгоритам појачавања градијента је техника машинског учења за дефинисање функције губитака и за његово смањивање. Користи се за решавање проблема класификације помоћу модела предвиђања. То укључује следеће кораке:

1. Функција губитка

Употреба функције губитака зависи од врсте проблема. Предност повећавања градијентом је у томе што нема потребе за новим алгоритмом за повишење за сваку функцију губитака.

2. Слаби ученик

У јачању градијента, стабла одлука се користе као слаби ученици. Регресијско стабло користи се за давање истинских вредности које се могу комбиновати заједно за стварање тачних предвиђања. Као и у алгоритму АдаБоост, користе се и мала стабла са једним цепањем, тј. Пањев. Већа стабла се користе за велике нивое и, е. 4-8 нивоа.

3. Адитивни модел

У овом моделу стабла се додају једно по једно. постојећа стабла остају иста. За време додавања стабала користи се градијентни пад како би се функција губитака свела на минимум.

КСГ Боост

КСГ Боост скраћен је за Ектреме Градиент Боостинг. КСГ Боост је надограђена имплементација алгоритам за јачање Градиент Боостинг који је развијен за велику рачунску брзину, скалабилност и боље перформансе.

КСГ Боост има разне карактеристике које су следеће:

  1. Паралелна обрада: КСГ Боост пружа паралелну обраду за изградњу стабала која користе ЦПУ језгре за време обуке.
  2. Цросс-Валидатион: КСГ Боост омогућава корисницима да покрећу унакрсну валидацију поступка потицања при свакој итерацији, олакшавајући тачан оптимални број појачаних итерација у једном покрету.
  3. Оптимизација предмеморије: Омогућује Цацхе Оптимизатион алгоритама за већу брзину извршења.
  4. Дистрибуирано рачунање : За обуку великих модела КСГ Боост омогућава дистрибуирано рачунање.

Препоручени чланци

У овом чланку смо видели шта је Појачавање алгоритма, различите врсте јачања алгоритма у машинском учењу и њиховом раду. Можете и да прођете кроз друге наше предложене чланке да бисте сазнали више -

  1. Шта је машинско учење? | Дефиниција
  2. Програмски језици за учење алгоритама
  3. Шта је Блоцкцхаин технологија?
  4. Шта је алгоритам?