Algoritmul forestier aleatoriu: când să utilizați și cum să utilizați? [Cu argumente pro și contra]
Publicat: 2020-12-24Data Science cuprinde o gamă largă de algoritmi capabili să rezolve probleme legate de clasificare. Pădurea aleatoare este de obicei prezentă în vârful ierarhiei de clasificare. Alți algoritmi includ: mașină vectorială de suport, clasificator Naive Bias și arbori de decizie.
Înainte de a afla despre algoritmul de pădure aleatorie, să înțelegem mai întâi funcționarea de bază a arborilor de decizie și cum pot fi combinați pentru a forma o pădure aleatorie.
Cuprins
Arbori de decizie
Algoritmul arborelui decizional se încadrează în categoria algoritmilor de învățare supravegheată. Scopul unui arbore de decizie este de a prezice clasa sau valoarea variabilei țintă pe baza regulilor dezvoltate în timpul procesului de instruire. Pornind de la rădăcina arborelui comparăm valoarea atributului rădăcină cu punctul de date pe care dorim să-l clasificăm și, pe baza unei comparații, sărim la următorul nod.
Mergând mai departe, să discutăm câțiva dintre termenii importanți și semnificația lor în tratarea arborilor de decizie.
- Nodul rădăcină : Este nodul cel mai de sus al arborelui, de unde are loc diviziunea pentru a forma noduri mai omogene.
- Împărțirea punctelor de date : punctele de date sunt împărțite într-un mod care reduce abaterea standard după împărțire.
- Câștig de informații: Câștigul de informații este reducerea deviației standard pe care dorim să o obținem după împărțire. Mai multă reducere a abaterii standard înseamnă noduri mai omogene.
- Entropie : Entropia este neregularitatea prezentă în nod după ce a avut loc scindarea. Mai multă omogenitate în nod înseamnă mai puțină entropie.
Citiți: Întrebări pentru interviu în arborele decizional
Nevoie de algoritm forestier aleatoriu
Algoritmul Decision Tree este predispus la supraadaptare, adică precizie ridicată a datelor de antrenament și performanță slabă a datelor de testare. Două metode populare de prevenire a supraadaptării datelor sunt tăierea și pădurea aleatorie. Tăierea se referă la o reducere a dimensiunii copacului fără a afecta precizia generală a copacului.

Acum să discutăm despre algoritmul pădurii aleatoare.
Un avantaj major al pădurii aleatorii este capacitatea sa de a fi folosit atât în clasificare, cât și în probleme de regresie.
După cum sugerează și numele, o pădure se formează prin combinarea mai multor copaci. În mod similar, un algoritm de pădure aleatoare combină mai mulți algoritmi de învățare automată (arbori de decizie) pentru a obține o precizie mai bună. Aceasta se mai numește și învățare prin ansamblu. Aici, corelația scăzută între modele ajută la generarea unei acuratețe mai bune decât oricare dintre predicțiile individuale. Chiar dacă unii copaci generează predicții false, majoritatea acestora vor produce predicții adevărate, prin urmare acuratețea generală a modelului crește.
Algoritmii forestieri aleatori pot fi implementați atât în python, cât și în R, ca și alți algoritmi de învățare automată.
Când să folosești Random Forest și când să folosești celelalte modele?
În primul rând, trebuie să decidem dacă problema este liniară sau neliniară. Apoi, dacă problema este liniară, ar trebui să folosim regresia liniară simplă în cazul în care este prezentă doar o singură caracteristică, iar dacă avem mai multe caracteristici, ar trebui să mergem cu regresia liniară multiplă. Totuși, dacă problema nu este liniară, ar trebui regresie polinomială, SVR, arbore de decizie sau aleatoriu.
Pădure. Apoi, folosind tehnici foarte relevante care evaluează performanța modelului, cum ar fi k-Fold Cross-Validation, Grid Search sau XGBoost, putem concluziona modelul potrivit care ne rezolvă problema.
Cum știu câți copaci ar trebui să folosesc?
Pentru orice începător, aș sfătui determinarea numărului de arbori necesari prin experiment. De obicei, este nevoie de mai puțin timp decât utilizarea efectivă a tehnicilor pentru a afla cea mai bună valoare prin ajustarea și reglarea modelului. Experimentând cu mai multe valori ale hiperparametrilor, cum ar fi numărul de arbori. Cu toate acestea, pot fi utilizate tehnici precum Cover k-Fold Cross-Validation și Grid Search, care sunt metode puternice pentru a determina valoarea optimă a unui hiperparametru, cum ar fi aici numărul de arbori.
Valoarea p poate fi folosită pentru pădurea aleatorie?
Aici, valoarea p va fi nesemnificativă în cazul pădurii aleatoare, deoarece acestea sunt modele neliniare.

Ambalare
Arborele de decizie sunt foarte sensibili la datele pe care sunt instruiți, prin urmare sunt predispuși la supraadaptare. Cu toate acestea, Random Forest folosește această problemă și permite fiecărui copac să eșantioneze aleatoriu din setul de date pentru a obține diferite structuri de arbore. Acest proces este cunoscut sub numele de Bagare.
Bagarea în pungă nu înseamnă crearea unui subset de date de antrenament. Înseamnă pur și simplu că încă hrănim arborele cu date de antrenament, dar cu dimensiunea N. În loc de datele originale, luăm un eșantion de dimensiunea N (N puncte de date) cu înlocuire.
Importanța caracteristicilor
Algoritmii de pădure aleatorii ne permit să determinăm importanța unei anumite caracteristici și impactul acesteia asupra predicției. Acesta calculează scorul pentru fiecare caracteristică după antrenament și le scala într-o manieră în care însumarea lor se adaugă la unul. Acest lucru ne oferă o idee despre ce caracteristică să renunțăm, deoarece acestea nu afectează întregul proces de predicție. Cu caracteristici mai reduse, modelul va cădea mai puțin probabil pradă supraajustării.
Hiperparametri
Utilizarea hiperparametrilor fie mărește capacitatea de predicție a modelului, fie face modelul mai rapid.
Pentru început, parametrul n_estimator este numărul de arbori pe care algoritmul îi construiește înainte de a lua predicția medie. O valoare mare a n_estimator înseamnă performanță crescută cu predicție ridicată. Cu toate acestea, valoarea sa mare reduce și timpul de calcul al modelului.
Un alt hiperparametru este max_features, care este numărul total de caracteristici pe care modelul le ia în considerare înainte de a se împărți în nodurile ulterioare.

În plus, min_sample_leaf este numărul minim de frunze necesare pentru a împărți nodul intern.
În cele din urmă, random_state este folosit pentru a produce o ieșire fixă atunci când o valoare definită a random_state este aleasă împreună cu aceiași hiperparametri și datele de antrenament.
Avantajele și dezavantajele algoritmului forestier aleatoriu
- Random Forest este un algoritm foarte versatil capabil să rezolve atât sarcini de clasificare, cât și de regresie.
- De asemenea, hiperparametrii implicați sunt ușor de înțeles și, de obicei, valorile lor implicite au ca rezultat o predicție bună.
- Pădurea aleatorie rezolvă problema supraamenajării care apare în arborii de decizie.
- O limitare a pădurii aleatorii este că prea mulți copaci pot face procesarea algoritmului lentă, făcându-l astfel ineficient pentru predicția datelor în timp real.
Citește și: Tipuri de algoritm de clasificare
Concluzie
Algoritmul forestier aleatoriu este un algoritm foarte puternic, cu o precizie ridicată. Aplicația sa în viața reală în domeniile de investiții bancare, bursă și site-uri web de comerț electronic le face un algoritm foarte puternic de utilizat. Cu toate acestea, o performanță mai bună poate fi obținută prin utilizarea algoritmilor de rețele neuronale, dar acești algoritmi, uneori, tind să devină complexi și necesită mai mult timp pentru a se dezvolta.
Dacă sunteți interesat să aflați mai multe despre arborele de decizie, Machine Learning, consultați IIIT-B & upGrad's PG Diploma in Machine Learning & AI, care este conceput pentru profesioniști care lucrează și oferă peste 450 de ore de formare riguroasă, peste 30 de studii de caz și misiuni, statutul de absolvenți IIIT-B, peste 5 proiecte practice practice și asistență la locul de muncă cu firme de top.
Care sunt dezavantajele utilizării algoritmilor de pădure aleatorii?
Random Forest este un algoritm sofisticat de învățare automată. Necesită multe resurse de procesare, deoarece generează o mulțime de arbori pentru a găsi rezultatul. În plus, în comparație cu alți algoritmi, cum ar fi metoda arborelui de decizie, această tehnică necesită mult timp de antrenament. Când datele furnizate sunt liniare, regresia aleatoare a pădurii nu funcționează bine.
Cum funcționează un algoritm de pădure aleatoare?
O pădure aleatorie este alcătuită din mulți arbori de decizie diferiți, similar modului în care o pădure este formată din numeroși copaci. Rezultatele metodei forestiere aleatorii sunt de fapt determinate de predicțiile arborilor de decizie. Metoda pădurii aleatoare reduce, de asemenea, șansele de a depăși datele. Clasificarea aleatorie a pădurilor folosește o strategie de ansamblu pentru a obține rezultatul dorit. Diferiți arbori de decizie sunt antrenați folosind datele de antrenament. Acest set de date cuprinde observații și caracteristici care sunt alese la întâmplare după ce nodurile sunt împărțite.
Cum este un arbore de decizie diferit de o pădure aleatoare?
O pădure aleatorie nu este altceva decât o colecție de arbori de decizie, ceea ce o face complex de înțeles. O pădure aleatorie este mai greu de citit decât un arbore de decizie. În comparație cu arborii de decizie, pădurea aleatoare necesită un timp de antrenament mai mare. Atunci când aveți de-a face cu un set de date uriaș, totuși, pădurea aleatorie este favorizată. Supraadaptarea este mai frecventă în arborii de decizie. Supraadaptarea este mai puțin probabilă în pădurile aleatorii, deoarece folosesc numeroși copaci.