Preprocesarea datelor în data mining: pași, imputarea valorii lipsă, standardizarea datelor
Publicat: 2020-12-30Cea mai consumatoare parte a sarcinii unui Data Scientist este să pregătească și să preproceseze datele disponibile. Datele pe care le obținem în scenariile din viața reală nu sunt curate și potrivite pentru modelare. Datele trebuie curățate, aduse într-un anumit format și transformate înainte de a fi transmise modelelor de învățare automată.
La sfârșitul acestui tutorial, veți ști următoarele
- De ce preprocesarea datelor
- Curățarea datelor
- Imputarea valorii lipsă
- Standardizarea datelor
- Discretizarea
Cuprins
De ce preprocesarea datelor?
Când datele sunt preluate prin casarea site-urilor web și adunarea lor din alte surse de date, acestea sunt în general pline de discrepanțe. Pot fi probleme de formatare, valori lipsă, valori nedorite și text și chiar erori în date. Trebuie făcute mai mulți pași de preprocesare pentru a vă asigura că datele care sunt furnizate modelului sunt la nivelul notă, astfel încât modelul să poată învăța și să se generalizeze pe ele.
Curățarea datelor
Primul și cel mai esențial pas este curățarea neregulilor din date. Fără a face acest pas, nu putem avea prea mult sens din statisticile datelor. Acestea pot fi probleme de formatare, valori nedorite și valori aberante.
Probleme de formatare
Avem nevoie ca datele să fie într-un format tabelar de cele mai multe ori, dar nu este cazul. Datele pot avea nume de coloane lipsă sau incorecte, coloane goale. Mai mult, atunci când aveți de-a face cu date nestructurate, cum ar fi imagini și text, devine extrem de esențial să obțineți datele 2D sau 3D încărcate în Dataframes pentru modelare.
Valori de gunoi
Multe instanțe sau coloane complete pot avea anumite valori de gunoi adăugate la valoarea necesară reală. De exemplu, luați în considerare o coloană „rank” care are valori precum: „#1”, „#3”, „#12”, „#2” etc. Acum, este important să eliminați toate „#” precedente. caractere pentru a putea alimenta valoarea numerică modelului.
Outliers
De multe ori anumite valori numerice sunt fie prea mari, fie prea mici decât valoarea medie a unei anumite coloane. Acestea sunt considerate valori aberante. Valorile aberante au nevoie de un tratament special și sunt un factor sensibil de tratat. Aceste valori aberante pot fi erori de măsurare sau pot fi și valori reale. Ele trebuie fie eliminate complet, fie manipulate separat, deoarece ar putea conține o mulțime de informații importante.
Valori lipsă
Rareori se întâmplă ca datele dumneavoastră să conțină toate valorile pentru fiecare instanță. Multe valori lipsesc sau sunt umplute cu intrare de gunoi. Aceste valori lipsă trebuie tratate. Aceste valori pot avea mai multe motive pentru care ar putea lipsi. Acestea pot lipsi din anumite motive, cum ar fi eroarea senzorului sau alți factori, sau pot lipsi complet la întâmplare.
Citiți: Proiecte de extragere a datelor în India
Scade
Cea mai simplă și mai ușoară cale este să aruncați rândurile în care lipsesc valorile. Acest lucru are multe dezavantaje, cum ar fi pierderea de informații esențiale. Ar putea fi un pas bun să renunțați la valorile lipsă atunci când cantitatea de date pe care o aveți este mare. Dar dacă datele sunt mai puține și există o mulțime de valori lipsă, aveți nevoie de modalități mai bune de a aborda această problemă.
Imputarea medie/mediană/mod
Cea mai rapidă modalitate de a imputa valorile lipsă este simpla imputare a valorii medii a coloanei. Cu toate acestea, are dezavantaje deoarece perturbă distribuția inițială a datelor. De asemenea, puteți imputa valoarea mediană sau valoarea modului, care este în general mai bună decât media simplă.
Interpolare liniară și KNN
Mai multe moduri inteligente pot fi, de asemenea, folosite pentru a imputa valorile lipsă. 2 dintre acestea sunt interpolări liniare care utilizează mai multe modele, tratând coloana cu valori necompletate ca caracteristică care trebuie prezisă. O altă modalitate este de a utiliza clustering de KNN. KNN face grupuri de valori dintr-o anumită caracteristică și apoi atribuie valoarea cea mai apropiată de cluster.
Standardizarea datelor
Într-un set de date cu mai multe caracteristici numerice, este posibil ca toate caracteristicile să nu fie la aceeași scară. De exemplu, o caracteristică „Distanță” are distanțe în metri, cum ar fi 1300, 800, 560 etc. Și o altă caracteristică „timp” are timpi în ore precum 1, 2,5, 3,2, 0,8 etc. Deci, atunci când aceste două caracteristici sunt transmise modelului, acesta consideră caracteristica cu distanțe la fel de mai mare cu cât valorile sale sunt mari. Pentru a evita acest scenariu și pentru a avea o convergență mai rapidă, este necesar să aducem toate caracteristicile la aceeași scară.

Normalizare
O modalitate obișnuită de a scala caracteristicile este prin normalizarea acestora. Poate fi implementat folosind Normalizatorul Scikit-learn. Funcționează nu pe coloane, ci pe rânduri. Normalizarea L2 se aplică fiecărei observații astfel încât valorile dintr-un rând să aibă o normă unitară după scalare.
Scalare min Max
Scalare Min Max poate fi implementată folosind clasa Min MaxScaler a Scikit-learn. Scade valoarea minimă a caracteristicilor și apoi împarte la interval, unde intervalul este diferența dintre maximul original și minimul original. Păstrează forma distribuției originale, cu intervalul implicit de 0-1.
Scalare standard
Standard Scaler poate fi implementat și folosind clasa Scikit-learn. Standardizează o caracteristică prin scăderea mediei și apoi scalarea la varianța unitară, unde varianța unitară înseamnă împărțirea tuturor valorilor la abaterea standard. Face ca media distribuției 0 și abaterea standard să fie 1.
Discretizarea
De multe ori datele nu sunt în formă numerică, nu în formă categorială. De exemplu, luați în considerare o caracteristică „temperatură” cu valori ca „Ridicat”, „Scăzut”, „Mediu”. Aceste valori textuale trebuie să fie codificate în formă numerică pentru ca modelul să poată fi antrenat.
Date categorice
Datele categorice sunt etichetate codificate pentru a le aduce sub formă numerică. Deci „Ridicat”, „Mediu” și „Scăzut” pot fi codificate cu etichete la 3, 2 și 1. Caracteristicile categoriale pot fi fie nominale, fie ordinale. Caracteristicile categoriale ordinale sunt cele care au o anumită ordine. De exemplu, în cazul de mai sus, putem spune că 3>2>1 deoarece temperaturile pot fi măsurate/cuantificate.
Cu toate acestea, într-un exemplu în care o caracteristică a „Orașului” care are valori precum „Delhi”, „Jammu” și „Agra”, nu poate fi măsurată. Cu alte cuvinte, atunci când le codificăm ca 3, 2, 1, nu putem spune că 3>2>1 pentru că „Delhi” > „Jammu” nu va avea prea mult sens. În astfel de cazuri, folosim One Hot Encoding.
Date continue
Caracteristicile cu valori continue pot fi, de asemenea, discretizate prin împărțirea valorilor în compartimente de intervale specifice. Binning înseamnă convertirea unei caracteristici numerice sau continue într-un set discret de valori, pe baza intervalelor de valori continue. Acest lucru este util atunci când doriți să vedeți tendințele în funcție de intervalul în care se încadrează punctul de date.
De exemplu, să presupunem că avem note pentru 7 copii cuprinse între 0 și 100. Acum, putem atribui notele fiecărui copil unui anumit „coș”. Acum putem împărți în 3 casete cu intervale de la 0 la 50, 51-70 și 71-100 aparținând containerelor 1, 2 și, respectiv, 3. Prin urmare, funcția va conține acum doar una dintre aceste 3 valori. Pandas oferă 2 funcții pentru a realiza binning rapid: qcut și cut.
Pandas qcut preia numărul de cuantile și împarte punctele de date în fiecare bin pe baza distribuției datelor.
Pandas cut, pe de altă parte, preia intervalele personalizate definite de noi și împarte punctele de date în acele intervale.
Citește înrudit: Preprocesarea datelor în Machine Learning
Învață cursuri de știință a datelor de la cele mai bune universități din lume. Câștigă programe Executive PG, programe avansate de certificat sau programe de master pentru a-ți accelera cariera.
Concluzie
Preprocesarea datelor este un pas esențial în orice activitate de extragere a datelor și învățare automată. Cu siguranță, toți pașii pe care i-am discutat nu sunt toți, dar acoperă cea mai mare parte a părții de bază a procesului. Tehnicile de preprocesare a datelor sunt diferite și pentru NLP și pentru datele de imagine. Asigurați-vă că încercați exemple de pași de mai sus și implementați în conducta dvs. de Data Mining.
Dacă sunteți curios să aflați despre știința datelor, consultați Diploma PG în știința datelor de la IIIT-B și upGrad, care este creată pentru profesioniști care lucrează și oferă peste 10 studii de caz și proiecte, ateliere practice practice, mentorat cu experți din industrie, 1- on-1 cu mentori din industrie, peste 400 de ore de învățare și asistență profesională cu firme de top.
Ce este preprocesarea datelor și care este semnificația acesteia?
Aceasta este o tehnică de furnizare a datelor brute nestructurate care sunt sub formă de imagini, text, videoclipuri. Aceste date sunt mai întâi preprocesate pentru a elimina inconsecvențele, erorile și redundanțele, astfel încât să poată fi analizate ulterior.
Datele brute sunt transformate în date relevante care pot fi înțelese de mașini. Preprocesarea datelor este un pas important pentru transformarea datelor pentru modelare. Fără procesare, este practic inutil.
Care sunt pașii implicați în preprocesarea datelor?
Preprocesarea datelor implică diferiți pași pentru a finaliza întregul proces. Datele sunt mai întâi curățate pentru a elimina zgomotele și pentru a completa valorile lipsă. După aceasta, datele sunt integrate din mai multe surse pentru a fi combinate într-un singur set de date. Acești pași sunt apoi urmați de transformare, reducere și discretizare.
Transformarea datelor brute presupune normalizarea datelor. Reducerea și discretizarea se ocupă practic de reducerea atributelor și dimensiunilor datelor. Aceasta este urmată de comprimarea acestui set mare de date.
Care este diferența dintre metodele univariate și multivariate?
Metoda univariată este cea mai simplă metodă de a gestiona un outlier. Nu prezintă nicio relație, deoarece este o singură variantă și scopul său principal este de a analiza datele și de a determina modelul asociat cu acestea. Media, mediana și modul sunt exemple de modele găsite în datele univariate.
Pe de altă parte, metoda multivariată este pentru analiza a trei sau mai multe variabile. Este mai precisă decât metoda anterioară deoarece, spre deosebire de metoda univariată, metoda multivariată se ocupă de relații și tipare. Arborele aditiv, Analiza corelației canonice și Analiza clusterelor sunt câteva dintre modalitățile de a efectua o analiză multivariată.