ciot Ce este un arbore de decizie? - Unite.AI
Conectează-te cu noi
Masterclass AI:

AI 101

Ce este un arbore de decizie?

mm
Actualizat on

Ce este un arbore de decizie?

A arborele de decizie este un algoritm util de învățare automată utilizat atât pentru sarcini de regresie, cât și pentru sarcini de clasificare. Denumirea „arborele de decizie” provine de la faptul că algoritmul continuă să împartă setul de date în porțiuni din ce în ce mai mici, până când datele au fost împărțite în instanțe unice, care sunt apoi clasificate. Dacă ar fi să vizualizați rezultatele algoritmului, modul în care sunt împărțite categoriile ar semăna cu un copac și multe frunze.

Aceasta este o definiție rapidă a unui arbore de decizie, dar haideți să aruncăm o privire profundă în modul în care funcționează arborii de decizie. O mai bună înțelegere a modului în care funcționează arborii de decizie, precum și a cazurilor lor de utilizare, vă va ajuta să știți când să le utilizați în timpul proiectelor de învățare automată.

Formatul unui arbore de decizie

Un arbore de decizie este seamănă mult cu o diagramă. Pentru a utiliza o diagramă, începeți de la punctul de pornire sau rădăcina diagramei și apoi, pe baza modului în care răspundeți la criteriile de filtrare ale nodului de pornire, treceți la unul dintre următoarele noduri posibile. Acest proces se repetă până când se ajunge la un final.

Arborele de decizie funcționează în esență în același mod, fiecare nod intern din arbore fiind un fel de criterii de testare/filtrare. Nodurile din exterior, punctele finale ale arborelui, sunt etichetele pentru punctul de date în cauză și sunt denumite „frunze”. Ramurile care conduc de la nodurile interne la nodul următor sunt caracteristici sau conjuncții de caracteristici. Regulile folosite pentru a clasifica punctele de date sunt căile care parcurg de la rădăcină la frunze.

Algoritmi pentru arbori de decizie

Arborele de decizie operează pe o abordare algoritmică care împarte setul de date în puncte de date individuale pe baza diferitelor criterii. Aceste împărțiri se fac cu diferite variabile sau cu diferite caracteristici ale setului de date. De exemplu, dacă scopul este de a determina dacă un câine sau o pisică este sau nu descris de caracteristicile de intrare, variabilele pe care sunt împărțite datele ar putea fi lucruri precum „gheare” și „lătrături”.

Deci, ce algoritmi sunt folosiți pentru a împărți efectiv datele în ramuri și frunze? Există diverse metode care pot fi folosite pentru a despica un copac, dar cea mai comună metodă de despicare este probabil o tehnică numită „împărțire binară recursivă”. Când se efectuează această metodă de împărțire, procesul începe de la rădăcină, iar numărul de caracteristici din setul de date reprezintă numărul posibil de divizări posibile. O funcție este folosită pentru a determina cât de multă precizie va costa fiecare împărțire posibilă, iar împărțirea se face folosind criteriile care sacrifică cea mai mică acuratețe. Acest proces se realizează recursiv și se formează subgrupuri folosind aceeași strategie generală.

Pentru a determinați costul împărțirii, se folosește o funcție de cost. O funcție de cost diferită este utilizată pentru sarcinile de regresie și sarcinile de clasificare. Scopul ambelor funcții de cost este de a determina care ramuri au cele mai similare valori de răspuns sau ramurile cele mai omogene. Luați în considerare că doriți ca datele de testare ale unei anumite clase să urmeze anumite căi și acest lucru are sens intuitiv.

În ceea ce privește funcția de cost de regresie pentru împărțirea binară recursivă, algoritmul utilizat pentru a calcula costul este următorul:

sum(y – predicție)^2

Predicția pentru un anumit grup de puncte de date este media răspunsurilor datelor de antrenament pentru acel grup. Toate punctele de date sunt rulate prin funcția de cost pentru a determina costul pentru toate împărțirile posibile și este selectată diviziunea cu cel mai mic cost.

În ceea ce privește funcția de cost pentru clasificare, funcția este următoarea:

G = suma(pk * (1 – pk))

Acesta este scorul Gini și este o măsurare a eficacității unei împărțiri, bazată pe câte instanțe de clase diferite sunt în grupurile rezultate în urma împărțirii. Cu alte cuvinte, cuantifică cât de amestecate sunt grupurile după divizare. O împărțire optimă este atunci când toate grupurile rezultate din împărțire constau numai din intrări dintr-o clasă. Dacă a fost creată o împărțire optimă, valoarea „pk” va fi fie 0, fie 1 și G va fi egal cu zero. S-ar putea să puteți ghici că împărțirea în cel mai rău caz este una în care există o reprezentare de 50-50 a claselor în divizare, în cazul clasificării binare. În acest caz, valoarea „pk” ar fi 0.5 și G ar fi, de asemenea, 0.5.

Procesul de împărțire se încheie când toate punctele de date au fost transformate în frunze și clasificate. Cu toate acestea, poate doriți să opriți mai devreme creșterea copacului. Copacii mari și complexi sunt predispuși la supraadaptare, dar se pot folosi mai multe metode diferite pentru a combate acest lucru. O metodă de reducere a supraajustării este de a specifica un număr minim de puncte de date care vor fi utilizate pentru a crea o frunză. O altă metodă de control pentru supraadaptare este restricționarea copacului la o anumită adâncime maximă, care controlează cât de mult se poate întinde o cale de la rădăcină la o frunză.

Un alt proces implicat în crearea arborilor de decizie este tunderea. Tăierea poate ajuta la creșterea performanței unui arbore de decizie prin eliminarea ramurilor care conțin caracteristici care au putere de predicție mică / importanță mică pentru model. În acest fel, complexitatea arborelui este redusă, devine mai puțin probabil să se supraîntâlnească, iar utilitatea predictivă a modelului este crescută.

Când se efectuează tăierea, procesul poate începe fie din vârful copacului, fie din partea de jos a copacului. Cu toate acestea, cea mai ușoară metodă de tăiere este să începeți cu frunzele și să încercați să aruncați nodul care conține cea mai comună clasă din frunza respectivă. Dacă precizia modelului nu se deteriorează atunci când se face acest lucru, atunci modificarea este păstrată. Există și alte tehnici folosite pentru a efectua tăierea, dar metoda descrisă mai sus – tăierea cu erori reduse – este probabil cea mai comună metodă de tăiere a arborelui de decizie.

Considerații pentru utilizarea arborilor de decizie

Copacii de decizie sunt adesea utile atunci când clasificarea trebuie efectuată, dar timpul de calcul este o constrângere majoră. Arborele de decizie poate clarifica care caracteristici din seturile de date alese au cea mai mare putere de predicție. În plus, spre deosebire de mulți algoritmi de învățare automată în care regulile utilizate pentru clasificarea datelor pot fi greu de interpretat, arborii de decizie pot oferi reguli interpretabile. Arborii de decizie sunt, de asemenea, capabili să utilizeze atât variabile categorice, cât și variabile continue, ceea ce înseamnă că este nevoie de mai puțină preprocesare, în comparație cu algoritmii care pot gestiona doar unul dintre aceste tipuri de variabile.

Arborele de decizie tind să nu funcționeze foarte bine atunci când sunt utilizați pentru a determina valorile atributelor continue. O altă limitare a arborilor de decizie este că, atunci când se face clasificarea, dacă există puține exemple de antrenament, dar multe clase, arborele de decizie tinde să fie inexact.

Blogger și programator cu specialități în Invatare mecanica și Invatare profunda subiecte. Daniel speră să-i ajute pe alții să folosească puterea AI pentru binele social.