Cuprins[Ascunde][Spectacol]
Dacă sunteți un programator Python sau dacă căutați un set de instrumente puternic pe care să îl utilizați pentru a introduce învățarea automată într-un sistem de producție, Scikit-learn este o bibliotecă pe care trebuie să o verificați.
Scikit-learn este bine documentat și simplu de utilizat, indiferent dacă sunteți nou în învățarea automată, dacă doriți să începeți și să rulați rapid sau doriți să utilizați cel mai recent instrument de cercetare ML.
Vă permite să construiți un model de date predictiv în doar câteva linii de cod și apoi să folosească acel model pentru a se potrivi datelor dvs. ca bibliotecă de nivel înalt. Este flexibil și funcționează bine cu altele Biblioteci Python precum Matplotlib pentru diagrame, NumPy pentru vectorizarea matricei și panda pentru vizualizarea datelor.
În acest ghid, veți afla totul despre ce este, cum îl puteți utiliza, împreună cu avantajele și dezavantajele sale.
Ce Este Scikit-învață?
Scikit-learn (cunoscut și ca sklearn) oferă un set divers de modele statistice și învățare automată. Spre deosebire de majoritatea modulelor, sklearn este dezvoltat în Python mai degrabă decât în C. În ciuda faptului că a fost dezvoltat în Python, eficiența sklearn este atribuită utilizării lui NumPy pentru operații de algebră liniară și matrice de înaltă performanță.
Scikit-Learn a fost creat ca parte a proiectului Google Summer of Code și de atunci a simplificat viața a milioane de oameni de știință de date centrați pe Python din întreaga lume. Această secțiune a seriei se concentrează pe prezentarea bibliotecii și pe un element – transformările setului de date, care sunt un pas cheie și vital de făcut înainte de a dezvolta un model de predicție.
Biblioteca se bazează pe SciPy (Scientific Python), care trebuie instalat înainte de a putea folosi scikit-learn. Această stivă conține următoarele articole:
- NumPy: pachetul standard de matrice n-dimensionale al lui Python
- SciPy: Este un pachet fundamental pentru calculul științific
- Pandas: Structuri de date și analiză
- Matplotlib: Este o bibliotecă puternică de plotare 2D/3D
- Sympy: matematică simbolică
- IPython: Consolă interactivă îmbunătățită
Aplicații ale bibliotecii Scikit-learn
Scikit-learn este un pachet Python cu sursă deschisă, cu funcții sofisticate de analiză a datelor și mining. Vine cu o multitudine de algoritmi încorporați pentru a vă ajuta să profitați la maximum de proiectele dvs. de știință a datelor. Biblioteca Scikit-learn este utilizată în următoarele moduri.
1. Regresie
Analiza regresiei este o tehnică statistică pentru analizarea și înțelegerea conexiunii dintre două sau mai multe variabile. Metoda utilizată pentru a face analiza de regresie ajută la determinarea elementelor relevante, care pot fi ignorate și a modului în care interacționează. Tehnicile de regresie, de exemplu, pot fi folosite pentru a înțelege mai bine comportamentul prețurilor acțiunilor.
Algoritmii de regresie includ:
- linear Regression
- Regresia Ridge
- Regresie lazo
- Regresia arborelui decizional
- Pădurea întâmplătoare
- Suport pentru mașini vectoriale (SVM)
2. Clasificare
Metoda de clasificare este o abordare de învățare supravegheată care utilizează datele de antrenament pentru a identifica categoria de observații noi. Un algoritm din Clasificare învață de la un dat date CCD sau observații și apoi clasifică observațiile suplimentare într-una dintre multele clase sau grupări. Ele pot fi utilizate, de exemplu, pentru a clasifica comunicațiile prin e-mail ca spam sau nu.
Algoritmii de clasificare includ următorii:
- Regresie logistică
- K-Cei mai apropiati vecini
- Suport Vector Machine
- Arborele de Decizii
- Pădurea întâmplătoare
3. Clustering
Algoritmii de grupare din Scikit-learn sunt utilizați pentru a aranja automat datele cu proprietăți similare în seturi. Clustering este procesul de grupare a unui set de articole astfel încât cei din același grup să fie mai asemănători cu cei din alte grupuri. Datele clienților, de exemplu, pot fi separate în funcție de locația acestora.
Algoritmii de grupare includ următorii:
- DB-SCAN
- K-înseamnă
- Mini-loturi K-Means
- Clustering spectral
4. Selectarea modelului
Algoritmii de selecție a modelelor oferă metode pentru compararea, validarea și selectarea parametrilor și modelelor optime pentru utilizare în inițiativele științei datelor. Datele date, selecția modelului este problema alegerii unui model statistic dintr-un grup de modele candidate. În cele mai elementare circumstanțe, se ia în considerare o colecție preexistentă de date. Cu toate acestea, sarcina poate include, de asemenea, proiectarea experimentelor, astfel încât datele obținute să fie potrivite pentru problema de selecție a modelului.
Modulele de selecție a modelelor care pot îmbunătăți acuratețea prin ajustarea parametrilor includ:
- Validare încrucișată
- Căutare grilă
- Metrici
5. Reducerea dimensionalității
Transferul de date dintr-un spațiu cu dimensiuni înalte într-un spațiu cu dimensiuni reduse, astfel încât reprezentarea cu dimensiuni reduse să păstreze unele aspecte semnificative ale datelor originale, în mod ideal aproape de dimensiunea sa inerentă, este cunoscut sub numele de reducere a dimensionalității. Numărul de variabile aleatoare pentru analiză este redus atunci când dimensionalitatea este redusă. Datele periferice, de exemplu, nu pot fi considerate pentru a îmbunătăți eficiența vizualizărilor.
Algoritmul de reducere a dimensionalității include următoarele:
- Selectarea funcțiilor
- Analiza componentelor principale (PCA)
Instalarea Scikit-learn
NumPy, SciPy, Matplotlib, IPython, Sympy și Pandas trebuie să fie instalate înainte de a utiliza Scikit-learn. Să le instalăm folosind pip din consolă (funcționează numai pentru Windows).
Să instalăm Scikit-learn acum că am instalat bibliotecile necesare.
DESCRIERE
Scikit-learn, uneori cunoscut sub numele de sklearn, este un set de instrumente Python pentru implementarea modelelor de învățare automată și modelare statistică. Îl putem folosi pentru a crea mai multe modele de învățare automată pentru regresie, clasificare și grupare, precum și instrumente statistice pentru evaluarea acestor modele. De asemenea, include reducerea dimensionalității, selecția caracteristicilor, extragerea caracteristicilor, abordări de ansamblu și seturi de date încorporate. Vom investiga fiecare dintre aceste calități pe rând.
1. Importul seturi de date
Scikit-learn include o serie de seturi de date pre-construite, cum ar fi setul de date iris, setul de date despre prețul casei, setul de date Titanic și așa mai departe. Avantajele cheie ale acestor seturi de date sunt că sunt ușor de înțeles și pot fi folosite pentru a dezvolta imediat modele ML. Aceste seturi de date sunt potrivite pentru începători. În mod similar, puteți utiliza sklearn pentru a importa seturi de date suplimentare. În mod similar, îl puteți folosi pentru a importa seturi de date suplimentare.
2. Împărțirea setului de date pentru instruire și testare
Sklearn a inclus capacitatea de a împărți setul de date în segmente de instruire și testare. Împărțirea setului de date este necesară pentru o evaluare imparțială a performanței predicției. Putem specifica cât de mult din datele noastre ar trebui să fie incluse în seturile de date de tren și de testare. Am împărțit setul de date utilizând împărțirea testului de tren, astfel încât setul de tren să cuprindă 80% din date și setul de testare să aibă 20%. Setul de date poate fi împărțit după cum urmează:
3. Regresia liniară
Regresia liniară este o tehnică de învățare automată bazată pe învățare supravegheată. Efectuează o muncă de regresie. Pe baza variabilelor independente, regresia modelează o valoare de predicție a obiectivului. Este folosit mai ales pentru a determina legătura dintre variabile și predicție. Diferite modele de regresie diferă în ceea ce privește tipul de conexiune pe care o evaluează între variabilele dependente și independente, precum și numărul de variabile independente utilizate. Putem crea pur și simplu modelul de regresie liniară folosind sklearn după cum urmează:
4. Regresia logistică
O abordare comună de clasificare este regresia logistică. Este în aceeași familie cu regresia polinomială și liniară și aparține familiei clasificatoarelor liniare. Constatările regresiei logistice sunt ușor de înțeles și sunt rapid de calculat. În același mod ca și regresia liniară, regresia logistică este o tehnică de regresie supravegheată. Variabila de ieșire este categorică, așa că aceasta este singura diferență. Acesta poate determina dacă un pacient are sau nu o boală cardiacă.
Diverse probleme de clasificare, cum ar fi detectarea spam-ului, pot fi rezolvate folosind regresia logistică. Prognoza diabetului, stabilirea dacă un consumator va cumpăra un anumit produs sau trecerea la un rival, determinarea dacă un utilizator va face clic pe un anumit link de marketing și multe alte scenarii sunt doar câteva exemple.
5. Arborele de decizie
Cea mai puternică și utilizată tehnică de clasificare și predicție este arborele de decizie. Un arbore de decizie este o structură arborescentă care arată ca o diagramă, fiecare nod intern reprezentând un test pe un atribut, fiecare ramură reprezentând concluzia testului și fiecare nod frunză (nod terminal) deținând o etichetă de clasă.
Atunci când variabilele dependente nu au o relație liniară cu variabilele independente, adică atunci când regresia liniară nu produce constatări corecte, arborii de decizie sunt benefice. Obiectul DecisionTreeRegression() poate fi utilizat într-un mod similar pentru a utiliza un arbore de decizie pentru regresie.
6. Pădurea aleatorie
O pădure aleatorie este a masina de învățare abordare pentru rezolvarea problemelor de regresie și clasificare. Se folosește învățarea prin ansamblu, care este o tehnică care combină mai multe clasificatoare pentru a rezolva probleme complicate. O metodă de pădure aleatoare este alcătuită dintr-un număr mare de arbori de decizie. Poate fi folosit pentru a clasifica cererile de împrumut, pentru a detecta comportamentul fraudulos și pentru a anticipa izbucnirea bolilor.
7. Matricea confuziei
O matrice de confuzie este un tabel folosit pentru a descrie performanța modelului de clasificare. Următoarele patru cuvinte sunt folosite pentru a examina matricea de confuzie:
- Adevărat pozitiv: înseamnă că modelul a proiectat un rezultat favorabil și a fost corect.
- Adevărat negativ: înseamnă că modelul a proiectat un rezultat prost și a fost corect.
- Fals pozitiv: înseamnă că modelul se aștepta la un rezultat favorabil, dar a fost într-adevăr unul negativ.
- Fals Negativ: înseamnă că modelul se aștepta la un rezultat negativ, în timp ce rezultatul a fost cu adevărat pozitiv.
Implementarea matricei de confuzie:
Pro-uri
- Este simplu de utilizat.
- Pachetul Scikit-learn este extrem de adaptabil și util, servind obiectivelor din lumea reală, cum ar fi predicția comportamentului consumatorului, dezvoltarea neuroimagelor și așa mai departe.
- Utilizatorii care doresc să conecteze algoritmii cu platformele lor vor găsi documentație detaliată API pe site-ul web Scikit-learn.
- Numeroși autori, colaboratori și o mare comunitate online din întreaga lume susțin și țin Scikit-learn la zi.
Contra
- Nu este opțiunea ideală pentru un studiu aprofundat.
Concluzie
Scikit-learn este un pachet esențial pentru care fiecare cercetător de date trebuie să aibă o înțelegere puternică și o anumită experiență. Acest ghid ar trebui să vă ajute cu manipularea datelor folosind sklearn. Există multe alte capacități ale Scikit-learn pe care le veți descoperi pe măsură ce progresați prin aventura științei datelor. Împărtășește-ți gândurile în comentarii.
Lasă un comentariu