Jak vycvičit AI k analýze účtenek

16. 11. 2021 Azure, Programming

Chcete si vytvořit vlastní model, který vám bude umožnovat automaticky skenovat účtenky, a dozvědět se něco více o další službě využívající umělou inteligenci – AI? Přečtěte si tento článek, který vám ukáže postup tvorby vlastního modelu Form Recognizer.

Co je Form Recognizer?

Pomocí Form Recognizer můžete identifikovat extrahovat text, hodnoty, tabulky strukturu z dokumentů, formulářů, účtenek, ID, vizitek atd. Modely Form Recognizer můžete volat pomocí REST API nebo pomocí SDKs. Díky této AI službě můžete automatizovat zadávání dat ve svých aplikacích.

Co budete k této AI potřebovat?

Sestavení sady tréninkových dat

Sada tréninkových dat musí obsahovat minimálně pět dokumentů (PDF) nebo obrázků stejného typu. Na analýzu můžete použít účtenky, formuláře, vizitky atd. Já v tomto návodu budu používat pro analýzu právě účtenky.

Vytvoření Form Recognizer

Nejprve půjdete na portál Azure a v Marketplace si vyhledáte Form Recognizer. Kliknete na tlačítko Create.

Screenshot obrazovky z Azure portálu.
Ukázáno tlačítko Create, pro tvorbu Form Recognizer.
Tvorba Form Recognizer | zdroj: Azure portal

Dále pro docílení této AI vyplníte potřebné údaje: vyberete si předplatné, vytvoříte si novou Resource group, vyberete si lokaci nejbližší k vám a zvolíte si pricing tier F0. Potom kliknete na Review + create.

Screenshot obrazovky z Azure portálu. Doplnění potřebných údajů.
Doplnění údajů | zdroj: Azure portal

Kliknete na Go to resource a máte vytvořený Form Recognizer.

Screenshot obrazovky z Azure portálu. Ukázáno tlačítko Go to resource.
Přejít k prostředku | zdroj: Azure portal

Vytvoření Storage account a Kontejneru

Dále potřebujete vytvořit Storage account. V Marketplace si vyhledejte Storage account a kliknete na Create.

Screenshot obrazovky z Azure portálu. Ukázáno tlačítko Create pro vytvoření Storage account.
Tvorba Storage account | zdroj: Azure portal

Doplníte potřebné údaje: vyberete si předplatné, zvolíte si Resource group, kterou jste před chvílí vytvořili, nejbližší lokalitu, standartní výkon a Geo-redundant storage. Potom kliknete na Review + create a znovu na tlačítko Go to resource.

Screenshot obrazovky z Azure portálu. Doplnění potřebných údajů.
Doplnění údajů | zdroj: Azure portal

Když máte vytvořený Storage account, kliknete na Containers. Vytvoříte si nový kontejner, pojmenujete si ho jako Public access level, vyberete Blob a klinete na Create.

Screenshot obrazovky z Azure portálu. Tvorba kontejneru.
Tvorba kontejneru | zdroj: Azure portal

Dále rozkliknete nově vytvořený kontejner. Kliknete na Upload a vyberete vaši tréninkovou sadu dat, potom kliknete znovu na Upload.

Screenshot obrazovky z Azure portálu. Upload tréninkových dat do kontejneru.
Upload tréninkových dat | zdroj: Azure portal

Nakonfigurujte sdílení prostředků mezi doménami na Azure Blob storage. Klikněte na Resource sharing (CORS) a doplňte tam následující hodnoty:

Screenshot obrazovky z Azure portálu. Konfigurace CORS: Allowed origins: *, Allowed methods: 8 zaškrtlých, Allowed headers: *, Exposed headers: *, Max age: 200.
Konfigurace CORS | zdroj: Azure portal

Vytvoření vlastního modelu Form Recognizer

Na vytvoření a trénování vlastního modelu AI použijete Form Recognizer Sample Tool. Kliknete na Connections, na přidat Connections. Doplníte jméno, popis doplňovat nemusíte, u Provider necháte Azure blob container. Dále potřebujete SAS (Shared Access Signature) URI vašeho Azure Blob Storage kontejneru, proto se vrátíte na Azure portál.

Screenshot obrazovky z webové stránky Form Recognizer Tool. Připojení Azure blob kontejneru a doplnění údajů.
Připojení Azure blob kontejneru | zdroj: Form Recognizer Tool

Na Azure portálu kliknete na váš Storage account, potom vyberete Storage Explorer. Rozkliknete Blob Containers, pravým tlačítkem kliknete na váš vytvořený kontejner a vyberete Get Shared Access Signature.

Screenshot obrazovky z Azure portálu. Ukázáno tlačítko Get Shared Access Signature.
Získání Shared Access Signature | zdroj: Azure portal

Zvolte si datum a u povolení zaklikněte Read, Add, Create, Write, Delete a List. Ujistěte se, že máte zakliklé všechny. Potom zmáčkněte tlačítko Create.

Screenshot obrazovky z Azure portálu. Tvorba SAS.
Vytvoření SAS | zdroj: Azure portal

Zkopírujte URI, vraťte se zpátky, vložte URI do políčka pro SAS URI a klikněte na Save Connection.

Screenshot obrazovky z Azure portálu. Zkopírování SAS URI.
Zkopírování SAS URI | zdroj: Azure portal

Potom klikněte na Home a na Use Custom to train model with labels and get key value pairs. Doplňte jméno projektu, vyberte připojení, které jsme před chvílí vytvořili, Folder path vyplňovat nemusíte. Potom potřebujete Form Recognizer service URI a API klíč. Vrátíte se znovu na Azure portál a kliknete na vytvořený Form Recognizer.

Screenshot obrazovky z webové stránky Form Recognizer Tool. Připojení Form recognizer, doplnění údajů.
Připojení Form Recognizer | zdroj: Form Recognizer Tool

Zde kliknete na Keys and Endpoint a zkopírujete si klíč 1Endpoint, které doplníte do vynechaných kolonek. Potom klinete na Save Project.

Screenshot obrazovky z Azure portálu. Ukázáno místo, kde se nachází klíč 1 a endpoint.
Zkopírování 1. klíče a endpoint | zdroj: Azure portal

Trénování vlastního modelu Form Recognizer

Teď můžete začít s trénováním modelu. V Form Recognizer Sample Tool můžete vytvářet tagy a k nim přidávat daný text a hodnoty. Pro vytvoření tagu kliknete na + a pojmenujete si ho, potom vyberete text, hodnoty, které chcete přidat pod tento tag, a kliknete na něj. Pro každý tag můžete nastavit různý datový typ, když kliknete na daný tag a potom na string.

Poznámka: Na každý vybraný text, hodnotu můžete použít pouze jeden tag. Každý tag s daným názvem lze na stránku použít pouze jednou. Pomocí tlačítek napravo od + můžete tagy vyhledávat, přejmenovávat, měnit pořadí tagů a mazat tagy. Chcete-li odebrat text, hodnotu přiřazenou k tagu bez odstranění tagu, vyberte v dokumentu označený text, hodnotu a stiskněte Delete.

Screenshot obrazovky z webové stránky Form Recognizer Tool. Tvorba tagů.
Vytváření tagů | zdroj: Form Recognizer Tool

Lze také vytvářet různé tabulky dat. K vytvoření tabulky kliknete na ikonu tabulky. Zde si můžete vybrat mezi tabulkou s danou velikostí a tabulkou, kde můžete postupně přidávat řádky podle potřeby. Když máte vytvořenou tabulku, kliknete na Save.

Screenshot obrazovky z webové stránky Form Recognizer Tool. Tvorba tabulek.
Vytváření tabulek | zdroj: Form Recognizer Tool

Abyste přidali text a hodnoty do tabulky, rozkliknete ji, označíte daný text, hodnoty, a vložíte ho do tabulky. Pokud máte všechen text a hodnoty v tabulce, klikněte na Done. Když už máte vytvořené všechny tagy a tabulky, kliknete na Actions a vyberete Run Layout on all documents. Všechny tagy a tabulky se vytvoří automaticky i na ostatních účtenkách, dokumentech. U ostatních účtenek, dokumentů přidáte stejně text a hodnoty k vytvořeným tagům.

Screenshot obrazovky z webové stránky Form Recognizer Tool. Vytvoření různých tabulek.
Vytvoření tabulky | zdroj: Microsoft

Když máte všechny hodnoty a text přiřazený, kliknete na ikonu Train. Zde si zvolíte název modelu a stisknete Train.

Screenshot obrazovky z webové stránky Form Recognizer Tool. Trénování modelu.
Trénování modelu | zdroj: Form Recognizer Tool

Chvíli počkejte a potom se vám ukáže přesnost vašeho modelu u daných tagů. Pokud chcete zvýšit přesnost modelu, musíte přidat a analyzovat další data.

Screenshot obrazovky z webové stránky Form Recognizer Tool. Výsledek přesnosti modelu u jednotlivých tagů.
Výsledek přesnosti modelu | zdroj: Form Recognizer Tool

Lze také spojit modely dohromady, aby přesnost analýzy byla vyšší. Vyberete si minimálně dva modely a klikněte na Compose. Vytvoří se nový model, který si pojmenujete a kliknete na Compose.

Screenshot obrazovky z webové stránky Form Recognizer Tool. Spojení dvou modelů dohromady.
Spojení dvou modelů | zdroj: Form Recognizer Tool

Testování přesnosti modelu

Pokud si chcete otestovat přesnost vašeho modelu, kliknete na ikonu Analyze, vyberete si model pro analýzu a vložte účtenku, dokument, na které chcete udělat analýzu. Nepoužívejte stejné účtenky, dokumenty, které máte v tréninkové sadě dat.

Screenshot obrazovky z webové stránky Form Recognizer Tool. Zkušební analýza účtenky.
Zkušební analýza | zdroj: Form Recognizer Tool

Stiskněte Run analysis a vyjde vám výsledek přesnosti analýzy u jednotlivých tagů. Výsledek si můžete stáhnout ve formě JSON nebo CSV a taky můžete přidat tuto analýzu k tréninkové sadě dat.

Screenshot obrazovky z webové stránky Form Recognizer Tool. Výsledek zkušební analýzy u jednotlivých tagů.
Výsledek analýzy | zdroj: Form Recognizer Tool

Závěr

V tomto článku jsme se seznámili s Form Recognizer, další službou využívající AI, tedy umělou inteligenci, a ukázali jsme si, jak si lze snadno vytvořit a natrénovat vlastní model Form Recognizer. Ten si následně si přidat například do vaši aplikace pomocí REST API nebo SDKs. Pro více tipů pokračuj ve čtení našeho blogu, nebo zavítej na náš YouTbe kanál, kde tě čeká řada hodnotných videonávodů.

Nastavení souborů Cookies

1. Co jsou soubory cookies

Soubory cookies jsou krátké textové soubory, které internetová stránka odešle do vašeho prohlížeče. Umožňují internetové stránce zaznamenat informace o vaší návštěvě, například zvolený jazyk a podobně. Následující návštěva stránek tak pro vás může být snazší a příjemnější. Soubory cookies jsou důležité, neboť bez nich by procházení sítě Internet bylo mnohem složitější. Soubory cookies umožňují lepší využití naší internetové stránky a přizpůsobení jejího obsahu vašim potřebám. Soubory cookies používá téměř každá internetová stránka na světě.

2. Druhy souborů cookies

Relační (tedy dočasné) soubory cookies nám umožňují propojovat vaše jednotlivé aktivity po dobu prohlížení těchto internetových stránek. V okamžiku otevření okna vašeho prohlížeče se tyto soubory vytvoří a po zavření okna vašeho prohlížeče se odstraní.

Trvalé soubory cookies nám pomáhají váš počítač identifikovat, jestliže opětovně navštívíte naši internetovou stránku.

3. Využívání souborů cookies

V souladu s ustanovením § 89 odst. 3 zák. č. 127/2005 Sb., o elektronických komunikacích, v účinném znění, si vás tímto dovolujeme informovat, že naše internetové stránky využívají pro svoji činnost soubory cookies, tedy vaše soubory cookies, včetně trvalých, zpracováváme.

Internetové prohlížeče obvykle obsahují správu souborů cookies. V rámci nastavení vašeho prohlížeče tak pravděpodobně můžete jednotlivé soubory cookies ručně mazat, blokovat či zcela zakázat jejich používání. Pro více informací použijte nápovědu vašeho internetového prohlížeče. Jsou-li cookies povoleny, lze toto nastavení internetového prohlížeče považovat za souhlas se zpracováním osobních údajů.

4. Účel použití souborů cookies

K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookies. Informace o tom, jak náš web používáte, sdílíme se svými partnery působícími v oblasti sociálních médií, inzerce a analýz. Používáním internetových stránek vyjadřujete souhlas propojením následujících služeb: Google Analytics, Google Tag Manager, Facebook Pixel, Microsoft Clarity.

Soubory cookies využíváme, kromě účelu uvedeného v předchozím odstavci, pouze pro měření návštěvnosti webové stránky.

5. Správce osobních údajů

Provozovatelem webové stránky studuj.digital a správcem osobních údajů je společnost: pg-sec s.r.o., sídlem Rybná 716/24, Staré Město, 110 00 Praha 1, identifikační číslo 09580905, zapsaná v obchodním rejstříku Městského soudu v Praze, oddíl C, vložka 338028.

​6. Zásady ochrany osobních údajů

Podrobnější informace o souborech cookies a zpracování tvých osobních údajů najdete v našich Zásadách ochrany osobních údajů.

Nezbytné

Tyto soubory cookie jsou nutné pro základní funkce stránky, a jsou proto vždy povolené. Mezi ně patří soubory cookie, které stránce umožňují si vás zapamatovat při procházení stránky v rámci jedné relace nebo, pokud o ně požádáte, mezi relacemi.

Volitelné

Výkon

Tyto soubory cookie nám pomáhají vylepšovat funkce stránek sledováním využití této webové stránky. V některých případech zrychlují zpracování vašeho požadavku a umožňují nám zapamatovat si vaše vybrané předvolby na stránce. Pokud soubory cookie zakážete, může se tím zhoršit přesnost našich doporučení a zpomalit funkčnost stránek.

Sociální média a relamy

Díky souborům cookies sociálních médií si můžete připojit ke svým sociálním sítím a prostřednictvím sociálních médií sdílet obsah z naší webové stránky. Reklamní soubory cookie (třetích stran) shromažďují informace pro lepší přizpůsobení reklamy tvým zájmům, a to na webových stránkách studuj.digital i mimo ně. V některých případech tyto soubory cookies zpracovávají vaše osobní údaje. Pokud chcete získat více informací o zpracování osobních údajů, přečtěte si naše Zásady ochrany osobních údajů. Pokud zakážete soubory cookies, mohou se zobrazovat reklamy, které méně souvisejí s vašimi zájmy, nebo nebudete moci účinně používat odkazy na Facebook, Instagram či jiné sociální sítě anebo nebudete moci sdílet obsah na sociálnch médiích.