Il 0% ha trovato utile questo documento (0 voti)
5 visualizzazioni3 pagine

Machine Learning Con Python

Il documento fornisce una panoramica sul machine learning, chiarendo cosa non è e descrivendo i tre principali tipi: apprendimento con supervisione, apprendimento senza supervisione e reinforcement learning. Viene inoltre spiegato il concetto di clustering e l'importanza della pre-elaborazione dei dati per l'ottimizzazione degli algoritmi di apprendimento. Infine, si evidenziano le fasi necessarie per costruire sistemi di machine learning efficaci.

Caricato da

crochet.by.ele
Copyright
© All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato DOCX, PDF, TXT o leggi online su Scribd
Il 0% ha trovato utile questo documento (0 voti)
5 visualizzazioni3 pagine

Machine Learning Con Python

Il documento fornisce una panoramica sul machine learning, chiarendo cosa non è e descrivendo i tre principali tipi: apprendimento con supervisione, apprendimento senza supervisione e reinforcement learning. Viene inoltre spiegato il concetto di clustering e l'importanza della pre-elaborazione dei dati per l'ottimizzazione degli algoritmi di apprendimento. Infine, si evidenziano le fasi necessarie per costruire sistemi di machine learning efficaci.

Caricato da

crochet.by.ele
Copyright
© All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato DOCX, PDF, TXT o leggi online su Scribd

Machine learning con Python

Cosa non è il machine learning


Prima di parlare di cosa sia il Machine Learning, chiariamo cosa non è:

- Un algoritmo che su base di informazioni specifiche agisce:


immaginiamo di avere un negozio che vende migliaia di prodotti al mese, e che la maggior parte
del fatturato venga da un numero limitato di acquisti. Si potrebbe classificare gli acquisti di
dimensione (x) volte l’acquisto medio, per poi studiarli per capire cosa abbia portato ad essi

- Un algoritmo che sulla base delle informazioni, reagisce in modo diverso in base ai diversi input,
date regole specifiche precedentemente assegnate:
Immaginiamo di creare un algoritmo sui mercati e di dover testare una strategia di acquisto long-
term sul Nasdaq. Mettiamo che stiamo cercando di testare una strategia dove ogni volta che il
prezzo superi la 2ª deviazione del prezzo in negativo (per chi non è comune al settore lo
potremmo semplificare come un movimento insolito del prezzo verso il basso) si acquisti.
Potremmo usare come etichetta il raggiungimento della seconda deviazione da parte del prezzo, e
impostare un acquisto proporzionale alla “discesa” del prezzo.

1-80
I tre tipi di machine learning
Quando ci riferiamo al Machine Learning, necessitiamo di conoscere i 3 macro tipi di machine
learning:

1) apprendimento con supervisione


2) apprendimento senza supervisione
3) reinforcement learing

1 – Apprendimento con supervisione:


Lo scopo nell’apprendimento con supervisione, è quello di istruire un modello, partendo da dati di
addestramento etichettati, per riconoscere dati futuri mai visti prima.
Esempio: Date migliaia di mail, che noi etichettiamo come spam o non spam, il sistema cercherà dei
pattern tra mail e etichetta, e cercherà delle correlazioni tra i 2, cercando di classificare i nuovi dati (in
questo caso le nuove mail. Ancora immaginiamo di dare 1000 foto di frutta come input, classificandole con
le etichette come: ”mele”, “pere”, ecc.., cercherà dei pattern tra i dati e le rispettive etichette, in tal modo
da riconoscere in base a determinate caratteristiche, di che frutto si tratti.
Il lavoro del modello è quindi imparare la relazione tra input (dato grezzo) e output (etichette)

2 – Apprendimento senza supervisione:


Lo scopo nell’apprendimento senza supervisione, è quello di istruire un modello che cerchi pattern o
strutture nascoste tra i dati
Esempio: Date informazioni su clienti, come età, spese e preferenze, il modello potrà creare cluster di
clienti con comportamenti simili per poi fare campagne marketing mirate (Giovani con interessi per
tecnologia, adulti che comprano alimentari online ecc…). Ancora, prendendo le stesse 1000 immagini di
frutta usate in precedenza, questa volta non etichettate, il modello organizzerà le immagini in gruppi simili
in base a caratteristiche visive (forma colore ecc), trovando pattern che permetteranno di distinguere
quale frutto sia quale.
3 – Reinforcement learning:
Un altro tipo di machine learing è il reinforcement learing, qui l’obbiettivo è di sviluppare un sistema
che migliora le proprie interazioni in base alle interazioni con l’ambiente. A ogni stato sarà attribuita
una ricompensa positiva o negativa, che aiuterà a determinare il tipo di comportamento necessario.
Esempio: Immaginiamo di utilizzare un modello che ci aiuti nel creare gli script per dei video da postare
nei social media. Una volta pubblicati i video, potremmo immaginare di inserire i risultati nel modello,
cosi che capisca cosa sta funzionando di più o di meno, e cosa ottenga un determinato tipo di risultati e
cosa no. Un altro esempio può essere una partita a scacchi, dove determinate mosse danno più o meno
possibilità di vittoria ecc…

Il raggruppamento che viene fatto dai modelli viene chiamato Clustering:


Il clustering è una tecnica di analisi esplorativa dei dati che ci consente di organizzare una massa di
informazioni in sottogruppi significativi, i cluster, senza alcuna precedente conoscenza della loro
appartenenza ai gruppi. Questo è particolarmente utile nel marketing per raggruppare i
consumatori in base ai loro interessi, con lo scopo di sviluppare campagne specifiche di Marketing.

Come vengono mantenuti i dati dentro i database ML:


- Un dataset, rappresenta una raccolta di informazioni, che viene suddiviso in caratteristiche (le
attribuzioni, misurazioni, le dimensioni)
- Le informazioni sono generalmente raccolte in Matrici, dove il numero di righe sono i campioni, e
il numero di colonne sono le caratteristiche. Vedi immagine sotto

Fasi di una costruzione di sistemi Machine Learning


1) Pre elaborazione/uniformazione dei dati: raramente i dati grezzi sono disponibili nel
formato necessario per permettere ad un algoritmo di apprendimento di operare in modo
ottimale, bisognerà quindi rimuovere se necessario gli spazi vuoti, eseguire One-hot
encoding dove necessario (una matrice può leggere solo numeri, quindi se ho una tabella
con ad esempio località geografiche non potrà esserci scritta ogni singola località, ma dovrà
essere trasformata in “versione numerica), qua ne vediamo un semplice esempio:

Città Torino Firenze Roma


Torino 1 0 0
Torino 1 0 0
Firenze 0 1 1
Altro problema da affrontare in pre-elaborazine sono i dati di diverso calibro. Immaginiamo
di avere come categorie nella stessa raccolta dati “età” e “salario annuale”. Quando il
modello calcola i dati per esempio per “fare predizioni” come si fa nei modelli di
apprendimento con supervisione, il valore dei dati come in questo caso il reddito,
renderebbe invisibili i dati minori come età (immaginiamo debba fare delle medie per
calcolare dei valori per ogni caso esaminato). Bisognerà quindi con delle formule apposite
standardizzare il valore perché ogni colonna pesi in modo proporzionato al calcolo e perché
e varie categorie siano numericamente comparabili.
(nel caso dell’età e del salario, al posto di avere valori come 50 e 100.000 avremo qualcosa
come “50” e “2,3 “dove “2,3 è la proporzione con un salario medio

2)
3)
4)
5)

Potrebbero piacerti anche