Top proiecte de învățare automată în Python pentru începători [2022]
Publicat: 2021-01-03Dacă doriți să deveniți un profesionist în învățarea automată, va trebui să câștigați experiență folosind tehnologiile sale. Cel mai bun mod de a face acest lucru este finalizarea proiectelor. De aceea, în acest articol, împărtășim mai multe proiecte de învățare automată în Python, astfel încât să puteți începe rapid să vă testați abilitățile și să obțineți experiență valoroasă.
Cu toate acestea, înainte de a începe, asigurați-vă că sunteți familiarizat cu învățarea automată și cu algoritmul acestuia. Dacă nu ați mai lucrat la un proiect înainte, nu vă faceți griji, deoarece am distribuit și un tutorial detaliat despre un proiect:
Cuprins
Setul de date Iris: pentru începători
Setul de date Iris este cu ușurință unul dintre cele mai populare proiecte de învățare automată din Python. Este relativ mic, dar simplitatea și dimensiunea sa compactă îl fac perfect pentru începători. Dacă nu ați lucrat la niciun proiect de învățare automată în Python, ar trebui să începeți cu el. Setul de date Iris este o colecție de dimensiuni de sepal și petal de flori ale florii Iris. Are trei clase, cu 50 de instanțe în fiecare dintre ele.
Am furnizat exemplu de cod în diferite locuri, dar ar trebui să îl utilizați doar pentru a înțelege cum funcționează. Implementarea codului fără a-l înțelege ar eșua premisa realizării proiectului. Prin urmare, asigurați-vă că înțelegeți bine codul înainte de a-l implementa.
Pasul 1: importați bibliotecile
Primul pas al oricărui proiect de învățare automată este importarea bibliotecilor. Un motiv principal pentru care Python este atât de versatil este din cauza bibliotecilor sale robuste. Bibliotecile de care vom avea nevoie în acest proiect sunt:
- panda
- Matplotlib
- Sklearn
- SciPy
- NumPy
Există mai multe metode de a importa biblioteci în sistemul dvs. și ar trebui să utilizați un mod special de a importa toate bibliotecile. Ar asigura consecvența și te-ar ajuta să eviți orice confuzie. Rețineți că instalarea variază în funcție de sistemul de operare al dispozitivului dvs., așa că rețineți acest lucru atunci când importați biblioteci.

Cod:
# Încărcați biblioteci
din panda import read_csv
de la pandas.plotting import scatter_matrix
din matplotlib import pyplot
din sklearn.model_selection import train_test_split
din sklearn.model_selection import cross_val_score
din sklearn.model_selection import StratifiedKFold
din sklearn.metrics import classification_report
din sklearn.metrics import confusion_matrix
din sklearn.metrics import accuracy_score
din sklearn.linear_model import LogisticRegression
din sklearn.tree import DecisionTreeClassifier
din sklearn.neighbors import KNeighborsClassifier
din sklearn.discriminant_analysis import LinearDiscriminantAnalysis
din sklearn.naive_bayes import GaussianNB
din sklearn.svm import SVC
Citiți: Top 10 idei de proiecte de seturi de date de învățare automată pentru începători
Pasul 2: Încărcați setul de date
După importarea bibliotecilor, este timpul să încărcați setul de date. După cum am discutat, vom folosi setul de date Iris în acest proiect. Îl poți descărca de aici .
Asigurați-vă că specificați numele fiecărei coloane în timp ce încărcați datele și vă va ajuta mai târziu în proiect. Vă recomandăm să descărcați setul de date, astfel încât, chiar dacă vă confruntați cu probleme de conexiune, proiectul dvs. va rămâne neafectat.
Cod:
# Încărcați setul de date
url = „https://raw.githubusercontent.com/jbrownlee/Datasets/master/iris.csv”
nume = ['sepal-length', 'sepal-width', 'petal-length', 'petal-width', 'class']
set de date = read_csv(url, names=names)
Pasul 3: Rezumat
Înainte de a începe să folosim setul de date, trebuie să ne uităm mai întâi la datele prezente în el. Vom începe prin a verifica dimensiunea setului de date, care ne arată că setul de date are cinci atribute și 150 de instanțe.
După ce verificați dimensiunea, ar trebui să vă uitați la câteva rânduri și coloane ale setului de date pentru a vă oferi o idee generală despre conținutul acestuia. Apoi ar trebui să vă uitați la rezumatul statistic al setului de date și să vedeți ce valori sunt cele mai răspândite în același.
În cele din urmă, ar trebui să verificați distribuția clasei în setul de date. Asta înseamnă că ar trebui să verificați câte cazuri se încadrează în fiecare clasă. Iată codul pentru rezumarea setului nostru de date:
# rezumă datele
din panda import read_csv
# Încărcați setul de date
url = „https://raw.githubusercontent.com/jbrownlee/Datasets/master/iris.csv”
nume = ['sepal-length', 'sepal-width', 'petal-length', 'petal-width', 'class']
set de date = read_csv(url, names=names)
# formă
print(dataset.shape)
# cap
print(dataset.head(20))
# descrieri
print(dataset.describe())
# distribuție de clasă
print(dataset.groupby('clasa').size())
Pasul 4: Vizualizați datele
După rezumatul setului de date, ar trebui să îl vizualizați pentru o mai bună înțelegere și analiză. Puteți utiliza diagrame univariate pentru a analiza fiecare atribut în detaliu și diagrame multivariate pentru a studia relațiile fiecărei caracteristici. Vizualizarea datelor este un aspect crucial al proiectelor de învățare automată, deoarece ajută la găsirea informațiilor esențiale prezente în setul de date.
Pasul 5: Evaluarea algoritmului
După vizualizarea datelor, vom evalua mai mulți algoritmi pentru a găsi cel mai bun model pentru proiectul nostru. Mai întâi, vom crea un set de date de validare pe care îl vom scoate din cel original. Apoi vom folosi validarea încrucișată de 10 ori și vom crea diverse modele. După cum sa discutat deja, ne propunem să prezicăm specia prin măsurătorile florilor. Ar trebui să utilizați diferite tipuri de algoritmi și să alegeți pe cel care dă cele mai bune rezultate. Puteți testa SVM (Support Vector Machines), KNN (K-Nearest Neighbors), LR (Regresie logistică) și altele.
În implementarea noastră, am găsit că SVM este cel mai bun model. Iată codul:
din panda import read_csv
din matplotlib import pyplot
din sklearn.model_selection import train_test_split
din sklearn.model_selection import cross_val_score
din sklearn.model_selection import StratifiedKFold
din sklearn.linear_model import LogisticRegression
din sklearn.tree import DecisionTreeClassifier
din sklearn.neighbors import KNeighborsClassifier
din sklearn.discriminant_analysis import LinearDiscriminantAnalysis
din sklearn.naive_bayes import GaussianNB
din sklearn.svm import SVC
# Încărcați setul de date
url = „https://raw.githubusercontent.com/jbrownlee/Datasets/master/iris.csv”
nume = ['sepal-length', 'sepal-width', 'petal-length', 'petal-width', 'class']
set de date = read_csv(url, names=names)
# Setul de date de validare împărțit
matrice = set de date.valori
X = matrice[:,0:4]
y = matrice[:,4]
X_train, X_validation, Y_train, Y_validation = train_test_split(X, y, test_size=0,20, random_state=1, shuffle=True)
# Algoritmi de verificare la fața locului
modele = []
models.append(('LR', LogisticRegression(solver='liblinear', multi_class='ovr')))
models.append(('LDA', LinearDiscriminantAnalysis()))
models.append(('KNN', KNeighborsClassifier()))
models.append(('CART', DecisionTreeClassifier()))
models.append(('NB', GaussianNB()))
models.append(('SVM', SVC(gamma='auto')))
# evaluați fiecare model pe rând
rezultate = []
nume = []
pentru nume, model in modele:
kfold = StratifiedKFold(n_splits=10, random_state=1, shuffle=True)
cv_results = cross_val_score(model, X_train, Y_train, cv=kfold, scoring='accuracy')
results.append(cv_results)

names.append(nume)
print('%s: %f (%f)' % (nume, cv_results.mean(), cv_results.std()))
# Comparați algoritmi
pyplot.boxplot(rezultate, labels=names)
pyplot.title('Comparație de algoritm')
pyplot.show()
Pasul 6: Prezice
După ce ați evaluat diferiți algoritmi și l-ați ales pe cel mai bun, este timpul să preziceți rezultatele. Vom folosi mai întâi modelul nostru pe setul de date de validare pentru a vedea testarea acurateței acestuia. După aceea, îl vom testa pe întregul set de date.
Iată codul pentru rularea modelului nostru pe setul de date:
# a face predictii
din panda import read_csv
din sklearn.model_selection import train_test_split
din sklearn.metrics import classification_report
din sklearn.metrics import confusion_matrix
din sklearn.metrics import accuracy_score
din sklearn.svm import SVC
# Încărcați setul de date
url = „https://raw.githubusercontent.com/jbrownlee/Datasets/master/iris.csv”
nume = ['sepal-length', 'sepal-width', 'petal-length', 'petal-width', 'class']
set de date = read_csv(url, names=names)
# Setul de date de validare împărțit
matrice = set de date.valori
X = matrice[:,0:4]
y = matrice[:,4]
X_train, X_validation, Y_train, Y_validation = tren_test_split(X, y, test_size=0,20, random_state=1)
# Faceți predicții asupra setului de date de validare
model = SVC(gamma='auto')
model.fit(X_train, Y_train)
predictions = model.predict(X_validation)
# Evaluați previziunile
print(accuracy_score(Y_validation, predictions))
print(confusion_matrix(Y_validation, predictions))
print(raport_clasificare(Validare_Y, predicții))
Asta e. Acum ați finalizat un proiect de învățare automată în Python utilizând setul de date Iris.
Proiecte suplimentare de învățare automată în Python
Setul de date Iris este în primul rând pentru începători. Dacă aveți ceva experiență de lucru la proiecte de învățare automată în Python, ar trebui să vă uitați la proiectele de mai jos:
1. Utilizați ML pentru a estima prețurile acțiunilor
Un loc excelent pentru a aplica algoritmi de învățare automată este piața de acțiuni. Companiile folosesc algoritmi AI și tehnologii bazate pe ML pentru a efectua analize tehnice de ceva timp. De asemenea, puteți construi un model ML care prezice prețurile acțiunilor.
Cu toate acestea, pentru a lucra la acest proiect, va trebui să utilizați mai multe tehnici, inclusiv analiza regresiei, analiza predictivă, modelarea statistică și analiza acțiunilor. Puteți obține datele necesare de pe site-urile oficiale ale burselor de valori. Ei împărtășesc date despre performanțele anterioare ale acțiunilor. Puteți folosi acele date pentru a vă instrui și testa modelul.
În calitate de începător, vă puteți concentra asupra unei anumite companii și puteți prezice valoarea acțiunilor acesteia timp de trei luni. În mod similar, dacă doriți să faceți proiectul dificil, puteți utiliza mai multe companii și puteți extinde termenele de predicție.
Ce veți învăța din acest proiect:
Acest proiect vă va familiariza cu aplicațiile AI și ML în industria financiară. De asemenea, puteți studia analiza predictivă prin acest proiect și încercați diferiți algoritmi.
2. Scrieți un algoritm de învățare automată de la zero
Dacă sunteți începător și nu ați lucrat la niciun proiect de învățare automată în Python, puteți începe și cu acesta. În acest proiect, trebuie să construiți un algoritm ML de la zero. Realizarea acestui proiect vă va ajuta să înțelegeți toate elementele de bază ale funcțiilor algoritmului, în timp ce vă învățați să convertiți formulele matematice în cod de învățare automată.
Este crucial să știi cum să convertești concepte matematice în cod ML, deoarece va trebui să îl implementezi de mai multe ori în viitor. Pe măsură ce veți aborda probleme mai avansate, va trebui să vă bazați pe această abilitate. Puteți alege orice algoritm în funcție de familiaritatea dvs. cu conceptele sale. Cel mai bine ar fi să începeți cu un algoritm simplu dacă vă lipsește experiența.
Ce veți învăța din acest proiect:
Te vei familiariza cu conceptele matematice ale inteligenței artificiale și ale învățării automate.
3. Creați un cititor de scris de mână
Acesta este un proiect de viziune computerizată. Viziunea computerizată este sectorul inteligenței artificiale legat de analiza imaginilor. În acest proiect, veți crea un model ML care poate citi scrisul de mână. Citirea înseamnă că modelul ar trebui să fie capabil să recunoască ceea ce este scris pe hârtie. Ar trebui să utilizați o rețea neuronală în acest proiect pentru a vă familiariza cu învățarea profundă și conceptele sale relevante.
Mai întâi va trebui să preprocesați imaginea și să eliminați secțiunile inutile; cu alte cuvinte, efectuați curățarea datelor pe imagine pentru claritate. După aceea, va trebui să efectuați segmentarea și redimensionarea imaginii astfel încât algoritmul să poată citi corect caracterele. Odată ce ați finalizat preprocesarea și segmentarea, puteți trece la pasul următor, clasificarea. Un algoritm de clasificare va distinge personajele prezente în text și le va pune în categoriile lor respective.
Puteți utiliza activarea log sigmoid pentru a vă antrena algoritmul ML pentru acest proiect.
Ce veți învăța din acest proiect:
Veți ajunge să studiați viziunea computerizată și rețelele neuronale. Finalizarea acestui proiect vă va familiariza și cu recunoașterea și analiza imaginilor.
4. Un predictor de vânzări
Sectorul retail are multe aplicații pentru AI și învățarea automată. În acest proiect, veți descoperi o astfel de aplicație, adică prezicerea vânzărilor de produse.
Un set de date predominant printre pasionații de învățare automată este setul de date de vânzări BigMart. Are peste 1559 de produse răspândite în diferitele sale puncte de vânzare din 10 orașe. Puteți utiliza setul de date pentru a construi un model de regresie. Potrivit punctelor de vânzare, modelul dumneavoastră trebuie să prezică vânzările potențiale ale anumitor produse în anul următor. Acest set de date are atribute specifice pentru fiecare punct de vânzare și produs pentru a înțelege rapid proprietățile lor și relația dintre cele două.
Ce veți învăța din acest proiect:

Lucrul la acest proiect vă va familiariza cu modelele de regresie și analiza predictivă. Veți afla, de asemenea, despre aplicațiile învățării automate în sectorul retail.
Aflați mai multe despre Machine Learning și Python
Sperăm că ați găsit utilă această listă de proiecte de învățare automată în Python. Dacă aveți întrebări sau gânduri, vă rugăm să ne spuneți prin secțiunea de comentarii. Ne-ar plăcea să vă răspundem la întrebări.
Î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.
Iată câteva resurse suplimentare pentru a studia învățarea automată și Python.
- Tutorial Python
- Învățare automată vs. Invatare profunda
- Aplicații de învățare automată
Pe de altă parte, dacă doriți să obțineți o experiență de învățare mai personalizată, puteți urma un curs de AI și ML. Veți putea învăța de la experții din industrie prin videoclipuri, sarcini și proiecte.
Este învățarea automată o bună alegere de carieră?
Dacă sunteți pasionat de tehnologiile emergente și știrile conexe, probabil că ați auzit deja despre a patra revoluție industrială adusă de tehnologia învățării automate. Potrivit rapoartelor, piața globală a învățării automate este de așteptat să atingă o valoare de 543 de miliarde INR până în 2023. Cu toate acestea, decalajul dintre cererea și oferta de profesioniști competenți în învățarea automată a crescut la aproape 125%. Acest lucru indică faptul că pentru un profesionist în învățarea automată cu combinația potrivită de competențe, piața muncii deține o mulțime de promisiuni. Indiferent dacă aspirați să deveniți inginer de învățare automată, inginer de cercetare sau om de știință, va fi, fără îndoială, o carieră îmbogățitoare pentru dvs.
Poate o geantă mai proaspătă o muncă de învățare automată?
Chiar dacă majoritatea joburilor de învățare automată de astăzi necesită profesioniști cu experiență, opțiunile pentru freshers sunt, de asemenea, în creștere, din cauza cererii enorme de pe piață. Poate fi dificil pentru începători, dar cu siguranță nu este imposibil să obții un job de învățare automată. Dacă poți stăpâni abilitățile necesare, să planifici cum să performați bine și să învățați rapid de la jucătorii cu experiență de pe teren, puteți lua și locul de muncă de vis. Puteți lua în considerare opțiuni precum obținerea de certificări relevante pentru a adăuga mai multă valoare, înscrierea la cursuri de învățare automată pe platforme de încredere, încercarea unor proiecte practice, urmărirea ultimelor știri și tendințe tehnologice și alăturarea comunităților online.
Cât câștigă un inginer de învățare automată?
Salariul mediu luat de un inginer de învățare automată din India este de aproximativ 8,2 lakh INR pe an, conform datelor de pe glassdoor.in. Acum, venitul mediu depinde de mai mulți factori, cum ar fi abilități, certificări, experiență, locație și multe altele. Dar cu mai multă experiență de lucru, vă puteți aștepta să vă creșteți câștigurile. De exemplu, inginerii seniori de învățare automată pot câștiga în medie între 13 și 15 INR.