Usa il Deep Learning per Generare Nomi di Personaggi Fantasy Costruisci un Modello Linguistico da Zero

Usa il Deep Learning per Generare Nomi di Personaggi Fantasy

Può un modello di lingua inventare nomi di personaggi di fantasy unici? Creiamolo da zero

Fonte: pixabay.com

Per comprendere veramente le complessità dei Modelli di Linguaggio (LM) e familiarizzarsi con i loro principi sottostanti, non c’è altra strada che tirarci su le maniche e iniziare a scrivere codice. In questo articolo, presento la creazione di una Recurrent Neural Network (RNN) costruita completamente da zero, senza l’aiuto di alcuna libreria di deep learning.

Tensorflow, Keras, Pytorch rendono la costruzione di reti neurali profonde e complesse un’operazione semplice. Indubbiamente, questo è un grande vantaggio per i professionisti del Machine Learning, tuttavia, questo approccio ha il grande svantaggio di lasciare poco chiaro il funzionamento di quelle reti poiché avviene “sotto il cofano”.

Ecco perché oggi eseguiremo l’esercizio stimolante di costruire un Modello di Linguaggio utilizzando solo la libreria Numpy di Python!

Comprensione delle Reti Neurali Ricorrenti e dei Modelli di Linguaggio

Le reti neurali completamente connesse standard non sono adatte per compiti di Elaborazione del Linguaggio Naturale (NLP) come la generazione di testo. I principali motivi sono:

  • Per compiti di NLP, input e output possono assumere forme e dimensioni diverse.
  • Le reti neurali standard non utilizzano contemporaneamente le caratteristiche apprese in diversi passaggi della rete.

La principale innovazione nell’applicazione dell’IA nel campo del NLP è senza dubbio rappresentata dalle Reti Neurali Ricorrenti (RNN).

Le RNN sono una classe di reti neurali artificiali particolarmente adatte per compiti di NLP e generazione di testo. La ragione della loro efficacia risiede nella loro capacità di catturare le dipendenze sequenziali nei dati. Il linguaggio umano si basa profondamente sulla considerazione del contesto e sul collegamento delle prime parole di una frase alle ultime. Considerate queste frasi:

  1. Ha detto: “Teddy Roosevelt era il presidente degli Stati Uniti.”
  2. Ha detto: “I teddy bear sono in vendita!”

La parola “Teddy” ha un significato completamente diverso nelle due frasi. Noi umani capiamo facilmente ciò considerando il contesto e le parole…