Introduzione all’apprendimento automatico Esplorando le sue molteplici forme

Un'introduzione all'apprendimento automatico esplorando le sue molteplici forme

Capire il machine learning in termini semplici.

Immagine generata da ideogram.ai

Oggi il machine learning è ovunque, giusto? Se sei qui, potresti essere curioso di sapere cosa sia esattamente il machine learning! Quindi, permettimi di spiegarlo in termini semplici per te. A grandi linee, il machine learning consiste nell’insegnare ai computer a prendere decisioni intelligenti mostrando loro molti esempi e permettendo loro di imparare dai dati. Discutiamone di più, e ecco cosa ci aspetta!

Indice

  1. Come funziona il machine learningApplicazioni del machine learning
  2. Tipi di machine learning
  3. Machine learning supervisionatoTipi di apprendimento supervisionatoRegressioneClassificazione
  4. Machine learning non supervisionatoTipi di apprendimento non supervisionatoAlgoritmi di clusteringRiduzione della dimensionalitàRilevazione di anomalieApprendimento di regole di associazioneAutoencoder
  5. Apprendimento semi-supervisionato
  6. Apprendimento per rinforzo

ConclusioneAnnuncio #100daysMLDL

Come funziona il machine learning

quello che succede nel machine learning è fondamentalmente che abbiamo un pezzo di codice ( che viene chiamato algoritmo ) per trovare pattern nei dati analizzando molti dati precedenti disponibili (questo processo è chiamato addestramento). Diciamo, l’altezza di una persona adulta e l’altezza di suo padre hanno un pattern, Altezza del padre = m*(altezza della persona) + c.

In base ai pattern osservati, l’algoritmo creerà un’equazione matematica regolando i parametri (qui m, c) e trovando i migliori parametri che possono dare una corrispondenza accurata dei dati (qui trova i migliori valori per i parametri m e c, che possono rappresentare i dati), che viene indicato come un modello (diciamo, Altezza del padre = 1*Altezza della persona + 0,5). Beh, non è sempre un’equazione, ma per semplificare la nostra comprensione, possiamo considerarlo in questo modo.

Ora con il modello che abbiamo, se qualcuno dice la sua altezza, possiamo predirre l’altezza di suo padre con il modello che abbiamo (l’equazione), giusto? Non litigare con me se questa previsione non dà i dati corretti per la tua altezza e l’altezza di tuo padre! I valori sono casuali!

Ma c’è un mare di algoritmi là fuori, quindi nel Machine Learning studiamo questi algoritmi per trovare il miglior algoritmo che possa fare previsioni accurate con i tuoi nuovi dati.

Applicazioni del Machine Learning

Ammettiamolo, il Machine Learning è ovunque intorno a noi, rendendo la nostra vita più facile e conveniente. Ecco alcuni esempi.

1. Sistemi di Raccomandazione: Immagina di essere su una piattaforma di streaming: hai guardato alcuni film di fantascienza e improvvisamente ti suggerisce altri film di fantascienza. Ecco il Machine Learning all’opera! Analizza le tue scelte passate e quelle degli altri spettatori per consigliarti contenuti che ti piaceranno.

2. Assistenti Personali Virtuali: Pensate a Siri, Alexa o Google Assistant: comprendono i tuoi comandi vocali e forniscono risposte utili. Gli algoritmi di Machine Learning permettono loro di riconoscere i modelli di linguaggio e migliorare la comprensione della tua voce nel tempo.

3. Auto a Guida Autonoma: Immagina un’auto che si guida da sola: le auto a guida autonoma utilizzano il Machine Learning per interpretare i dati provenienti dai sensori e dalle telecamere, aiutandole a prendere decisioni come quando fermarsi, andare avanti o cambiare corsia. Imparano a muoversi in sicurezza osservando il traffico del mondo reale.

4. Rilevamento delle Frodi: Quando la tua banca rileva attività sospette sul tuo conto: ancora una volta, gli algoritmi di Machine Learning sono al lavoro. Analizzano i tuoi schemi di spesa e segnalano transazioni che deviano dalla norma, proteggendoti da attività fraudolente.

5. Diagnostica Medica: Quando i medici utilizzano l’IA per diagnosticare malattie: il Machine Learning aiuta ad analizzare immagini mediche, come raggi X e scansioni MRI, per individuare precocemente anomalie. Può anche aiutare a prevedere l’esito dei pazienti sulla base di dati storici.

Queste applicazioni sono solo la punta dell’iceberg e le possibilità del Machine Learning sono infinite in vari campi, e sembra anche magico quando si predicono nuovi dati, giusto?

Tipi di Machine Learning

Sappiamo che si tratta principalmente di trovare il miglior algoritmo per i nostri dati, ora è il momento di esplorare varie categorie di algoritmi, il loro scopo e alcune applicazioni. In generale, vengono classificati in 4 categorie: Supervised, Unsupervised, Semi-Supervised e Reinforcement Learning. Capiamoli nel dettaglio.

1. Supervised Machine Learning (Apprendimento Automatico Supervisionato)

Questo è il metodo più popolare per eseguire operazioni di machine learning. Viene utilizzato per i dati in cui esiste un mappaggio preciso tra i dati di input e di output. Supponiamo, ad esempio, questa forma 🍎, abbiamo un’etichetta precisa per questa come “Mela”. Mostriamo alcuni di questi all’algoritmo (attraverso il codice), e la prossima volta che mostrerai quella forma, sarà prevista come una mela.

Un algoritmo supervisionato prende input e output etichettati. Immagine dell'autore.

Dati dati sotto forma di esempi con etichette, possiamo inviarli all’algoritmo e nel tempo l’algoritmo troverà il pattern approssimativo tra gli esempi e le loro etichette. Una volta completamente addestrato, possiamo inviare i nuovi dati al modello generato e questo effettuerà una previsione.

Questi algoritmi supervisionati sono chiamati “Orientati al compito”. Man mano che gli forniamo più dati, sarà in grado di apprendere in modo migliore per fare previsioni più accurate.

Alcune applicazioni:1. Riconoscimento del volto2. Riconoscimento della voce3. Classificazione dello spamE molte altre…

Tipi di Apprendimento Supervisionato

In generale, possiamo classificare l’apprendimento supervisionato in 2 categorie: 1. Regressione2. Classificazione

Regressione

Per metterla semplicemente, gli algoritmi di regressione prevedono la variabile continua (intero/float) in base alle variabili di input. L’esempio utilizzato all’inizio di questo articolo può essere considerato un algoritmo di regressione supervisionato, che prevede l’altezza del padre in base all’altezza di una persona adulta. Poiché l’altezza che stiamo prevedendo sarà una variabile continua (float).

Algoritmi di Regressione

  1. Regressione Lineare
  2. Regressione Polinomiale
  3. Regressione Lasso
  4. Regressione Ridge
  5. Regressione Esponenziale
  6. Regressione Logaritmica

Pochi Utilizzo

  • Previsione del punteggio degli studenti basata sui punteggi dei test precedenti.
  • Previsione del prezzo delle case basata sulla dimensione delle stanze, la località, ecc.

Classificazione

Utilizziamo algoritmi di classificazione per prevedere le categorie, ma non la variabile continua. Ad esempio, si desidera specificare se la email è spam o no, qui, la variabile di previsione non è un numero, è solo una risposta affermativa o negativa – categoria

Algoritmi di classificazione

  1. Regressione logistica
  2. Vicini più vicini
  3. Alberi decisionali
  4. Foresta casuale
  5. Support Vector Machine
  6. Naive Bayes
  7. Ada-Boost
  8. XG Boost
  9. Gradient Boosting

Pochi Utilizzi

  • Rilevamento dello spam delle email basato sui dati delle email precedenti.
  • Classificazione delle immagini per identificare tra gatto e cane.

2. Apprendimento automatico non supervisionato

Come suggerisce il nome, possiamo vederlo come l’opposto dell’apprendimento automatico supervisionato. Nell’apprendimento supervisionato, abbiamo un’etichetta di input e output, mentre nell’apprendimento non supervisionato, ci sono dati di input, ma i dati non sono esplicitamente etichettati! Questi algoritmi sono in grado di apprendere dai dati trovando modelli impliciti.

Prendiamo ad esempio la presentazione di diversi frutti provenienti da un cesto all’algoritmo e, in base alla forma, dimensione e colori, separerà questi in gruppi diversi, e quando mostri un nuovo frutto, farà la previsione di gruppo.

Gli algoritmi di apprendimento non supervisionato prendono solo i dati di input senza un'etichetta. Immagine di Author.

Gli algoritmi non supervisionati identificano i dati in base a vari fattori come la loro densità, strutture, segmenti simili e altre caratteristiche simili.

Pochi Utilizzi1. Sistemi di raccomandazione2. Analisi del comportamento dei clienti3. Raggruppamento di articoli di notizie e molti altri…

Tipi di apprendimento non supervisionato

In generale, possiamo classificarli in 5 categorie come

  1. Algoritmi di clustering
  2. Riduzione della dimensionalità
  3. Rilevamento delle anomalie
  4. Apprendimento delle regole di associazione
  5. Autoencoder

Capiremo lo scopo di queste categorie e esploreremo gli algoritmi che rientrano in queste categorie.

Algoritmi di clustering

Il clustering è una tecnica di raggruppamento di insiemi simili di oggetti nello stesso gruppo che sono diversi dagli oggetti nell’altro gruppo in base alle somiglianze. Come la segmentazione sopra di cesto di frutta.

Algoritmi di clustering

  1. K-Means
  2. DBSCAN
  3. Clustering gerarchico
  4. Mean Shift

Riduzione della dimensionalità

La riduzione della dimensionalità è come semplificare un problema complesso concentrandosi sui suoi aspetti più importanti. È una tecnica che riduce il numero di caratteristiche (dimensioni) in un set di dati mantenendo le informazioni essenziali. Questa semplificazione rende l’analisi dei dati più efficiente e più facile da visualizzare.

Algoritmi di riduzione della dimensionalità

  1. Analisi delle componenti principali (PCA)
  2. t-Distributed Stochastic Neighbor Embedding (t-SNE)

Rilevamento delle anomalie

Il rilevamento delle anomalie è come trovare quello strano in un gruppo. È una tecnica utilizzata nell’analisi dei dati per identificare punti dati insoliti o rari che non rispettano i modelli attesi, fondamentalmente gli outlier. Questo è importante per rilevare anomalie in vari campi, dal rilevamento delle frodi nelle transazioni finanziarie all’identificazione di malfunzionamenti delle apparecchiature nei sistemi industriali. Allenare un modello su una sola classe se qualcosa è al di fuori di questa classe, potrebbe essere un’anomalia.

Algoritmi di rilevamento delle anomalie

  1. One class K-Means
  2. One class SVM
  3. Isolation Forest

Apprendimento delle regole di associazione

L’apprendimento delle regole di associazione consiste nel trovare connessioni interessanti tra le cose che le persone acquistano in un negozio. È una tecnica di apprendimento automatico che scopre relazioni nei dati, aiutando a identificare modelli, tendenze e associazioni tra elementi o eventi. L’apprendimento delle regole di associazione è uno strumento prezioso per comprendere il comportamento dei consumatori, ottimizzare l’inventario e migliorare le raccomandazioni personalizzate.

Algoritmi sotto AR

  1. Apriori
  2. FP-Growth (Crescita del pattern frequente)
  3. Algoritmo Eclat

Autoencoder

Sono un tipo di rete neurale che prende dati complessi, li comprime in un codice e quindi cerca di ricreare i dati di input da un codice riassuntivo. Questo processo di compressione-decompressione può essere utilizzato per rimuovere il rumore dai dati visivi come immagini, video e scansioni mediche al fine di migliorare la qualità.

3. Apprendimento semi-supervisionato

L’apprendimento semisupervisionato è, per la maggior parte, esattamente ciò che sembra, un dataset di addestramento con sia dati etichettati che non etichettati. Questo metodo è particolarmente utile quando è difficile estrarre le caratteristiche rilevanti dai dati e l’etichettatura di tutti gli esempi richiede molto tempo!

Un metodo di addestramento popolare che parte da un insieme piuttosto piccolo di dati etichettati è l’utilizzo delle reti generative avversariali (GAN), come due reti neurali che competono tra loro, ognuna cercando di superare l’altra!

Una delle reti, chiamata generatore, cerca di creare nuovi punti dati che imitano i dati di addestramento. L’altra rete, il discriminatore, prende i dati appena generati e valuta se fanno parte dei dati di addestramento o sono falsi.

Le reti migliorano in un ciclo di feedback positivo, poiché il discriminatore diventa più bravo a separare i falsi dagli originali e il generatore migliora la sua capacità di creare falsi convincenti.

Esempio: Immagini mediche come scansioni TC o RM.

4. Apprendimento per rinforzo

È un approccio in cui un agente impara a prendere decisioni interagendo con un ambiente. L’agente compie azioni, riceve feedback sotto forma di ricompense o punizioni e regola il proprio comportamento per massimizzare le ricompense a lungo termine. Viene spesso utilizzato in robotica, giochi e sistemi autonomi, proprio come il metodo del tentativo ed errore.

Lo scopo globale è prevedere il prossimo passo migliore per ottenere la ricompensa finale più grande. Prendendo come esempio il gioco degli scacchi, ogni azione può essere una mossa e lo stato sarà la situazione attuale del gioco; le ricompense nel mezzo delle mosse possono essere i pezzi dell’avversario che cattura. La ricompensa finale più grande è vincere il gioco, quindi impara tutto attraverso l’esperienza.

Conclusioni

Spero che tu abbia ottenuto chiarezza su cosa sia l’apprendimento automatico e che tu abbia capito che l’apprendimento supervisionato avviene quando si danno dati etichettati, l’apprendimento non supervisionato avviene quando si danno dati senza etichette particolari all’algoritmo, mentre l’apprendimento semi-supervisionato riguarda dataset a metà etichettati e a metà senza etichette, e l’apprendimento per rinforzo è completamente magico, impara tutto con tentativi ed errori, bello direi!!

Queste sono le conoscenze di base che devi sapere sull’apprendimento automatico prima di approfondire lo studio di questi algoritmi. Imparare gli algoritmi in dettaglio è cruciale per la scienza dei dati. Io stesso ho intrapreso questo incredibile viaggio e nei prossimi giorni pubblicherò dettagliate intuizioni su questi algoritmi. Seguimi per ulteriori informazioni e Iscriviti per non perdere altri interessanti articoli sulla scienza dei dati!

Se sei interessato a Pandas, Numpy, Matplolib, Seaborn e Plotly, non cercare altrove, ho anche articoli dettagliati su queste librerie essenziali per la scienza dei dati. Ecco un elenco curato.

RaviTeja G

RaviTeja G

Guide dettagliate per tutte le librerie essenziali di Data Science

Visualizza lista8 storie

Annuncio #100daysMLDL

Giorno 18/100 — Introduzione all’Apprendimento Automatico.

Basta andare al mio repository GitHub per accedere direttamente a tutto il codice e le risorse. Ecco il link al repository per la sfida. Invito tutti voi a unirvi a me in questo entusiasmante viaggio! Che siate appassionati di dati o semplicemente curiosi del mondo dell’apprendimento automatico, qui c’è qualcosa per tutti. Impariamo, cresciamo e ispiriamoci a vicenda. Grazie per la lettura, Buono studio e buona giornata 🙂