Enhavtabelo[Kaŝi][Montri]
Se vi estas Python-programisto aŭ se vi serĉas potencan ilaron por uzi por enkonduki maŝinlernadon en produktadsistemon, Scikit-learn estas biblioteko, kiun vi devas kontroli.
Scikit-learn estas bone dokumentita kaj simple uzebla, ĉu vi estas nova al maŝinlernado, ĉu vi volas ekfunkcii rapide aŭ ĉu vi volas uzi la plej ĝisdatigitan ML-esploran ilon.
Ĝi permesas vin konstrui prognozan datummodelon en nur kelkaj linioj de kodo kaj poste uzas tiun modelon por konveni viajn datumojn kiel altnivelan bibliotekon. Ĝi estas fleksebla kaj funkcias bone kun aliaj Python-bibliotekoj kiel Matplotlib por mapado, NumPy por tabelvektorizado, kaj pandoj por datuma bildigo.
En ĉi tiu gvidilo, vi ekscios ĉion pri kio ĝi estas, kiel vi povas uzi ĝin, kune kun ĝiaj avantaĝoj kaj malavantaĝoj.
Kio estas Scikit-lerni?
Scikit-learn (ankaŭ konata kiel sklearn) ofertas diversan aron de statistikaj modeloj kaj maŝinlernado. Male al la plej multaj moduloj, sklearn estas evoluigita en Python prefere ol C. Malgraŭ estado evoluigita en Python, la efikeco de sklearn estas atributita al sia uzo de NumPy por alt-efikecaj linearaj algebro kaj tabeloperacioj.
Scikit-Learn estis kreita kiel parto de la Summer of Code-projekto de Google kaj de tiam simpligis la vivojn de milionoj da Python-centraj datumsciencistoj tra la mondo. Ĉi tiu sekcio de la serio fokusiĝas pri prezentado de la biblioteko kaj fokuso sur unu elemento - datumaraj transformoj, kiuj estas ŝlosila kaj esenca paŝo por fari antaŭ evoluigado de prognoza modelo.
La biblioteko baziĝas sur SciPy (Scienca Python), kiu devas esti instalita antaŭ ol vi povas uzi scikit-learn. Ĉi tiu stako enhavas la jenajn erojn:
- NumPy: la norma n-dimensia tabelpakaĵo de Python
- SciPy: Ĝi estas fundamenta pakaĵo por scienca komputado
- Pandoj: datumstrukturoj kaj analizo
- Matplotlib: Ĝi estas potenca 2D/3D intriga biblioteko
- Sympy: Simbola matematiko
- IPython: Plibonigita interaga konzolo
Aplikoj de la Scikit-learn biblioteko
Scikit-learn estas malfermfonta Python-pakaĵo kun altnivelaj analizo de datumoj kaj minindustriaj funkcioj. Ĝi venas kun amaso da enkonstruitaj algoritmoj por helpi vin akiri la plej grandan parton de viaj datumsciencaj projektoj. La Scikit-learn-biblioteko estas uzata laŭ la sekvaj manieroj.
1. Regreso
Regresanalizo estas statistika tekniko por analizi kaj kompreni la ligon inter du aŭ pli da variabloj. La metodo uzita por fari regresan analizon helpas determini kiuj elementoj estas signifaj, kiuj povas esti ignoritaj, kaj kiel ili interagas. Regresaj teknikoj, ekzemple, povas esti uzataj por pli bone kompreni la konduton de akciaj prezoj.
Regresalgoritmoj inkludas:
- Lineara Regresado
- Kresta Regreso
- Lazo-Regreso
- Decida Arba Regreso
- Hazarda Arbaro
- Subtenaj Vektoraj Maŝinoj (SVM)
2. Klasifiko
La Klasifika metodo estas Kontrolita Lernado-aliro kiu uzas trejnajn datumojn por identigi la kategorion de freŝaj observoj. Algoritmo en Klasifiko lernas de donita datumaro aŭ observaĵojn kaj tiam klasifikas pliajn observaĵojn en unu el multaj klasoj aŭ grupiĝoj. Ili povas, ekzemple, esti uzataj por klasifiki retpoŝtajn komunikadojn kiel spamon aŭ ne.
Klasifikaj algoritmoj inkluzivas jenajn:
- Loĝista Regreso
- K-Plej Proksimaj Najbaroj
- Subteno Vektora Maŝino
- Decida Arbo
- Hazarda Arbaro
3. Agrupiĝo
La clustering-algoritmoj en Scikit-learn estas uzataj por aŭtomate aranĝi datumojn kun similaj trajtoj en arojn. Clustering estas la procezo de grupigado de aro de eroj tiel ke tiuj en la sama grupo estas pli similaj al tiuj en aliaj grupoj. Klientaj datumoj, ekzemple, povus esti apartigitaj laŭ ilia loko.
Clustering-algoritmoj inkludas la sekvantajn:
- DB-SCANADO
- K-Rimedo
- Mini-Batch K-Rimedo
- Spektra Clustering
4. Modela Elekto
Modelelekto-algoritmoj disponigas metodojn por kompari, validigi, kaj selekti la optimumajn parametrojn kaj modelojn por uzo en datumsciencaj iniciatoj. Surbaze de datenoj, modelelekto estas la problemo de elektado de statistika modelo de grupo de kandidatmodeloj. En la plej bazaj cirkonstancoj, antaŭekzistanta kolekto de datumoj estas enkalkulita. Tamen, la tasko ankaŭ povas inkludi la dezajnon de eksperimentoj tiel ke la datenoj akiritaj estas bone konvenitaj al la modelelektoproblemo.
Modelaj elektaj moduloj kiuj povas plibonigi precizecon ĝustigante parametrojn inkluzivas:
- Krucvalidigo
- Krada Serĉo
- metrikoj
5. Dimensieco Redukto
La translokigo de datenoj de alt-dimensia spaco ĝis malalt-dimensia spaco tiel ke la malalt-dimensia reprezentado konservas kelkajn signifajn aspektojn de la originaj datenoj, ideale proksime al sia eneca dimensio, estas konata kiel dimensiecredukto. La nombro da hazardaj variabloj por analizo estas reduktita kiam la dimensieco estas reduktita. Eksteraj datumoj, ekzemple, eble ne estas konsiderataj plibonigi la efikecon de bildigoj.
Algoritmo de Redukto de Dimensieco inkluzivas la jenajn:
- Ebla elekto
- Ĉefa Komponenta Analizo (PCA)
Instalante Scikit-learn
NumPy, SciPy, Matplotlib, IPython, Sympy kaj Pandas devas esti instalitaj antaŭ uzi Scikit-learn. Ni instalu ilin uzante pip de la konzolo (funkcias nur por Vindozo).
Ni instalu Scikit-learn nun, ke ni instalis la bezonatajn bibliotekojn.
Trajtoj
Scikit-learn, foje konata kiel sklearn, estas Python ilaro por efektivigado de maŝinlernado-modeloj kaj statistika modeligado. Ni povas uzi ĝin por krei multoblajn maŝinlernajn modelojn por regreso, klasifiko kaj grupigo, same kiel statistikajn ilojn por taksi ĉi tiujn modelojn. Ĝi ankaŭ inkludas dimensiecredukton, trajtoselekton, trajto-eltiron, ensemblo-alirojn, kaj enkonstruitajn datumarojn. Ni esploros ĉiun el ĉi tiuj kvalitoj unuope.
1. Importi Datumarojn
Scikit-learn inkluzivas kelkajn antaŭkonstruitajn datumarojn, kiel la irisa datumserio, hejma prezo datumserio, titana datumaro, ktp. La ĉefaj avantaĝoj de ĉi tiuj datumaroj estas, ke ili estas simplaj kompreneblaj kaj povas esti uzataj por tuj evoluigi ML-modelojn. Ĉi tiuj datumaroj taŭgas por novuloj. Simile, vi povas uzi sklearn por importi pliajn datumarojn. Simile, vi povas uzi ĝin por importi pliajn datumarojn.
2. Disdividanta Datumaron por Trejnado kaj Testado
Sklearn inkludis la kapablon dividi la datumaron en trejnadon kaj testajn segmentojn. Disigi la datumaron estas postulata por senantaŭjuĝa taksado de prognoza efikeco. Ni povas specifi kiom da niaj datumoj devus esti inkluzivitaj en la trajno kaj testaj datumaroj. Ni dividis la datumaron uzante trajntestdividon tiel ke la trajnaro konsistas el 80% de la datumoj kaj la testaro havas 20%. La datumaro povas esti dividita jene:
3. Lineara Regreso
Lineara Regreso estas kontrolita lernad-bazita maŝinlernada tekniko. Ĝi efektivigas regresan laboron. Surbaze de sendependaj variabloj, regreso modeligas celan prognozvaloron. Ĝi estas plejparte uzata por determini la ligon inter variabloj kaj antaŭdiro. Malsamaj regresmodeloj malsamas laŭ la speco de ligo kiun ili taksas inter dependaj kaj sendependaj variabloj, same kiel la nombro da sendependaj variabloj utiligitaj. Ni povas simple krei la Linearan Regresan modelon uzante sklearn jene:
4. Loĝistika Regreso
Ofta kategoria aliro estas loĝistika regreso. Ĝi estas en la sama familio kiel polinoma kaj lineara regreso kaj apartenas al la lineara klasigilo familio. La trovoj de loĝistika regreso estas simplaj kompreneblaj kaj rapide komputeblaj. En la sama maniero kiel linia regreso, loĝistika regreso estas kontrolita regresa tekniko. La eliga variablo estas kategoria, do tio estas la sola diferenco. Ĝi povas determini ĉu paciento havas aŭ ne kormalsanon.
Diversaj klasifikproblemoj, kiel spamdetekto, povas esti solvitaj per loĝistika regreso. Diabeta prognozo, determini ĉu konsumanto aĉetos specifan produkton aŭ ŝanĝos al rivalo, determini ĉu uzanto alklakos specifan merkatan ligon, kaj multaj pliaj scenaroj estas nur kelkaj ekzemploj.
5. Arbo de decido
La plej potenca kaj vaste uzata klasifika kaj prognoza tekniko estas la decida arbo. Decidarbo estas arbstrukturo kiu aspektas pli kiel fludiagramo, kie ĉiu interna nodo reprezentas teston sur atributo, ĉiu branĉo reprezentas la konkludon de la testo, kaj ĉiu folionodo (fina nodo) tenante klasetikedon.
Kiam la dependaj variabloj ne havas linearan rilaton kun la sendependaj variabloj, te kiam lineara regreso ne produktas ĝustajn rezultojn, decidarboj estas utilaj. La objekto DecisionTreeRegression() povas esti uzata simile por uzi decidan arbon por regreso.
6. Hazarda Arbaro
Hazarda arbaro estas a maŝinlernado aliro por solvi regresajn kaj klasifikajn problemojn. Ĝi uzas ensemblan lernadon, kiu estas tekniko kiu kombinas multoblajn klasigilojn por solvi komplikajn problemojn. Hazarda arbarmetodo konsistas el granda nombro da decidaj arboj. Ĝi povas esti uzata por klasifiki pruntpetojn, detekti fraŭdan konduton kaj antaŭvidi malsanojn.
7. Konfuza Matrico
Konfuza matrico estas tabelo uzata por priskribi klasifikmodelefikecon. La sekvaj kvar vortoj estas uzataj por ekzameni la konfuzmatricon:
- Vera Pozitiva: Ĝi signifas, ke la modelo projekciis favoran rezulton kaj ĝi estis ĝusta.
- Vera Negativo: Ĝi signifas, ke la modelo projekciis malbonan rezulton kaj ĝi estis ĝusta.
- Falsa Pozitiva: Ĝi signifas ke la modelo atendis favoran rezulton sed ĝi estis vere negativa.
- Falsa Negativa: Ĝi signifas, ke la modelo atendis negativan rezulton, dum la rezulto estis vere pozitiva.
Konfuza matrico efektivigo:
avantaĝoj
- Estas simple uzi.
- La Scikit-learn-pakaĵo estas ekstreme adaptebla kaj utila, servante realajn celojn kiel konsumanta konduto-antaŭdiro, neŭrobilda evoluo, kaj tiel plu.
- Uzantoj, kiuj deziras konekti la algoritmojn kun siaj platformoj, trovos detalan API-dokumentadon en la retejo Scikit-learn.
- Multaj aŭtoroj, kunlaborantoj kaj granda tutmonde interreta komunumo subtenas kaj konservas Scikit-learn ĝisdatigita.
contras
- Ĝi ne estas la ideala elekto por profunda studo.
konkludo
Scikit-learn estas kritika pako por ĉiu datuma sciencisto por havi fortan komprenon kaj iom da sperto. Ĉi tiu gvidilo devus helpi vin pri manipulado de datumoj uzante sklearn. Estas multaj pli da kapabloj de Scikit-learn, kiujn vi malkovros dum vi progresos tra via datuma scienca aventuro. Kunhavigu viajn pensojn en la komentoj.
Lasi Respondon