Fundamentele AI

Ce este un arbore de decizie?

mm
Adaugă Unite.AI la sursele tale preferate pe Google

Un arbore de decizie este un model de învățare supravegheată care face o predicție prin aplicarea unei secvențe de reguli dacă-atunci. Fiecare nod intern testează o caracteristică, fiecare ramură reprezintă rezultatul acelui test și fiecare frunză produce o predicție de clasă, probabilitate sau valoare numerică.

Arborii de decizie sunt utilizați pentru clasificare și regresie. Atracția lor este practică: pot reprezenta interacțiuni neliniare, necesită relativ puțină preprocesare și produc un traseu pe care o persoană îl poate inspecta. Slăbiciunea lor este instabilitatea—schimbări mici în datele de antrenament pot genera un arbore diferit.

Aspecte cheie

  • Un arbore împarte recursiv spațiul caracteristicilor; nu trebuie să izoleze fiecare observație de antrenament.
  • Împărțirile pentru clasificare utilizează în mod obișnuit impuritatea Gini sau entropia, în timp ce împărțirile pentru regresie reduc eroarea de predicție sau varianța.
  • Adâncimea, dimensiunea minimă a frunzelor și tăierea controlează complexitatea și supraîncadrarea.
  • Pădurile aleatoare și arborii de tip gradient-boosted îmbunătățesc puterea predictivă prin combinarea multor arbori.
Decision-tree example with a root question, two feature splits, and leaves containing class probabilities rather than individual observations
Un arbore de decizie convertește împărțirile de caracteristici învățate într-un traseu de predicție inspectabil.

Cum o predicție un arbore de decizie

Să presupunem că un model prezice dacă o mașină este predispusă să se defecteze. Nodul rădăcină ar putea întreba dacă vibrația depășește un prag învățat. O ramură ar putea apoi testa temperatura de funcționare. Observația ajunge la o frunză care conține probabilitatea estimată de defectare dintre exemplele de antrenament care au urmat același traseu.

Pentru regresie, frunza poate returna valoarea medie a țintei pentru observațiile din acea regiune. Pentru clasificare, poate returna clasa majoritară sau o distribuție a frecvențelor de clasă. O frunză poate conține multe observații; separarea completă a datelor de antrenament este de obicei nedorită deoarece poate produce un arbore supraîncadrat.

Cum alege un arbore o împărțire

Antrenarea ia în considerare caracteristicile și pragurile candidate, apoi selectează împărțirea care îmbunătățește cel mai mult un obiectiv definit. Îmbunătățirea trebuie să fie ponderată în funcție de câte observații ajung la fiecare nod copil.

Impuritatea Gini

Pentru clasificare, impuritatea Gini măsoară cât de amestecate sunt clasele într-un nod:

Gini = 1 - Σ p(k)²

Un nod care conține doar o singură clasă are impuritatea zero. O împărțire candidată este utilă când impuritatea ponderată a copiilor săi este mai mică decât impuritatea părintelui.

Entropie și câștig de informație

Entropia este o altă măsură a incertitudinii clasei:

Entropy = -Σ p(k) log₂ p(k)

Câștigul de informație este entropia părintelui minus entropia ponderată a copiilor. Gini și entropia produc adesea arbori similari, deși nu întotdeauna identici.

Pierdere de regresie

Arborii de regresie aleg în mod obișnuit împărțiri care reduc eroarea pătratică, eroarea absolută sau alt criteriu de regresie. Fiecare frunză apoi prezice o valoare bazată pe țintele de antrenament din acea regiune.

CART și alte algoritme de arbori

CART, sau Classification and Regression Trees, folosește împărțiri binare și stă la baza implementărilor comune precum arborii de decizie din scikit-learn. Alte algoritme includ ID3, C4.5 și C5.0. Implementările diferă în tipurile de împărțiri suportate, gestionarea valorilor lipsă, tăierea și obiectivele.

Variabilele categorice pot necesita codificare, împărțiri directe de submulțimi sau gestionare specifică implementării. Valorile lipsă pot fi imputate sau gestionate prin direcții implicite învățate sau împărțiri surrogate. Este important să înțelegem comportamentul bibliotecii specifice în loc să presupunem că fiecare implementare a arborilor funcționează în același mod.

Controlul complexității arborelui

Un arbore adânc poate memora zgomotul. Controalele comune includ:

  • Adâncime maximă: limitează lungimea unui traseu de predicție.
  • Număr minim de mostre pe împărțire sau frunză: previne regiuni foarte mici.
  • Scădere minimă a impurității: necesită ca o împărțire să ofere un beneficiu suficient.
  • Număr maxim de frunze: limitează complexitatea totală.
  • Tăierea cost-complexitate: elimină ramurile a căror îmbunătățire nu justifică complexitatea adăugată.

Tăierea este un proces de optimizare structurat, nu o ștergere aleatorie. Hiperparametrii ar trebui aleși cu date de validare sau prin cross-validare, în timp ce setul final de testare rămâne neatins.

Avantaje și limitări

Arborii de decizie pot modela interacțiuni și efecte de prag fără scalarea caracteristicilor. Acceptă intrări numerice și, în funcție de implementare, intrări categorice. Predicția este rapidă, iar un arbore mic este ușor de vizualizat.

Totuși, un singur arbore poate avea o variabilitate ridicată, poate crea schimbări bruște ale predicției lângă o împărțire și poate favoriza caracteristicile cu multe puncte de împărțire posibile. Arborii, de asemenea, extrapolează slab în regresie: în afara regiunilor observate, o frunză tot returnează o valoare învățată din mostrele de antrenament. Un arbore mare poate să nu fie mai ușor de înțeles decât un alt model complex.

De la un arbore la ansambluri

Învățarea în ansamblu combină multiple modele. O pădure aleatoare antrenează mulți arbori pe observații reîncadrate și submulțimi de caracteristici, apoi mediază predicțiile lor. Gradient boosting construiește arbori secvențial astfel încât fiecare arbore nou să corecteze eroarea rămasă. Aceste abordări depășesc de obicei un singur arbore, dar sacrifică o parte din interpretabilitate și adaugă costuri computaționale.

Importanța caracteristicilor dintr-un arbore sau ansamblu trebuie interpretată cu atenție. Importanța bazată pe impuritate poate fi părtinitoare, iar importanța unei caracteristici nu dovedește cauzalitate. Importanța prin permutare, instrumentele de dependență parțială și revizuirea domeniului oferă context suplimentar.

Cum învață un arbore împărțirile și predicțiile

Un arbore de decizie împarte recursiv spațiul caracteristicilor. La fiecare nod, un algoritm de antrenament evaluează pragurile candidate ale caracteristicilor sau partițiile de categorii și selectează o împărțire care reduce cel mai mult impuritatea, cum ar fi impuritatea Gini sau entropia pentru clasificare și eroarea pătratică pentru regresie. Frunzele stochează o distribuție de clasă sau o predicție numerică bazată pe observațiile de antrenament care le ating. Împărțirea lacomă este practică din punct de vedere computațional, dar nu garantează arborele global optim, iar diferite eșantioane sau reguli de egalitate pot produce structuri diferite.

Caracteristicile continue, ordinale, categorice și cele lipsă necesită gestionare explicită. Codificarea one-hot poate crea multe împărțiri candidate; metodele native categorice pot folosi statistici ordonate, dar necesită o implementare sigură împotriva scurgerilor. Arborii nu necesită scalare, totuși pot favoriza variabile cu cardinalitate mare și pot izola grupuri mici. Adâncimea, dimensiunea minimă a frunzelor, scăderea minimă a impurității și tăierea cost-complexitate controlează varianta. Alegeți-le cu date de validare și evaluați calibrul, deoarece o probabilitate a frunzei bazată pe puține cazuri poate fi extremă și instabilă.

Interpretare, moduri de eșec și utilizare în producție

Un traseu de la rădăcină la frunză este o regulă exactă pentru o predicție a modelului, dar nu este automat o explicație cauzală. Variabilele corelate pot substitui una pe cealaltă, modificări mici ale datelor pot altera împărțirile superioare, iar un traseu aparent simplu poate depinde de etichete părtinitoare. Importanța globală a caracteristicilor bazată pe impuritate poate fi înșelătoare; importanța prin permutare, dependența parțială și verificările contrafactuale adaugă context, dar au și presupuneri. Raportați incertitudinea și testați dacă regula presupusă rezistă pe date independente și subgrupuri relevante.

Arborii singulari sunt utili când transparența, latența scăzută și o structură neliniară modestă contează, dar ansamblurile oferă de obicei o performanță predictivă mai puternică. Validați comportamentul la margini, categoriile rare, lipsurile și intrările din afara intervalului de antrenament. Regulile exportate trebuie să reproducă exact preprocesarea de antrenament și comparația numerică. Monitorizați ocuparea frunzelor, distribuția ieșirilor, eroarea și categoriile emergente. Un arbore care direcționează multe cazuri noi într-o regiune mică sau anterior goală ar trebui să declanșeze o revizuire chiar dacă devierea agregată rămâne mică. Păstrați un plan de rezervă pentru scheme invalide și documentați fiecare decizie de tăiere sau prag.

Exemplu practicat: un arbore de triere a împrumuturilor interpretabil

Un creditor folosește un arbore doar pentru a prioritiza cererile incomplete pentru revizuire manuală, nu pentru a aproba sau respinge creditul. Ținta este un rezultat de completitudine documentat, iar caracteristicile disponibile la înregistrare exclud deciziile ulterioare. Validarea temporală grupată compară un arbore tăiat superficial cu reguli și regresie logistică. Dimensiunea minimă a frunzelor previne reguli bazate pe un număr mic de solicitanți, în timp ce calibrul și erorile specifice claselor sunt raportate pe canale și grupuri protejate relevante.

Revizorii văd traseul exact și valorile sursă, dar pot corecta datele eronate și pot suprascrie rutarea. Organizația testează proxy-uri corelate și schimbări contrafactuale, monitorizează ocuparea frunzelor și lipsurile, și tratează traficul brusc într-o frunză mică ca un incident de calitate a datelor. Modificările de politică creează o nouă versiune a modelului și validare, nu o editare de împărțire nocumentată. Deoarece utilizarea afectează accesul și povara, solicitanții primesc un canal uman, iar arborele nu este niciodată prezentat ca o explicație cauzală a bonității.

Dovezi de implementare și pregătire operațională

O decizie de producție necesită mai mult decât o demonstrație de succes. Definiți utilizatorii vizați, mediul de operare, intrările, ieșirile, dependențele, proprietarul și consecința fiecărui eșec important. Stabiliți o linie de bază reproductibilă și un set de evaluare versionat înainte de ajustare. Testați cazuri obișnuite, condiții de margine, intrări incorecte sau lipsă, schimbări de distribuție, întreruperi ale dependențelor, utilizare incorectă și grupurile sau mediile cel mai probabil subservite. Măsurați calitatea sarcinii împreună cu calibrul sau incertitudinea, latența, debitul, costul resurselor, accesibilitatea, confidențialitatea și securitatea. Înregistrați fiecare transformare și prag pentru ca un revizor independent să poată reproduce rezultatul și să distingă dovezile de un prototip atrăgător.

Înainte de lansare, atribuiți autoritatea pentru eliberare, excepții, modificări, revenire și retragere. Utilizați o desfășurare etapizată, păstrați o rezervă sigură și verificați monitorizarea cu eșecuri injectate deliberat. Telemetria operațională ar trebui să dezvăluie calitatea intrărilor, comportamentul ieșirilor, versiunea modelului sau a regulii, starea dependențelor, intervențiile umane și rezultatele confirmate fără a colecta date sensibile inutile. Definiți praguri de alertă și un responsabil de răspuns, apoi revizuiți dovezile din lumea reală după implementare în loc să presupuneți că performanța offline va persista. Reevaluează ori de câte ori sursele de date, utilizatorii, modelele, furnizorii, politicile, hardware‑ul sau obiectivele se schimbă. Un sistem întreținut necesită, de asemenea, proceduri documentate de recuperare, învățare din incidente, ștergere și păstrare, și un punct clar la care trebuie dezactivat sau înlocuit.

Referințe principale

Blogger și programator cu specializări în Machine Learning și Deep Learning subiecte. Daniel speră să ajute pe alții să folosească puterea inteligenței artificiale pentru binele social.