Minarea datelor (Data mining)

Minarea datelor este procesul de explorare a tiparelor în seturi mari de date, unde implică metode de sisteme de învățare automată, statistica și baze de date. Minerirea datelor este un sub-domeniu interdisciplinar al informaticii și al statisticilor cu un obiectiv general de a extrage informații (cu metode inteligente) dintr-un set de date și transforma informația într-o structură inteligibilă pentru o utilizare ulterioară.[1][2][3][4] Minerirea datelor este etapa de analiză a procesului de „descoperire a cunoștințelor în bazele de date” sau KDD.[5] În afară de etapa de analiză brută, implică și aspecte de gestionare a bazelor de date și a datelor, pre-procesare a datelor, interfața și modelele folosite, valori de interes, critici de complexitate, post-procesare a structurilor descoperite, vizualizarea datelor și actualizarea online.

Termenul de „minarea datelor” este un termen greșit, deoarece obiectivul este minarea tiparelor și cunoștințelor din cantități mari de date, nu se minează datele în sine.[6] De asemenea, este un cuvânt cheie[7] și este frecvent aplicat oricărei forme de date la scară largă sau de prelucrare a informațiilor (colectarea datelor, extracția datelor, depozitarea datelor, analiză și statistici), precum și orice aplicație a sistemului de asistență pentru decizii, inclusiv inteligență artificială și informații de afaceri. Cartea "Data mining: Instrumente și tehnici practice de învățare a mașinilor cu Java [8]" (care acoperă în mare parte materialul de învățare automată) a fost denumită inițial doar învățare practică de mașini, iar termenul minerit de date a fost adăugat doar din motive de marketing. [9] Adesea termeni mai generali (pe scară largă) de analiză a datelor și de analiză - sau, atunci când se referă la metode reale, inteligență artificială și de învățare mașină - sunt mai adecvate.

Sarcina reală de extragere a datelor este analiza semiautomatică sau automată a unor cantități mari de date pentru a extrage tipare necunoscute anterior, tipare interesante, cum ar fi grupuri de înregistrări de date, înregistrări neobișnuite (detectare de anomali) și dependențe (exploatarea regulilor de asociere, extragerea secvențială a modelului). Aceasta implică de obicei utilizarea tehnicilor bazei de date, cum ar fi indicii spațiali. Aceste tipare pot fi apoi văzute ca un fel de rezumat al datelor de intrare și pot fi utilizate în analize suplimentare sau, de exemplu, în învățarea automată și în analiza predictivă. De exemplu, etapa de extragere a datelor poate identifica mai multe grupuri din date, care pot fi apoi utilizate apoi pentru a obține rezultate de predicție mai exacte de către un sistem de asistență decizională. Nici colectarea datelor, pregătirea datelor, nici interpretarea și raportarea rezultatelor nu fac parte din etapa de extragere a datelor, dar nu aparțin procesului general de descoperire a cunoștințelor în bazele de date ca pași suplimentari.

Diferența dintre analiza datelor și extragerea datelor este că, analiza datelor este utilizată pentru testarea modelelor și ipotezelor din setul de date, de exemplu, analizarea eficienței unei campanii de marketing, indiferent de cantitatea de date; în schimb, extragerea datelor folosește învățarea automată și modele statistice pentru a descoperi tipare clandestine sau ascunse într-un volum mare de date. [10]

Termenii corelați dragarea de date, pescuitul de date și snoopingul de date se referă la utilizarea metodelor de extragere a datelor pentru eșantionarea părților dintr-un set de date de mai mare care sunt (sau pot fi) prea mici pentru a se face inferențe statistice fiabile despre validitatea oricărui tipar descoperit. Aceste metode pot fi, totuși, utilizate în crearea de noi ipoteze pentru a testa împotriva populațiilor mai mari de date.

Etimologie

modificare

În anii '60, statisticienii și economiștii foloseau termeni precum pescuitul de date sau dragarea de date pentru a se referi la ceea ce considerau proasta practică de analiză a datelor fără o ipoteză a priori. Termenul de „extragere a datelor” a fost folosit într-un mod la fel de critic de către economistul Michael Lovell într-un articol publicat în Revizuirea Studiilor Economice din 1983.[11][12] Lovell indică faptul că practica „maschează sub o varietate de aliasuri, variind de la„ experimentare ”(pozitiv) la„ pescuit ”sau„ scobit ”(negativ).

Termenul de extragere a datelor a apărut în jurul anului 1990 în comunitatea bazelor de date, în general cu conotații pozitive. Pentru o perioadă scurtă de timp, în anii 1980, a fost utilizată o expresie „extragerea bazelor de date”™, dar din moment ce a fost înregistrată de către HNC, o companie cu sediul în San Diego, pentru a lansa stația de lucru a bazei de date;[13] cercetătorii au apelat în consecință la exploatarea datelor. Alți termeni folosiți includ arheologia datelor, recoltarea informațiilor, descoperirea informațiilor, extragerea cunoștințelor etc. Gregory Piatetsky-Shapiro a inventat termenul „descoperirea cunoștințelor în bazele de date” pentru primul atelier pe același subiect (KDD-1989), iar acest termen a devenit mai popular în comunitatea AI. Cu toate acestea, termenul minerit de date a devenit mai popular în comunitățile de afaceri și presă.[14] În prezent, termenii de extragere a datelor și descoperirea cunoștințelor sunt folosiți în mod interschimbabil.

Procesul de descoperire a cunoștințelor în bazele de date (KDD) este definit în mod obișnuit prin etapele:

  1. Selecție
  2. Pre-procesare
  3. Transformare
  4. Minerirea datelor
  5. Interpretare/evaluare [5]

Cu toate acestea, există numeroase variații pe această temă, cum ar fi procesul standard inter-industrie pentru extragerea datelor (CRISP-DM) care definește șase faze:

  1. Înțelegerea afacerilor
  2. Înțelegerea datelor
  3. Pregătirea datelor
  4. Modelare
  5. Evaluare
  6. Implementare

sau un proces simplificat, cum ar fi (1) Pre-procesare, (2) Minerirea datelor și (3) Validarea rezultatelor.

Sondajele efectuate în 2002, 2004, 2007 și 2014 arată că metodologia CRISP-DM este principala metodologie utilizată de minerii de date.[15] Singurul alt standard de extragere a datelor denumit în aceste sondaje a fost SEMMA. Cu toate acestea, de 3-4 ori mai mulți oameni au raportat folosind CRISP-DM. Mai multe echipe de cercetători au publicat recenzii ale modelelor proceselor de extragere a datelor,[16] iar Azevedo și Santos au efectuat o comparație între CRISP-DM și SEMMA în 2008.[17]

Pre-procesare

modificare

Înainte de a putea folosi algoritmi de extragere a datelor, trebuie să fie asamblat un set de date țintă. Deoarece extragerea de date poate descoperi doar tiparele prezente în realitate, setul de date țintă trebuie să fie suficient de mare pentru a conține aceste tipare, rămânând suficient de concis pentru a fi extras într-un termen acceptabil. O sursă comună pentru date este un data mart sau un depozit de date. Pre-procesarea este esențială pentru a analiza seturile de date multivariate înainte de extragerea datelor. Setul țintă este apoi curățat. Curățarea datelor elimină observațiile care conțin zgomot și cele cu date lipsă.

Minerirea datelor

modificare

Minarea de date implică șase clase comune de sarcini:[5]

  • Detectarea anomaliilor (depistare anterioară/modificare/abatere) - Identificarea înregistrărilor neobișnuite de date, care ar putea fi interesante sau erori de date care necesită investigare suplimentară.
  • Învățarea regulilor de asociere (modelarea dependenței) - Caută relații între variabile. De exemplu, un supermarket ar putea strânge date despre obiceiurile de cumpărare ale clienților. Folosind învățarea regulilor de asociere, supermarketul poate determina ce produse sunt cumpărate frecvent împreună și poate utiliza aceste informații în scopuri de marketing. Aceasta este uneori denumită analiza coșului de piață.
  • Clustering - este sarcina de a descoperi grupuri și structuri în datele care sunt într-un fel sau altul „similare”, fără a utiliza structuri cunoscute în date.
  • Clasificare - este sarcina generalizării structurii cunoscute pentru a se aplica la date noi. De exemplu, un program de e-mail ar putea încerca să clasifice un e-mail drept „legitim” sau „spam”.
  • Regresie - încearcă să găsească o funcție care modelează datele cu cea mai mică eroare, adică pentru estimarea relațiilor dintre date sau seturi de date.
  • Rezumare - oferind o reprezentare mai compactă a setului de date, inclusiv vizualizarea și generarea de rapoarte.

Validarea rezultatelor

modificare
 
Un exemplu de date produse prin phising de date printr-un bot operat de statisticianul Tyler Vigen, arătând aparent o legătură strânsă între cel mai bun cuvânt câștigător al unei competiții de albine ortografice și numărul de persoane din Statele Unite ucise de păianjeni veninoși. Similitudinea în tendințe este, evident, o coincidență.

Exploatarea datelor poate fi folosită în mod neintenționat și poate produce rezultate care par a fi semnificative; dar care nu prezic de fapt un comportament viitor și nu pot fi reproduse pe un nou eșantion de date și nu au prea puțină utilizare. Adesea, acest lucru rezultă din investigarea prea multor ipoteze și din efectuarea unor testări statistice corespunzătoare. O versiune simplă a acestei probleme în învățarea mașinii este cunoscută sub denumirea de adaptare, dar aceeași problemă poate apărea în diferite faze ale procesului și, astfel, o divizare tren/test - atunci când este cazul, poate să nu fie suficientă pentru a împiedica acest lucru.[18]

Ultimul pas al descoperirii cunoștințelor din date este de a verifica dacă tiparele produse de algoritmii de extragere a datelor apar în setul de date mai larg. Nu toate tiparele găsite de algoritmii de extragere a datelor sunt neapărat valabile. Este obișnuit ca algoritmii de extragere a datelor să găsească modele în setul de instruire care nu sunt prezente în setul de date generale. Aceasta se numește supra-montare. Pentru a depăși acest lucru, evaluarea folosește un set de teste de date pe care algoritmul de extragere a datelor nu a fost instruit. Modelele învățate sunt aplicate acestui set de teste, iar rezultatul rezultat este comparat cu ieșirea dorită. De exemplu, un algoritm de extragere a datelor care încearcă să distingă „spamul” de e-mailurile „legitime” ar fi instruit pe un set de instruire de e-mail-uri de probă. Odată instruiți, tiparele învățate vor fi aplicate setului de teste de e-mailuri pe care nu a fost instruit. Precizia tiparelor poate fi apoi măsurată din câte e-mailuri clasifică corect. Pentru evaluarea algoritmului pot fi utilizate mai multe metode statistice, cum ar fi curbele ROC.

Dacă tiparele învățate nu corespund standardelor dorite, ulterior este necesară reevaluarea și schimbarea etapelor de pre-procesare și extragere a datelor. Dacă tiparele învățate îndeplinesc standardele dorite, atunci ultimul pas este interpretarea tiparelor învățate și transformarea lor în cunoaștere.

Cercetare

modificare

Primul organism profesionist în domeniu este Asociația pentru calculatoare (ACM) Special Interest Group (SIG) privind descoperirea cunoștințelor și extragerea datelor (SIGKDD).[19] [20] Din 1989, acest ACM SIG a găzduit o conferință internațională anuală și și-a publicat lucrările [21] iar din 1999 a publicat o revistă academică bianuală intitulată „Explorations SIGKDD”. [22]

Standarde

modificare

S-au făcut unele eforturi pentru definirea standardelor pentru procesul de extragere a datelor, de exemplu, Procesul de standardizare europeană a industriei încrucișate din 1999 pentru minerirea datelor (CRISP-DM 1.0) și standardul 2004 Data Mining Java (JDM 1.0). Dezvoltarea succesorilor acestor procese (CRISP-DM 2.0 și JDM 2.0) a fost activă în 2006, dar a încetat de atunci. JDM 2.0 a fost retras fără a ajunge la un proiect final.

Pentru schimbul de modele extrase - în special pentru utilizarea în analiză predictivă - standardul cheie este Predictive Model Markup Language (PMML), care este un limbaj bazat pe XML dezvoltat de Data Mining Group (DMG) și sprijinit ca format de schimb de multe aplicații de extragere a datelor. După cum sugerează și numele, acesta acoperă doar modele de predicție, o sarcină specială de extragere a datelor, de o importanță ridicată pentru aplicațiile de afaceri. Cu toate acestea, au fost propuse extensii pentru a acoperi (de exemplu) aglomerarea subspațială independent de DMG.[23]

Utilizări notabile

modificare

Exploatarea datelor este utilizată oriunde există date digitale disponibile astăzi. Exemple notabile de extragere a datelor pot fi găsite în întreprinderi, medicamente, știință și supraveghere.

Software-ul

modificare

Software gratuit și aplicații de extragere a datelor de tip open-source

modificare

Următoarele aplicații sunt disponibile sub licențe gratuite/open-source. Accesul public la codul sursă al aplicației este de asemenea disponibil.

  • Carrot2: Cadru de clustering a textului și rezultatelor căutării.
  • Chemicalize.org: un miner cu structură chimică și un motor de căutare web.
  • ELKI: Un proiect de cercetare universitar cu analiză avansată de cluster și metode de detectare mai vechi scrise în limbajul Java .
  • GATE: instrument de prelucrare a limbajului natural și de inginerie a limbajului.
  • KNIME: Informația Konstanz Miner, un cadru de analiză a datelor și ușor de utilizat.
  • Analiză masivă online (MOA): o extragere în timp real a fluxului de date cu instrumentul de derivare a conceptului în limbajul de programare Java.
  • MEPX: instrument multi-platform pentru probleme de regresie și clasificare bazate pe o variantă de programare genetică.
  • ML-Flex: pachet software care permite utilizatorilor să se integreze cu pachete terțe de învățare automată scrise în orice limbaj de programare, să execute analize de clasificare în paralel pe mai multe noduri de calcul și să producă rapoarte HTML ale rezultatelor clasificării.
  • mlpack: o colecție de algoritmi de învățare a mașinilor gata de utilizare, scrise în limba C++ .
  • NLTK (Natural Language Toolkit): o suită de biblioteci și programe pentru procesarea simbolică și statistică a limbajului natural (NLP) pentru limbajul Python.
  • OpenNN: bibliotecă de rețele neuronale deschise.
  • Orange: o suită de software de extragere a datelor și de învățare automată bazată pe componente, scrisă în limba Python.
  • R: Un limbaj de programare și un mediu software pentru calculul statistic, extragerea datelor și grafică. Face parte din Proiectul GNU .
  • scikit-learning este o bibliotecă de învățare cu mașini open source pentru limbajul de programare Python.
  • Torch: o bibliotecă de învățare profundă open-source pentru limbajul de programare Lua și cadrul de calcul științific, cu suport larg pentru algoritmi de învățare automată.
  • UIMA: UIMA (Unstructured Information Management Architecture) este un cadru component pentru analiza conținutului nestructurat, cum ar fi text, audio și video - dezvoltat inițial de IBM.
  • Weka: o suită de aplicații software de învățare automată scrise în limbajul de programareJava .

Software și aplicații proprietate pentru extragerea datelor

modificare

Următoarele aplicații sunt disponibile sub licențe de proprietate.

  • Angoss KnowledgeSTUDIO: instrument de extragere a datelor
  • LIONsolver: o aplicație software integrată pentru extragerea datelor, business intelligence și modelare care implementează abordarea învățare și inteligență optimizată (LION).
  • Megaputer Intelligence: software-ul de extragere a datelor și textului se numește PolyAnalyst.
  • Microsoft Analysis Services: software de extragere a datelor furnizat de Microsoft.
  • NetOwl: suită de produse multilingve de text și analize de entități care permit extragerea datelor.
  • Oracle Data Mining: software de extragere a datelor de către Oracle Corporation.
  • PSeven: platforma pentru automatizarea simulării și analizei tehnice, optimizarea multidisciplinară și extragerea datelor oferite de DATADVANCE.
  • Qlucore Omics Explorer: software de extragere a datelor.
  • RapidMiner: Un mediu pentru învățarea mașinilor și experimente de extragere a datelor.
  • SAS Enterprise Miner: software de extragere a datelor furnizat de SAS Institute.
  • SPSS Modeler: software de extragere a datelor furnizat de IBM .
  • STATISTICA Data Miner: software de extragere a datelor furnizat de StatSoft.
  • Tanagra: Software de extragere a datelor orientat spre vizualizare, de asemenea, pentru predare.
  • Vertica: software de extragere a datelor furnizat de Hewlett-Packard.
Metode
Domenii de aplicație

Referințe

modificare
  1. ^ „Data Mining Curriculum”. ACM SIGKDD. . Accesat în . 
  2. ^ Clifton, Christopher (). „Encyclopædia Britannica: Definition of Data Mining”. Accesat în . 
  3. ^ Hastie, Trevor; Tibshirani, Robert; Friedman, Jerome (). „The Elements of Statistical Learning: Data Mining, Inference, and Prediction”. Arhivat din original la . Accesat în . 
  4. ^ Han, Kamber, Pei, Jaiwei, Micheline, Jian (). Data Mining: Concepts and Techniques (ed. 3rd). Morgan Kaufmann. ISBN 978-0-12-381479-1. 
  5. ^ a b c Fayyad, Usama; Piatetsky-Shapiro, Gregory; Smyth, Padhraic (). „From Data Mining to Knowledge Discovery in Databases” (PDF). Accesat în . 
  6. ^ Han, Jiawei; Kamber, Micheline (). Data mining: concepts and techniques. Morgan Kaufmann. p. 5. ISBN 978-1-55860-489-6. Thus, data mining should have been more appropriately named "knowledge mining from data," which is unfortunately somewhat long 
  7. ^ OKAIRP 2005 Fall Conference, Arizona State University Arhivat în , la Wayback Machine.
  8. ^ Witten, Ian H.; Frank, Eibe; Hall, Mark A. (). Data Mining: Practical Machine Learning Tools and Techniques (ed. 3). Elsevier. ISBN 978-0-12-374856-0. 
  9. ^ Bouckaert, Remco R.; Frank, Eibe; Hall, Mark A.; Holmes, Geoffrey; Pfahringer, Bernhard; Reutemann, Peter; Witten, Ian H. (). „WEKA Experiences with a Java open-source project”. Journal of Machine Learning Research. 11: 2533–2541. the original title, "Practical machine learning", was changed ... The term "data mining" was [added] primarily for marketing reasons. 
  10. ^ Olson, D. L. (2007). Data mining in business services. Service Business, 1(3), 181-193. doi:10.1007/s11628-006-0014-7
  11. ^ Lovell, Michael C. (). „Data Mining”. The Review of Economics and Statistics. 65 (1): 1–12. doi:10.2307/1924403. JSTOR 1924403. 
  12. ^ Charemza, Wojciech W.; Deadman, Derek F. (). „Data Mining”. New Directions in Econometric Practice. Aldershot: Edward Elgar. pp. 14–31. ISBN 1-85278-461-X. 
  13. ^ Mena, Jesús (). Machine Learning Forensics for Law Enforcement, Security, and Intelligence. Boca Raton, FL: CRC Press (Taylor & Francis Group). ISBN 978-1-4398-6069-4. 
  14. ^ Piatetsky-Shapiro, Gregory; Parker, Gary (). „Lesson: Data Mining, and Knowledge Discovery: An Introduction”. Introduction to Data Mining. KD Nuggets. Accesat în . 
  15. ^ Gregory Piatetsky-Shapiro (2002) KDnuggets Methodology Poll, Gregory Piatetsky-Shapiro (2004) KDnuggets Methodology Poll, Gregory Piatetsky-Shapiro (2007) KDnuggets Methodology Poll, Gregory Piatetsky-Shapiro (2014) KDnuggets Methodology Poll
  16. ^ Lukasz Kurgan and Petr Musilek (2006); A survey of Knowledge Discovery and Data Mining process models. The Knowledge Engineering Review. Volume 21 Issue 1, March 2006, pp 1–24, Cambridge University Press, New York, NY, USA doi:10.1017/S0269888906000737
  17. ^ Azevedo, A. and Santos, M. F. KDD, SEMMA and CRISP-DM: a parallel overview Arhivat în , la Wayback Machine.. In Proceedings of the IADIS European Conference on Data Mining 2008, pp 182–185.
  18. ^ Hawkins, Douglas M (). „The problem of overfitting”. Journal of Chemical Information and Computer Sciences. 44 (1): 1–12. doi:10.1021/ci0342472. PMID 14741005. 
  19. ^ „Microsoft Academic Search: Top conferences in data mining”. Microsoft Academic Search. Arhivat din original la . Accesat în . 
  20. ^ „Google Scholar: Top publications - Data Mining & Analysis”. Google Scholar. 
  21. ^ Proceedings Arhivat în , la Wayback Machine., International Conferences on Knowledge Discovery and Data Mining, ACM, New York.
  22. ^ SIGKDD Explorations, ACM, New York.
  23. ^ Günnemann, Stephan; Kremer, Hardy; Seidl, Thomas (). „An extension of the PMML standard to subspace clustering models”. Proceedings of the 2011 workshop on Predictive markup language modeling - PMML '11. p. 48. doi:10.1145/2023598.2023605. ISBN 978-1-4503-0837-3. 

Citirea ulterioară

modificare

linkuri externe

modificare