Eliminarea caracteristicilor recursive: ce este și de ce contează?
Publicat: 2023-03-27Datele sunt coloana vertebrală a procesului decizional modern, iar companiile caută mereu modalități de a extrage informații valoroase din ele. Învățarea automată este una dintre cele mai comune tehnici implementate în organizații pentru analiza datelor, care implică antrenarea algoritmilor pentru a face predicții bazate pe date istorice. Cu toate acestea, nu toate caracteristicile dintr-un set de date sunt create egale, iar unele pot avea un impact mai mare asupra performanței modelului decât altele.
Eliminarea caracteristicilor recursive este o tehnică populară de analiză a datelor utilizată pentru a identifica și elimina caracteristicile irelevante sau redundante dintr-un set de date, îmbunătățind acuratețea și eficiența modelului de învățare automată.
Obțineți certificare de învățare automată de la cele mai bune universități din lume. Câștigă programe de master, Executive PGP sau Advanced Certificate pentru a-ți accelera cariera.
În acest articol, vom explora ce este eliminarea recursivă a caracteristicilor , cum funcționează și de ce este importantă pentru companiile care doresc să extragă informații semnificative din datele lor.
Cuprins
Care sunt tehnicile diferite pentru selectarea caracteristicilor?
Selecția caracteristicilor este un pas crucial în învățarea automată care implică selectarea celor mai relevante atribute dintr-un set de date pentru a construi un model care prezice cu exactitate rezultatele. Cu toate acestea, selectarea caracteristicilor potrivite nu este întotdeauna simplă. Există multe tehnici diferite, fiecare cu punctele sale forte și slabe. Să aruncăm o privire la unele dintre ele!
Metode de filtrare
Metodele de filtrare selectează caracteristicile create pe proprietăți statistice, cum ar fi corelarea lor cu variabila țintă sau cu varianța. Aceste metode sunt eficiente din punct de vedere computațional și pot fi aplicate înainte de antrenamentul modelului. Exemple de metode de filtrare includ testul Chi-pătrat, selecția caracteristicilor bazate pe corelație și limitarea varianței.
Metode de ambalare
Metodele Wrapper selectează caracteristici prin evaluarea performanței unui model de învățare automată cu un subset de caracteristici. Aceste metode sunt costisitoare din punct de vedere computațional, dar pot duce la o performanță mai bună a modelului. Exemple de metode de wrapper includ Eliminarea caracteristicilor recursive, Selecția înainte și Eliminarea înapoi.
Metode încorporate
Pentru metodele încorporate, selecția caracteristicilor are loc în timpul antrenamentului. Aceste metode includ tehnici precum Lasso și Ridge Regression, care adaugă penalizări la coeficienții modelului pentru a micșora caracteristicile mai puțin semnificative la zero.
Metode hibride
Metodele hibride combină diferite tehnici de selecție a caracteristicilor pentru a obține rezultate mai bune. Aceste metode sunt adesea mai eficiente decât utilizarea unei singure abordări. Exemple de metode hibride includ ReliefF și Random Forest Feature Selection.
În esență, alegerea tehnicii de selecție a caracteristicilor depinde de problema specifică, setul de date și resursele de calcul disponibile.
Acum, să ne aprofundăm în una dintre cele mai importante metode de înveliș pentru eliminarea caracteristicilor, Eliminarea caracteristicilor recursive.
Ce este eliminarea caracteristicilor recursive?
Recursive Feature Elimination (RFE) este o metodă de wrapper care elimină recursiv caracteristicile și construiește un model peste cele rămase. Clasifică caracteristicile în funcție de importanță și le elimină pe cele mai puțin importante până când se atinge numărul dorit de caracteristici. RFE este un proces iterativ care funcționează după cum urmează:
- Antrenează modelul pe toate caracteristicile și clasifică-le în funcție de importanța lor.
- Eliminați cea mai puțin importantă caracteristică.
- Antrenați în mod repetat modelul cu privire la caracteristicile rămase și eliminați caracteristica cea mai puțin semnificativă până când este atins numărul dorit de caracteristici.
RFE ia în considerare interacțiunea dintre caracteristici și impactul acestora asupra performanței modelului.
Pentru a înțelege cum funcționează RFE, să luăm în considerare un exemplu.
Să presupunem că avem un set de date de prețuri ale locuințelor cu zece caracteristici diferite, inclusiv numărul de dormitoare, metru pătrat și vârsta casei. Dorim să construim un model de învățare automată pentru a prezice prețul unei case pe baza acestor caracteristici. Cu toate acestea, bănuim că unele dintre caracteristici ar putea să nu fie importante și chiar ar putea dăuna performanței modelului.
Putem folosi RFE pentru a identifica cele mai relevante caracteristici antrenând modelul cu toate caracteristicile și apoi eliminând recursiv pe cele mai puțin importante până ajungem la subsetul optim. RFE antrenează modelul în timpul fiecărei iterații și evaluează performanța acestuia folosind un set de validare încrucișată.
De exemplu, RFE poate determina că numărul de dormitoare, metru pătrat și locația sunt caracteristicile cele mai critice pentru estimarea prețurilor caselor. În schimb, alte caracteristici, cum ar fi vechimea casei, au un impact redus asupra acurateței modelului.
De ce a intrat RFE în imagine? Ce rezolvă?
Pe măsură ce învățarea automată a devenit mai răspândită, oamenii de știință în date au realizat că unele caracteristici ar putea fi irelevante sau redundante, în timp ce altele pot avea un impact semnificativ asupra acurateței modelului. Aceasta a dat naștere uneia dintre metodele esențiale pentru construirea de modele eficiente de învățare automată - Tehnica de selecție a caracteristicilor de eliminare a caracteristicilor recursive.
Eliminarea caracteristicilor recursive (RFE) a fost introdusă pentru a aborda unele dintre limitările metodelor existente, în timp ce a apărut ca o metodă de înveliș care elimină recursiv caracteristicile și evaluează impactul acestora asupra performanței modelului. Procesul continuă până când se atinge numărul optim de caracteristici.
RFE rezolvă mai multe probleme pe care le întâmpină tehnicile tradiționale de selecție a caracteristicilor.
- RFE este o abordare de selecție inversă care începe cu toate caracteristicile și apoi le elimină pe cele mai puțin importante în mod iterativ. Această abordare este superioară selecției directe, care începe cu cea mai puțin importantă caracteristică și adaugă mai multe până la atingerea numărului optim.
- RFE evită supraadaptarea prin validare încrucișată în timpul procesului de selecție a caracteristicilor. Supraajustarea apare atunci când un model este prea complex și se potrivește prea bine cu datele de antrenament, ceea ce duce la o performanță slabă asupra datelor noi.
- RFE poate fi aplicat oricărui tip de model, făcându-l o tehnică versatilă care poate fi utilizată în multe scenarii diferite.
Implementarea algoritmului RFE în Python
Python oferă mai multe biblioteci care pot fi utilizate pentru implementarea algoritmului RFE. Să aruncăm acum o privire la câteva exemple RFE Python.
RFE Cu scikit-learn
Scikit-learn este o bibliotecă populară de învățare automată în Python, care oferă o implementare simplă a algoritmului RFE. Următorul fragment de cod demonstrează cum să implementați RFE în sci-kit-learn:
din sklearn.feature_selection import RFE
din sklearn.linear_model import LogisticRegression
model = LogisticRegression()
rfe = RFE(model, n_funcții_de_selectat=5)
rfe.fit(X, y)
În fragmentul de cod de mai sus, importăm mai întâi clasa RFE din modulul feature_selection al sci-kit-learn. Apoi creăm o instanță a clasei LogisticRegression, care va acționa ca estimatorul nostru de bază. Apoi creăm o instanță a clasei RFE, trecând estimatorul de bază și numărul de caracteristici de selectat. Apoi potrivim obiectul RFE la datele și etichetele noastre.
RFE pentru clasificare
În problemele de clasificare, RFE elimină recursiv caracteristici și construiește un model pe caracteristicile rămase. Clasamentul caracteristicilor se bazează pe scorurile de importanță a caracteristicilor calculate de estimator. Următorul fragment de cod demonstrează utilizarea RFE pentru o problemă de clasificare:
din sklearn.datasets import make_classification
din sklearn.feature_selection import RFE
din sklearn.tree import DecisionTreeClassifier
X, y = make_classification(n_samples=1000, n_features=10, n_informative=5, n_redundant=0, random_state=42)
model = DecisionTreeClassifier()
rfe = RFE(model, n_funcții_de_selectat=5)
rfe.fit(X, y)
print(„Funcții selectate: “, rfe.support_)
print(„Clasare caracteristică: „, rfe.ranking_)
În fragmentul de cod de mai sus, generăm mai întâi un set de date sintetice folosind funcția make_classification de la sci-kit-learn. Apoi creăm o instanță a clasei DecisionTreeClassifier, care va acționa ca estimatorul nostru de bază. Apoi creăm o instanță a clasei RFE, trecând estimatorul de bază și numărul de caracteristici de selectat. Apoi, încadrăm obiectul RFE în datele și etichetele noastre, imprimând caracteristicile alese și caracteristicile de clasare.
Hiperparametri RFE
RFE are mai mulți hiperparametri care pot fi reglați pentru rezultate mai bune. Câțiva hiperparametri importanți sunt:
- n_features_to_select: Acest hiperparametru determină numărul de caracteristici de selectat.
- pas: Acest hiperparametru determină numărul de caracteristici pentru a elimina fiecare iterație.Valoarea implicită este 1, ceea ce înseamnă că o caracteristică este eliminată la fiecare iterație.
- estimator: Acest hiperparametru specifică estimatorul de bază de utilizat.În mod implicit, este utilizat un SVM liniar.
- scoring: acest hiperparametru specifică valoarea de utilizat pentru clasarea caracteristicilor.Valoarea implicită este None, ceea ce înseamnă că este utilizată metoda scorului estimatorului.
- cv : Acest hiperparametru determină strategia de validare încrucișată de utilizat.Valoarea implicită este None, ceea ce înseamnă că se utilizează o validare încrucișată de trei ori.
Cele mai bune cursuri de învățare automată și cursuri AI online
Master în învățare automată și IA de la LJMU | Program executiv postuniversitar în Machine Learning și AI de la IIITB | |
Program de certificat avansat în Machine Learning și NLP de la IIITB | Program de certificat avansat în Machine Learning și Deep Learning de la IIITB | Program executiv postuniversitar în știința datelor și învățarea automată de la Universitatea din Maryland |
Pentru a explora toate cursurile noastre, vizitați pagina noastră de mai jos. | ||
Cursuri de învățare automată |
Viitorul eliminării caracteristicilor recursive
Viitorul eliminării caracteristicilor recursive (RFE) pare promițător, deoarece continuă să fie o tehnică populară pentru selecția caracteristicilor în învățarea automată. Odată cu creșterea cantității de date generate și nevoia de modele mai eficiente și mai precise, selecția caracteristicilor devine un pas esențial în conducta de învățare automată.
Studii recente au arătat că RFE poate îmbunătăți semnificativ performanța modelelor de învățare automată prin reducerea dimensionalității datelor și eliminarea caracteristicilor irelevante sau redundante. De exemplu, într-un studiu realizat de NCBI , RFE a fost utilizat pentru selecția caracteristicilor în clasificarea pacienților cu depresie pe baza datelor imagistice prin rezonanță magnetică funcțională (fMRI). Rezultatele au arătat că RFE a selectat un subset de caracteristici foarte corelate cu diagnosticul clinic al depresiei.
Pe măsură ce domeniul învățării automate continuă să crească, este nevoie de tehnici de selecție a caracteristicilor mai sofisticate și mai eficiente. Un domeniu de cercetare care câștigă teren este utilizarea învățării profunde pentru selecția caracteristicilor. Cu toate acestea, modelele de învățare profundă sunt adesea costisitoare din punct de vedere computațional și necesită instruire de date mari.
În schimb, RFE este o tehnică simplă și eficientă care poate fi aplicată la diferite modele și seturi de date. Prin urmare, este probabil ca RFE să continue să fie utilizat ca o tehnică populară de selecție a caracteristicilor.
Abilități de învățare automată la cerere
Cursuri de inteligență artificială | Cursuri Tableau |
Cursuri NLP | Cursuri de învățare profundă |
Concluzie
În concluzie, Recursive Feature Elimination (RFE) este o tehnică eficientă pentru selecția caracteristicilor în învățarea automată, care supraveghează un viitor strălucit în urma implementării sale în evoluție. RFE, fiind o tehnică eficientă de selecție a caracteristicilor, alimentează utilizarea sa în diverse domenii, cum ar fi diagnosticul medical, bioinformatica și analiza imaginilor, adăugând expansiunii sale indomabile.
Dacă doriți să aflați mai multe despre învățarea automată și IA, luați în considerare înscrierea în programul upGrad de învățare automată și AI PG, în colaborare cu IIIT Bangalore. Acest program cuprinzător acoperă cele mai recente instrumente și tehnici în învățarea automată și AI, inclusiv tehnici de selecție a caracteristicilor precum RFE.
Acest program vă va oferi abilitățile și cunoștințele necesare pentru a construi și a implementa modele de învățare automată pentru aplicații din lumea reală.
Aplicați acum și beneficiați de diverse beneficii ale învățării imersive cu upGrad!
De asemenea, puteți consultacursurile noastre gratuiteoferite de upGrad în management, știința datelor, învățare automată, marketing digital și tehnologie.Toate aceste cursuri au resurse de învățare de top, prelegeri live săptămânale, sarcini din industrie și un certificat de absolvire a cursului - totul gratuit!
Bloguri populare AI și ML și cursuri gratuite
IoT: istorie, prezent și viitor | Tutorial de învățare automată: Învățați ML | Ce este algoritmul? Simplu și Ușor |
Salariu inginer robotic în India: toate rolurile | O zi din viața unui inginer de învățare automată: ce fac ei? | Ce este IoT (Internet of Things) |
Permutare vs combinație: diferența dintre permutare și combinație | Top 7 tendințe în inteligența artificială și învățarea automată | Învățare automată cu R: tot ce trebuie să știți |
Cursuri gratuite AI și ML | ||
Introducere în NLP | Fundamentele învățării profunde a rețelelor neuronale | Regresia liniară: Ghid pas cu pas |
Inteligența artificială în lumea reală | Introducere în Tableau | Studiu de caz folosind Python, SQL și Tableau |
Care este diferența dintre RFE și PCA pentru selecția caracteristicilor?
Atât RFE, cât și analiza componentelor principale (PCA) sunt tehnici utilizate pentru selecția caracteristicilor. Diferența cheie dintre cele două este că PCA modifică atributele originale într-un set nou, în timp ce RFE elimină atributele originale.
Cum determin numărul optim de caracteristici de selectat folosind RFE?
O modalitate de a determina numărul optim de caracteristici de selectat folosind RFE este de a efectua validarea încrucișată și de a alege numărul de caracteristici care oferă cea mai bună performanță pe setul de validare. O altă modalitate este de a utiliza o diagramă scree, care trasează numărul de caracteristici în raport cu performanța modelului corespunzătoare.
Poate fi folosit RFE pentru sarcini de învățare nesupravegheate?
Nu, RFE este o tehnică de învățare supravegheată care necesită date etichetate pentru a selecta caracteristici. Alte tehnici precum gruparea sau reducerea dimensionalității pot fi utilizate pentru selectarea caracteristicilor în sarcinile de învățare nesupravegheate fără date etichetate.