Usare l'arricchimento tramite intelligenza artificiale con l'elaborazione di immagini e testo

Servizio app di Azure
Archiviazione BLOB di Azure
Ricerca di intelligenza artificiale di Azure
Funzioni di Azure

Idee per le soluzioni

Questo articolo descrive un'idea di soluzione. L'architetto cloud può usare queste linee guida per visualizzare i componenti principali per un'implementazione tipica di questa architettura. Usare questo articolo come punto di partenza per progettare una soluzione ben progettata in linea con i requisiti specifici del carico di lavoro.

Questo articolo descrive come usare l'elaborazione delle immagini, l'elaborazione del linguaggio naturale e le competenze personalizzate per acquisire dati specifici del dominio. È possibile usare tali dati per arricchire documenti di testo e immagini. Incorporare Ricerca di intelligenza artificiale di Azure con arricchimento tramite intelligenza artificiale per identificare ed esplorare i contenuti pertinenti su larga scala. Questa soluzione usa l'arricchimento tramite intelligenza artificiale per estrarre significato dal set di dati JFK Assassination Records (JFK Files) originale non strutturato.

Architettura

Diagramma che mostra l'architettura di ricerca di intelligenza artificiale per convertire i dati non strutturati in dati strutturati.

Scaricare un file di Visio di questa architettura.

Flusso di dati

Il flusso di dati seguente corrisponde al diagramma precedente. Il flusso di dati descrive il modo in cui il set di dati JFK Files non strutturato passa attraverso la pipeline di competenze di ricerca di intelligenza artificiale per produrre dati strutturati e indicizzabili.

  1. I dati non strutturati in Archiviazione BLOB di Azure, ad esempio documenti e immagini, vengono inseriti in Ricerca di intelligenza artificiale.

  2. Per avviare il processo di indicizzazione, il passaggio di individuazione dei documenti estrae immagini e testo dai dati e quindi arricchisce il contenuto. I passaggi di arricchimento in questo processo dipendono dai dati e dal tipo di competenze selezionati.

  3. Le competenze predefinite basate sulle API visione artificiale di Azure e del linguaggio di intelligenza artificiale di Azure offrono arricchimenti tramite intelligenza artificiale, ad esempio il riconoscimento ottico dei caratteri delle immagini (OCR), l'analisi delle immagini, la traduzione testuale, il riconoscimento delle entità e la ricerca full-text.

  4. Gli scenari di supporto delle competenze personalizzate che richiedono modelli o servizi di intelligenza artificiale più complessi. Gli esempi includono Azure AI Document Intelligence, modelli di Azure Machine Learning e Funzioni di Azure.

  5. Al termine del processo di arricchimento, l'indicizzatore salva i documenti arricchiti e indicizzati in un indice di ricerca. La ricerca full-text e altri moduli di query possono usare questo indice.

  6. I documenti arricchiti possono anche proiettare in un archivio conoscenze, che possono essere usate da app downstream come app di knowledge mining o app di data science.

  7. Le query accedono al contenuto arricchito nell'indice di ricerca. L'indice supporta analizzatori personalizzati, query di ricerca fuzzy, filtri e un profilo di punteggio per ottimizzare la pertinenza della ricerca.

  8. Le applicazioni che si connettono all'archiviazione BLOB o ad Archiviazione tabelle di Azure possono accedere all'archivio conoscenze.

Componenti

Questa soluzione usa i componenti di Azure seguenti.

Ricerca intelligenza artificiale indicizza il contenuto e supporta l'esperienza utente in questa soluzione. È possibile usare La ricerca di intelligenza artificiale per applicare competenze di intelligenza artificiale predefinite al contenuto. È anche possibile usare il meccanismo di estendibilità per aggiungere competenze personalizzate, che forniscono trasformazioni di arricchimento specifiche.

Visione di Azure AI

Visione usa il riconoscimento del testo per estrarre e riconoscere le informazioni di testo dalle immagini. L'API Lettura usa i modelli di riconoscimento OCR più recenti ed è ottimizzata per documenti di grandi dimensioni e immagini rumorose.

L'API OCR legacy non è ottimizzata per documenti di grandi dimensioni, ma supporta più lingue. L'accuratezza dei risultati OCR può variare in base alla qualità dell'analisi e all'immagine. Questa soluzione usa OCR per produrre dati nel formato hOCR.

Lingua

Il linguaggio usa funzionalità di analisi del testo come il riconoscimento delle entità denominate e l'estrazione di frasi chiave per estrarre informazioni di testo da documenti non strutturati.

Archiviazione di Azure

Archiviazione BLOB è l'archiviazione di oggetti basata su REST per i dati a cui è possibile accedere da qualsiasi parte del mondo tramite HTTPS. È possibile usare l'archiviazione BLOB per esporre i dati pubblicamente al mondo o per archiviare i dati dell'applicazione privatamente. L'archiviazione BLOB è ideale per grandi quantità di dati non strutturati, ad esempio testo o grafica.

Archiviazione tabelle archivia dati NoSQL a disponibilità elevata, scalabili, strutturati e semistrutturati nel cloud.

Funzioni di Azure

Funzioni è un servizio di calcolo serverless che è possibile usare per eseguire piccole parti di codice attivato da eventi senza dover effettuare in modo esplicito il provisioning o la gestione dell'infrastruttura. Questa soluzione usa un metodo Functions per applicare l'elenco cryptonyms dell'Agenzia di Intelligence Centrale (CIA) ai file JFK come competenza personalizzata.

Servizio app di Azure

Questa soluzione compila un'app Web autonoma in app Azure Servizio per testare, illustrare e cercare l'indice ed esplorare le connessioni nei documenti arricchiti e indicizzati.

Dettagli dello scenario

I set di dati non strutturati di grandi dimensioni possono includere note scritte a mano, foto, diagrammi e altri dati non strutturati che le soluzioni di ricerca standard non possono analizzare. I file JFK contengono oltre 34.000 pagine di documenti sull'indagine della CIA sull'assassinio del JFK del 1963.

È possibile usare l'arricchimento tramite intelligenza artificiale in Ricerca di intelligenza artificiale per estrarre e migliorare il testo ricercabile, indicizzabile da immagini, BLOB e altre origini dati non strutturate come i file JFK. L'arricchimento tramite intelligenza artificiale usa set di competenze di Machine Learning con training preliminare dalle API Visione e linguaggio dei servizi di intelligenza artificiale di Azure. È anche possibile creare e associare competenze personalizzate per aggiungere un'elaborazione speciale per dati specifici del dominio, ad esempio crittografie CIA. Ricerca di intelligenza artificiale può quindi indicizzare e cercare tale contesto.

Le competenze di ricerca di intelligenza artificiale in questa soluzione possono essere classificate nei gruppi seguenti:

  • Elaborazione immagini: questa soluzione usa competenze predefinite di estrazione del testo e analisi delle immagini, tra cui rilevamento di oggetti e volti, generazione di tag e didascalie e identificazione di celebrità e punti di riferimento. Queste competenze creano rappresentazioni testuali del contenuto dell'immagine, che è possibile cercare usando le funzionalità di query di Ricerca di intelligenza artificiale. Il cracking dei documenti è il processo di estrazione o creazione di contenuto di testo da origini non di testo.

  • Elaborazione del linguaggio naturale: questa soluzione usa competenze predefinite come il riconoscimento delle entità, il rilevamento della lingua e l'estrazione di frasi chiave che eseguono il mapping di testo non strutturato ai campi ricercabili e filtrabili in un indice.

  • Competenze personalizzate: questa soluzione usa competenze personalizzate che estendono la ricerca di intelligenza artificiale per applicare trasformazioni di arricchimento specifiche al contenuto. È possibile specificare l'interfaccia per una competenza personalizzata tramite la competenza api Web personalizzata.

Potenziali casi d'uso

Il progetto di esempio JFK Files e la demo online presenta un particolare caso d'uso di Ricerca di intelligenza artificiale. Questa idea di soluzione non è progettata per essere un framework o un'architettura scalabile per tutti gli scenari. Questa idea di soluzione fornisce invece linee guida generali ed esempi. Il progetto di codice e la demo creano un sito Web pubblico e un contenitore di archiviazione leggibile pubblicamente per le immagini estratte, quindi non è consigliabile usare questa soluzione con dati non pubblici.

È anche possibile usare questa architettura per:

  • Aumentare il valore e l'utilità del contenuto di testo e immagine non strutturati nelle app di ricerca e data science.

  • Usare competenze personalizzate per integrare codice open source, codice non Microsoft o codice Microsoft nelle pipeline di indicizzazione.

  • Consente di eseguire ricerche full-text nei documenti JPG, PNG o bitmap digitalizzati.

  • Produrre risultati migliori rispetto all'estrazione di testo PDF standard per pdf con immagini e testo combinati. Alcuni formati PDF analizzati e nativi potrebbero non essere analizzati correttamente in Ricerca di intelligenza artificiale.

  • Creare nuove informazioni da contenuto non elaborato o contesto intrinsecamente significativo nascosto in documenti di grandi dimensioni, non strutturati o documenti semistrutturati.

Collaboratori

Questo articolo viene gestito da Microsoft. Originariamente è stato scritto dal collaboratore seguente.

Autore principale:

Per visualizzare i profili LinkedIn non pubblici, accedere a LinkedIn.

Passaggi successivi

Altre informazioni su questa soluzione:

Leggere la documentazione del prodotto:

Provare il percorso di apprendimento: