Il 0% ha trovato utile questo documento (0 voti)
11 visualizzazioni41 pagine

Rapporto Su Machine Learning Con Python

Questo documento fornisce un rapporto di formazione sul machine learning con Python. Include un'introduzione al machine learning, discutendo cos'è il machine learning, il suo futuro, e perché Python è un linguaggio di programmazione adatto. Delinea anche i principali tipi di machine learning, inclusi l'apprendimento supervisionato, l'apprendimento non supervisionato, l'apprendimento semi-supervisionato e l'apprendimento per rinforzo. Il documento discute l'addestramento di un modello di machine learning, inclusa l'importazione e la pre-elaborazione dei dati, e la valutazione di diversi algoritmi. Fornisce esempi di visualizzazione dei dati e progetti di machine learning sull'analisi della qualità del vino e sul riconoscimento facciale. Infine, discute le applicazioni del machine learning.

Tradotto da

ScribdTranslations
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 PDF, TXT o leggi online su Scribd
Il 0% ha trovato utile questo documento (0 voti)
11 visualizzazioni41 pagine

Rapporto Su Machine Learning Con Python

Questo documento fornisce un rapporto di formazione sul machine learning con Python. Include un'introduzione al machine learning, discutendo cos'è il machine learning, il suo futuro, e perché Python è un linguaggio di programmazione adatto. Delinea anche i principali tipi di machine learning, inclusi l'apprendimento supervisionato, l'apprendimento non supervisionato, l'apprendimento semi-supervisionato e l'apprendimento per rinforzo. Il documento discute l'addestramento di un modello di machine learning, inclusa l'importazione e la pre-elaborazione dei dati, e la valutazione di diversi algoritmi. Fornisce esempi di visualizzazione dei dati e progetti di machine learning sull'analisi della qualità del vino e sul riconoscimento facciale. Infine, discute le applicazioni del machine learning.

Tradotto da

ScribdTranslations
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 PDF, TXT o leggi online su Scribd

REPORT DI ALLENAMENTO

SU
APPRENDIMENTO AUTOMATICO CON PYTHON

Sessione 2020-2021

DIPARTIMENTO DI INFORMATICA E INGEGNERIA

Io
CERTIFICATO

Si certifica che il seminario intitolato “APPRENDIMENTO AUTOMATICO” è stato


presentato da JAYESH GUPTA sotto la mia guida durante l'anno accademico
2020.

Inviato a
[Link] Anima Sharma

Capo del Dipartimento


Dott. Sanjay Gaur

II
RICONOSCIMENTO

L'opportunità di formazione che ho avuto con [ED Apply Pvt. Ltd.] è stata una grande occasione

per l'apprendimento e lo sviluppo professionale. Pertanto, mi considero come un


molto fortunato individuo in quanto mi è stata data l'opportunità di farne parte. Io
sono anche grato di avere avuto l'opportunità di incontrare così tante persone meravigliose e

professionisti che mi hanno guidato durante questo periodo di formazione.

Tenendo presente ciò che è stato detto in precedenza, approfitto di questa opportunità per esprimere il mio più profondo

ringraziamento e un ringraziamento speciale al CEO di [ED Apply Pvt. Ltd.] che, nonostante
di essere straordinariamente occupato con i suoi doveri, ha preso tempo per ascoltare, guidare

e mantenermi sulla giusta strada e permettermi di portare a termine

Percepisco questa opportunità come un grande traguardo nello sviluppo della mia carriera.
mi impegnerò a utilizzare le competenze e le conoscenze acquisite nel migliore dei modi, e io
continueranno a lavorare al loro miglioramento, al fine di raggiungere la carriera desiderata

obiettivi. Spero di continuare la cooperazione con tutti voi in futuro.

(Nome dello studente)

INDICE PAGINA

III
SR. TITOLO NUMERO DI PAGINA

NO.
ASTRATTO 1
ESITI DELL'APPRENDIMENTO DEL CORSO DI FORMAZIONE 2
1. INTRODUZIONE ALL'APPRENDIMENTO AUTOMATICO 3
1.1 COS'È L'APPRENDIMENTO AUTOMATICO? 3
1.2 SCOPE FUTURO DEL MACHINE LEARNING 4
1.3 PERCHÉ IL LINGUAGGIO DI PROGRAMMAZIONE PYTHON? 5

2. TIPI DI APPRENDIMENTO AUTOMATICO 8


2.1 CONCETTI DELL'APPRENDIMENTO 9
2.2 APPRENDIMENTO SUPERVISIONATO 9
2.3 APPRENDIMENTO NON SUPERVISIONATO 11
2.4 APPRENDIMENTO SEMISUPERVISATO 11
2.5 APPRENDIMENTO PER RAFFORZAMENTO 12
2.6 SCOPO DEL MACHINE LEARNING 12

3. ADDESTAMENTO DI UN MODELLO DI APPRENDIMENTO AUTOMATICO 14


3.1 IMPORTAZIONE DEL DATASET 4
3.2 PRE-PROCESSING DATA 15
3.3 VALUTARE GLI ALGORITMI 16

4. VISUALIZZAZIONE DEI DATI 24


4.1 MATRICE DI CONFUSIONE 24
4.2 ACCURATEZZA, PRECISIONE E RICHIAMO 26

5. PROGETTI
5.1 ANALISI DELLA QUALITÀ DEL VINO 28
5.2 SISTEMA DI RICONOSCIMENTO FACCIALE 30

6. APPLICAZIONI DEL MACHINE LEARNING 32

CONCLUSIONE 36
BIBLIOGRAFIA 37

INDICE DELLE FIGURE

IV
FIGURA TITOLO DELLA FIGURA NUMERO DI PAGINA

NO.

1.1 RAPPRESENTAZIONE SETTIMANALE DELL'IA 3

1.2 CARATTERISTICHE DI PYTHON 5

2.1 TIPI DI APPRENDIMENTO AUTOMATICO 8

3.1 ETICHETTA E CODIFICA ONE HOT 16

3.2 REGRESSIONE LINEARE 18

3.3 REGRESSIONE LOGISTICA 19

3.4 FORESTA CASUALE 20

3.5 ALGORITMO K-MEANS 22

3.6 K-VICINO VICINO 23

5.1 CATTURA DELLO SCHERMATA DEL PROGETTO 1 28

5.2 CATTURA SCHERMATA DEL PROGETTO 2 29

5.3 CATTURA SCHERMATA DEL PROGETTO 2 29

5.4 IMMAGINE DEL PROGETTO 2 30

5.5 SCHERMATA DEL PROGETTO 2 30

5.6 CATTURA SCHERMATA DEL PROGETTO 31

V
ASTRATTO

L'obiettivo di questo briefing è presentare una panoramica della macchina


tecniche di apprendimento attualmente in uso o in considerazione nelle statistiche
agenzie in tutto il mondo. Sezione I, delinea il motivo principale per cui le statistiche

le agenzie dovrebbero iniziare a esplorare l'uso di tecniche di apprendimento automatico

e cos'è l'apprendimento automatico, qual è il futuro dell'apprendimento automatico

apprendimento e perché python è il linguaggio più adatto per la macchina


apprendimento. La Sezione II delinea cos'è l'apprendimento automatico, confrontando una

tecnica statistica ben nota (regressione logistica) con un (non-


controparti di apprendimento statistico (macchine a vettori di supporto).
Le sezioni III e IV discutono la ricerca attuale o le applicazioni della macchina

tecniche di apprendimento nel campo delle statistiche ufficiali nelle aree di


codifica automatica, editing e imputazione, e collegamento dei record,
rispettivamente. La Sezione VI contiene un elenco delle applicazioni di apprendimento automatico

nelle statistiche ufficiali al di fuori delle tre aree menzionate sopra.

VI
ESITI DELLA FORMAZIONE

. Al termine di questo corso di formazione, sono in grado di:


Avere una buona comprensione delle questioni e delle sfide fondamentali
dell'apprendimento automatico: dati, scelta del modello, complessità del modello, ecc.

Analizza i punti di forza e di debolezza di molte macchine popolari


approcci di apprendimento.

Differenziare tra vari algoritmi di apprendimento automatico e il


paradigmi dell'apprendimento supervisionato e non supervisionato.

Essere in grado di progettare e implementare vari algoritmi di apprendimento automatico

algoritmi in una gamma di applicazioni del mondo reale.

VII
CAPITOLO 1
INTRODUZIONE AL MACHINE LEARNING

In questo capitolo, imparerai in dettaglio i concetti di Python in


apprendimento automatico.

Che cos'è il Machine Learning?

La scienza dei dati, l'apprendimento automatico e l'intelligenza artificiale sono alcuni di

i temi di tendenza principali nel mondo della tecnologia oggi.

Il Machine Learning è un sottoinsieme dell'Intelligenza Artificiale.

Fig. 1.1 Rappresentazione dell'AI

Cercheremo di capire il ML utilizzando diverse definizioni

VIII
•Definizione 1
L'apprendimento automatico è una disciplina che si occupa di programmare i sistemi in modo che

in modo da farli apprendere automaticamente e migliorare con l'esperienza.

•Definizione 2
Si dice che un programma apprenda dall'esperienza E rispetto a qualche
misura di performance P, se la sua performance su T, misurata da P, migliora
con esperienza E.

1.2 Futuro Scope del Machine Learning

Industria Automotive

L'industria automobilistica è uno dei settori in cui il Machine Learning è


eccellere cambiando la definizione di guida 'sicura'.

Robotica

La robotica è uno dei settori che attira sempre l'interesse dei ricercatori.
come il comune

1.2.3 Calcolo Quantistico

Siamo ancora in uno stato infantile nel campo dell'Apprendimento Automatico. Ci sono molte
dei progressi da raggiungere in questo campo. Uno di essi che porterà la Macchina
Portare l'apprendimento al livello successivo è il calcolo quantistico.

IX
1.2.4 Ambito di lavoro del ML

L'ambito del Machine Learning in India, così come in altre parti del mondo,
è elevato rispetto ad altri settori professionali quando si tratta di opportunità di lavoro.
Secondo Gartner, ci saranno 2,3 milioni di posti di lavoro nel campo dell'Intelligenza Artificiale

Intelligenza e Apprendimento Automatico entro il 2022

1.3 Perché il linguaggio di programmazione Python?

Fig. 1.2 Caratteristiche del Machine Learning

1.3.1 Semplice e coerente

Python offre codice conciso e leggibile. Sebbene algoritmi complessi e


flussi di lavoro versatili stanno dietro al machine learning e all'AI, Python's
La semplicità consente agli sviluppatori di scrivere sistemi affidabili. Gli sviluppatori possono mettere

X
tutto il loro sforzo nella risoluzione di un problema di ML invece di concentrarsi sul tecnico

nuances della lingua.

Inoltre, Python è attraente per molti sviluppatori poiché è facile da imparare.


Il codice Python è comprensibile dagli esseri umani, il che rende più facile costruire
modelli per l'apprendimento automatico.

1.3.2 Ampia selezione di librerie e framework

Implementare algoritmi di intelligenza artificiale e apprendimento automatico può essere complicato e richiede molto

tempo. È fondamentale avere un ambiente ben strutturato e ben testato per


consentire agli sviluppatori di trovare le migliori soluzioni di codifica.

1.3.3 Indipendenza dalla piattaforma

L'indipendenza dalla piattaforma si riferisce a un linguaggio di programmazione o a un framework

consentendo agli sviluppatori di implementare cose su una macchina e utilizzarle su

un'altra macchina senza alcuna (o con solo minimi) modifiche. Una chiave per
La popolarità di Python è dovuta al fatto che è un linguaggio indipendente dalla piattaforma. Python è

supportato da molte piattaforme tra cui Linux, Windows e macOS. Python


il codice può essere utilizzato per creare programmi eseguibili autonomi per la maggior parte dei comuni

sistemi operativi, il che significa che il software Python può essere facilmente distribuito

e utilizzato su quei sistemi operativi senza un interprete Python.

1.3.4 Grande comunità e popolarità

Nel Developer Survey 2018 di Stack Overflow, Python era tra i primi
10 linguaggi di programmazione più popolari, il che significa che tu
possono trovare eassumere una società di sviluppocon le competenze necessarie per costruire
il tuo progetto basato sull'IA.

XI
CAPITOLO 2
TIPI DI APPRENDIMENTO AUTOMATICO

Fig 2.1 Tipi di Apprendimento Automatico

L'apprendimento automatico (ML) è un apprendimento automatizzato con poco o nessun intervento umano.

intervento. Comporta la programmazione dei computer affinché apprendano dai


input disponibili. Lo scopo principale dell'apprendimento automatico è esplorare e

costruire algoritmi che possano apprendere dai dati precedenti e fare


previsioni su nuovi dati in ingresso.

XII
2.1 Concetti di Apprendimento

L'apprendimento è il processo di conversione dell'esperienza in competenza o conoscenza.


L'apprendimento può essere ampiamente classificato in tre categorie, come indicato di seguito,

basato sulla natura dei dati di apprendimento e sull'interazione tra l'apprendente


e l'ambiente.
Apprendimento Supervisionato

Apprendimento non supervisionato

Apprendimento semi-supervisionato

Allo stesso modo, ci sono quattro categorie di algoritmi di apprendimento automatico come mostrato

sotto:
Algoritmo di apprendimento supervisionato

Algoritmo di apprendimento non supervisionato

Algoritmo di apprendimento semi-supervisionato

Algoritmo di apprendimento per rinforzo

Tuttavia, i più comunemente usati sono supervisionati e non supervisionati


apprendimento.

2.2 Apprendimento Supervisionato

L'apprendimento supervisionato è comunemente utilizzato in applicazioni del mondo reale, come il riconoscimento facciale.

e riconoscimento vocale, prodotti o raccomandazioni di film, e vendite


previsione.

L'apprendimento supervisionato può essere ulteriormente classificato in due tipi:

Regressione e Classificazione.

XIII
La regressione allena e prevede una risposta a valore continuo, ad esempio
prevedere i prezzi degli immobili.

La classificazione cerca di trovare l'etichetta di classe appropriata, come ad esempio analizzare

sentimento positivo
tumori, prestiti garantiti e non garantiti, ecc.

Nel apprendimento supervisionato, i dati di apprendimento vengono forniti con descrizioni, etichette, obiettivi o

output desiderati e l'obiettivo è trovare una regola generale che mappi gli input a
output. Questo tipo di dati di apprendimento è chiamato dati etichettati. La regola appresa è
quindi usato per etichettare nuovi dati con output sconosciuti.

L'apprendimento supervisionato implica la costruzione di un modello di apprendimento automatico che si basa

campioni non etichettati. Ad esempio, se costruiamo un sistema per stimare il prezzo di


un terreno o una casa basati su varie caratteristiche, come dimensione, posizione, e
quindi, prima dobbiamo creare un database e etichettarlo. Dobbiamo insegnare il
algoritmo quali caratteristiche corrispondono a quali prezzi. Basato su questi dati, il

l'algoritmo imparerà a calcolare il prezzo degli immobili utilizzando i valori


delle caratteristiche di input.

L'apprendimento supervisionato si occupa di apprendere una funzione dai dati di addestramento disponibili

dati. Qui, un algoritmo di apprendimento analizza i dati di addestramento e produce un


funzione derivata che può essere utilizzata per mappare nuovi esempi. Ce ne sono molti
algoritmi di apprendimento supervisionato come la regressione logistica, le reti neurali,

Macchine a vettori di supporto (SVM) e classificatori Naive Bayes.

XIV
Esempi comuni di apprendimento supervisionato includono la classificazione delle e-mail in

categorie di spam e non spam, etichettatura delle pagine web in base al loro contenuto, e

riconoscimento vocale.

2.3 Apprendimento non supervisionato

L'apprendimento non supervisionato è utilizzato per rilevare anomalie, valori anomali, come frodi o

attrezzature difettose, o per raggruppare i clienti con comportamenti simili per una vendita

campagna. È l'opposto dell'apprendimento supervisionato. Non ci sono dati etichettati


qui.

Quando i dati di apprendimento contengono solo alcune indicazioni senza alcuna descrizione o

etichette, sta al programmatore o all'algoritmo trovare la struttura del


dati sottostanti, per scoprire schemi nascosti, o per determinare come descrivere
i dati. Questo tipo di dati di apprendimento è chiamato dati non etichettati

Supponiamo di avere un certo numero di punti dati e vogliamo classificarli.


in diversi gruppi. Potremmo non sapere esattamente quali siano i criteri di
classificazione sarebbe. Quindi, un algoritmo di apprendimento non supervisionato cerca di

classificare il dataset fornito in un certo numero di gruppi in modo ottimale.

Gli algoritmi di apprendimento non supervisionato sono strumenti estremamente potenti per analizzare

dati e per identificare modelli e tendenze. Sono comunemente usati per


raggruppare input simili in gruppi logici. Algoritmi di apprendimento non supervisionato
includere K-means, Random Forests, clustering gerarchico e così via.

2.4 Apprendimento semi-supervisionato

XV
Se alcuni campioni di apprendimento sono etichettati, ma altri non lo sono, allora è
apprendimento semi-supervisionato. Fa uso di una grande quantità di dati non etichettati
per l'addestramento e una piccola quantità di dati etichettati per il test. Semi-supervisionato

l'apprendimento è applicato nei casi in cui è costoso acquisire un set completamente etichettato

dataset mentre è più pratico etichettare un piccolo sottoinsieme. Ad esempio, spesso


richiede esperti qualificati per etichettare alcune immagini di telerilevamento, e molti di
esperimenti sul campo per localizzare il petrolio in una particolare posizione, mentre si acquisisce

i dati non etichettati sono relativamente facili.

2.5 Apprendimento per rinforzo

Qui i dati di apprendimento forniscono feedback affinché il sistema si adatti in modo dinamico

condizioni al fine di raggiungere un certo obiettivo. Il sistema valuta il suo


prestazioni basate sulle risposte dei feedback e reagisce di conseguenza. Il
I casi più noti includono le auto a guida autonoma e l'algoritmo del maestro di scacchi

AlphaGo.

2.6 Scopo del Machine Learning

Il machine learning può essere visto come un ramo dell'IA o Intelligenza Artificiale,
poiché, la capacità di trasformare l'esperienza in competenza o di rilevare schemi in
I dati complessi sono un segno dell'intelligenza umana o animale.

Come campo della scienza, l'apprendimento automatico condivide concetti comuni con altri

discipline come la statistica, la teoria dell'informazione, la teoria dei giochi, e

ottimizzazione.

XVI
Come sottocampo della tecnologia dell'informazione, il suo obiettivo è programmare le macchine

così che possano imparare.

Tuttavia, bisogna notare che lo scopo del machine learning non è costruire
una duplicazione automatizzata del comportamento intelligente, ma utilizzando il potere di

computer per completare e integrare l'intelligenza umana. Ad esempio,


I programmi di apprendimento automatico possono analizzare e elaborare enormi database rilevando

modelli che vanno oltre il campo della percezione umana.

XVII
CAPITOLO 3
ALLENARE UN MODELLO DI APPRENDIMENTO AUTOMATICO

Un progetto di apprendimento automatico coinvolge i seguenti passaggi:

Definire un Problema
Importazione del dataset

Pre-elaborazione dei dati

Valutazione degli algoritmi

Migliorare i risultati

Analizzando i risultati

3.1 Importazione del dataset

Un dataset è una raccolta didati. Nel caso di dati tabellari, un set di dati
corrisponde a uno o piùtabelle del database, dove ognicolonnadi un
la tabella rappresenta una particolare variabile, e ciascunafilacorrisponde a un
dato registrato del set di dati in questione.

Un dataset può essere importato da vari portali online come [Link]


o può essere sviluppato dagli esseri umani secondo la dichiarazione del problema.

In generale, i dati vengono importati da fonti online e poi modificati.


secondo quanto dichiarato nel problema.

XVIII
3.2 Pre-elaborazione dei dati

Nel mondo reale, di solito ci imbattiamo in molti dati grezzi che non sono
adatto per essere elaborato facilmente da algoritmi di apprendimento automatico.

Dobbiamo preprocessare i dati per convertire


Dati grezzi Dati Efficienti

•Problemi che possono verificarsi nel nostro dataset importato/prodotto:

1. Valori mancanti
2. Dati categorici
3. Normalizzazione delle Caratteristiche

3.2.1 Valori Mancanti

Quindi, per correggere ci sono due modi possibili:

Possiamo aggiornare il set di dati sostituendo i valori nan con la media di quella colonna.

Possiamo eliminare tutta quella riga in cui è presente il valore nan

3.2.2 Dati Categoriali

Significa che i dati testuali sono presenti al posto dei dati numerici
NOTA: Gli algoritmi di ML funzionano solo su dati numerici e non su
dati testuali/categoriali
Quindi, per convertire i dati categoriali in dati numerici, dobbiamo
seguire un processo in due fasi:

XIX
Figura 3.1 Etichetta e Codifica One Hot

3.2.3 Scalatura delle Caratteristiche

A volte in un insieme di dati due quantità non sono nella stessa gamma
Pertanto, la normalizzazione delle caratteristiche viene eseguita per rendere tutte le quantità nella stessa scala.

gamma
•La scalatura delle caratteristiche è un metodo utilizzato per normalizzare l'intervallo delle variabili indipendenti

variabili o caratteristiche

3.3 Valutazione degli algoritmi

•Più algoritmi di apprendimento automatico che lavorano su tecniche diverse


sono disponibili e viene adottato in base alla sua accuratezza, scalabilità e
risultati.
Per quanto riguarda l'Apprendimento Automatico Supervisionato, seguendo
gli algoritmi sono disponibili:

3.3.1 Regressione lineare

XX
Una semplice tecnica di regressione lineare variabile è un tipo di algoritmo di apprendimento automatico.

che dimostra come una singola variabile indipendente (caratteristica)


una variabile) e una variabile dipendente dall'output lavorano insieme.

Vantaggi: Veloce da modellare. Semplice da capire. Utile per più piccoli


set di dati che non sono eccessivamente complicati.

Svantaggi: Difficile da progettare per dati non lineari. Tende ad essere


inefficace quando si lavora con dati altamente complessi.

Fig 3.2 Regressione Lineare

3.3.2 Regressione Logistica

Un algoritmo di machine learning per la regressione alternativo è la logistica


modello. Questa tecnica è progettata per problemi di classificazione binaria, poiché

indicato da due possibili esiti che sono influenzati da uno o più


variabili esplicative.

XXI
Vantaggi: Facile da implementare e interpretare. Adatto bene per una linea.
dataset separabile.

Svantaggi: La regressione logistica assume linearità tra il


variabili dipendenti e indipendenti.

Fig 3.3 Regressione Logistica

3.3.3 Foresta Casuale

Aalgoritmo di apprendimento automatico a foresta casualeè considerato un insieme


metodo perché è una raccolta di centinaia e a volte migliaia
degli alberi decisionali.

Il modello aumenta il potere predittivo combinando le decisioni di


ogni albero decisionale per trovare una risposta.

XXII
La tecnica della foresta casuale è semplice, altamente accurata e ampiamente utilizzata

da ingegneri.

Vantaggi: Applicabile sia per la regressione che per la classificazione


problemi. Efficiente su grandi set di dati. Funziona bene con dati mancanti.

Svantaggi: Non facilmente interpretabile. Può causare overfitting se c'è rumore.


viene rilevato. Più lento rispetto ad altri modelli nel creare previsioni.

Fig 3.4 Foresta Casuale

3.3.4 K-Means

È un tipo di algoritmo non supervisionato che si occupa del clustering


problemi. La sua procedura segue un modo semplice e facile per classificare un dato
insieme di dati attraverso un certo numero di cluster (si suppongano k cluster). Dati

XXIII
I punti all'interno di un cluster sono omogenei e sono eterogenei rispetto ai peer

gruppi.

Come K-means forma i cluster K-means forma i cluster nei passaggi sottoelencati:

Il K-means sceglie k punti per ogni cluster noti come centri.

Ogni punto dati forma un cluster con i centri più vicini, ovvero k cluster.

Trova il centroide di ciascun cluster in base ai membri esistenti del cluster. Qui
abbiamo nuovi centroids.

Poiché abbiamo nuovi centri, ripeti il passaggio 2 e 3. Trova la distanza più vicina per

ogni punto dati dai nuovi centroidi e associato a nuovi k-cluster.


Ripeti questo processo fino al verificarsi della convergenza, ovvero finché i centri non

cambiamento.

Determinazione del valore di K

Nel K-means, abbiamo gruppi e ogni gruppo ha il proprio centroide. Somma di


quadrato della differenza tra il centroide e i punti dati all'interno di un cluster
costituisce la somma del valore quadrato per quel cluster. Inoltre, quando la somma di
i valori quadrati per tutti i cluster sono aggiunti, diventa totale all'interno della somma di

valore quadrato per la soluzione del cluster.

Sappiamo che man mano che il numero di cluster aumenta, questo valore continua a

in diminuzione, ma se tracci il risultato potresti vedere che la somma dei quadrati


la distanza diminuisce bruscamente fino a un certo valore di k, e poi molto più lentamente

dopo di che. Qui, possiamo trovare il numero ottimale di cluster.

XXIV
Fig 3.5 Algoritmo K-Means

3.3.5KNN (K-Nearest Neighbours)

K-Nearest Neighbours, abbreviato KNN, è un algoritmo di apprendimento supervisionato


specializzato nella classificazione. È un algoritmo semplice che memorizza tutte le informazioni disponibili

casi e classifica nuovi casi tramite un voto di maggioranza dei suoi k vicini.

Il caso assegnato alla classe è il più comune tra i suoi K più vicini.
i vicini misurati da una funzione di distanza. Queste funzioni di distanza possono essere
Distanza euclidea, distanza di Manhattan, distanza di Makowski e distanza di Hamming. Prime tre funzioni

sono utilizzati per funzioni continue e il quarto (Hamming) per categoriale


variabili.

XXV
Se K = 1, allora il caso viene semplicemente assegnato alla classe del suo vicino più vicino.

A volte, scegliere K si rivela una sfida durante l'esecuzione di KNN


modellazione.

L'algoritmo esamina diversi centroidi e confronta le distanze utilizzando alcune


una sorta di funzione (solitamente euclidea), poi analizza quei risultati e assegna
ogni punto al gruppo in modo che sia ottimizzato per essere collocato con tutti i più vicini

punti a questo.

Puoi utilizzare KNN sia per problemi di classificazione che di regressione. Tuttavia, esso
è più ampiamente utilizzato nei problemi di classificazione nell'industria. KNN può facilmente
essere mappati alle nostre vite reali.

Dovrai annotare i seguenti punti prima di selezionare KNN:

KNN è computazionalmente costoso.

Le variabili dovrebbero essere normalizzate, altrimenti le variabili con intervallo più ampio possono distorcerne i risultati.

Lavora di più sulla fase di pre-elaborazione prima di passare al KNN come l'outlier,
rimozione del rumore

XXVI
Fig 3.6 K-Nearest Neighbour

CAPITOLO 4
VISUALIZZAZIONE DEI DATI

L'analisi di quanto bene o male il tuo modello è addestrato è molto importante


parte del Machine Learning.

• Alcuni termini comuni da chiarire sono:


Vera positività (TP): Predetti positivi e sono realmente positivi.
Falsi positivi (FP): Predetti positivi e in realtà negativi.
Vero negativo (TN): Predetto negativo e realmente negativo.
Falsi negativi (FN): Predetti negativi e sono effettivamente positivi.

4.1 Matrice di Confusione

XXVII
Fig 4.1 Matrice di Confusione

Bene, è una misura delle prestazioni per la classificazione dell'apprendimento automatico

problema in cui l'output può essere due o più classi. È una tabella con 4 diverse
combinazioni di valori previsti e reali.

È estremamente utile per misurare il Richiamo, la Precisione, la Specificità, la Accuratezza

e, cosa più importante, la curva AUC-ROC.

Comprendiamo TP, FP, FN, TN in termini di analogia con la gravidanza.

Vero Positivo

Interpretazione: Hai previsto positivo ed è vero. Hai previsto che un


la donna è incinta e lo è davvero.

Vero Negativo

XXVIII
Interpretazione: Hai previsto negativo ed è vero. Hai previsto che un uomo è
non incinta e lui in realtà non lo è.

Falso Positivo: (Errore di Tipo 1)

Interpretazione: Hai previsto positivo ed è falso. Hai previsto che un uomo


è incinta ma in realtà non lo è.

Falso Negativo: (Errore di Tipo 2)

Interpretazione: Hai previsto negativo ed è falso. Hai previsto che un


la donna non è incinta ma in realtà lo è.
4.2 Accuratezza, Precisione e Richiamo

Considera un compito di classificazione in cui un sistema di apprendimento automatico osserva

tumori e deve prevedere se questi tumori sono benigni o maligni.

L'accuratezza, o la frazione di istanze classificate correttamente, è un


misura ovvia delle prestazioni del programma. Anche se la precisione misura
le prestazioni del programma, non fa distinzione tra maligno
tumori che sono stati classificati come benigni, e tumori benigni che erano
classificato come maligno. In alcune applicazioni, i costi sostenuti su tutti
i tipi di errori possono essere gli stessi. In questo problema, tuttavia, non riuscire a identificare

classificare i tumori maligni è un errore più grave che classificare i tumori benigni come

essere maligno per errore.

Possiamo misurare ciascuno dei possibili risultati delle previsioni per creare diverse
istantanee delle prestazioni del classificatore. Quando il sistema classifica correttamente

XXIX
un tumore è classificato come maligno, la previsione è chiamata vero positivo. Quando il

il sistema classifica erroneamente un tumore benigno come maligno, la previsione


è un falso positivo. Allo stesso modo, un falso negativo è una previsione errata che
il tumore è benigno e un vero negativo è una previsione corretta che un tumore è
benigno. Questi quattro risultati possono essere utilizzati per calcolare diversi comuni

misure di performance della classificazione, come accuratezza, precisione, richiamo e così via

su.

L'accuratezza è calcolata con la seguente formula:

ACC = (TP + TN)/(TP + TN + FP + FN)

Dove,
TP è il numero di veri positivi
TN è il numero di veri negativi
FP è il numero di falsi positivi
FN è il numero di falsi negativi.

La precisione è la frazione dei tumori che sono stati previsti come maligni che
sono effettivamente maligni. La precisione è calcolata con la seguente formula:

PREC = TP/(TP + FP)

Richiama la frazione di tumori maligni che il sistema ha identificato.


Il richiamo è calcolato con la seguente formula:

R = TP / (TP + FN)

XXX
In questo esempio, la precisione misura la frazione di tumori che sono stati previsti.
essere maligni che sono effettivamente maligni. Il richiamo misura la frazione di
tumori veramente maligni che sono stati rilevati. Le misure di precisione e richiamo
potrebbe rivelare che un classificatore con un'accuratezza impressionante in realtà non riesce a rilevare

la maggior parte dei tumori maligni. Se la maggior parte dei tumori è benigna, anche un classificatore che

non predice mai la malignità potrebbe avere un'alta accuratezza. Un classificatore diverso

con una minore precisione e un maggiore richiamo potrebbe essere più adatto al compito, poiché

detecterà più tumori maligni. Molti altri indicatori di prestazione


può essere utilizzato anche per la classificazione.

CAPITOLO 5
PROGETTI

5.1 Analisi della Qualità del Vino

Dichiarazione del problema:

Utilizzando il dataset di analisi della qualità del vino rosso, addestra un modello utilizzando un appropriato ML

algoritmo che può prevedere la qualità di un vino come fine, buono o ottimo.

XXXI
Fig 5.1 Screenshot del progetto 1

Fig 5.2 Schermata del Progetto 2

XXXII
Figura 5.3 Screenshot del progetto 3

Fig 5.4 Screenshot del Progetto 4

XXXIII
Fig 5.5 Cattura d'écran del progetto 5

6.2 Sistema di Riconoscimento Facciale

Dichiarazione del problema

Sviluppa un sistema di riconoscimento facciale che possa rilevare i volti umani e possa anche

conta il numero di facce nel frame.

XXXIV
Fig 5.6 Screenshot del progetto

CAPITOLO 6
APPLICAZIONI DEL MACHINE LEARNING

XXXV
L'intelligenza artificiale (AI) e il machine learning sono ovunque. Opportunità
sono che li stai usando e nemmeno ne sei consapevole. In Macchina
L'apprendimento (ML), i computer, il software e i dispositivi funzionano tramite la cognizione

simile al cervello umano.


Applicazioni tipiche di successo del machine learning includono programmi che
decifrare il testo scritto a mano, riconoscimento facciale, riconoscimento vocale, discorso

riconoscimento
previsioni, analisi del mercato azionario e previsioni, e così via. Questo capitolo
discute queste applicazioni in dettaglio.

6.1 Assistenti Personali Virtuali

Siri, Google Now, Alexa sono alcuni dei comuni esempi di virtuale
assistenti personali. Queste applicazioni aiutano a trovare informazioni, quando
chiesto a voce. Tutto ciò che serve è attivarli e porre domande
Quali sono i miei appuntamenti per oggi?
voli da Delhi a New York

6.2 Analisi e previsioni del traffico

I servizi di navigazione GPS monitorano la posizione e le velocità dell'utente e utilizzano

loro a costruire una mappa del traffico attuale. Questo aiuta a prevenire il traffico
congestioni. L'apprendimento automatico in tali scenari aiuta a stimare le aree
dove si possono trovare congestioni in base ai registri precedenti.

6.3 Sorveglianza Video Automatizzata

XXXVI
I sistemi di videosorveglianza oggigiorno sono alimentati da AI e macchine.

l'apprendimento è la tecnologia dietro a questo che rende possibile rilevare e


prevenire i crimini prima che si verifichino. Monitorano comportamenti strani e sospetti di

persone e invia allerta ai collaboratori umani, che possono infine aiutare


incidenti e crimini.

6.4 Social Media

Facebook monitora continuamente gli amici con cui ti connetti, il tuo


interessi, luogo di lavoro, o un gruppo che condividi con qualcun altro ecc. Basato su
apprendimento continuo, un elenco di utenti di Facebook viene fornito come suggerimenti per amici.

6.5 Riconoscimento Facciale

Carichi una foto di te con un amico e Facebook riconosce istantaneamente


quell'amico. L'apprendimento automatico lavora al centro della Visione Artificiale, che è una

tecnica per estrarre informazioni utili da immagini e video. Pinterest utilizza


visione artificiale per identificare oggetti o spilli nelle immagini e raccomandare
pinn edizioni simili ai suoi utenti.

6.6 Filtraggio di Spam e Malware nelle Email

L'apprendimento automatico è ampiamente utilizzato nella rilevazione dello spam e del malware.

il filtraggio e i database di tali spam e malware continuano a crescere


aggiornato affinché siano gestiti in modo efficiente.

XXXVII
6.7 Supporto Clienti Online

Su diversi siti web al giorno d'oggi, c'è un'opzione per chattare con il supporto clienti
rappresentativa mentre gli utenti navigano nel sito. Nella maggior parte dei casi, invece
di un vero dirigente, parli con un chatbot. Questi bot estraggono informazioni da
il sito web e fornirlo ai clienti per assisterli. Nel corso di
col tempo, i chatbot imparano a comprendere meglio le richieste degli utenti e a servire loro

con risposte migliori, e questo è reso possibile dagli algoritmi di apprendimento automatico.

6.8 Raffinamento dei Risultati del Motore di Ricerca

Google e motori di ricerca simili stanno utilizzando l'apprendimento automatico per migliorare il

risultati di ricerca per i loro utenti. Ogni volta che viene eseguita una ricerca, gli algoritmi presso

il backend tiene d'occhio come gli utenti rispondono ai risultati. A seconda


sulle risposte degli utenti, gli algoritmi che lavorano sul backend migliorano il
risultati di ricerca.

6.9 Raccomandazioni sui prodotti

Se un utente acquista o cerca un prodotto online, continua a ricevere


email per suggerimenti di acquisto e annunci riguardo a quel prodotto. Basato su precedenti
comportamento degli utenti, su un sito web/app, acquisti passati, articoli apprezzati o aggiunti al carrello

preferenze di marca ecc., le raccomandazioni sui prodotti vengono inviate all'utente.

6.10 Rilevazione delle frodi online

Il machine learning viene utilizzato per tracciare frodi monetarie online. Ad esempio:
PayPal sta utilizzando l'IA per prevenire il riciclaggio di denaro. L'azienda sta utilizzando un insieme

XXXVIII
di strumenti che li aiutano a confrontare milioni di transazioni e fare un
distinzione tra transazioni legali o illegali che avvengono tra il
acquirenti e venditori.

CONCLUSIONE

XXXIX
Il Machine Learning è una tecnica di addestramento delle macchine per svolgere le attività
un cervello umano può fare, sebbene un po' più velocemente e meglio di un umano medio
essere. Oggi abbiamo visto che le macchine possono battere i campioni umani in
giochi come gli Scacchi, Alpha-Go che sono considerati molto complessi. Tu
ho visto che le macchine possono essere addestrate a svolgere attività umane in diversi
aree e possono aiutare gli esseri umani a vivere meglio. Il Machine Learning può essere un
Supervisionato o non supervisionato.

Se hai una quantità inferiore di dati e dati chiaramente etichettati per l'addestramento, opta per
Apprendimento supervisionato. L'apprendimento non supervisionato darebbe generalmente risultati migliori.

prestazioni e risultati per grandi set di dati. Se hai un enorme set di dati facilmente
disponibile, vai per tecniche di deep learning. Hai anche imparato
Apprendimento per rinforzo e Apprendimento profondo per rinforzo. Ora sai
cosa sono le reti neurali, le loro applicazioni e limitazioni. Infine, quando è che
riguardo allo sviluppo di modelli di apprendimento automatico di tua proprietà, tu

ho esaminato le scelte di vari linguaggi di sviluppo, IDE e piattaforme.


La prossima cosa che devi fare è iniziare a imparare e praticare su ciascun macchinario.
tecnica di apprendimento.

XL
BIBLIOGRAFIA

E-book di Tutorials Point sul Machine Learning

Apprendimento Automatico per Assoluti Principianti: Un'Introduzione in Inglese Semplice

(2ª Edizione) Libro di Oliver Theobald

Machine Learning (in Python e R) per Negati (1ª Edizione)


Machine Learning per Hacker libro di Drew Conway e John Myles
Bianco

Introduzione al Machine Learning con Python: Una Guida per i Dati


Scienziati
Libro di Andreas C. Müller e Sarah Guido

XLI

Potrebbero piacerti anche