Home
Su di me
Skills
Curriculum
Certificazioni
Progetti
Tutti i progetti
Progetti
Tutti i progetti
Contatti
Assistente Vocale
Home
Progetti
Assistente Vocale
Assistente Vocale
Il Natural Language Processing (NLP) si riferisce alla branca dell'intelligenza artificiale che si occupa di dare ai computer la capacità di comprendere testi e parole pronunciate in modo simile a quello degli esseri umani.
La NLP combina la linguistica computazionale (modellazione del linguaggio umano basata su regole) con modelli statistici, di machine learning, e di deep learning. Insieme, queste tecnologie consentono ai computer di elaborare il linguaggio umano sotto forma di testo o dati vocali e di "comprenderne" il significato completo, con l'intenzione e il sentimento di chi parla o scrive.
L'NLP è alla base di programmi informatici che traducono il testo da una lingua all'altra, rispondono a comandi vocali e riassumono grandi volumi di testo rapidamente, anche in tempo reale.
Il linguaggio umano è pieno di ambiguità che rendono incredibilmente difficile scrivere un software che determini con precisione il significato di un testo o di dati vocali. Omonimi, omofoni, sarcasmo, espressioni idiomatiche, metafore, eccezioni grammaticali e d'uso, variazioni nella struttura delle frasi: queste sono solo alcune delle irregolarità del linguaggio umano che gli esseri umani impiegano anni per imparare, ma che i programmatori devono insegnare alle applicazioni basate sul linguaggio naturale a riconoscere e comprendere con precisione fin dall'inizio, se vogliono che tali applicazioni siano utili.
Diverse attività di PNL analizzano il testo umano e i dati vocali in modo da aiutare il computer a dare un senso a ciò che sta ingerendo. Alcuni di questi compiti includono i seguenti:
Il riconoscimento vocale, detto anche speech-to-text, è il compito di convertire in modo affidabile i dati vocali in dati testuali. Il riconoscimento vocale è necessario per qualsiasi applicazione che segua comandi vocali o risponda a domande vocali. Ciò che rende particolarmente impegnativo il riconoscimento vocale è il modo in cui le persone parlano: velocemente, biascicando le parole, con enfasi e intonazione variabili, con accenti diversi e spesso utilizzando una grammatica scorretta.
L'analisi del sentimento cerca di estrarre dal testo qualità soggettive - atteggiamenti, emozioni, sarcasmo, confusione, sospetto.
La generazione di linguaggio naturale è talvolta descritta come l'opposto del riconoscimento vocale o dello speech-to-text; è il compito di inserire informazioni strutturate nel linguaggio umano.
Questo codice fornisce una semplice implementazione del concetto di NLP, sfruttando le API di google per il riconoscimento della frase parlata. Una delle principali librerie usate è Natural Language Toolkit (NLTK)
NLTK comprende librerie per molti dei compiti NLP sopra elencati, oltre a librerie per compiti secondari, come il parsing delle frasi, la segmentazione delle parole, lo stemming e la lemmatizzazione (metodi per ridurre le parole alle loro radici) e la tokenizzazione (per suddividere frasi, frasi, paragrafi e passaggi in token che aiutano il computer a comprendere meglio il testo). Include anche librerie per l'implementazione di funzionalità come il ragionamento semantico, la capacità di giungere a conclusioni logiche basate su fatti estratti dal testo.
Una volta riconosciuta la frase, lo script va ad identificare l'argomento di cui si sta parlando attraverso un mapping di intenti: Viene ridotta la frase all'argomento attraverso il processo di tokenizzazione, andando ad individuare il campo e, dunque, la richiesta.
E' possibile chidere dei semplici comandi, come chiedere l'ora oppure l'ora in una determinata città, chiedere che giorno sarà oppure che giorni era, andrare su youtube per cercare la canzone che si vuole oppure cercare semplicemente su Google qualsiasi cosa si voglia. Ciò è possibile grazie l'utilizzo di un modulo appositamente creato che pulisce il messaggio da i pattern comuni, lasciando solo le informazioni necessarie. Ad esempio, la frase 'Che ore sono a Tokyo?' verrà identificata come una richiesta di orario e verrà pulita dalle parole più comuni che compongono il target 'orario', in questo modo rimarrà solamente qualcosa come 'Tokyo'. A questo punto viene identificata la città e viene preso il fusorario per far rispondere l'ora corretta.
Inoltre, lo script permette di isolare la voce attraverso un CNN allenata per identificare la voce dell'utente oppure il rumore di fondo.
Informazioni
Categoria
: ML
Url progetto
:
About
: Assistente vocale creato per permettere di eseguire funzioni personalizzate ed eseguire specifici comandi.
Il Natural Language Processing (NLP) si riferisce alla branca dell'intelligenza artificiale che si occupa di dare ai computer la capacità di comprendere testi e parole pronunciate in modo simile a quello degli esseri umani.
La NLP combina la linguistica computazionale (modellazione del linguaggio umano basata su regole) con modelli statistici, di machine learning, e di deep learning. Insieme, queste tecnologie consentono ai computer di elaborare il linguaggio umano sotto forma di testo o dati vocali e di "comprenderne" il significato completo, con l'intenzione e il sentimento di chi parla o scrive.
L'NLP è alla base di programmi informatici che traducono il testo da una lingua all'altra, rispondono a comandi vocali e riassumono grandi volumi di testo rapidamente, anche in tempo reale.
Il linguaggio umano è pieno di ambiguità che rendono incredibilmente difficile scrivere un software che determini con precisione il significato di un testo o di dati vocali. Omonimi, omofoni, sarcasmo, espressioni idiomatiche, metafore, eccezioni grammaticali e d'uso, variazioni nella struttura delle frasi: queste sono solo alcune delle irregolarità del linguaggio umano che gli esseri umani impiegano anni per imparare, ma che i programmatori devono insegnare alle applicazioni basate sul linguaggio naturale a riconoscere e comprendere con precisione fin dall'inizio, se vogliono che tali applicazioni siano utili.
Diverse attività di PNL analizzano il testo umano e i dati vocali in modo da aiutare il computer a dare un senso a ciò che sta ingerendo. Alcuni di questi compiti includono i seguenti:
Il riconoscimento vocale, detto anche speech-to-text, è il compito di convertire in modo affidabile i dati vocali in dati testuali. Il riconoscimento vocale è necessario per qualsiasi applicazione che segua comandi vocali o risponda a domande vocali. Ciò che rende particolarmente impegnativo il riconoscimento vocale è il modo in cui le persone parlano: velocemente, biascicando le parole, con enfasi e intonazione variabili, con accenti diversi e spesso utilizzando una grammatica scorretta.
L'analisi del sentimento cerca di estrarre dal testo qualità soggettive - atteggiamenti, emozioni, sarcasmo, confusione, sospetto.
La generazione di linguaggio naturale è talvolta descritta come l'opposto del riconoscimento vocale o dello speech-to-text; è il compito di inserire informazioni strutturate nel linguaggio umano.
Questo codice fornisce una semplice implementazione del concetto di NLP, sfruttando le API di google per il riconoscimento della frase parlata. Una delle principali librerie usate è Natural Language Toolkit (NLTK)
NLTK comprende librerie per molti dei compiti NLP sopra elencati, oltre a librerie per compiti secondari, come il parsing delle frasi, la segmentazione delle parole, lo stemming e la lemmatizzazione (metodi per ridurre le parole alle loro radici) e la tokenizzazione (per suddividere frasi, frasi, paragrafi e passaggi in token che aiutano il computer a comprendere meglio il testo). Include anche librerie per l'implementazione di funzionalità come il ragionamento semantico, la capacità di giungere a conclusioni logiche basate su fatti estratti dal testo.
Una volta riconosciuta la frase, lo script va ad identificare l'argomento di cui si sta parlando attraverso un mapping di intenti: Viene ridotta la frase all'argomento attraverso il processo di tokenizzazione, andando ad individuare il campo e, dunque, la richiesta.
E' possibile chidere dei semplici comandi, come chiedere l'ora oppure l'ora in una determinata città, chiedere che giorno sarà oppure che giorni era, andrare su youtube per cercare la canzone che si vuole oppure cercare semplicemente su Google qualsiasi cosa si voglia. Ciò è possibile grazie l'utilizzo di un modulo appositamente creato che pulisce il messaggio da i pattern comuni, lasciando solo le informazioni necessarie. Ad esempio, la frase 'Che ore sono a Tokyo?' verrà identificata come una richiesta di orario e verrà pulita dalle parole più comuni che compongono il target 'orario', in questo modo rimarrà solamente qualcosa come 'Tokyo'. A questo punto viene identificata la città e viene preso il fusorario per far rispondere l'ora corretta.
Inoltre, lo script permette di isolare la voce attraverso un CNN allenata per identificare la voce dell'utente oppure il rumore di fondo.