Machine Learning
24 Marzo 2022
Humanativa

Reti neurali: Feed-forward e Recurrent Neural Network

Modelli ricorrenti (RNN)

Le reti neurali possono essere suddivise in due macrocategorie: Feed-forward e Recurrent neural network (RNN).

Le feed-forward sono le reti neurali, dove ogni input ed il relativo output si muovono in una sola direzione, ovvero non sono presenti cicli o connessioni a ritroso, né tantomeno tra nodi dello stesso livello. Cosa che invece può avvenire nelle recurrent neural network (RNN).

RNN è una classe di reti neurali artificiali impiegata in task di previsione, perché capace di analizzare Time Series e prevedere andamenti futuri: ad es. il prezzo delle azioni, la traiettoria di un veicolo, la nota successiva in una melodia e molto altro.

Generalizzando, una delle peculiarità delle Recurrent Neural Network sta nell’abilità di lavorare su sequenze di lunghezza arbitraria, superando le limitazioni, in questo senso, imposte da altre strutture come le Convolutional Neural Network (CNN) che, invece, impongono input di lunghezza fissa.

Le Recurrent Neural Networks sono in grado di lavorare su:

  • Frasi e frammenti di testi
  • Audio
  • Documenti

Consentendoci di risolvere problemi come:

  • speech-to-text
  • Sentiment Analysis (estrazione del sentimento da frasi, e.g. recensioni e commenti social)
  • automatic translation

RNN è, ad esempio, un validissimo asset da impiegare nei problemi di Natural Language Processing (NLP).

Inoltre, le reti RNN sono sorprendentemente creative: sono in grado di individuare le note musicali successive più probabili in una sequenza melodica. Questo può dare vita a veri e propri spartiti musicali interamente redatti da Intelligenze Artificiali; un esempio è il progetto da Google’s Magenta Project che usando Tensorflow, mette a disposizione un framework di ML per le composizioni musicali.

https://magenta.tensorflow.org

Una Recurrent Neural Network è simile alle reti feed-forward, fatta eccezione per la presenza di una connessione retrograda (connection pointing brackward).

Per comprendere meglio questa struttura, consideriamo l’esempio più semplice di RNN: un solo neurone che riceve un input, produce un output e lo invia indietro a sé stesso.

Tra le RNN che implementano al meglio questo tipo di soluzioni, troviamo le cosiddette Long Short-Term Memory Network (LSTM).

Queste ultime sono particolarmente indicate quando dobbiamo riconoscere il linguaggio naturale; sarà infatti utile, in tal caso, poter andare a ritroso nel tempo, anche di molto, per ogni termine che desideriamo riconoscere, al fine di contestualizzare l’argomento al meglio.

Le LSTM formano tipicamente delle catene di reti neurali ricorrenti, ognuna delle quali applica funzioni di attivazione specifiche per filtrare caratteristiche differenti dei dati in input, che possono essere sia relativi al vocabolo attuale da predire, sia a quelli precedentemente memorizzati. Possiamo anche dire che le LSTMpossiedono la memoria lunga!”.

Un particolare utilizzo delle reti RNN sono le serie temporali.

Una serie temporale (time serie) può essere relativa all’andamento nel tempo: di un titolo di borsa, della temperatura di un ambiente, del consumo energetico di un impianto, ecc.

Possiamo considerare una serie temporale come una funzione campionata in più istanti temporali.

Un esempio in Tensorflow-Keras di RNN per la predizione di una funzione matematica (combinazione di sinusoidi) è visionabile cliccando sul link sottostante:

https://github.com/ageron/handson-ml2

Progetti Humanativa

Sul tema, Humanativa sta attualmente lavorando a due diversi progetti:

  • l’uno si sviluppa su un’analisi basata su serie temporali, per analizzare il comportamento di passeggeri in un aeroporto e predire il numero di quelli presenti nei vari point (varchi, negozi etc…) con una settimana di anticipo, con lo scopo di migliorare la qualità e la sicurezza aeroportuale;
  • l’altro si sostanzia in un’analisi del Sentiment di recensioni film, utilizzando una rete neurale che utilizzi metodologie LSTM.
Condividi

Articoli Tecnici

Data governance
6 Marzo
Humanativa

La Democratizzazione del Dato

La democratizzazione del dato si riferisce alla pratica di rendere […]

Security
20 Ottobre
Humanativa

HN Security all’evento “Pillole di Cybersecurity”

Con piacere il nostro collega Fabrizio Sensibile, Senior Security Advisor […]

Security
18 Luglio
Humanativa

HN Security presente all’evento OSSIF di ABI

HN Security ha partecipato all’evento OSSIF di ABI fornendo un […]

Machine Learning
4 Maggio
Humanativa

Reti neurali Generative (GAN)

Le GAN, fanno parte dei modelli di reti neurali generativi. Un […]

Machine Learning
13 Aprile
Humanativa

Machine Learning: Il Reinforcement Learning

Il Reinforcement Learning è uno dei temi più scottanti nel […]

Machine Learning
24 Marzo
Humanativa

Reti neurali: Feed-forward e Recurrent Neural Network

Modelli ricorrenti (RNN) Le reti neurali possono essere suddivise in […]

Data governance
4 Marzo
Humanativa

DENODO & HUMANATIVA, insieme per la Data Governance

La governance dei dati definisce come le imprese gestiscono la […]

Machine Learning
2 Febbraio
Humanativa

Reti neurali feed-forward – CNN – Convolutional Neural Network

Nel precedente articolo abbiamo descritto in linea generale il funzionamento […]

Machine Learning
18 Gennaio
Humanativa

Deep Learning la tecnologia del futuro, cosa è e perché rappresenta la prossima frontiera di Humanativa

In questi anni l’attività di ricerca e sviluppo realizzata da […]

Security
24 Giugno
Humanativa

Conosci il nemico

Marco Ivaldi, Technical Director di HN Security Il 9 giugno […]