Blog.

Applicazioni NLP (Natural Language Processing Applications)


Autore
Andrea Provino
Data
Tempo di lettura
3 minuti
Categoria
machine-learning

natural-langauge-processing-applicazioni-nlp-italiano-esempi-guida-pratica-codici-github-machine-learning-blog-data-science-canali-youtube-progetti-artificial-intelligence

Esistono decine di differenti applicazioni NLP. Si tratta di sistemi di machine learning progettati per risolvere problemi di Natural Language processing, ossia processo e analisi del linguaggio naturale.

L’espressione Natural Language Processing fa quindi riferimento a un campo di studi che, ispirandoci alla definizione che Arthur Samuel diede di machine learning, conferisce ai computer l’abilità di capire, analizzare, manipolare e generare il linguaggio umano.

Un linguaggio codificato sotto forma di testo, o audio.

Applicazioni NLP

Questo articolo non avrebbe mai fine se solo avessi inserito tutte le applicazioni NLP. Così ho scelto di selezionarne alcune, e incorporare le altre progressivamente!

Iniziamo!

Machine Translation

Google Translate è un sistema altamente esemplificativo. L’idea di tradurre un testo in differenti lingue è stata peraltro una delle prime attività pratiche di machine learning.

Durante la guerra fredda, l’esercito statunitense aveva la necessità di capire i messaggi sovietici intercettati dall’intelligence.

Il problema era l’assenza d’interpreti umani disposti a tradire la madre patria e aiutare un paese nemico.

L’idea di sfruttare sistemi di apprendimento artificiale inizio a balenare nella mente di molti scienziati. La ridotta potenza di calcolo, e la scarsità dei dati disponibili, d’altro canto segnarono il prematuro tramonto di un ambizioso progetto.

Question Answering

IBM Watson è un set di AI di prima categoria, progettate per il mondo enterprise e capaci di gestire problemi di differente natura.

Uno dei sitemi divenne celebre nel 2011 per aver battuto alcuni campioni in un gioco a premi statunitense. La capacità di rispondere a domande generiche è propria degli esseri umani: applicazioni NLP come questa postano il concetto a un nuovo livello.

Esistono dataset popolari come lo SQuAD (Stanford Question Answering Dataset) che raccogliendo le risposte a 100k domande, consente di allenare sistemi abili a comprendere porzioni di testo e rispondere a domande a esso inerenti.

Possiamo persino usare python per sviluppare sistemi analoghi

Sentiment Analysis

I sistemi di sentiment analysis permettono di estrarre da un testo informazioni riguardanti le emozioni generali trasmesse dalle parole scelte.

In questo modo è possibile identificare commenti offensivi e di spam, provvedendo automaticamente alla loro eliminazione ancor prima della pubblicazione, preservando siti e prodotti da pubblicità dannosa.

I sistemi di sentiment analysis sono applicazioni NLP che consento di aiutare i reparti di customer care aziendale, ad esempio, distinguendo messaggi positivi e di complimenti, da quelli negativi e su cui deve essere posta la massima priorità

Text classification

Efficienti sistemi per comprendere il contenuto di un testo e propriamente classificarlo con una label. Si tratta spesso di multilabel classification system. Qui un’intera guida passo a passo, dall’EDA al training di un modello, con tanto di tuning degli iper-parametri.

Named Entity Recognition (NER)

Stiamo parlando di applicazioni NLP capaci d’identificare le così dette named entity.

Ora mi dirai.

“Andreee so leggere e tradurre!”

Hai ragione!

Passiamo a qualche informazione realmente utile.

Esiste un’area di studi denominata information extraction, o “estrazione dell’informazione”. In essa definiamo named entity un qualsiasi oggetto che esista e possa essere identificato da un nome proprio.

Quindi Barack Obama è un named identity, così come Louvre Museum.

Ora come insegniamo a un’intelligenza artificiale a riconoscere le named entity nella frase: “Il Louvre Museum è un luogo tra i più visitati di Parigi” ?

Risponde la NER.

Per approfondire questo ambito, puoi trovare qui una fonte formidabile.

Un caldo abbraccio, Andrea!

Taggedispirazionenatural language processing


Ultimi post

Patricia Merkle Trie

Il Practical Algorithm To Retrieve Information Coded In Alphanumeric Merkle Trie, o Patricia Merkle Trie è una struttura dati chiave-valore usatada Ethereum e particolarmente efficiente per il salvataggio e la verifica dell’integrità dell’informazione. In questo post ne studieremo le caratteristiche. Prima di procedere, ci conviene ripassare l’introduzione al Merkle Tree nella quale abbiamo chiarito il […]

Andrea Provino
ethereum-patricia-merkle-tree
Tree Data Structure: cos’è un Merkle Tree

Un Merkle Tree è una struttura dati efficiente per verificare che un dato appartenga a un insieme esteso di elementi. È comunemente impiegato nelle Peer to Peer network in cui la generazione efficiente di prove (proof) contribuisce alla scalabilità della rete. Capire i vantaggi di questa struttura ci tornerà utile nel nostro percorso di esplorazione […]

Andrea Provino
merkle-tree-cover
UTXO: come funziona il modello Unspent Transaction Outputs

Per tenere traccia dei bilanci utente, la blockchain di Bitcoin sfrutta un modello di contabilità definito UTXO o Unspent Transaction Outputs. In questo articolo ne esaminiamo le caratteristiche. Ogni blockchain è dotata di un sistema di contabilità, un meccanismo attraverso cui tenere traccia dei bilanci di ciascun utente. I due grandi modelli di riferimento nel […]

Andrea Provino
bitcoin-utxo
Cos’è Ethereum

Possiamo definire Ethereum come una macchina a stati distribuita che traccia le transizioni di un archivio dati general-purpose (i.e. una memoria in grado di registrare qualsiasi dato esprimibile come coppia di chiave e valore o key-value) all’interno della Ethereum Blockchain. È arrivato il momento di esplorare uno dei progetti tecnologici più innovativi e interessanti degli […]

Andrea Provino
ethereum