Në sferën e gjerë të analizës së regresionit, pemët e vendimeve janë nderuar prej kohësh për interpretueshmërinë dhe aftësinë e tyre për të kapur marrëdhënie të ndërlikuara brenda të dhënave. Megjithatë, algoritmet tradicionale të regresionit të bazuara në pemë vendimesh shpesh hasin pengesa kur kanë të bëjnë me pikat e jashtme ose pikat e të dhënave që devijojnë ndjeshëm nga norma dhe nuk dihet se performojnë jashtëzakonisht mirë me ndonjë problem tipik regresioni.

Këtu, ne paraqesim një alternativë që, ndonëse nuk synon të konkurrojë me algoritme më të fundit si rritja e gradientit, sjell performancë më të mirë dhe lehtësi të të kuptuarit. Ky algoritëm inovativ i regresionit rrit përshtatjen e të dhënave ndërsa trajton në mënyrë efektive të dhënat e jashtme, duke e bërë atë një zgjedhje bindëse për aplikacionet e botës reale. Le të shqyrtojmë këtë qasje të re ndaj regresionit të bazuar në pemë vendimi që balancon performancën dhe përdorshmërinë.

Për të kuptuar algoritmin, ne do të përdorim një shembull të të dhënave që tregon aftësitë dhe efektivitetin e tij.

Shembulli 1: Një grafik tipik i efektivitetit të barit kundrejt shpërndarjes së dozës së barit duket diçka si kjo:

Shembulli 2: Marrëdhënia midis çmimit të një shtëpie dhe sipërfaqes së saj mund të duket kështu:

Këtu, për një kuptim më të mirë, do të shqyrtojmë një grup të dhënash abstrakte, të krijuar në linja të ngjashme me këta shembuj.

Diçka si kjo:

Ndërsa gërmojmë më thellë në këtë grup të dhënash, bëhet e qartë se një vijë e thjeshtë e drejtë është e pamjaftueshme për përshtatjen e të dhënave. Në vend të kësaj, seksionet e veçanta brenda grupit të të dhënave kërkojnë një qasje më efektive. Një pemë e regresionit ndoshta do ta bënte detyrën më mirë.

Një pemë klasike e regresionit e ndan grupin e të dhënave në seksione optimale dhe përdor mesatarja e vlerave të synuara në ato seksione si parashikime.

Ajo që ne propozojmë këtu është një kombinim i dy metodave të mësipërme: Ndarja e grupit të të dhënave në seksione optimale dhe më pas në vend të marrjes së mesatares, aplikimi i Regresionit Linear në çdo seksion.

Me sa duket, kjo qasje i përshtatet bukur të dhënave të trajnimit:

Hapat e detajuar të zbatimit janë:

  1. Ndani të dhënat në dy seksione, në secilën pikë të boshtit x.
  2. Kryeni regresionin linear për secilin seksion veç e veç.

3. Kryeni matjet e vlerësimit për këtë vlerë x. Në këtë rast, ne përdorim MSE. Ruani vlerën MSE që korrespondon me pikën e ndarjes.

4. Përsëriteni në të gjithë boshtin x, duke ruajtur vlerat MSE ndërsa vazhdojmë. (Për ekzekutim më të shpejtë, mos ndani në secilën vlerë x, ndani në intervale si 10 vlera ose 50 vlera, sipas rastit të përdorimit)

5. Pasi të kontrollohen të gjitha vlerat e boshtit x, ndani të dhënat në pikën që ofron performancën më të mirë. Këtu, ndarja e të dhënave për MSE-në më të ulët në x = 79 na jep seksionet e mëposhtme:

6. Kjo është ajo! Tani mund të përmirësojmë më tej performancën duke përsëritur hapat 1 deri në 5 për çdo nën-seksion që kemi krijuar.

Në këtë rast, drejtimi i pemës një shtresë më thellë jep:

Siç u premtua, interpretimi i rezultateve nga kjo qasje mbetet i kuptueshëm:

Si përfundim, kjo qasje ruan gjithëpërfshirjen e regresionit linear, por gjithashtu përdor aftësinë e pemës për të kapur marrëdhënie jolineare dhe për të trajtuar ndërveprimet komplekse brenda të dhënave. Për më tepër, kjo metodë nuk ndikohet nga vlerat e jashtme, ndryshe nga Regresioni Linear i kryer vetëm. Pjesa e jashtme do të ndahej në nënseksione të vogla dhe një linjë do të përshtatej posaçërisht për to, në vend që të devijonte vijën e përshtatjes së të gjithë grupit të të dhënave. Megjithatë, përdoruesi duhet të jetë i kujdesshëm për përshtatjen e tepërt. Hyrja më e thellë në shtresat dhe krijimi i shumë nën-seksioneve jo vetëm që do të marrë shumë kohë ekzekutimi, por gjithashtu do ta stërvit modelin.

A do ta provoni këtë qasje në modelin tuaj të ardhshëm të regresionit? Do të doja të dëgjoja mendimet tuaja për këtë!

Referencat dhe burimet:

  1. https://towardsdatascience.com/regression-trees-step-by-step-4de996e27f85
  2. https://www.analyticsvidhya.com/blog/2020/10/all-about-decision-tree-from-scratch-with-python-implementation/