ABONAMENTE VIDEO REDACȚIA
RO
EN
NOU
Numărul 150
Numărul 149 Numărul 148 Numărul 147 Numărul 146 Numărul 145 Numărul 144 Numărul 143 Numărul 142 Numărul 141 Numărul 140 Numărul 139 Numărul 138 Numărul 137 Numărul 136 Numărul 135 Numărul 134 Numărul 133 Numărul 132 Numărul 131 Numărul 130 Numărul 129 Numărul 128 Numărul 127 Numărul 126 Numărul 125 Numărul 124 Numărul 123 Numărul 122 Numărul 121 Numărul 120 Numărul 119 Numărul 118 Numărul 117 Numărul 116 Numărul 115 Numărul 114 Numărul 113 Numărul 112 Numărul 111 Numărul 110 Numărul 109 Numărul 108 Numărul 107 Numărul 106 Numărul 105 Numărul 104 Numărul 103 Numărul 102 Numărul 101 Numărul 100 Numărul 99 Numărul 98 Numărul 97 Numărul 96 Numărul 95 Numărul 94 Numărul 93 Numărul 92 Numărul 91 Numărul 90 Numărul 89 Numărul 88 Numărul 87 Numărul 86 Numărul 85 Numărul 84 Numărul 83 Numărul 82 Numărul 81 Numărul 80 Numărul 79 Numărul 78 Numărul 77 Numărul 76 Numărul 75 Numărul 74 Numărul 73 Numărul 72 Numărul 71 Numărul 70 Numărul 69 Numărul 68 Numărul 67 Numărul 66 Numărul 65 Numărul 64 Numărul 63 Numărul 62 Numărul 61 Numărul 60 Numărul 59 Numărul 58 Numărul 57 Numărul 56 Numărul 55 Numărul 54 Numărul 53 Numărul 52 Numărul 51 Numărul 50 Numărul 49 Numărul 48 Numărul 47 Numărul 46 Numărul 45 Numărul 44 Numărul 43 Numărul 42 Numărul 41 Numărul 40 Numărul 39 Numărul 38 Numărul 37 Numărul 36 Numărul 35 Numărul 34 Numărul 33 Numărul 32 Numărul 31 Numărul 30 Numărul 29 Numărul 28 Numărul 27 Numărul 26 Numărul 25 Numărul 24 Numărul 23 Numărul 22 Numărul 21 Numărul 20 Numărul 19 Numărul 18 Numărul 17 Numărul 16 Numărul 15 Numărul 14 Numărul 13 Numărul 12 Numărul 11 Numărul 10 Numărul 9 Numărul 8 Numărul 7 Numărul 6 Numărul 5 Numărul 4 Numărul 3 Numărul 2 Numărul 1
×
▼ LISTĂ EDIȚII ▼
Numărul 120
Abonament PDF

AutoML - o nouă perspectivă a învățării automate

Cristina Racoviță
Full-Stack Junior Developer @ Yonder



PROGRAMARE

Ce este învățarea automată? Pot calculatoarele învăța? Cum anume se întâmplă asta? La aceste întrebări multă lume știe deja răspunsul, lucru care se datorează popularității de care se bucură învățarea automată.

Fiind folosită în aproape orice industrie, aduce valoare datelor stocate și nefolosite prin optimizarea produselor. În plus, stârnește interesul tuturor datorită aplicabilității variate și prin maniera neconvențională de rezolvare.

Totuși, dezvoltarea soluțiilor bazate pe AI necesită unul sau mai mulți experți. Sau se poate aplica această tehnologie și de către utilizatorii fără cunoștințe tehnice? Democratizarea învățării automate constă în răspândirea acesteia în rândul oamenilor fără cunoștințe de specialitate.

Automated Machine Learning

Să începem prin a defini AutoML. Este o ramură relativ nouă a învățării automate, apărută în 2012, care automatizează toți pașii necesari pentru dezvoltarea soluțiilor AI, procesând date în format tabelar. Primul tool open-source de acest fel se numește Auto-WEKA, fiind unul dintre inițiatorii industriei AutoML.

Aceasta face posibilă democratizarea ML și schimbă perspectiva în ceea ce privește aplicabilitatea. Acum, fiind posibil în etape precum: pregătirea datelor, antrenarea modelului sau punerea în producție pentru a fi mai accesibile novicilor. Singurul lucru necesar fiind furnizarea seturilor de date pentru învățare și testare.

Acest subdomeniu a evoluat din dorința evitării metodologiei tradiționale, care constă într-o serie de pași laborioși și repetitivi: curățarea datelor, ingineria caracteristicilor, selecția modelului, optimizarea hiper-parametrilor, testarea și punerea în producție a modelului. Un sistem AutoML poate avea ca intrare, date din orice domeniu și înlătură problema particularizării soluției în raport cu datele de intrare.

Sursă imagine: https://mljar.com/blog/next-generation-automl/

Cum face un tool de AutoML toate acestea? Pentru fiecare pas automatizat folosește o serie de algoritmi despre care vom discuta mai detaliat în paragrafele următoare, axându-ne pe sistemele de învățare supervizată.

Curățarea datelor

Reprezintă primul pas din pipeline-ul de pregătire a datelor. Acesta face ca informațiile să fie de calitate, realizând detectarea și corectarea inconsistențelor. Inițial, se elimină rândurile și coloanele redundante.

Urmează detecția și eliminarea valorilor anormale prin metode ca Interquartile Range sau 3 Standard Deviations. Nu în ultimul rând, valorile lipsă sunt completate folosind: media, mediana sau k-Nearest Neighbours.

Presupunem că avem un set de date cu prețurile unor case și câteva informații descriptive. Mai jos, putem observa cum se poate aplica procedeul descris anterior, eliminându-se rândul cu numărul 4 și coloana "Număr casă", acestea fiind redundante, apoi completându-se valorile lipsă.

Ingineria trăsăturilor

Această etapă este cel mai greu de automatizat, din cauza creativității pe care o implică. Un expert este nevoit să analizeze domeniul datelor pentru a crea, extrage și selecta cele mai importante caracteristici.

Pentru crearea acestora se folosește o combinare algebrică a perechilor de coloane, de exemplu, înmulțirea valorilor acestora, sau modificarea celor deja existente. În cazul prezentat anterior, putem forma o nouă coloană "Suprafață medie cameră", împărțind suprafața camerelor cu numărul acestora.

Următorul pas este cel de extragere a caracteristicilor. Aici, se va aplica o metodă precum PCA - Analiza componentelor principale, care reușește să reducă numărul de coloane prin comprimarea informației într-un număr mic de trăsături. Motivul pentru aplicarea acestei metode este pentru antrenarea mai rapidă a modelului și evitarea "Blestemului Dimensionalității".

Selectarea trăsăturilor asigură păstrarea celor mai importante coloane, care vor fi învățate de către model. Aceasta se poate realiza prin trei categorii de metode:

În exemplul nostru, coloana "Vârstă proprietar curent" nu va fi selectată, întrucât nu este corelată cu prețul imobilului.

Ultimele etape premergătoare antrenării sunt codificarea datelor într-un format numeric și scalarea trăsăturilor pentru ca intervalul valorilor să fie același. În acest mod ne asigurăm că nu este influențată importanța fiecărei caracteristici.

Antrenarea & Optimizarea modelelor

Odată ce avem datele într-un format pe care modelul să îl poată interpreta, se începe căutarea celei mai bune combinații de model și hiperparametri. Această problemă este formalizată sub numele de Combined Algorithm Selection and Hyperparameter optimization (CASH). Acest proces necesită cel mai mult timp de calcul din pipeline-ul de rezolvare a unei probleme de învățare automată.

De obicei, sistemele AutoML au predefinite o serie de algoritmi de învățare și spațiile hiperparametrilor asociați. Pentru găsirea combinației optime pot fi folosiți algoritmi ca : Grid Search, Random Search sau Bayesian Optimization.

AutoML vs Expert

Din punct de vedere al timpului necesar pentru implementarea soluției, un sistem automat câștigă detașat întrucât, comparativ cu un expert, va avea nevoie doar de maxim câteva ore. Totuși, pentru probleme mai complexe, la care este nevoie de o analiză detaliată a datelor, un expert are skilluri de problem-solving, creativitate și o înțelegere mai bună a domeniului datelor.

Folosind un tool se elimină cu mult riscul de a greși, fiind un proces riguros și standardizat. Dar, soluția oferită de un data scientist va fi una mai interpretabilă și mai ușor de înțeles.

Totuși, poate un sistem de AutoML să înlocuiască un expert?

Probabil nici una nu o poate substitui pe cealaltă, acestea mai degrabă completându-se reciproc prin natura caracteristicilor complementare. Unii experți chiar folosind un astfel de tool pentru automatizarea experimentelor. În figura de mai jos putem observa sistemele existente și anul în care fiecare a apărut.

Sursă imagine: https://www.analyticsvidhya.com/blog/2021/05/auto-ml-some-prominent-automl-libraries/

Ce urmează?

Democratizarea AutoML va crea noi oportunități de folosire a inteligenței artificiale, utilizarea ei urmând să devină din în ce în ce mai populară. Conform estimărilor, până în 2030, această piață va atinge 14.8 miliarde de dolari [1].

Să ne imaginăm cât de util ar fi ca, de pildă, un developer să își poată crea și pune în producție un model pe care să îl poată integra cu ușurință cu aplicația la care lucrează. Sau, datorită unei interfețe grafice atașate, un astfel de sistem să fie accesibil chiar și oamenilor care au doar cunoștințe elementare de operare a unui calculator.

Chiar cu luarea unui anumit risc din punct de vedere al performanței, aplicabilitatea acestei tehnologii este una extinsă și poate avea un impact major în industrie. Astfel, toolurile de AutoML se aliniază cu tendința globală prezisă de Gartner, și anume că 65% din aplicații o să fie dezvoltate folosind platforme de tip low-code [2].

Concluzie

Domeniul automatizării învățării automate aduce o nouă perspectivă asupra complexității dezvoltării soluțiilor bazate pe inteligență artificială. În plus, democratizează cu succes această tehnologie, deschizând noi orizonturi pentru aplicabilitatea ei.

Bibliografie

[1] https://www.researchandmarkets.com/reports/5010695/automated-machine-learning-market-research-report

[2] https://medium.com/intelligenes/5-reasons-why-low-code-platforms-will-rule-software-development-by-2024-15cfa2bc29d9

NUMĂRUL 149 - Development with AI

Sponsori

  • Accenture
  • BT Code Crafters
  • Accesa
  • Bosch
  • Betfair
  • MHP
  • BoatyardX
  • .msg systems
  • P3 group
  • Ing Hubs
  • Cognizant Softvision
  • Colors in projects