Sei sulla pagina 1di 34

INTELLIGENZA ARTIFICIALE ITALIA

intelligenzaartificialeitalia.net/post/b4ba9442-e80b-4ff0-a8e0-
48d08418e344/preview/4jWJM1hcCzIixlbocoRiQ3181qtIZMLO5EailgcaliQ.eyJpbnN0YW5jZUlkIjoiYjAzOWJiNjEtMmFjN
y00MTNmLTgzNWQtMDA2ZWVhZTNjYWYzIiwiYXBwRGVmSWQiOiIxNGJjZGVkNy0wMDY2LTdjMzUtMTRkNy00NjZj
YjNmMDkxMDMiLCJtZXRhU2l0ZUlkIjoiMjdlMTk2ZDUtNmQzZi00Yjc4LThmNmYtZGU4YTQyMzE3ODdhIiwic2lnbkRhd
GUiOiIyMDIyLTA1LTMwVDA2OjU4OjAxLjg4N1oiLCJ1aWQiOiIzYzAyOWY1My1kNWNiLTQ0MDctYTI4Ny1lOTBjNDg5Z
TgxZTIiLCJwZXJtaXNzaW9ucyI6Ik9XTkVSIiwiZGVtb01vZGUiOmZhbHNlLCJvcmlnaW5JbnN0YW5jZUlkIjoiNDhmMGU
zOGItOTM5ZS00NDhjLWFjZDgtZTI3NDliZjc5ZTkxIiwiYmlUb2tlbiI6Ijk3ZDgyZGI0LTQ3ZjgtMGE0Ny0wYzMyLWRlZTRh
OGQyYjI4OSIsInNpdGVPd25lcklkIjoiM2MwMjlmNTMtZDVjYi00NDA3LWEyODctZTkwYzQ4OWU4MWUyIiwic2l0ZU1lb
WJlcklkIjoiM2MwMjlmNTMtZDVjYi00NDA3LWEyODctZTkwYzQ4OWU4MWUyIiwiZXhwaXJhdGlvbkRhdGUiOiIyMDIyLT
A1LTMwVDEwOjU4OjAxLjg4N1oiLCJsb2dpbkFjY291bnRJZCI6IjNjMDI5ZjUzLWQ1Y2ItNDQwNy1hMjg3LWU5MGM0O
DllODFlMiJ9

Python è una delle piattaforme in più rapida crescita per l'apprendimento automatico
applicato. In questo mini-corso scoprirai come iniziare, creare modelli accurati e
completare con sicurezza progetti di machine learning di modellazione predittiva
utilizzando Python.

Questo è un post molto importante e ricco di concetti fondamentali che difficilmente


cambieranno nel tempo, ti consigliamo di aggiungerlo ai segnalibri.

A chi è rivolto questo corso gratis su Python e Machine learning?


Prima di iniziare, assicuriamoci che tu sia nel posto giusto.

L'elenco seguente fornisce alcune linee guida generali su chi è stato progettato questo
corso gratuito su python e il Machine learning.

Non farti prendere dal panico se non rientri esattamente a questi punti, potresti
semplicemente aver bisogno di rispolverare un'area per seguire senza problemi i tutorial.

Sviluppatori che sanno scrivere un po' di codice . Ciò significa che non è un
grosso problema per te prendere un nuovo linguaggio di programmazione come
Python una volta che conosci la sintassi di base. Non significa che sei un
programmatore mago, solo che puoi seguire un linguaggio di base simile al C
con poco sforzo.

1/34
Sviluppatori che conoscono un po' di machine learning . Ciò significa che
conosci le basi dell'apprendimento automatico come la convalida incrociata, alcuni
algoritmi e il compromesso tra bias e varianza . Non significa devi avere 2 lauree, 3
master e 7 dottorati, ma solo che conosci i punti di riferimento o sai dove cosa
cercare se non ti è chiarissimo.

Questo mini-corso non è né un libro di testo su Python né un libro di testo


sull'apprendimento automatico, ma è un insieme di tutorial di difficoltà
crescente, che se seguiti con costanza e dedizione ti poteranno a saperti muovere e
sviluppare modelli di M.L. con Python.

Ti porterà da uno sviluppatore che conosce un po' di machine learning a uno sviluppatore
che può ottenere risultati utilizzando l'ecosistema Python, la piattaforma emergente per
l'apprendimento automatico professionale. Semplicemente seguendo questo corso gratis
su Python e Machine Learning

Panoramica del corso gratis su Python e Machine Learning


Questo mini-corso è suddiviso in 14 lezioni.

Puoi completare una lezione al giorno (consigliato) o completare tutte le


lezioni in un giorno (Vivamente sconsigliato!).

Dipende molto dal tempo che hai a disposizione e dal tuo livello di entusiasmo.

Di seguito sono elencate 14 lezioni che ti permetteranno di iniziare e diventare produttivo


con l'apprendimento automatico e Python:

Lezione 1 : Scarica e installa l'ecosistema Python e SciPy.

Lezione 2 : Muoversi in Python, NumPy, Matplotlib e Pandas.

Lezione 3 : Caricare dati da CSV.

Lezione 4 : Comprendere i dati con le statistiche descrittive.

Lezione 5 : Comprendere i dati con la visualizzazione.

Lezione 6 : Prepararsi alla modellazione mediante la preelaborazione dei dati.

2/34
Lezione 7 : Valutazione dell'algoritmo con metodi di ricampionamento.

Lezione 8 : Metriche di valutazione dell'algoritmo.

Lezione 9 : Algoritmi Spot-Check.

Lezione 10 : Confronto e selezione del modello.

Lezione 11 : Migliorare la precisione con l'ottimizzazione degli algoritmi.

Lezione 12 : Migliorare la precisione con le previsioni dell'ensemble.

Lezione 13 : Finalizza e salva il tuo modello.

Lezione 14 : Hello World End-to-End Project.

Ogni lezione potrebbe richiedere 60 secondi o fino a 30 minuti.

Abbiamo inviato questo articolo in anteprima ai nostri utenti più attivi, e loro hanno
consigliato di prendersi un oretta per lezione sopratutto per quelle dopo la 3/4 lezione

Prenditi il tuo tempo e completa le lezioni al tuo ritmo. Poni domande e pubblica persino
risultati nei commenti qui sotto.

Le lezioni si aspettano che tu esca e scopra come fare le cose. Ti daremo dei suggerimenti,
ma parte del punto di ogni lezione è costringerti a imparare dove andare per cercare aiuto
su e sulla piattaforma Python.

SUGGERIMENTO, tutte le risposte sono disponibili direttamente su questo blog, usa la


barra ricerca

Sei pronto ? Iniziamo ? Diamo il via al Mini Corso Python e M.L.

Tieni duro, non mollare!

3/34
Lezione 1 corso gratis Python e Machine Learning:

Scarica e installa Python e SciPy

Non puoi iniziare con l'apprendimento automatico in Python finché non hai accesso alla
piattaforma.

La lezione di oggi è facile, devi scaricare e installare la piattaforma Python 3.6 sul tuo
computer.

Visita la homepage di Python e scarica Python per il tuo sistema operativo (Linux, OS X o
Windows). Installa Python sul tuo computer. Potrebbe essere necessario utilizzare un
gestore di pacchetti specifico della piattaforma come macports su OS X o yum su RedHat
Linux.

È inoltre necessario installare la piattaforma SciPy e la libreria scikit-learn. Ti consiglio di


usare lo stesso approccio che hai usato per installare Python.

Puoi installare tutto in una volta (molto più semplice) con Anaconda . Consigliato per i
principianti.

Avvia Python per la prima volta digitando "python" nella riga di comando.

Controlla le versioni di tutto ciò di cui avrai bisogno usando il codice qui sotto:

4/34
# Python version
import sys
print('Python: {}'.format(sys.version))

# scipy
import scipy
print('scipy: {}'.format(scipy.__version__))

# numpy
import numpy
print('numpy: {}'.format(numpy.__version__))

# matplotlib
import matplotlib
print('matplotlib: {}'.format(matplotlib.__version__))

# pandas
import pandas
print('pandas: {}'.format(pandas.__version__))

# scikit-learn
import sklearn
print('sklearn: {}'.format(sklearn.__version__))

Se ci sono errori, fermati. Ora è il momento di risolverli.

Se sei proprio alle prime armi e stai trovando troppa difficoltà nell'installare
Python e le relative librerie ti mettiamo a disposizione un NOSTRO AMBIENTE
VIRTUALE, con Python e le librerie già installate che ti permetteranno di Programmare
Python direttamente dal BROWSER.

Clicca quì per aprire Python Online

Una volta aperto, potrai tranquillamente copiare e incollare il codice, e premere sul
bottoncino verde, oppure premendo SHIFT-INVIO contemporaneamente.

Il risultato vi apparirà così :

5/34
Letture consigliate per approfondire la LEZIONE 1

Come installare Python

Come scaricare, gestire e disinstallare le librerie di Python

Principali librerie per il Machine Learning di Python

10 Migliori Librerie Python

Lezione 2 corso gratis Python e Machine Learning:

Primi passi con Python, NumPy, Matplotlib e Pandas.

6/34
Devi essere in grado di leggere e scrivere script Python di base.

Come sviluppatore, puoi imparare nuovi linguaggi di programmazione abbastanza


rapidamente. Python fa distinzione tra maiuscole e minuscole, usa l'hash (#) per i
commenti e usa gli spazi bianchi per indicare i blocchi di codice (gli spazi bianchi sono
importanti).

Il compito di oggi è esercitarsi con la sintassi di base del linguaggio di programmazione


Python e importanti strutture dati SciPy nell'ambiente interattivo Python.

Esercitati con l'assegnazione, il lavoro con le liste e il controllo del flusso in Python.

Esercitati a lavorare con gli array NumPy.

Esercitati a creare semplici trame in Matplotlib.

Esercitati a lavorare con Pandas Series e DataFrames.

Ad esempio, di seguito è riportato un semplice esempio di creazione di un Pandas


DataFrame .

# dataframe
import numpy
import pandas
myarray = numpy.array([[1, 2, 3], [4, 5, 6]])
rownames = ['a', 'b']
colnames = ['one', 'two', 'three']
mydataframe = pandas.DataFrame(myarray, index=rownames, columns=colnames)
print(mydataframe)

Se sei proprio alle prime armi e stai trovando troppa difficoltà nell'installare
Python e le relative librerie ti mettiamo a disposizione un NOSTRO AMBIENTE
VIRTUALE, con Python e le librerie già installate che ti permetteranno di Programmare
Python direttamente dal BROWSER.

Clicca quì per aprire Python Online

Mi Raccomando, anche se ti sembrerà banale scrivere questi semplici script, esercitati


provando a cambiare qualcosa nel codice. Solo così alla fin delle lezioni avrai realmente
imparato a muoverti con Python e le principali librerie.

7/34
Letture consigliate per approfondire la LEZIONE 2

Trucchi Python per la data science

Manipolazione Dati con Python e Pandas

Intelligenza Artificiale (IA) e Python Come si Relazionano?

Migliori portatili per il Machine Learning e Deep Learning 2022

Lezione 3 corso gratis Python e Machine Learning:

Carica dati o dataset da file CSV

Gli algoritmi di apprendimento automatico necessitano di dati. Puoi caricare i tuoi


dati da file CSV, ma quando inizi con l'apprendimento automatico in Python dovresti
esercitarti su set di dati di apprendimento automatico standard.

Il tuo compito per la lezione di oggi è imparare a caricare i dati in Python e


trovare e caricare set di dati di machine learning standard.

Ci sono molti eccellenti set di dati standard di apprendimento automatico in formato CSV
che puoi scaricare ed esercitarti nel nostro repository di DATASET

Esercitati a caricare file CSV in Python usando CSV.reader() nella libreria


standard.

Esercitati a caricare file CSV usando NumPy e la funzione numpy.loadtxt() .

Esercitati a caricare file CSV utilizzando Pandas e la funzione pandas.read_csv() .

8/34
Per iniziare, di seguito è riportato uno snippet che caricherà il set di dati sull'inizio del
diabete utilizzando Panda direttamente dall'UCI Machine Learning Repository.

import pandas
url = "diabetes.data.csv"
names = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']
data = pandas.read_csv(url, names=names)
print(data.shape)

Se sei proprio alle prime armi e stai trovando troppa difficoltà nell'installare
Python e le relative librerie ti mettiamo a disposizione un NOSTRO AMBIENTE
VIRTUALE, con Python e le librerie già installate che ti permetteranno di Programmare
Python direttamente dal BROWSER.

Clicca quì per aprire Python Online

Se usi il nostro edito ONLINE, troverai le istruzioni per leggere file CSV dal tuo computer.

Complimenti per essere arrivato fin qui! Tieni duro. Se hai fatto tutte e tre le prime lezioni
di fila torna domani non mettere troppa carne al fuoco.

Qualche domanda finora? Chiedi nei commenti.

Letture consigliate per approfondire la LEZIONE 3

Cosa è un Dataset e a cosa serve

Importare file excel, csv e html con Python e Pandas

Come Analizzare Un Dataset in Solo 5 Passaggi

Dove trovare i migliori Dataset per esercitarsi con il Machine learning

Come Creare Un Dataset per il tuo Progetto Di Machine Learning

Dataset per Esercitarsi nella Data Science e Data Visualizzation

60 migliori set di dati gratuiti per l'apprendimento automatico e profondo

Visualizzare i dati con il LinePlot o grafico a linee con Python e MatplotLib

9/34
Lezione 4 corso gratis Python e Machine Learning:

Comprendere i dati con le statistiche descrittive

Dopo aver caricato i tuoi dati in Python, devi essere in grado di capirli.

Meglio puoi comprendere i tuoi dati, migliori e più accurati saranno i modelli che puoi
costruire. Il primo passo per comprendere i tuoi dati è utilizzare le statistiche descrittive.

Oggi la tua lezione è imparare a utilizzare le statistiche descrittive per comprendere i tuoi
dati. Consiglio di utilizzare le funzioni di supporto fornite su Pandas
DataFrame.

Comprendi i tuoi dati usando la funzione head() per guardare le prime righe.

Rivedi le dimensioni dei tuoi dati con la proprietà shape .

Guarda i tipi di dati per ogni attributo con la proprietà dtypes .

Rivedi la distribuzione dei tuoi dati con la funzione describe() .

Calcola la correlazione a coppie tra le tue variabili usando la funzione corr() .

L'esempio seguente carica il set di dati sull'inizio del diabete e riassume la distribuzione di
ciascun attributo.

import pandas
url = "diabetes.data.csv"
names = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']
data = pandas.read_csv(url, names=names)
description = data.describe()
print(description)

10/34
Se sei proprio alle prime armi e stai trovando troppa difficoltà nell'installare
Python e le relative librerie ti mettiamo a disposizione un NOSTRO AMBIENTE
VIRTUALE, con Python e le librerie già installate che ti permetteranno di Programmare
Python direttamente dal BROWSER.

Clicca quì per aprire Python Online

Provalo! Se non funziona scrivi nei commenti l'errore

Letture consigliate per approfondire la LEZIONE 4:

Cos'è la Statistica e che Correlazione c'è con il Machine Learning ?

Differenze tra Analisi descrittiva, predittiva e prescrittiva

Statistiche sull'utilizzo dei social media nel 2022

Lezione 5 corso gratis Python e Machine Learning:

Comprendere i dati con la visualizzazione

Continuando dalla lezione di ieri, devi dedicare del tempo a comprendere meglio i tuoi
dati.

Un secondo modo per migliorare la comprensione dei dati consiste nell'utilizzare tecniche
di visualizzazione dei dati (ad es. il tracciamento).

11/34
Oggi, la tua lezione consiste nell'imparare come utilizzare la stampa in Python per
comprendere gli attributi da soli e le loro interazioni. Ancora una volta, consiglio di
utilizzare le funzioni di supporto fornite su Pandas DataFrame.

Utilizzare la funzione hist() per creare un istogramma di ogni attributo.

Usa la funzione plot(kind='box') per creare grafici box-and-whisker di ogni


attributo.

Utilizzare la funzione pandas.scatter_matrix() per creare grafici a dispersione a


coppie di tutti gli attributi.

Ad esempio, il frammento di codice seguente caricherà il set di dati del diabete e creerà
una matrice del grafico a dispersione del set di dati.

import matplotlib.pyplot as plt


import pandas
from pandas.plotting import scatter_matrix
url = "diabetes.data.csv"
names = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']
data = pandas.read_csv(url, names=names)
scatter_matrix(data)
plt.show()

il risultato di questo script sarà questo :

12/34
Naturalmente senza delle basi Statistico/matematiche per te sarà difficile capire questi
grafici o individuare degli Insights.

Letture consigliate per approfondire la LEZIONE 5:

Visualizzare i dati con lo ScatterPlot o grafico a dispersione con Python

Visualizzare i dati con il LinePlot o grafico a linee con Python

Creare Grafici Interattivi e Dinamici con Python

Hey, NON ANDARE AVANTI CON LE LEZIONI SE PRIMA NON HAI


PROVATO A CREARE ALMENO 5 o 6 GRAFICI.

13/34
Lezione 6 corso gratis Python e Machine Learning:

Prepararsi alla modellazione mediante la preelaborazione dei dati

I tuoi dati grezzi potrebbero non essere configurati per essere nella forma migliore per la
modellazione.

A volte è necessario preelaborare i dati per presentare al meglio la struttura intrinseca del
problema nei dati agli algoritmi di modellazione. Nella lezione di oggi utilizzerai le
capacità di pre-elaborazione fornite da scikit-learn.

La libreria scikit-learn fornisce due idiomi standard per la trasformazione dei dati.
Ciascuna trasformazione è utile in circostanze diverse: Adatta e Trasformazione multipla
e Adatta e trasforma combinata.

Esistono molte tecniche che è possibile utilizzare per preparare i dati per la modellazione.
Ad esempio, prova alcuni dei seguenti

Standardizzare i dati numerici (ad es. media di 0 e deviazione standard di 1)


utilizzando le opzioni della scala e del centro.

Normalizzare i dati numerici (ad es. in un intervallo di 0-1) utilizzando l'opzione


intervallo.

Esplora l'ingegneria delle funzionalità più avanzate come la binarizzazione.

Ad esempio, lo snippet seguente carica il set di dati sull'inizio del diabete , calcola i
parametri necessari per standardizzare i dati, quindi crea una copia standardizzata dei
dati di input.

14/34
from sklearn.preprocessing import StandardScaler
import pandas
import numpy
url = "diabetes.data.csv"
names = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']
dataframe = pandas.read_csv(url, names=names)
array = dataframe.values

# separiamo il target
X = array[:,0:8]
Y = array[:,8]
scaler = StandardScaler().fit(X)
rescaledX = scaler.transform(X)

# trasformiamo i dati
numpy.set_printoptions(precision=3)
print(rescaledX[0:5,:])

L'output di questo codice sarà :

Se sei proprio alle prime armi e stai trovando troppa difficoltà nell'installare
Python e le relative librerie ti mettiamo a disposizione un NOSTRO AMBIENTE
VIRTUALE, con Python e le librerie già installate che ti permetteranno di Programmare
Python direttamente dal BROWSER.

15/34
Clicca quì per aprire Python Online

Letture consigliate per approfondire la LEZIONE 6:

Come preparare i dati per il Machine Learning

Feature Engineering e Feature Selection per Principianti e non

Una Guida Semplice e Completa per passare da Excel a Python

Lezione 7 corso gratis Python e Machine Learning:

Valutazione dell'algoritmo con metodi di ricampionamento

Il set di dati utilizzato per addestrare un algoritmo di apprendimento automatico è


chiamato set di dati di addestramento. Il set di dati utilizzato per addestrare un algoritmo
non può essere utilizzato per fornire stime affidabili dell'accuratezza del modello sui nuovi
dati. Questo è un grosso problema perché l'idea di creare il modello è fare previsioni su
nuovi dati.

È possibile utilizzare metodi statistici chiamati metodi di ricampionamento per


suddividere il set di dati di addestramento in sottoinsiemi, alcuni vengono utilizzati per
addestrare il modello e altri vengono trattenuti e utilizzati per stimare l'accuratezza del
modello su dati invisibili.

16/34
Il tuo obiettivo con la lezione di oggi è esercitarti utilizzando i diversi metodi di
ricampionamento disponibili in scikit-learn, ad esempio:

Suddividi un set di dati in set di training e test.

Stimare l'accuratezza di un algoritmo utilizzando la convalida incrociata k-fold.

Stimare l'accuratezza di un algoritmo utilizzando la convalida incrociata omettere


uno.

Lo snippet di seguito utilizza scikit-learn per stimare l'accuratezza dell'algoritmo di


regressione logistica sull'inizio del set di dati del diabete utilizzando una convalida
incrociata di 10 volte.

from pandas import read_csv


from sklearn.model_selection import KFold
from sklearn.model_selection import cross_val_score
from sklearn.linear_model import LogisticRegression
url = "diabetes.data.csv"
names = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']
dataframe = read_csv(url, names=names)
array = dataframe.values
X = array[:,0:8]
Y = array[:,8]
kfold = KFold(n_splits=10, random_state=7, shuffle=True)
model = LogisticRegression(solver='liblinear')
results = cross_val_score(model, X, Y, cv=kfold)
print("Accuracy: %.3f%% (%.3f%%)" % (results.mean()*100.0, results.std()*100.0))

Noi abbiamo ottenuto questa precisione :

17/34
Facci sapere nei commenti quanto ti è uscito :)

Prima di andare avanti con lezioni, divertiti a giocare un po con parametri dell'ultimo
script e facci sapere se riesci ad ottenere una precisione più alta dell'85%

Lezione 8 corso gratis Python e Machine Learning:

Metriche di valutazione dell'algoritmo

Esistono molte metriche diverse che puoi utilizzare per valutare l'abilità di un algoritmo
di apprendimento automatico su un set di dati.

Puoi specificare la metrica utilizzata per il tuo cablaggio di test in scikit-learn tramite la
funzione cross_validation.cross_val_score() e le impostazioni predefinite possono
essere utilizzate per problemi di regressione e classificazione. Il tuo obiettivo con la
lezione di oggi è esercitarti utilizzando le diverse metriche delle prestazioni dell'algoritmo
disponibili nel pacchetto scikit-learn.

Esercitati a utilizzare le metriche Precisione e LogLoss su un problema di


classificazione.

Esercitati a generare una matrice di confusione e un rapporto di classificazione.

Esercitati a utilizzare le metriche RMSE e RSquared su un problema di regressione.

Lo snippet seguente mostra il calcolo della metrica LogLoss sull'inizio del set di dati del
diabete.

18/34
from pandas import read_csv
from sklearn.model_selection import KFold
from sklearn.model_selection import cross_val_score
from sklearn.linear_model import LogisticRegression
url = "diabetes.data.csv"
names = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']
dataframe = read_csv(url, names=names)
array = dataframe.values
X = array[:,0:8]
Y = array[:,8]
kfold = KFold(n_splits=10)
model = LogisticRegression(solver='liblinear')
scoring = 'neg_log_loss'
results = cross_val_score(model, X, Y, cv=kfold, scoring=scoring)
print(f"Logloss: {results.mean()}%" )

Output

Che perdita hai avuto? Facci sapere nei commenti.

Letture consigliate per approfondire la LEZIONE 8:

Guida Completa Algoritmi di Machine Learning

Come funzionano gli algoritmi di machine learning?

Algoritmi Supervisionati e Non Supervisionati la vera differenza

19/34
Lezione 9 corso gratis Python e Machine Learning:

Algoritmi Spot-Check

Non puoi assolutamente sapere quale algoritmo funzionerà meglio sui tuoi dati in
anticipo.

Devi scoprirlo usando un processo di tentativi ed errori. Lo chiamo algoritmi di


controllo a campione. La libreria scikit-learn fornisce un'interfaccia a molti algoritmi e
strumenti di apprendimento automatico per confrontare l'accuratezza stimata di tali
algoritmi.

In questa lezione, devi esercitarti nel controllo a campione di diversi algoritmi di


apprendimento automatico.

Algoritmi lineari di controllo spot su un set di dati (ad es. regressione lineare,
regressione logistica e analisi discriminante lineare).

Spot check di alcuni algoritmi non lineari su un dataset (es. KNN, SVM e CART).

Verifica a campione alcuni sofisticati algoritmi di ensemble su un set di dati (ad es.
foresta casuale e aumento del gradiente stocastico).

Ad esempio, lo snippet sotto controlla a campione l'algoritmo K-Nearest Neighbors sul set
di dati Boston House Price.

20/34
from pandas import read_csv
from sklearn.model_selection import KFold
from sklearn.model_selection import cross_val_score
from sklearn.neighbors import KNeighborsRegressor
url = "housing.data"
names = ['CRIM', 'ZN', 'INDUS', 'CHAS', 'NOX', 'RM', 'AGE', 'DIS', 'RAD', 'TAX',
'PTRATIO', 'B', 'LSTAT', 'MEDV']
dataframe = read_csv(url, delim_whitespace=True, names=names)
array = dataframe.values
X = array[:,0:13]
Y = array[:,13]
kfold = KFold(n_splits=10, random_state=7)
model = KNeighborsRegressor()
scoring = 'neg_mean_squared_error'
results = cross_val_score(model, X, Y, cv=kfold, scoring=scoring)
print(results.mean())

a Noi è uscito questo Output

Naturalmente questo ti servirà per scegliere il modello con il MINOR


ERRORE

Sei arrivato già ad un buon punto del corso su Python e Machine Learning ed hai imparato molto, hai
visto tantissimi concetti. Prenditi uno o due giorni per riguardare ciò che hai fatto fin ora con occhi
diversi. E inizia a cercare un set di dati che ti interessa per iniziare ad applicare in modo autonomo
quanto visto fin ora

Letture consigliate per approfondire la LEZIONE 9:

21/34
Algoritmo Support Vector Machine (SVM) Spiegazione

Algoritmo gradient boosting dalla spiegazione all'implementazione

Come implementare l'algoritmo Perceptron da zero in Python

Scikit Learn e Python Tutorial Per Creare Modelli di Intelligenza Artificiale

Come creare una semplice intelligenza artificiale

Classificatore vs Regressione quale usare? Machine learning esempi pratici

Le Differenze tra Machine Learning (ML) e Deep Learning (DL)

Lezione 10 corso gratis Python e Machine Learning:

Confronto e selezione del modello

Ora che sai come individuare gli algoritmi di machine learning sul tuo set di dati, devi
sapere come confrontare le prestazioni stimate di diversi algoritmi e selezionare il
modello migliore.

Nella lezione di oggi, ti eserciterai a confrontare l'accuratezza degli algoritmi di


apprendimento automatico in Python con scikit-learn.

Confronta gli algoritmi lineari tra loro su un set di dati.

Confronta gli algoritmi non lineari tra loro su un set di dati.

Confronta tra loro diverse configurazioni dello stesso algoritmo.

Creare grafici dei risultati confrontando algoritmi.

L'esempio seguente confronta la regressione logistica e l'analisi discriminante lineare tra


loro sull'inizio del set di dati del diabete .

22/34
from pandas import read_csv
from sklearn.model_selection import KFold
from sklearn.model_selection import cross_val_score
from sklearn.linear_model import LogisticRegression
from sklearn.discriminant_analysis import LinearDiscriminantAnalysis
# carichiamo dataset
url = "diabetes.data.csv"
names = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']
dataframe = read_csv(url, names=names)
array = dataframe.values
X = array[:,0:8]
Y = array[:,8]
# prepare models
models = []
models.append(('LR', LogisticRegression(solver='liblinear')))
models.append(('LDA', LinearDiscriminantAnalysis()))
# valutiamo i modelli
results = []
names = []
scoring = 'accuracy'
for name, model in models:
kfold = KFold(n_splits=10)
cv_results = cross_val_score(model, X, Y, cv=kfold, scoring=scoring)
results.append(cv_results)
names.append(name)
msg = cv_results.mean()
print(msg)

Questo è uno script potentissimo perchè ti permette di sapere velocemente quale tra gli
algoritmi da te scelti è più performante. Qui sotto c'è il nostro Output :

23/34
Se sei proprio alle prime armi e stai trovando troppa difficoltà nell'installare
Python e le relative librerie ti mettiamo a disposizione un NOSTRO AMBIENTE
VIRTUALE, con Python e le librerie già installate che ti permetteranno di Programmare
Python direttamente dal BROWSER.

Clicca quì per aprire Python Online

A te che risultati sono Usciti ? Facci sapere nei commenti.

Complimenti, sei quasi giunto al termine di questo corso su Python e il Machine Learning.
A questo punto per far si che ti rimanga qualcosa di concreto ti consigliamo di scegliere un dataset che
ti piaccia da qui e di applicare questi script. Commenta il post se ti appaiono errori.

Fantastiche Idee per Progetti di Data Science per Principianti ed Esperti

24/34
Lezione 11 corso gratis Python e Machine Learning:

Migliorare la precisione con l'ottimizzazione degli algoritmi

Dopo aver trovato uno o due algoritmi che funzionano bene sul tuo set di dati, potresti
voler migliorare le prestazioni di quei modelli.

Un modo per aumentare le prestazioni di un algoritmo consiste nell'accordare i suoi


parametri al tuo set di dati specifico.

La libreria scikit-learn offre due modi per cercare combinazioni di parametri per un
algoritmo di apprendimento automatico. Il tuo obiettivo nella lezione di oggi è esercitarti
su ciascuno.

Ottimizza i parametri di un algoritmo utilizzando una ricerca nella griglia da te


specificata.

Ottimizza i parametri di un algoritmo utilizzando una ricerca casuale.

Lo snippet di seguito utilizzato è un esempio dell'utilizzo di una griglia di ricerca per


l'algoritmo di regressione di Ridge sul set di dati sull'insorgenza del diabete

25/34
from pandas import read_csv
import numpy
from sklearn.linear_model import Ridge
from sklearn.model_selection import GridSearchCV
url = "diabetes.data.csv"
names = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']
dataframe = read_csv(url, names=names)
array = dataframe.values
X = array[:,0:8]
Y = array[:,8]
alphas = numpy.array([1,0.1,0.01,0.001,0.0001,0])
param_grid = dict(alpha=alphas)
model = Ridge()
grid = GridSearchCV(estimator=model, param_grid=param_grid, cv=3)
grid.fit(X, Y)
print(grid.best_score_)
print(grid.best_estimator_.alpha)

Questo sarà l'output:

Letture consigliate per approfondire la LEZIONE 11:

Come risolvere l'Overfitting con Python e Capire cosa è l' Overfitting

Cosa sono l'Overfitting e l'Underfitting? E come puoi limitarli

26/34
Tutorial Pratico Tensorflow , TensorBoard e Python

Lezione 12 corso gratis Python e Machine Learning:

Migliorare la precisione con le previsioni dell'ensemble

Un altro modo per migliorare le prestazioni dei tuoi modelli consiste nel combinare le
previsioni di più modelli.

Alcuni modelli forniscono questa capacità integrata, come la foresta casuale per il bagging
e l'aumento del gradiente stocastico per il boost. Un altro tipo di insieme chiamato
votazione può essere utilizzato per combinare le previsioni di più modelli diversi insieme.

Nella lezione di oggi ti eserciterai con i metodi dell'insieme.

Esercitati a insaccare gli insiemi con gli algoritmi di foresta casuale e alberi.

Esercitati a potenziare gli insiemi con la macchina per aumentare il gradiente e gli
algoritmi AdaBoost.

Esercitati con gli insiemi di voto combinando le previsioni di più modelli insieme.

Lo snippet seguente mostra come utilizzare l'algoritmo Random Forest (un insieme
insaccato di alberi decisionali) sul set di dati sull'insorgenza del diabete

27/34
from pandas import read_csv
from sklearn.model_selection import KFold
from sklearn.model_selection import cross_val_score
from sklearn.ensemble import RandomForestClassifier
url = "diabetes.data.csv"
names = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']
dataframe = read_csv(url, names=names)
array = dataframe.values
X = array[:,0:8]
Y = array[:,8]
num_trees = 100
max_features = 3
kfold = KFold(n_splits=10)
model = RandomForestClassifier(n_estimators=num_trees, max_features=max_features)
results = cross_val_score(model, X, Y, cv=kfold)
print(results.mean())

Output:

Mancano le ultime due Lezioni, speriamo davvero che tu stia seguendo i nostri consigli e
che hai iniziato il tuo progetto :)

28/34
Lezione 13 corso gratis Python e Machine Learning:

Finalizza e salva il tuo modello

Una volta trovato un modello ben funzionante sul tuo problema di machine learning, devi
finalizzarlo.

Nella lezione di oggi eserciterai le attività relative alla finalizzazione del tuo modello.

Esercitati a fare previsioni con il tuo modello su nuovi dati (dati non visti durante
l'addestramento e i test).

Esercitati a salvare i modelli addestrati su file e a caricarli di nuovo.

Ad esempio, lo snippet seguente mostra come creare un modello di regressione logistica,


salvarlo su file, quindi caricarlo in un secondo momento ed effettuare previsioni su dati
nuovi.

29/34
from pandas import read_csv
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
import pickle
url = "diabetes.data.csv"
names = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']
dataframe = read_csv(url, names=names)
array = dataframe.values
X = array[:,0:8]
Y = array[:,8]
test_size = 0.33
seed = 7
X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=test_size,
random_state=seed)
# alleniamo il modello 75%
model = LogisticRegression(solver='liblinear')
model.fit(X_train, Y_train)
# salviamo il modello
filename = 'finalized_model.sav'
pickle.dump(model, open(filename, 'wb'))

# quando ti riservirà il moello...

# Carichiamo il modello
loaded_model = pickle.load(open(filename, 'rb'))
result = loaded_model.score(X_test, Y_test)
print(result)

Ecco il nostro output:

30/34
Letture consigliate per approfondire la LEZIONE 13:

Come salvare e caricare modelli di Machine Learning con Python

Come salvare e caricare il tuo modello di deep learning

31/34
Lezione 14 corso gratis Python e Machine Learning:

Progetto end-to-end Python e M.L.


Ora sai come completare ogni attività di un problema di machine learning di
modellazione predittiva.

Nella lezione di oggi, devi esercitarti a mettere insieme i pezzi e lavorare con un set di dati
di machine learning standard end-to-end.

Abbiamo deciso di metterti qui una cartella con i due dataset molto semplici usati nelle
lezioni e tutti gli script che abbiamo visto in questo corso.

Mini Corso Python e Machine Learning

.zip

Scarica ZIP • 30KB

Ora però dovrai essere in grado di affrontare un progetto da zero.

Scegli un dataset qui' , scaricalo e esegui questi passaggi:

1. Comprendere i tuoi dati utilizzando statistiche e visualizzazioni descrittive.

2. Preelaborazione dei dati per esporre al meglio la struttura del problema.

3. Controllo a campione di una serie di algoritmi utilizzando il proprio cablaggio di


prova.

4. Miglioramento dei risultati utilizzando l'ottimizzazione dei parametri dell'algoritmo.

32/34
5. Miglioramento dei risultati utilizzando metodi di ensemble.

6. Finalizzare il modello pronto per un uso futuro.

Prendilo senza fretta e registra i risultati lungo il percorso. NESSUNO TI


DARA' UN VOTO, RICORDA IMPARIAMO PER NOI STESSI

Che modello hai usato? Che risultati hai ottenuto? Fateci sapere nei commenti.

FINE CORSO GRATIS MACHINE LEARNING E PYTHON! ( Guarda


quanto sei arrivato lontano )
Ce l'hai fatta. Ben fatto!

Prenditi un momento e guarda indietro a quanto sei arrivato.

Hai iniziato con un interesse per l'apprendimento automatico e un forte desiderio di


essere in grado di esercitarti e applicare l'apprendimento automatico utilizzando
Python.

Hai scaricato, installato e avviato Python, forse per la prima volta e hai iniziato a
familiarizzare con la sintassi del linguaggio.

Lentamente e costantemente nel corso di una serie di lezioni hai imparato come le
attività standard di un progetto di machine learning di modellazione predittiva
vengono mappate sulla piattaforma Python.

Basandosi sulle ricette per le comuni attività di machine learning, hai elaborato i
tuoi primi problemi di machine learning end-to-end utilizzando Python.

Utilizzando un modello standard, le ricette e l'esperienza che hai raccolto ora sei in
grado di lavorare da solo attraverso nuovi e diversi problemi di apprendimento
automatico di modellazione predittiva.

Non prendertela alla leggera, hai fatto molta strada in poco tempo.

33/34
Questo è solo l'inizio del tuo viaggio di apprendimento automatico con Python. Continua
a esercitarti e a sviluppare le tue abilità.

Riepilogo corso gratis Python e Machine Learning


Come sei andato con il mini-corso? Ti è piaciuto questo mini-corso?

Avete domande? Ci sono stati dei punti critici? Fateci sapere. Lascia un commento qui
sotto.

34/34

Potrebbero piacerti anche