- Terminologija (A do D)
- Nadzor zmogljivosti AI
- AIOps
- Albumentacije
- Učinkovitost sredstev
- Samodejni kodirnik
- Razmnoževanje
- Bayesov izrek
- Big Podatki
- Chatbot: vodnik za začetnike
- Računalniško razmišljanje
- Računalniška vizija
- Matrica zmede
- Konvolucijsko nevronsko omrežje
- Cybersecurity
- Podatkovna tkanina
- Podatkovno pripovedovanje zgodb
- Znanost podatki
- Skladiščenje podatkov
- Drevo odločitve
- Deepfakes
- Globoko učenje
- Učenje poglobljenega okrepitve
- DevOps
- DevSecOps
- Difuzijski modeli
- Digital Twin
- Zmanjšanje dimenzij
- Terminologija (E do K)
- Edge AI
- AI čustva
- Učenje ansambla
- Etično vdiranje
- ETL
- Razložljiv AI
- Zvezno učenje
- FinOps
- Generativna AI
- Generacijska svetovalna mreža
- Generativno proti diskriminaciji
- Gradient krepitev
- Gradient spust
- Nekajkratno učenje
- Razvrstitev slik
- IT operacije (ITOPs)
- Avtomatizacija incidentov
- Inženiring vpliva
- K-pomeni združevanje v gruče
- K-Najbližji sosedje
- Terminologija (L do Q)
- Terminologija (R do Ž)
- Okrepitveno učenje
- Odgovorni AI
- RLHF
- Robotska procesna avtomatizacija
- Strukturirano proti nestrukturiranemu
- Analiza občutka
- Nadzorovani proti nenadzorovanim
- Podporni vektorski stroji
- Sintetični podatki
- Sintetični mediji
- Razvrstitev besedil
- TinyML
- Prenosno učenje
- Transformatorske nevronske mreže
- Turingov test
- Iskanje podobnosti vektorjev
AI 101
Kaj je Gradient Boosting?
Kazalo vsebine
Običajna vrsta modela strojnega učenja, ki se je izkazala za izjemno uporabno na tekmovanjih v znanosti o podatkih, je model povečanja gradienta. Povečanje gradienta je v bistvu proces pretvorbe šibkih učnih modelov v močne učne modele. Toda kako natančno je to doseženo? Oglejmo si podrobneje algoritme za povečanje gradienta in boljše razumeti, kako model povečanja gradienta spreminja šibke učence v močne učence.
Definiranje stopnjevanja gradienta
Ta članek vam želi dati dobro predstavo o tem, kaj je gradientno povečanje, brez številnih razčlenitev matematike, ki je osnova algoritmov. Ko boste razumeli, kako na visoki ravni deluje povečanje gradienta, vas spodbujamo, da se poglobite in raziščete matematiko, ki to omogoča.
Začnimo z opredelitvijo, kaj pomeni »spodbuditi« učenca. Šibki učenci se spremenijo v močne učence s prilagajanjem lastnosti učnega modela. Natančno kateri algoritem učenja se pospešuje?
Modeli pospeševanja delujejo tako, da nadgradijo drug običajni model strojnega učenja, odločitveno drevo.
A odločitveno drevo model deluje tako, da nabor podatkov razdeli na vedno manjše dele, in ko podnaborov ni več mogoče več razdeliti, je rezultat drevo z vozlišči in listi. Vozlišča v odločitvenem drevesu so mesta, kjer se sprejemajo odločitve o podatkovnih točkah z uporabo različnih kriterijev filtriranja. Listi v odločitvenem drevesu so podatkovne točke, ki so bile razvrščene. Algoritmi odločitvenega drevesa lahko obravnavajo tako numerične kot kategorične podatke, razdelitve v drevesu pa temeljijo na specifičnih spremenljivkah/značilnostih.
Ena vrsta algoritma za povečanje je AdaBoost algoritem. Algoritmi AdaBoost se začnejo z usposabljanjem modela odločitvenega drevesa in dodeljevanjem enake teže vsakemu opazovanju. Ko je bilo prvo drevo ovrednoteno za natančnost, se prilagodijo uteži za različna opazovanja. Opazovanja, ki jih je bilo enostavno razvrstiti, imajo znižane uteži, opažanja, ki jih je bilo težko razvrstiti, pa so povečana. Drugo drevo se ustvari z uporabo teh prilagojenih uteži, s ciljem, da bodo napovedi drugega drevesa natančnejše od napovedi prvega drevesa.
Model je zdaj sestavljen iz napovedi za prvotno drevo in novo drevo (ali drevo 1 + drevo 2). Točnost klasifikacije je ponovno ocenjena na podlagi novega modela. Tretje drevo se ustvari na podlagi izračunane napake za model in uteži se še enkrat prilagodijo. Ta proces se nadaljuje z danim številom ponovitev, končni model pa je model ansambla, ki uporablja uteženo vsoto napovedi vseh predhodno zgrajenih dreves.
Zgoraj opisani postopek uporablja drevesa odločanja in osnovne napovedovalce/modele, kljub temu pa je pristop povečanja mogoče izvesti s široko paleto modelov, kot so številni standardni klasifikatorji in regresorski modeli. Ključni pojmi, ki jih je treba razumeti, so, da se kasnejši napovedovalci učijo iz napak prejšnjih in da se napovedovalci ustvarjajo zaporedno.
Glavna prednost algoritmov za pospeševanje je, da potrebujejo manj časa za iskanje trenutnih napovedi v primerjavi z drugimi modeli strojnega učenja. Pri uporabi algoritmov za pospeševanje pa je potrebna previdnost, saj so nagnjeni k prekomernemu opremljanju.
Gradient krepitev
Zdaj si bomo ogledali enega najpogostejših algoritmov za pospeševanje. Gradient Boosting Models (GBM) so znani po svoji visoki natančnosti in povečujejo splošne principe, ki se uporabljajo v AdaBoost.
Primarna razlika med modelom Gradient Boosting in AdaBoost je v tem, da GBM uporabljajo drugačno metodo za izračun, kateri učenci napačno identificirajo podatkovne točke. AdaBoost izračuna, kje je model slabši, tako da preuči podatkovne točke, ki so močno ponderirane. Medtem GBM uporabljajo gradiente za določanje natančnosti učencev, pri čemer za model uporabljajo funkcijo izgube. Funkcije izgube so način za merjenje natančnosti prileganja modela naboru podatkov, izračun napake in optimizacijo modela za zmanjšanje te napake. GBM omogočajo uporabniku, da optimizira določeno funkcijo izgube na podlagi želenega cilja.
Če upoštevamo najpogostejšo funkcijo izgube – Povprečna kvadratna napaka (MSE) – kot primer, gradientni spust se uporablja za posodabljanje napovedi na podlagi vnaprej določene stopnje učenja, s ciljem najti vrednosti, kjer je izguba minimalna.
Da bo bolj jasno:
Nove napovedi modela = izhodne spremenljivke – stare nepopolne napovedi.
V bolj statističnem smislu je namen GBM najti ustrezne vzorce v ostankih modela, prilagoditi model, da ustreza vzorcu in čim bolj približati ostanke ničli. Če bi izvedli regresijo napovedi modela, bi bili ostanki porazdeljeni okoli 0 (popolno prileganje), GBM pa najdejo vzorce znotraj ostankov in posodabljajo model glede na te vzorce.
Z drugimi besedami, napovedi se posodobijo tako, da je vsota vseh ostankov čim bližja 0, kar pomeni, da bodo predvidene vrednosti zelo blizu dejanskim vrednostim.
Upoštevajte, da lahko GBM uporablja številne druge funkcije izgube (kot je logaritemska izguba). MSE je bil izbran zgoraj zaradi enostavnosti.
Različice modelov za povečanje gradienta
Modeli Gradient Boosting so pohlepni algoritmi, ki so nagnjeni k pretiranemu opremljanju nabora podatkov. Pred tem se je mogoče zaščititi z več različnih metod ki lahko izboljša delovanje GBM.
GBM je mogoče regulirati s štirimi različnimi metodami: krčenjem, drevesnimi omejitvami, povečanjem stohastičnega gradienta in kaznovanim učenjem.
Krčenje
Kot je bilo že omenjeno, se v GBM napovedi seštevajo zaporedno. Pri »Krčenju« se prilagodijo dodatki vsakega drevesa k skupni vsoti. Uporabljene so uteži, ki upočasnijo hitrost učenja algoritma, zaradi česar je treba modelu dodati več dreves, kar običajno izboljša robustnost in zmogljivost modela. Kompromis je v tem, da se model usposobi dlje.
Drevesne omejitve
Omejitev drevesa z različnimi prilagoditvami, kot je dodajanje več globine drevesu ali povečanje števila vozlišč ali listov v drevesu, lahko oteži, da se model preveč prilagodi. Uvedba omejitve glede najmanjšega števila opazovanj na razdelek ima podoben učinek. Še enkrat, kompromis je, da bo model potreboval dlje časa za usposabljanje.
Naključno vzorčenje
Posamezne učence je mogoče ustvariti s stohastičnim procesom, ki temelji na naključno izbranih podvzorcih nabora podatkov o usposabljanju. To vpliva na zmanjšanje korelacije med drevesi, kar ščiti pred prekomernim opremljanjem. Nabor podatkov je mogoče podžigosati, preden ustvarite drevesa ali preden razmislite o razdelitvi drevesa.
Kaznovano učenje
Poleg omejevanja modela z omejevanjem strukture drevesa je mogoče uporabiti regresijsko drevo. Regresijska drevesa imajo številčne vrednosti, pripete vsakemu listu, ki delujejo kot uteži in jih je mogoče prilagoditi s skupnimi funkcijami za regulacijo, kot sta regulacija L1 in L2.
Bloger in programer s posebnostmi v strojno učenje in Globoko učenje teme. Daniel upa, da bo drugim pomagal uporabiti moč umetne inteligence za družbeno dobro.