Construcție caracteristică

Ingineria caracteristicilor este procesul de utilizare a unui domeniu de date pentru a crea caracteristici necesare pentru învățarea automată . Ingineria caracteristicilor este baza aplicațiilor de învățare automată și este atât dificilă, cât și costisitoare. Nevoia de inginerie manuală a caracteristicilor poate fi evitată prin automatizarea învățării aplicate a caracteristicilor .

Ingineria caracteristicilor este un domeniu informal, dar este considerat esențial în învățarea automată.

Este greu să vii cu semne, este nevoie de mult timp și cunoștințe profunde. „Învățarea automată aplicată” este în principiu inginerie de caracteristici.

—  Andrew Eun [1]

Semne

Un semn este o calitate sau o proprietate inerentă tuturor obiectelor independente, a cărei analiză sau prognoza pentru care o facem. Orice calitate poate fi utilă dacă este utilă pentru model.

Semnificația unei caracteristici și modul în care aceasta diferă de calitate ar fi mai ușor de înțeles în contextul problemei. Un semn este o caracteristică care poate ajuta la rezolvarea unei probleme [2] .

Importanța caracteristicilor

Caracteristicile datelor dvs. sunt importante pentru modelele predictive pe care le utilizați și afectează rezultatul pe care îl veți obține. Calitatea și cantitatea caracteristicilor au o mare influență asupra calității modelului, indiferent dacă acesta va fi bun sau nu [3] .

Putem spune că cu cât semnele sunt mai bune, cu atât rezultatul va fi mai bun. Acest lucru nu este în întregime adevărat, deoarece rezultatul va depinde de model și date, nu doar de caracteristicile selectate. Dar alegerea trăsăturilor potrivite rămâne o chestiune foarte importantă. Caracteristicile mai bune pot oferi un model mai simplu și mai flexibil și, adesea, pot da rezultate mai bune [2] .

Algoritmii aplicați sunt foarte standard printre membrii comunității Kaggle . […] Ne cheltuim cea mai mare parte a efortului pe ingineria caracteristicilor. [...] De asemenea, suntem foarte atenți să renunțăm la caracteristici care ar putea risca să ne supraajustăm modelul.

—  Xavier Conort [4]

… unele proiecte de învățare automată reușesc, iar altele eșuează. Ce duce la asta? Cei mai importanți factori sunt caracteristicile utilizate.

—  Pedro Domingos [5]

Procesul de construire a caracteristicilor

Procesul de construire a caracteristicilor este [6]

  1. Brainstorming sau verificarea caracteristicilor ;
  2. Decizia ce semne să creeze;
  3. Crearea de semne;
  4. Verificarea care funcții funcționează cu modelul dvs.;
  5. Îmbunătățirea semnelor, dacă este necesar;
  6. Reveniți la metoda brainstorming/creați alte caracteristici până la finalizarea lucrării.

Semnificația caracteristicilor

O caracteristică poate fi strict semnificativă (are informații care nu există în alte caracteristici), semnificativă, slab semnificativă (conține informații care pot fi conținute în alte caracteristici) sau nesemnificativă [7] . Este important să creați o mulțime de caracteristici, chiar dacă unele dintre ele sunt nesemnificative, nu le puteți elimina pur și simplu. Apoi , selectarea caracteristicilor poate fi utilizată pentru a preveni supraadaptarea [8] .

Explozie de semne

O explozie de caracteristici poate fi cauzată de o combinație de caracteristici sau modele de caracteristici, ceea ce duce la o creștere rapidă a numărului total de caracteristici.

Există mai multe soluții pentru a opri explozia caracteristicilor, cum ar fi regularizarea , metoda nucleului , selecția caracteristicilor [9] .

Construcția automată a caracteristicilor

Automatizarea ingineriei caracteristicilor a devenit un nou subiect de cercetare în mediul academic. În 2015, cercetătorii MIT au introdus algoritmul „Deep Feature Synthesis” și și-au demonstrat performanța într-o competiție online de știință a datelor în care algoritmul a învins 615 din 906 echipe umane [10] [11] . Algoritmul Deep Feature Synthesis este disponibil ca o bibliotecă open source numită Featuretools . Această lucrare a fost continuată de alți cercetători, inclusiv OneBM de la IBM [12] și ExploreKit de la Berkeley [13] . Cercetătorii IBM spun că automatizarea ingineriei caracteristicilor „ajută oamenii de știință să reducă timpul de explorare a datelor, permițând experimente de încercare și eroare într-o perioadă scurtă de timp. Pe de altă parte, face posibilă, fără a fi expert, adică fără a fi familiarizat cu metodele de analiză a datelor, să selectezi rapid o valoare din date cu puțin efort, timp și bani.

Produse comerciale au apărut de la noi companii care se concentrează pe machine learning, cum ar fi H20.ai [14] și Feature Labs [15] .

Vezi și

Note

  1. Învățare automată și IA prin simulări ale creierului . Universitatea Stanford . Preluat la 3 august 2017. Arhivat din original la 22 decembrie 2018.
  2. ↑ 1 2 Descoperiți ingineria caracteristicilor, cum să proiectați caracteristicile și cum să vă deveniți buni - Stăpânirea învățării automate . Stăpânirea învățării automate . Consultat la 11 noiembrie 2015. Arhivat din original pe 4 martie 2016.
  3. Feature Engineering: Cum să transformi variabile și să creezi altele noi? . Analytics Vidhya (12 martie 2015). Consultat la 12 noiembrie 2015. Arhivat din original la 5 martie 2016.
  4. Întrebări și răspunsuri cu Xavier Conort . www.kaggle.com (2015). Consultat la 1 noiembrie 2015. Arhivat din original pe 27 noiembrie 2015.
  5. Domingos, Pedro Câteva lucruri utile de știut despre învățarea automată . Consultat la 12 noiembrie 2015. Arhivat din original la 23 ianuarie 2016.
  6. Big Data: Săptămâna 3 Video 3 - Feature Engineering . youtube.com . Consultat la 30 octombrie 2018. Arhivat din original la 16 martie 2016.
  7. Feature Engineering (22 aprilie 2010). Consultat la 12 noiembrie 2015. Arhivat din original pe 6 septembrie 2015.
  8. Ingineria și selecția caracteristicilor . Alexandre Bouchard-Côte. Consultat la 12 noiembrie 2015. Arhivat din original la 14 martie 2016.
  9. Ingineria caracteristicilor în Machine Learning (link descendent) . Zdenek Zabokrtsky. Consultat la 12 noiembrie 2015. Arhivat din original pe 4 martie 2016. 
  10. Automatizarea analizei de date mari . Consultat la 30 octombrie 2018. Arhivat din original la 14 septembrie 2019.
  11. Deep Feature Synthesis: Towards Automating Data Science Endeavors . Consultat la 30 octombrie 2018. Arhivat din original la 18 august 2019.
  12. Mașină cu un singur buton pentru automatizarea ingineriei caracteristicilor în bazele de date relaționale . Consultat la 30 octombrie 2018. Arhivat din original la 4 octombrie 2019.
  13. ExploreKit: Generare și selecție automată a caracteristicilor . Consultat la 30 octombrie 2018. Arhivat din original la 4 octombrie 2019.
  14. H2O.AI atrage o investiție de 40 de milioane de dolari în seria C condusă de Wells Fargo și Nvidia . Consultat la 30 octombrie 2018. Arhivat din original la 1 noiembrie 2018.
  15. Feature Labs se lansează din MIT pentru a accelera dezvoltarea algoritmilor de învățare automată . Consultat la 30 octombrie 2018. Arhivat din original la 1 decembrie 2018.

Literatură