AI-berikning med bild- och textbearbetning

Azure App Service
Azure Blob Storage
Azure AI Search
Azure Functions

Lösningsidéer

Den här artikeln är en lösningsidé. Om du vill att vi ska utöka innehållet med mer information, till exempel potentiella användningsfall, alternativa tjänster, implementeringsöverväganden eller prisvägledning, kan du meddela oss genom att ge GitHub-feedback.

Den här artikeln visar en lösning som berikar text- och bilddokument med hjälp av bildbearbetning, bearbetning av naturligt språk och anpassade kunskaper för att samla in domänspecifika data. Azure Cognitive Search med AI-berikning kan hjälpa dig att identifiera och utforska relevant innehåll i stor skala. Den här lösningen använder AI-berikning för att extrahera betydelse från den ursprungliga komplexa, ostrukturerade JFK Assassination Records-datauppsättningen (JFK Files).

Arkitektur

Diagram som visar Azure Cognitive Search-arkitekturen för att konvertera ostrukturerade till strukturerade data.

Ladda ned en Visio-fil med den här arkitekturen.

Dataflöde

Diagrammet ovan illustrerar processen för att skicka den ostrukturerade datamängden JFK Files via Azure Cognitive Search-kompetenspipelinen för att producera strukturerade, indexerbara data:

  1. Ostrukturerade data i Azure Blob Storage, till exempel dokument och bilder, matas in i Azure Cognitive Search.
  2. Dokumentets spricksteg initierar indexeringsprocessen genom att extrahera bilder och text från data, följt av berikning av innehåll. Vilka berikningssteg som utförs i den här processen beror på vilka data och vilken typ av färdigheter som valts.
  3. Inbyggda kunskaper baserade på API:erna Visuellt innehåll och Language Service möjliggör AI-berikanden, inklusive bildoptisk teckenigenkänning (OCR), bildanalys, textöversättning, entitetsigenkänning och fulltextsökning.
  4. Anpassade kunskapsstödscenarier som kräver mer komplexa AI-modeller eller tjänster. Exempel är Forms Recognizer, Azure Machine Learning-modeller och Azure Functions.
  5. Efter berikningsprocessen sparar indexeraren utdata i ett sökindex som innehåller de berikade och indexerade dokumenten. Fulltextsökning och andra frågeformulär kan använda det här indexet.
  6. De berikade dokumenten kan också projiceras i ett kunskapslager, som underordnade appar som kunskapsutvinning eller datavetenskap kan använda.
  7. Frågor får åtkomst till det berikade innehållet i sökindexet. Indexet stöder anpassade analysverktyg, fuzzy-sökfrågor, filter och en bedömningsprofil för att justera sökrelevansen.
  8. Alla program som ansluter till Blob Storage eller Till Azure Table Storage kan komma åt kunskapsarkivet.

Komponenter

Azure Cognitive Search fungerar med andra Azure-komponenter för att tillhandahålla den här lösningen.

Azure Cognitive Search indexerar innehållet och driver användarupplevelsen i den här lösningen. Azure Cognitive Search kan tillämpa fördefinierade kognitiva kunskaper på innehållet, och utökningsmekanismen kan lägga till anpassade kunskaper för specifika berikningstransformeringar.

Azure Computer Vision

Azure Visuellt innehåll använder textigenkänning för att extrahera och identifiera textinformation från bilder. Läs-API:et använder de senaste OCR-igenkänningsmodellerna och är optimerat för stora, textintensiva dokument och brusiga bilder.

Det äldre OCR-API :et är inte optimerat för stora dokument, men stöder fler språk. OCR-resultaten kan variera beroende på genomsöknings- och bildkvalitet. Den aktuella lösningsidén använder OCR för att producera data i hOCR-format.

Azure Cognitive Service for Language

Azure Cognitive Service for Language extraherar textinformation från ostrukturerade dokument med hjälp av textanalysfunktioner som NER (Named Entity Recognition), extrahering av nyckelfraser och fulltextsökning.

Azure Storage

Azure Blob Storage är REST-baserad objektlagring för data som du kan komma åt var som helst i världen via HTTPS. Du kan använda Blob Storage för att exponera data offentligt för världen eller för att lagra programdata privat. Blob Storage är perfekt för stora mängder ostrukturerade data som text eller grafik.

Azure Table Storage lagrar högtillgängliga, skalbara, strukturerade eller halvstrukturerade NoSQL-data i molnet.

Azure Functions

Azure Functions är en serverlös beräkningstjänst som gör att du kan köra små delar av händelseutlöst kod utan att uttryckligen behöva etablera eller hantera infrastruktur. Den här lösningen använder en Azure Functions-metod för att tillämpa CIA Cryptonyms-listan på JFK Assassination Records som en anpassad färdighet.

Azure App Service

Den här lösningsidén skapar också en fristående webbapp i Azure App Service för att testa, demonstrera, söka i indexet och utforska anslutningar i berikade och indexerade dokument.

Information om scenario

Stora, ostrukturerade datamängder kan innehålla maskinskrivna och handskrivna anteckningar, foton och diagram samt andra ostrukturerade data som standardsöklösningar inte kan parsa. JFK Assassination Records innehåller över 34 000 sidor dokument om CIA-utredningen av mordet på JFK 1963.

Exempelprojektet JFK Files och onlinedemon visar ett visst Användningsfall för Azure Cognitive Search. Den här lösningsidén är inte avsedd att vara ett ramverk eller skalbar arkitektur för alla scenarier, utan för att tillhandahålla en allmän riktlinje och ett exempel. Kodprojektet och demonstrationen skapar en offentlig webbplats och en offentligt läsbar lagringscontainer för extraherade bilder, så du bör inte använda den här lösningen med icke-offentliga data.

AI-berikning i Azure Cognitive Search kan extrahera och förbättra sökbar, indexerbar text från bilder, blobbar och andra ostrukturerade datakällor som JFK Files. AI-berikning använder förtränade maskininlärningsfärdighetsuppsättningar från Cognitive Services Visuellt innehåll och Cognitive Service for Language API:er. Du kan också skapa och koppla anpassade kunskaper för att lägga till särskild bearbetning för domänspecifika data som CIA Cryptonyms. Azure Cognitive Search kan sedan indexeras och söka i den kontexten.

Azure Cognitive Search-färdigheterna i den här lösningen finns i följande kategorier:

  • Bildbearbetning. Inbyggda kunskaper i textextrahering och bildanalys omfattar objekt- och ansiktsidentifiering, taggning och bildtext generation samt identifiering av kändisar och landmärken. Dessa kunskaper skapar textrepresentationer av bildinnehåll, som kan sökas med hjälp av frågefunktionerna i Azure Cognitive Search. Dokumentsprickor är processen att extrahera eller skapa textinnehåll från icke-textkällor.

  • Bearbetning av naturligt språk. Inbyggda kunskaper som entitetsigenkänning, språkidentifiering och extrahering av nyckelfraser mappar ostrukturerad text till sökbara och filterbara fält i ett index.

  • Anpassade kunskaper utökar Azure Cognitive Search för att tillämpa specifika berikningstransformeringar på innehåll. Du anger gränssnittet för en anpassad färdighet via den anpassade webb-API-färdigheten.

Potentiella användningsfall

  • Öka värdet och verktyget för ostrukturerat text- och bildinnehåll i sök- och datavetenskapsappar.
  • Använd anpassade kunskaper för att integrera kod med öppen källkod, tredje part eller första part i indexeringspipelines.
  • Gör skannade JPG-, PNG- eller bitmappsdokument i fulltext sökbara.
  • Ge bättre resultat än standardextrahering av PDF-text för PDF-filer med kombinerad bild och text. Vissa skannade och inbyggda PDF-format kanske inte parsas korrekt i Azure Cognitive Search.
  • Skapa ny information från naturligt meningsfullt råinnehåll eller kontext som är dolt i större ostrukturerade eller halvstrukturerade dokument.

Deltagare

Den här artikeln underhålls av Microsoft. Den skrevs ursprungligen av följande deltagare.

Huvudförfattare:

Om du vill se icke-offentliga LinkedIn-profiler loggar du in på LinkedIn.

Nästa steg

Läs mer om den här lösningen:

Läs produktdokumentation:

Prova utbildningsvägen:

Se relaterade arkitekturer och vägledning: