Ce este preprocesarea datelor? 4 pași cruciali pentru a o face corect
Publicat: 2021-08-06Datele din lumea reală sunt în majoritatea cazurilor incomplete, zgomotoase și inconsecvente.
Odată cu creșterea exponențială a generării de date și creșterea numărului de surse de date eterogene, probabilitatea de a colecta date anormale sau incorecte este destul de mare.
Dar numai datele de înaltă calitate pot duce la modele precise și, în cele din urmă, la predicții precise. Prin urmare, este crucial să procesăm datele pentru cea mai bună calitate posibilă. Acest pas de prelucrare a datelor se numește preprocesare a datelor și este unul dintre pașii esențiali în știința datelor, învățarea automată și inteligența artificială.
Ce este preprocesarea datelor?
Preprocesarea datelor este procesul de transformare a datelor brute într-un format util, ușor de înțeles. Datele reale sau brute au de obicei formatare inconsecventă, erori umane și pot fi, de asemenea, incomplete. Preprocesarea datelor rezolvă astfel de probleme și face seturile de date mai complete și mai eficiente pentru efectuarea analizei datelor.
Este un proces crucial care poate afecta succesul proiectelor de data mining și de învățare automată. Face descoperirea cunoștințelor din seturi de date mai rapidă și poate afecta în cele din urmă performanța modelelor de învățare automată.
45%
din timpul unui cercetător de date este alocat sarcinilor de pregătire a datelor.
Sursa: Datanami
Cu alte cuvinte, preprocesarea datelor transformă datele într-o formă pe care computerele pot lucra cu ușurință. Face analiza sau vizualizarea datelor mai ușoară și crește acuratețea și viteza algoritmilor de învățare automată care se antrenează pe date.
De ce este necesară preprocesarea datelor?
După cum știți, o bază de date este o colecție de puncte de date. Punctele de date sunt numite și observații, eșantioane de date, evenimente și înregistrări.
Fiecare eșantion este descris folosind diferite caracteristici, cunoscute și sub numele de caracteristici sau atribute . Preprocesarea datelor este esențială pentru a construi eficient modele cu aceste caracteristici.
În timpul colectării datelor pot apărea numeroase probleme. Este posibil să trebuiască să agregați date din diferite surse de date, ceea ce duce la nepotrivirea formatelor de date, cum ar fi întregul și float.
Sfat: Utilizați capacitățile de automatizare ale software de învățare automată și spune la revedere de la acele sarcini plictisitoare.
Dacă agregați date din două sau mai multe seturi de date independente, câmpul de gen poate avea două valori diferite pentru bărbați: bărbat și bărbat. De asemenea, dacă agregați date din zece seturi de date diferite, un câmp care este prezent în opt dintre ele poate lipsi în celelalte două.
Prin preprocesarea datelor, le facem mai ușor de interpretat și utilizat. Acest proces elimină inconsecvențele sau duplicatele în date, care altfel pot afecta negativ acuratețea unui model. Preprocesarea datelor asigură, de asemenea, că nu există valori incorecte sau lipsă din cauza erorilor umane sau erorilor. Pe scurt, folosirea tehnicilor de preprocesare a datelor face baza de date mai completă și mai precisă.
Caracteristicile datelor de calitate
Pentru algoritmii de învățare automată, nimic nu este mai important decât calitatea date de antrenament. Performanța sau acuratețea lor depinde de cât de relevante, reprezentative și cuprinzătoare sunt datele.
Înainte de a analiza modul în care datele sunt preprocesate, să ne uităm la câțiva factori care contribuie la calitatea datelor.
- Acuratețe: După cum sugerează și numele, acuratețea înseamnă că informațiile sunt corecte. Informațiile învechite, greșelile de scriere și redundanțele pot afecta acuratețea unui set de date.
- Consecvență: datele nu ar trebui să aibă contradicții. Datele inconsecvente vă pot oferi răspunsuri diferite la aceeași întrebare.
- Completitudine: setul de date nu trebuie să aibă câmpuri incomplete sau să nu aibă câmpuri goale. Această caracteristică permite cercetătorilor de date să efectueze analize precise, deoarece au acces la o imagine completă a situației pe care o descriu datele.
- Valabilitate: un set de date este considerat valid dacă eșantioanele de date apar în formatul corect, sunt într-un interval specificat și sunt de tipul potrivit. Seturile de date nevalide sunt greu de organizat și analizat.
- Promptitudine: Datele trebuie colectate de îndată ce are loc evenimentul pe care îl reprezintă. Pe măsură ce trece timpul, fiecare set de date devine mai puțin precis și util, deoarece nu reprezintă realitatea actuală. Prin urmare, actualitatea și relevanța datelor este o caracteristică critică a calității datelor.
Cele patru etape ale preprocesării datelor
Pentru modelele de învățare automată, datele sunt furaje.
Un set de antrenament incomplet poate duce la consecințe neintenționate, cum ar fi părtinire, conducând la un avantaj sau un dezavantaj nedrept pentru un anumit grup de oameni. Datele incomplete sau inconsecvente pot afecta negativ și rezultatul proiectelor de data mining. Pentru a rezolva astfel de probleme, se utilizează procesul de preprocesare a datelor.
Există patru etape ale procesării datelor: curățare, integrare, reducere și transformare.
1. Curățarea datelor
Curățarea sau curățarea datelor este procesul de curățare a seturilor de date prin luarea în considerare a valorilor lipsă, eliminarea valorii aberante, corectarea punctelor de date inconsecvente și netezirea datelor zgomotoase. În esență, motivul din spatele curățării datelor este de a oferi mostre complete și precise pentru modelele de învățare automată.
Tehnicile utilizate în curățarea datelor sunt specifice preferințelor cercetătorului de date și problemei pe care încearcă să o rezolve. Iată o privire rapidă asupra problemelor care sunt rezolvate în timpul curățării datelor și a tehnicilor implicate.
Valori lipsă
Problema lipsei valorilor datelor este destul de comună. Se poate întâmpla în timpul colectării datelor sau din cauza unor reguli specifice de validare a datelor. În astfel de cazuri, trebuie să colectați mostre de date suplimentare sau să căutați seturi de date suplimentare.
Problema valorilor lipsă poate apărea și atunci când concatenați două sau mai multe seturi de date pentru a forma un set de date mai mare. Dacă nu toate câmpurile sunt prezente în ambele seturi de date, este mai bine să ștergeți astfel de câmpuri înainte de îmbinare.
Iată câteva modalități de a contabiliza datele lipsă:
- Completați manual valorile lipsă. Aceasta poate fi o abordare plictisitoare și consumatoare de timp și nu este recomandată pentru seturi mari de date.
- Folosiți o valoare standard pentru a înlocui valoarea datelor lipsă. Puteți utiliza o constantă globală precum „necunoscut” sau „N/A” pentru a înlocui valoarea lipsă. Deși este o abordare simplă, nu este sigură.
- Completați valoarea lipsă cu cea mai probabilă valoare. Pentru a prezice valoarea probabilă, puteți utiliza algoritmi precum regresie logistică sau arbori de decizie.
- Utilizați o tendință centrală de a înlocui valoarea lipsă. Tendința centrală este tendința unei valori de a se grupa în jurul mediei, modului sau medianei sale.
Dacă lipsesc 50% din valori pentru oricare dintre rândurile sau coloanele din baza de date, este mai bine să ștergeți întregul rând sau coloană, cu excepția cazului în care este posibil să completați valorile utilizând oricare dintre metodele de mai sus.
Date zgomotoase
O cantitate mare de date fără sens se numește zgomot . Mai precis, este variația aleatorie a unei variabile măsurate sau a datelor care au valori incorecte ale atributelor. Zgomotul include duplicate sau semi-duplicate ale punctelor de date, segmente de date fără valoare pentru un anumit proces de cercetare sau câmpuri de informații nedorite.
De exemplu, dacă trebuie să preziceți dacă o persoană poate conduce, informațiile despre culoarea părului, înălțimea sau greutatea acestuia vor fi irelevante.
O valoare anormală poate fi tratată ca zgomot, deși unii îl consideră un punct de date valid. Să presupunem că antrenezi un algoritm pentru a detecta țestoase în imagini. Setul de date de imagine poate conține imagini cu țestoase etichetate greșit ca broaște țestoase. Acest lucru poate fi considerat zgomot.
Cu toate acestea, poate exista imaginea unei broaște țestoase care arată mai mult ca o țestoasă decât cu o țestoasă. Acel eșantion poate fi considerat un outlier și nu neapărat zgomot. Acest lucru se datorează faptului că dorim să învățăm algoritmul toate modalitățile posibile de a detecta țestoasele și, prin urmare, abaterea de la grup este esențială.
Pentru valori numerice, puteți utiliza un grafic de dispersie sau un diagramă cu case pentru a identifica valorile aberante.
Următoarele sunt câteva metode utilizate pentru a rezolva problema zgomotului:
- Regresia: analiza regresiei poate ajuta la determinarea variabilelor care au un impact. Acest lucru vă va permite să lucrați doar cu caracteristicile esențiale, în loc să analizați volume mari de date. Atât regresia liniară, cât și regresia liniară multiplă pot fi utilizate pentru netezirea datelor.
- Binning: metodele binning pot fi utilizate pentru o colecție de date sortate. Ei netezesc o valoare sortată uitându-se la valorile din jurul ei. Valorile sortate sunt apoi împărțite în „bină”, ceea ce înseamnă sortarea datelor în segmente mai mici de aceeași dimensiune. Există diferite tehnici de binning, inclusiv netezirea prin mijloace bin și netezirea prin mediane bin.
- Clustering: algoritmii de clustering, cum ar fi gruparea k-means, pot fi utilizați pentru a grupa datele și pentru a detecta valori aberante în proces.
2. Integrarea datelor
Deoarece datele sunt colectate din diverse surse, integrarea datelor este o parte crucială a pregătirii datelor. Integrarea poate duce la mai multe puncte de date inconsistente și redundante, conducând în cele din urmă la modele cu o acuratețe inferioară.

Iată câteva abordări pentru integrarea datelor:
- Consolidarea datelor: datele sunt reunite fizic și stocate într-un singur loc. Având toate datele într-un singur loc, crește eficiența și productivitatea. Acest pas implică de obicei utilizarea software de depozit de date.
- Virtualizarea datelor: în această abordare, o interfață oferă o vizualizare unificată și în timp real a datelor din mai multe surse. Cu alte cuvinte, datele pot fi vizualizate dintr-un singur punct de vedere.
- Propagarea datelor: implică copierea datelor dintr-o locație în alta cu ajutorul unor aplicații specifice. Acest proces poate fi sincron sau asincron și este de obicei determinat de evenimente.
3. Reducerea datelor
După cum sugerează și numele, reducerea datelor este utilizată pentru a reduce cantitatea de date și, prin urmare, pentru a reduce costurile asociate extragerii de date sau analizei datelor.
Oferă o reprezentare condensată a setului de date. Deși acest pas reduce volumul, menține integritatea datelor originale. Acest pas de preprocesare a datelor este crucial în special atunci când lucrați cu date mari, deoarece cantitatea de date implicată ar fi gigantică.
Următoarele sunt câteva tehnici utilizate pentru reducerea datelor.
Reducerea dimensionalității
Reducerea dimensionalității , cunoscută și sub denumirea de reducere a dimensiunilor, reduce numărul de caracteristici sau variabile de intrare dintr-un set de date.
Numărul de caracteristici sau variabile de intrare ale unui set de date se numește dimensionalitate. Cu cât este mai mare numărul de caracteristici, cu atât este mai dificil să vizualizați setul de date de antrenament și să creați un model predictiv.
În unele cazuri, majoritatea acestor atribute sunt corelate, deci redundante; prin urmare, algoritmii de reducere a dimensionalității pot fi utilizați pentru a reduce numărul de variabile aleatoare și pentru a obține un set de variabile principale.
Există două segmente de reducere a dimensionalității: selecția caracteristicilor și extragerea caracteristicilor.
În selecția caracteristicilor , încercăm să găsim un subset al setului original de caracteristici. Acest lucru ne permite să obținem un subset mai mic care poate fi utilizat pentru a vizualiza problema folosind modelarea datelor. Pe de altă parte, extragerea caracteristicilor reduce datele dintr-un spațiu de dimensiuni mari la un spațiu de dimensiuni inferioare, sau cu alte cuvinte, spațiu cu un număr mai mic de dimensiuni.
Următoarele sunt câteva modalități de a efectua reducerea dimensionalității:
- Analiza componentelor principale (PCA): O tehnică statistică utilizată pentru a extrage un nou set de variabile dintr-un set mare de variabile. Variabilele nou extrase sunt numite componente principale. Această metodă funcționează numai pentru caracteristici cu valori numerice.
- Filtru de corelație ridicată: O tehnică folosită pentru a găsi caracteristici foarte corelate și pentru a le elimina; în caz contrar, o pereche de variabile înalt corelate poate crește multicoliniaritatea în setul de date.
- Raportul valorilor lipsă: această metodă elimină atributele care au valori lipsă mai mari decât un prag specificat.
- Filtru de variație scăzută: implică eliminarea atributelor normalizate care au varianță mai mică decât o valoare de prag, deoarece modificările minore ale datelor se traduc în mai puține informații.
- Pădure aleatoare: această tehnică este folosită pentru a evalua importanța fiecărei caracteristici dintr-un set de date, permițându-ne să păstrăm doar cele mai importante caracteristici.
Alte tehnici de reducere a dimensionalității includ analiza factorială, analiza componentelor independente și analiza discriminantă liniară (LDA).
Selectarea subsetului de caracteristici
Selectarea subsetului de caracteristici este procesul de selectare a unui subset de caracteristici sau atribute care contribuie cel mai mult sau sunt cele mai importante.
Să presupunem că încercați să preziceți dacă un student va promova sau nu, uitându-vă la datele istorice ale studenților similari. Aveți un set de date cu patru caracteristici: număr de rolă, note totale, ore de studiu și activități extracurriculare.
În acest caz, numerele de rulare nu afectează performanța elevilor și pot fi eliminate. Noul subset va avea doar trei caracteristici și va fi mai eficient decât setul original.
Această abordare de reducere a datelor poate ajuta la crearea unor modele de învățare automată mai rapide și mai eficiente din punct de vedere al costurilor. Selectarea subsetului de atribute poate fi efectuată și în etapa de transformare a datelor.
Reducerea numerozității
Reducerea numerozității este procesul de înlocuire a datelor originale cu o formă mai mică de reprezentare a datelor. Există două moduri de a realiza acest lucru: metode parametrice și neparametrice.
Metodele parametrice folosesc modele pentru reprezentarea datelor. Metodele log-liniare și de regresie sunt utilizate pentru a crea astfel de modele. În schimb, metodele neparametrice stochează reprezentări reduse de date utilizând gruparea, histogramele, agregarea cuburilor de date și eșantionarea datelor.
4. Transformarea datelor
Transformarea datelor este procesul de conversie a datelor dintr-un format în altul. În esență, implică metode de transformare a datelor în formate adecvate din care computerul poate învăța eficient.
De exemplu, unitățile de viteză pot fi mile pe oră, metri pe secundă sau kilometri pe oră. Prin urmare, un set de date poate stoca valori ale vitezei unei mașini în diferite unități ca atare. Înainte de a furniza aceste date unui algoritm, trebuie să transformăm datele în aceeași unitate.
Următoarele sunt câteva strategii pentru transformarea datelor.
Netezire
Această abordare statistică este folosită pentru a elimina zgomotul din date cu ajutorul algoritmilor. Ajută la evidențierea celor mai valoroase caracteristici dintr-un set de date și la prezicerea tiparelor. De asemenea, implică eliminarea valorii aberante din setul de date pentru a face modelele mai vizibile.
Agregare
Agregarea se referă la punerea în comun a datelor din mai multe surse și prezentarea lor într-un format unificat pentru extragerea sau analiza datelor. Agregarea datelor din diverse surse pentru a crește numărul de puncte de date este esențială, deoarece numai atunci modelul ML va avea suficiente exemple din care să învețe.
Discretizarea
Discretizarea implică conversia datelor continue în seturi de intervale mai mici. De exemplu, este mai eficient să plasezi oamenii în categorii precum „adolescent”, „adult tânăr”, „vârsta mijlocie” sau „vârstnici” decât să folosești valori continue de vârstă.
Generalizare
Generalizarea implică conversia caracteristicilor de date de nivel scăzut în caracteristici de date de nivel înalt. De exemplu, atributele categoriale, cum ar fi adresa de domiciliu, pot fi generalizate la definiții de nivel superior, cum ar fi oraș sau stat.
Normalizare
Normalizarea se referă la procesul de conversie a tuturor variabilelor de date într-un interval specific. Cu alte cuvinte, este folosit pentru a scala valorile unui atribut, astfel încât să se încadreze într-un interval mai mic, de exemplu, de la 0 la 1. Scalarea zecimală, normalizarea min-max și normalizarea scorului z sunt câteva metode de normalizare a datelor.
Construcție caracteristică
Construcția caracteristicilor implică construirea de noi caracteristici din setul dat de caracteristici. Această metodă simplifică setul de date original și ușurează analiza, extragerea sau vizualizarea datelor.
Generarea ierarhiei conceptelor
Generarea ierarhiei de concepte vă permite să creați o ierarhie între caracteristici, deși nu este specificată. De exemplu, dacă aveți un set de date privind adresa de casă care conține date despre stradă, oraș, stat și țară, această metodă poate fi utilizată pentru a organiza datele în forme ierarhice.
Date precise, rezultate precise
Algoritmii de învățare automată sunt ca copiii. Ei înțeleg puțin sau deloc ce este favorabil sau nefavorabil. Asemenea modului în care copiii încep să repete limbajul greșit preluat de la adulți, datele inexacte sau inconsecvente influențează cu ușurință modelele ML. Cheia este să le furnizați date precise și de înaltă calitate, pentru care preprocesarea datelor este un pas esențial.
Despre algoritmii de învățare automată se vorbește de obicei ca fiind muncitori din greu. Dar există un algoritm care este adesea etichetat ca leneș. Se numește algoritmul k-cel mai apropiat vecin și este un algoritm de clasificare excelent.