I principali tipi di modelli di deep learning che gli ingegneri di intelligenza artificiale dovrebbero imparare nel 2022
Pubblicato: 2021-01-01Sommario
introduzione
Il deep learning è una tecnica di apprendimento automatico che sfrutta diversi livelli di elaborazione delle informazioni non lineari per la trasformazione non supervisionata e supervisionata, l'estrazione di funzionalità, la classificazione e l'analisi dei modelli.
Quando si tratta di elaborare le informazioni in modo non lineare, è costituito da diversi livelli gerarchici. Qui, alcuni concetti di basso livello sono in grado di definire concetti di livello superiore. L'apprendimento supervisionato è una forma di apprendimento automatico, un set di formazione e una serie di esempi viene inviata come input nel sistema durante la fase di formazione.
Poiché ogni ingresso è etichettato con un valore di uscita, il sistema conosce l'uscita quando viene fornita una serie di ingressi. D'altra parte, nell'apprendimento non supervisionato, gli input non sono etichettati con la classe a cui appartengono. Spetta quindi al sistema sviluppare e organizzare i dati ricercando le caratteristiche comuni e apportando le modifiche necessarie sulla base delle conoscenze interne.
Le reti neurali artificiali sono poco profonde. Pertanto, non possono gestire dati complessi come quelli che si trovano nelle applicazioni quotidiane come immagini, linguaggio naturale, recupero di informazioni e applicazioni di elaborazione delle informazioni simili a quelle umane. Per questo tipo di applicazioni, i modelli di deep learning sono perfetti. Con l'aiuto del deep learning, è possibile classificare, riconoscere e categorizzare i modelli di dati per una macchina con meno sforzo.
Articolo correlato: Le migliori tecniche di apprendimento profondo
Tipi di modelli di deep learning
I modelli di deep learning si sono evoluti e la maggior parte di essi si basa su reti neurali artificiali. La più significativa tra queste è le reti neurali convoluzionali (CNN). Comprende anche variabili latenti e formule proposizionali organizzate a strati in modelli generativi profondi.

Codificatori automatici
È una rete neurale artificiale, che può imparare da diversi modelli di codifica. Un autoencoder è simile a un perceptron multistrato con un livello di input, un livello nascosto o un livello di output nella sua forma più semplice. Il livello di output possiede lo stesso numero di nodi di un livello di output. Non prevede i valori target in base al vettore di output; invece, l'Autoencoder può prevedere il suo input. Questo meccanismo di apprendimento può essere schematizzato come segue:
Per ogni ingresso x,
- Calcola l'attivazione lasciando passare un feedforward a ogni livello nascosto e livello di output
- Utilizzare le funzioni di errore appropriate per rilevare la deviazione tra i valori calcolati
- Aggiorna i pesi eseguendo la propagazione all'indietro dell'errore
- Continua a ripetere l'attività finché non genera un output soddisfacente
Se il livello nascosto ha meno nodi rispetto ai nodi di input-output, l'attivazione dell'ultimo livello nascosto viene considerata come una rappresentazione compressa degli input. Se i nodi del livello nascosto sono più numerosi, un codificatore automatico imparerà la funzione di identità e si rivelerà inutile nella maggior parte dei casi.
Rete di profonda credenza
Fornisce una soluzione per gestire i minimi locali e le funzioni obiettivo non convesse che possiedono il tipico perceptron multistrato. Puoi pensarlo come un tipo alternativo di apprendimento profondo che consiste in più livelli di variabili latenti interconnesse con altri livelli. È una versione limitata delle macchine Boltzmann.
Qui, i livelli nascosti di ogni sottorete serviranno da livello di input visibile per il livello adiacente della rete. Pertanto, rende lo strato visibile più basso un set di addestramento per lo strato adiacente della rete. Quindi, ogni livello della rete può essere addestrato avidamente e in modo indipendente. Ogni strato della struttura profonda utilizza variabili nascoste come variabili osservate per addestrare ogni strato della struttura profonda. L'algoritmo per addestrare una rete di credenze profonde è il seguente:
- Prendi in considerazione i vettori di input
- Utilizzare il vettore di input per allenare una macchina Boltzmann e ottenere la matrice del peso
- Usa la matrice del peso per allenare due strati inferiori della rete
- Utilizzare la rete RBM per generare un nuovo vettore di input attraverso l'attivazione media e il campionamento delle unità nascoste.
- Continua a ripetere la procedura fino a raggiungere i due livelli superiori della rete.
Leggi anche: Deep Learning vs Reti Neurali

Reti neurali convoluzionali (CNN)
È un'altra variante del perceptron multistrato basato sul feedforward. Organizza i singoli neuroni in modo tale che rispondano a tutte le regioni sovrapposte nell'area visiva. È uno degli algoritmi di deep learning in grado di acquisire un'immagine di input e di assegnare importanza a pregiudizi e pesi apprendibili di vari aspetti/oggetti nell'immagine.
Può differenziare l'uno dall'altro. La necessità di pre-elaborazione nella CNN è piuttosto bassa rispetto ad altri algoritmi di classificazione. La CNN possiede la capacità di apprendere queste caratteristiche e filtri.
Le CNN sono una delle categorie principali per quanto segue:
Rilevamenti di oggetti
Classificazioni delle immagini
Riconoscimento delle immagini
Riconoscimento facciale ecc.
Queste sono alcune delle poche aree in cui la CNN può essere ampiamente utilizzata.
Per la classificazione delle immagini, la CNN accetterà un'immagine di input, la elaborerà ed eseguirà la classificazione in diverse categorie. I computer visualizzano le immagini di input come una matrice di pixel ed è una variabile della risoluzione dell'immagine. Tecnicamente, i modelli della CNN sottoporranno ogni immagine di input a diversi livelli convoluzionali con filtri per l'addestramento e il test.
Il primo livello è noto come Convoluzione, che viene assegnato per estrarre le caratteristiche da un'immagine di input. La convoluzione può preservare le relazioni tra i pixel poiché può apprendere le caratteristiche dell'immagine attraverso l'uso di piccoli quadrati di dati di input. Esegue un'operazione matematica prendendo due input: una matrice di immagine e un filtro o kernel.
Quando una convoluzione dell'immagine è dotata di filtri diversi, diventerà in grado di eseguire operazioni come rilevamento dei bordi, nitidezza e sfocatura attraverso i filtri.
Negli ultimi anni, l'area della visione artificiale ha assistito a notevoli progressi. Uno dei più grandi progressi è la CNN. Le CNN profonde si sono evolute fino a diventare le applicazioni di visione artificiale più fantasiose utilizzate nel riconoscimento dei gesti, nelle auto a guida autonoma, nel tag automatico degli amici nelle immagini pubblicate su Facebook, nelle funzioni di sicurezza facciale e nel riconoscimento automatizzato delle targhe.

Reti neurali ricorrenti
È un tipo di rete neurale in cui l'output del passaggio precedente può essere alimentato come input per il passaggio corrente. Input e output in una rete neurale convenzionale sono indipendenti l'uno dall'altro. Tuttavia, nei casi in cui è necessario prevedere le parole successive in una frase, sarà necessario ricordare le parole precedenti.
L'emergere di RNN promette di risolvere questo problema con l'aiuto di uno strato nascosto. Una delle caratteristiche chiave di RNN è lo stato nascosto in grado di ricordare alcune informazioni in una sequenza.
RNN è dotato di una memoria in grado di ricordare tutte le informazioni sui calcoli. Può utilizzare gli stessi parametri per ogni input per eseguire le stesse attività su tutti gli input o livelli nascosti per produrre l'output desiderato. Ridurrà notevolmente la complessità dei parametri, che è in netto contrasto con altre reti neurali.
Pensieri finali
Il calcolo dei gradienti dipende non solo dal passaggio corrente ma anche dal passaggio precedente. Esiste una variante chiamata rete neurale ricorrente bidirezionale che viene utilizzata da diverse applicazioni. In questo caso, la rete prende in considerazione l'output precedente e previsto per il futuro. Introducendo più livelli nascosti, l'apprendimento profondo può essere ottenuto in reti neurali ricorrenti semplici e bidirezionali.
Se sei interessato a saperne di più sulle tecniche di deep learning e machine learning, dai un'occhiata alla certificazione PG di IIIT-B e upGrad in Machine Learning e Deep Learning, progettata per i professionisti che lavorano e offre oltre 240 ore di formazione rigorosa, oltre 5 casi di studio & incarichi, status di Alumni IIIT-B e assistenza al lavoro con le migliori aziende.