Table of Contents[Ferstopje][Toanje]
As jo in Python-programmeur binne of as jo op syk binne nei in krêftige toolkit om te brûken om masine learen yn in produksjesysteem yn te fieren, is Scikit-learn in bibleteek dy't jo moatte kontrolearje.
Scikit-learn is goed dokumintearre en ienfâldich te brûken, oft jo nij binne foar masine learen, wolle fluch oan de slach, of wolle brûke it meast bywurke ML ûndersyk ark.
It lit jo in foarsizzend gegevensmodel konstruearje yn mar in pear rigels koade en brûkt dat model dan om jo gegevens te passen as in bibleteek op heech nivo. It is fleksibel en wurket goed mei oaren Python biblioteken lykas Matplotlib foar charting, NumPy foar array-fektorisaasje, en panda's foar datafisualisaasje.
Yn dizze hantlieding sille jo alles fine oer wat it is, hoe't jo it kinne brûke, tegearre mei de foar- en neidielen.
Wat is Scikit-leare?
Scikit-learn (ek wol sklearn neamd) biedt in ferskaat oan statistyske modellen en masine learen. Oars as de measte modules is sklearn ûntwikkele yn Python ynstee fan C. Nettsjinsteande dat se ûntwikkele binne yn Python, wurdt de effisjinsje fan sklearn taskreaun oan it brûken fan NumPy foar hege prestaasjes lineêre algebra en array-operaasjes.
Scikit-Learn is makke as ûnderdiel fan Google's Summer of Code-projekt en hat sûnt it libben fan miljoenen Python-sintraal gegevenswittenskippers oer de hiele wrâld ienfâldiger makke. Dizze seksje fan 'e searje rjochtet him op it presintearjen fan' e bibleteek en fokusje op ien elemint - datasettransformaasjes, dy't in wichtige en fitale stap binne om te nimmen foardat jo in foarsizzingsmodel ûntwikkelje.
De bibleteek is basearre op SciPy (Scientific Python), dy't ynstalleare moat foardat jo scikit-learn brûke kinne. Dizze stapel befettet de folgjende items:
- NumPy: Python's standert n-dimensionale arraypakket
- SciPy: It is in fûnemintele pakket foar wittenskiplike komputer
- Pandas: Gegevensstruktueren en analyze
- Matplotlib: It is in krêftige 2D/3D plotbibleteek
- Sympy: Symboalyske wiskunde
- IPython: Ferbettere ynteraktive konsole
Applikaasjes fan 'e Scikit-learn-bibleteek
Scikit-learn is in iepen boarne Python-pakket mei ferfine gegevensanalyse en miningfunksjes. It komt mei in oerfloed fan ynboude algoritmen om jo te helpen it measte út jo datawittenskipprojekten te heljen. De Scikit-learn-bibleteek wurdt op de folgjende manieren brûkt.
1. Regression
Regression-analyze is in statistyske technyk foar it analysearjen en begripen fan de ferbining tusken twa of mear fariabelen. De metoade dy't brûkt wurdt om regression-analyze te dwaan helpt by it bepalen fan hokker eleminten relevant binne, dy't negearre wurde kinne, en hoe't se ynteraksje. Regressiontechniken kinne bygelyks brûkt wurde om it gedrach fan oandielprizen better te begripen.
Regression-algoritmen omfetsje:
- Lineêre regression
- Ridge Regression
- Lasso -regresje
- Beslút Tree Regression
- Random Forest
- Stypje Vector Machines (SVM)
2. Klassifikaasje
De klassifikaasjemetoade is in oanpak fan Supervised Learning dy't traininggegevens brûkt om de kategory fan nije observaasjes te identifisearjen. In algoritme yn Klassifikaasje leart fan in opjûne dataset of observaasjes en klassifisearret dan ekstra observaasjes yn ien fan in protte klassen of groepearrings. Se kinne bygelyks brûkt wurde om e-postkommunikaasje te klassifisearjen as spam of net.
Klassifikaasjealgoritmen omfetsje de folgjende:
- Logistyske regression
- K-Nearste Buorlju
- Stypje Vector Machine
- Beslútsteam
- Random Forest
3. Clustering
De klusteringalgoritmen yn Scikit-learn wurde brûkt om gegevens mei ferlykbere eigenskippen automatysk yn sets te regeljen. Clustering is it proses fan it groepearjen fan in set items sadat dy yn deselde groep mear ferlykber binne mei dy yn oare groepen. Klantgegevens kinne bygelyks skieden wurde op basis fan har lokaasje.
Clustering-algoritmen omfetsje de folgjende:
- DB-SCAN
- K-Means
- Mini-Batch K-Means
- Spektrale klustering
4. Model Seleksje
Algorithmen foar seleksje fan modellen jouwe metoaden foar it fergelykjen, validearjen en selektearjen fan de optimale parameters en modellen foar gebrûk yn inisjativen foar gegevenswittenskip. Sjoen gegevens is modelseleksje it probleem fan it kiezen fan in statistysk model út in groep kandidaatmodellen. Yn 'e meast basale omstannichheden wurdt rekken holden mei in foarôf besteande samling fan gegevens. De taak kin lykwols ek it ûntwerp fan eksperiminten omfetsje, sadat de oanhelle gegevens goed geskikt binne foar it modelseleksjeprobleem.
Modelseleksjemodules dy't de krektens kinne ferbetterje troch parameters oan te passen omfetsje:
- Cross-validaasje
- Grid Search
- Metrics
5. Dimensionality Reduction
De oerdracht fan gegevens fan in hege diminsjonale romte nei in leechdiminsjonale romte, sadat de leechdiminsjonale foarstelling guon wichtige aspekten fan 'e orizjinele gegevens behâldt, by útstek tichtby har ynherinte dimensje, wurdt bekend as dimensjereduksje. It oantal willekeurige fariabelen foar analyse wurdt fermindere as de dimensionality wurdt fermindere. Bûtenlizzende gegevens kinne bygelyks net wurde beskôge om de effisjinsje fan fisualisaasjes te ferbetterjen.
Dimensionaliteitsreduksje-algoritme omfettet it folgjende:
- Feiligens seleksje
- Principal Component Analysis (PCA)
Ynstallaasje fan Scikit-learn
NumPy, SciPy, Matplotlib, IPython, Sympy, en Pandas moatte wurde ynstalleare foardat Scikit-learn brûkt wurdt. Litte wy se ynstallearje mei pip fan 'e konsole (wurket allinich foar Windows).
Litte wy Scikit-learn ynstallearje no't wy de fereaske biblioteken ynstalleare hawwe.
Features
Scikit-learn, soms bekend as sklearn, is in Python-ark foar it ymplementearjen fan masine-learmodellen en statistyske modellering. Wy kinne it brûke om meardere masine-learmodellen te meitsjen foar regression, klassifikaasje en klustering, lykas statistyske ark foar it beoardieljen fan dizze modellen. It omfettet ek dimensjereduksje, funksjeseleksje, funksjeekstraksje, ensemblebenaderingen en ynboude datasets. Wy sille elk fan dizze kwaliteiten ien foar ien ûndersykje.
1. Ymportearje datasets
Scikit-learn omfettet in oantal foarboude datasets, lykas de iris-dataset, hûspriisdataset, titanyske dataset, ensfh. De wichtichste foardielen fan dizze datasets binne dat se ienfâldich binne te begripen en kinne wurde brûkt om ML-modellen fuortendaliks te ûntwikkeljen. Dizze datasets binne geskikt foar begjinners. Op deselde manier kinne jo sklearn brûke om ekstra datasets te ymportearjen. Op deselde manier kinne jo it brûke om ekstra datasets te ymportearjen.
2. Splitting Dataset foar Training en Testing
Sklearn omfette de mooglikheid om de dataset te ferdielen yn training- en testsegminten. Splitsen fan de dataset is nedich foar in ûnbidige beoardieling fan foarsizzingsprestaasjes. Wy kinne spesifisearje hoefolle fan ús gegevens moatte wurde opnommen yn 'e trein- en testdatasets. Wy hawwe de dataset ferdield mei treintestsplit sa dat de treinset 80% fan 'e gegevens omfettet en de testset 20%. De dataset kin as folget ferdield wurde:
3. Lineêre regression
Lineêre regression is in begeliede lear-basearre masine learen technyk. It fiert in regression-taak út. Op grûn fan ûnôfhinklike fariabelen, regression modellen in doel foarsizzing wearde. It wurdt meast brûkt om de keppeling te bepalen tusken fariabelen en foarsizzing. Ferskillende regressionmodellen ferskille yn termen fan it type ferbining dat se evaluearje tusken ôfhinklike en ûnôfhinklike fariabelen, lykas ek it oantal unôfhinklike fariabelen brûkt. Wy kinne it lineêre regressionmodel gewoan oanmeitsje mei sklearn as folget:
4. Logistyske regression
In mienskiplike oanpak foar kategorisearring is logistyske regression. It is yn deselde famylje as polynomiale en lineêre regression en heart ta de lineêre klassifikaasjefamylje. De befinings fan logistyske regression binne ienfâldich te begripen en binne fluch te berekkenjen. Op deselde wize as lineêre regression is logistyske regression in begeliede regressiontechnyk. De útfierfariabele is kategoriaal, dus dat is it ienige ferskil. It kin bepale oft in pasjint in hertsykte hat of net.
Ferskate klassifikaasjeproblemen, lykas spam-deteksje, kinne wurde oplost mei logistyske regression. Diabetesfoarsizzing, bepale as in konsumint in spesifyk produkt sil keapje of oerskeakelje nei in rivaal, bepale oft in brûker sil klikke op in spesifike marketingkeppeling, en in protte mear senario's binne mar in pear foarbylden.
5. Beslút Tree
De machtichste en meast brûkte klassifikaasje- en foarsizzingstechnyk is de beslútbeam. In beslútbeam is in beamstruktuer dy't liket op in flowchart, mei elke ynterne knooppunt dy't in test op in attribút fertsjintwurdiget, elke tûke fertsjintwurdiget de konklúzje fan 'e test, en elk blêdknooppunt (terminalknooppunt) mei in klasselabel.
Wannear't de ôfhinklike fariabelen gjin lineêre relaasje hawwe mei de ûnôfhinklike fariabelen, dus as lineêre regression gjin korrekte befinings produsearret, binne beslútbeammen foardielich. It DecisionTreeRegression()-objekt kin op in fergelykbere wize brûkt wurde om in beslútbeam foar regression te brûken.
6. Random Forest
In willekeurige bosk is in masine learen oanpak foar it oplossen fan problemen mei regression en klassifikaasje. It makket gebrûk fan ensemble learen, dat is in technyk dy't meardere klassifikaasjes kombineart om yngewikkelde problemen op te lossen. In willekeurige bosk metoade bestiet út in grut oantal beslút beammen. It kin brûkt wurde om lieningsapplikaasjes te kategorisearjen, frauduleus gedrach te detektearjen en sykte-útbraken te antisipearjen.
7. Ferwarring Matrix
In betizing matrix is in tabel brûkt om te beskriuwen klassifikaasje model prestaasjes. De folgjende fjouwer wurden wurde brûkt om de betizingsmatrix te ûndersiikjen:
- Wier posityf: It betsjuttet dat it model in geunstich resultaat projizearre en dat it korrekt wie.
- Wier negatyf: It betsjuttet dat it model in minne resultaat projizearre en dat it korrekt wie.
- False Posityf: It betsjuttet dat it model in geunstich resultaat ferwachte, mar it wie echt in negatyf.
- False Negative: It betsjut dat it model in negatyf resultaat ferwachte, wylst de útkomst echt posityf wie.
Implementaasje fan betizing matrix:
pros
- It is gewoan te brûken.
- It Scikit-learpakket is ekstreem oanpasber en nuttich, en tsjinnet echte doelen lykas foarsizzing fan konsumintgedrach, neuroimage-ûntwikkeling, ensfh.
- Brûkers dy't de algoritmen wolle ferbine mei har platfoarms sille detaillearre API-dokumintaasje fine op 'e Scikit-learn-webside.
- Tal fan auteurs, kollaborateurs, en in grutte wrâldwide online mienskip stypje en hâld Scikit-learn by de tiid.
Cons
- It is net de ideale opsje foar yngeande stúdzje.
Konklúzje
Scikit-learn is in kritysk pakket foar elke gegevenswittenskipper om in sterk begryp fan en wat ûnderfining mei te hawwen. Dizze hantlieding moat jo helpe by gegevensmanipulaasje mei sklearn. D'r binne folle mear mooglikheden fan Scikit-learn dy't jo sille ûntdekke as jo foarútgong troch jo aventoer fan gegevenswittenskip. Diel jo gedachten yn 'e kommentaren.
Leave a Reply