Egyéni modell betanítása a Mintacímkézés eszközzel

Ez a tartalom a következőre vonatkozik: v2.1Document Intelligence v2.1 checkmark.

Tipp.

  • A továbbfejlesztett felhasználói élmény és a fejlett modellminőség érdekében próbálja ki a Document Intelligence v3.0 Studiót.
  • A v3.0 Studio támogatja a v2.1 címkével ellátott adatokkal betanított modelleket.
  • A 2.1-es verzióról a 3.0-s verzióra való migrálással kapcsolatos részletes információkért tekintse meg az API migrálási útmutatójában .
  • A V3.0 használatának megkezdéséhez tekintse meg a REST API- vagy C#-, Java-, JavaScript- vagy Python SDK-gyorsútmutatókat.

Ebben a cikkben a Document Intelligence REST API-t használja a Mintacímkézés eszközzel egy egyéni modell betanítására manuálisan címkézett adatokkal.

Előfeltételek

A projekt elvégzéséhez a következő erőforrásokra van szüksége:

  • Azure-előfizetés – Ingyenes létrehozás
  • Miután megkapta az Azure-előfizetését, hozzon létre egy dokumentumintelligencia-erőforrást az Azure Portalon a kulcs és a végpont lekéréséhez. Az üzembe helyezés után válassza az Ugrás az erőforrásra lehetőséget.
    • Az alkalmazás a Document Intelligence API-hoz való csatlakoztatásához szüksége van a létrehozott erőforrás kulcsára és végpontjára. A rövid útmutató későbbi részében illessze be a kulcsot és a végpontot a kódba.
    • Az ingyenes tarifacsomag (F0) használatával kipróbálhatja a szolgáltatást, és később frissíthet egy fizetős szintre az éles környezetben.
  • Legalább hat azonos típusú forma. Ezeket az adatokat használva betanítsa a modellt, és teszteljen egy űrlapot. Ehhez a rövid útmutatóhoz használhat mintaadatkészletet (sample_data.zip letöltése és kinyerása). Töltse fel a betanítási fájlokat egy blobtároló gyökeréhez egy standard teljesítményű Szintű Azure Storage-fiókban.

Dokumentumintelligencia-erőforrás létrehozása

Lépjen az Azure Portalra, és hozzon létre egy új Dokumentumintelligencia-erőforrást . A Létrehozás panelen adja meg a következő információkat:

Projekt részletei Leírás
Subscription Válassza ki a hozzáférést biztosító Azure-előfizetést.
Erőforráscsoport Az erőforrást tartalmazó Azure-erőforráscsoport. Létrehozhat egy új csoportot, vagy hozzáadhatja egy már meglévő csoporthoz.
Region Az Azure AI-szolgáltatások erőforrásának helye. A különböző helyek késést okozhatnak, de nincs hatással az erőforrás futásidejű rendelkezésre állására.
Név Az erőforrás leíró neve. Azt javasoljuk, hogy használjon leíró nevet, például MyNameFormRecognizert.
Tarifacsomag Az erőforrás költsége a választott tarifacsomagtól és a használattól függ. További információkért tekintse meg az API díjszabásának részleteit.
Áttekintés + létrehozás Az erőforrás Azure Portalon való üzembe helyezéséhez válassza a Véleményezés + létrehozás gombot.

A kulcs és a végpont lekérése

Amikor a Dokumentumintelligencia-erőforrás üzembe helyezése befejeződött, keresse meg és válassza ki a portál Összes erőforrás listájából. A kulcs és a végpont az erőforrás Kulcs és végpont lapján, az Erőforrás-kezelés területen található. A folytatás előtt mentse mindkettőt egy ideiglenes helyre.

Próba

Próbálja ki online a Dokumentumintelligencia-mintacímkéző eszközt:

A Dokumentumintelligencia szolgáltatás kipróbálásához azure-előfizetésre (ingyenes létrehozásra) és egy Document Intelligence-erőforrásvégpontra és -kulcsra van szüksége.

A Mintacímke eszköz beállítása

Megjegyzés:

Ha a tárolási adatok virtuális hálózat vagy tűzfal mögött vannak, telepítenie kell a dokumentumintelligencia-mintacímkéző eszközt a virtuális hálózat vagy a tűzfal mögött, és hozzáférést kell adnia egy rendszer által hozzárendelt felügyelt identitás létrehozásával.

A Mintacímkézés eszköz futtatásához a Docker motort kell használnia. A Docker-tároló beállításához kövesse az alábbi lépéseket. A Docker és a tárolók alapszintű ismertetéséért lásd a Docker felhasználói útmutatóját.

Tipp.

Az OCR űrlapcímkéző eszköz nyílt forráskód projektként is elérhető a GitHubon. Az eszköz egy TypeScript webalkalmazás, amely a React + Redux használatával készült. További információkért vagy közreműködésért tekintse meg az OCR űrlapcímkéző eszköz adattárát. Az eszköz online kipróbálásához nyissa meg a Dokumentumintelligencia-mintacímkéző eszköz webhelyét.

  1. Először telepítse a Dockert egy gazdagépre. Ez az útmutató bemutatja, hogyan használhatja a helyi számítógépet gazdagépként. Ha Docker-üzemeltetési szolgáltatást szeretne használni az Azure-ban, tekintse meg a mintacímkézési eszköz üzembe helyezését ismertető útmutatót.

    A gazdaszámítógépnek meg kell felelnie a következő hardverkövetelményeknek:

    Tároló Minimum Ajánlott
    Mintacímkéző eszköz 2 mag, 4 GB memória 4 mag, 8 GB memória

    Telepítse a Dockert a gépére az operációs rendszerre vonatkozó megfelelő utasítások követésével:

  2. Kérje le a mintacímkézési eszköz tárolót a docker pull paranccsal.

     docker pull mcr.microsoft.com/azure-cognitive-services/custom-form/labeltool:latest-2.1
    
  3. Most már készen áll a tároló futtatására a következővel docker run: .

     docker run -it -p 3000:80 mcr.microsoft.com/azure-cognitive-services/custom-form/labeltool:latest-2.1 eula=accept
    

    Ez a parancs elérhetővé teszi a mintacímkéző eszközt egy webböngészőn keresztül. Go to http://localhost:3000.

Megjegyzés:

A Dokumentumintelligencia REST API-val címkézheti a dokumentumokat és betanítheti a modelleket. A REST API betanítása és elemzése: Betanítása címkékkel a REST API és a Python használatával.

Bemeneti adatok beállítása

Először győződjön meg arról, hogy az összes betanítási dokumentum azonos formátumú. Ha űrlapjai többféle formátumban vannak, rendezze őket almappákba formátum szerint. A betanítása során az API-t egy almappába kell irányítania.

Tartományközi erőforrás-megosztás (CORS) konfigurálása

Engedélyezze a CORS-t a tárfiókban. Válassza ki a tárfiókot az Azure Portalon, majd válassza a CORS lapot a bal oldali panelen. Az alsó sorban adja meg a következő értékeket. Válassza a Felül lévő Mentés lehetőséget .

  • Engedélyezett források = *
  • Engedélyezett metódusok = [az összes kijelölése]
  • Engedélyezett fejlécek = *
  • Közzétett fejlécek = *
  • Maximális életkor = 200

CORS setup in the Azure portal

Csatlakozás a Mintacímke eszközhöz

A Mintacímkézés eszköz egy forráshoz (az eredeti feltöltött űrlapokhoz) és egy célhoz (létrehozott címkékhez és kimeneti adatokhoz) csatlakozik.

Csatlakozás projekteken belül beállíthatók és megoszthatók. Bővíthető szolgáltatói modellt használnak, így könnyen felvehet új forrás-/célszolgáltatókat.

Új kapcsolat létrehozásához válassza az Új Csatlakozás ions (plug) ikont a bal oldali navigációs sávon.

Töltse ki a mezőket a következő értékekkel:

  • Megjelenítendő név – A kapcsolat megjelenítendő neve.

  • Leírás – A projekt leírása.

  • SAS URL – Az Azure Blob Storage-tároló közös hozzáférésű jogosultságkódjának (SAS) URL-címe. Az egyéni modell betanítási adataihoz tartozó SAS-URL-cím lekéréséhez nyissa meg a tárolóerőforrást az Azure Portalon, és válassza a Storage Explorer lapot. Lépjen a tárolóra, kattintson a jobb gombbal, és válassza a Közös hozzáférésű jogosultságkód lekérése lehetőséget. Fontos, hogy a tároló sasát szerezze be, ne magát a tárfiókot. Győződjön meg arról, hogy az Olvasás, írás, Törlés és Lista engedélyek be vannak jelölve, és kattintson a Létrehozás gombra. Ezután másolja az URL-szakaszban lévő értéket egy ideiglenes helyre. A következő formátumban kell lennie: https://<storage account>.blob.core.windows.net/<container name>?<SAS value>.

    SAS URL retrieval

Connection settings of Sample Labeling tool.

Új projekt létrehozása

A Mintacímkézés eszközben a projektek tárolják a konfigurációkat és a beállításokat. Hozzon létre egy új projektet, és töltse ki a mezőket a következő értékekkel:

  • Megjelenítendő név – a projekt megjelenítendő neve
  • Biztonsági jogkivonat – Egyes projektbeállítások tartalmazhatnak bizalmas értékeket, például kulcsokat vagy más megosztott titkos kulcsokat. Minden projekt létrehoz egy biztonsági jogkivonatot, amely a bizalmas projektbeállítások titkosítására/visszafejtésére használható. A biztonsági jogkivonatokat az Alkalmazás Gépház a bal oldali navigációs sáv alján található fogaskerék ikonra kattintva találhatja meg.
  • Forrás Csatlakozás ion – Az előző lépésben létrehozott Azure Blob Storage-kapcsolat, amelyet ehhez a projekthez szeretne használni.
  • Mappa elérési útja – Nem kötelező – Ha a forrásűrlapok a blobtároló egyik mappájában találhatók, itt adja meg a mappa nevét
  • Document Intelligence Service Uri – A dokumentumintelligencia-végpont URL-címe.
  • Kulcs – A dokumentumintelligencia-kulcs.
  • Leírás – Nem kötelező – Projekt leírása

New project page on Sample Labeling tool.

Űrlapok címkézése

Projekt létrehozásakor vagy megnyitásakor megnyílik a fő címkeszerkesztő ablaka. A címkeszerkesztő három részből áll:

  • Újra méretezhető v3.0-ablaktábla, amely a forráskapcsolatból származó űrlapok görgethető listáját tartalmazza.
  • A főszerkesztő panel, amely lehetővé teszi a címkék alkalmazását.
  • A címkék szerkesztőpanelje, amellyel a felhasználók módosíthatják, zárolhatják, átrendezhetik és törölhetik a címkéket.

Szöveg és táblázatok azonosítása

A bal oldali panelen válassza a Nem felügyelt dokumentumok elrendezésének futtatása lehetőséget az egyes dokumentumok szöveg- és táblázatelrendezési adatainak lekéréséhez. A címkézési eszköz határolókereteket rajzol az egyes szövegelemek köré.

A címkézési eszköz azt is megjeleníti, hogy mely táblák lettek automatikusan kinyerve. A kibontott táblázat megtekintéséhez válassza a dokumentum bal oldalán található táblázat/rács ikont. Ebben a rövid útmutatóban, mivel a táblázat tartalma automatikusan ki lesz nyerve, nem címkézzük meg a táblázat tartalmát, hanem az automatikus kinyerésre támaszkodunk.

Table visualization in Sample Labeling tool.

A 2.1-ben, ha a betanítási dokumentum nem tölt be értéket, rajzolhat egy mezőt, ahol az értéknek lennie kell. A régió tagolhatóvá tétele az ablak bal felső sarkában található Rajzolás terület használatával.

Címkék alkalmazása szövegre

Ezután címkéket (címkéket) hozhat létre, és alkalmazhatja őket a modell által elemezni kívánt szöveges elemekre.

  1. Először a címkék szerkesztőpaneljén hozza létre az azonosítani kívánt címkéket.
    1. Válassza ki + az új címke létrehozásához.
    2. Adja meg a címke nevét.
    3. A címke mentéséhez nyomja le az Enter billentyűt.
  2. A főszerkesztőben jelöljön ki szavakat a kiemelt szövegelemekből vagy a rajzolt régióból.
  3. Jelölje ki az alkalmazni kívánt címkét, vagy nyomja le a megfelelő billentyűzetbillentyűt. A számkulcsok az első 10 címke gyorsbillentyűiként vannak hozzárendelve. A címkék átrendezhetők a címkeszerkesztő panel fel- és le nyílikonjaival.
  4. Az alábbi lépéseket követve legalább öt űrlapot címkézhet.

    Tipp.

    Az űrlapok címkézésekor tartsa szem előtt az alábbi tippeket:

    • Minden kijelölt szövegelemre csak egy címke alkalmazható.
    • Minden címke csak oldalanként egyszer alkalmazható. Ha egy érték többször is megjelenik ugyanazon az űrlapon, hozzon létre különböző címkéket minden példányhoz. Például: "invoice# 1", "invoice# 2" stb.
    • A címkék nem adhatók át a lapok között.
    • Az űrlapon megjelenő értékek címkézése; ne próbáljon meg felosztani egy értéket két részre két különböző címkével. Egy címmezőt például egyetlen címkével kell megjelölni, még akkor is, ha több sorra terjed ki.
    • A címkézett mezőkben ne szerepeltesse a kulcsokat – csak az értékeket.
    • A táblaadatokat automatikusan észlelni kell, és a végső kimeneti JSON-fájlban lesznek elérhetők. Ha azonban a modell nem észleli az összes táblaadatot, manuálisan is címkézheti ezeket a mezőket. Címkézze meg a táblázat egyes celláját egy másik címkével. Ha az űrlapok különböző számú sorból álló táblákat tartalmaz, ügyeljen arra, hogy legalább egy űrlapot a lehető legnagyobb táblázattal címkézzen.
    • A címkék kereséséhez, átnevezéséhez, átrendezéséhez és törléséhez használja a + jobb oldali gombokat.
    • Ha a címke törlése nélkül szeretne eltávolítani egy alkalmazott címkét, jelölje ki a címkézett téglalapot a dokumentumnézetben, és nyomja le a törlési kulcsot.

Main editor window of Sample Labeling tool.

Címkeértéktípusok megadása

Minden címkéhez megadhatja a várt adattípust. Nyissa meg a címke jobb oldalán található helyi menüt, és válasszon egy típust a menüből. Ez a funkció lehetővé teszi, hogy az észlelési algoritmus olyan feltételezéseket tegyen, amelyek javítják a szövegészlelési pontosságot. Azt is biztosítja, hogy az észlelt értékek szabványosított formátumban legyenek visszaadva a végső JSON-kimenetben. Az értéktípus adatai a fields.json fájlban, a címkefájlokkal megegyező elérési úton vannak mentve.

Value type selection with Sample Labeling tool

Jelenleg a következő értéktípusok és -változatok támogatottak:

  • string

    • alapértelmezett, no-whitespaces, alphanumeric
  • number

    • Alapértelmezett currency
    • Lebegőpontos értékként formázva.
    • Példa: A dokumentum 1234.98-as formátuma 1234,98 a kimeneten
  • date

    • alapértelmezett, dmy, , mdyymd
  • time

  • integer

    • Egész számként formázva.
    • Példa: A dokumentum 1234.98-as formátuma 123498 a kimeneten.
  • selectionMark

Megjegyzés:

A dátumformázáshoz tekintse meg az alábbi szabályokat:

Meg kell adnia egy formátumot (dmy, mdy, ymd) a dátumformázás működéséhez.

A következő karakterek használhatók dátumhatárolóként: , - / . \. A whitespace nem használható elválasztóként. Például:

  • 01,01,2020
  • 01-01-2020
  • 01/01/2020

A nap és a hónap egy vagy két számjegyként írható, az év pedig két vagy négy számjegyből áll:

  • 1-1-2020
  • 1-01-20

Ha egy dátumsztring nyolc számjegyből áll, az elválasztó nem kötelező:

  • 01012020
  • 01 01 2020

A hónap teljes vagy rövid névként is írható. Ha a nevet használja, a határoló karakterek megadása nem kötelező. Előfordulhat azonban, hogy ez a formátum kevésbé pontosan felismerhető, mint mások.

  • 2020.01.01.
  • 01Jan2020
  • 2020. január 1.

Címketáblák (csak 2.1-s verzió)

Előfordulhat, hogy az adatok jobbak, ha a kulcs-érték párok helyett táblázatként címkézik őket. Ebben az esetben létrehozhat egy táblacímkét az Új táblacímke hozzáadása lehetőséget választva. Adja meg, hogy a táblázat a dokumentumtól függően rögzített számú sort vagy változó számú sort tartalmaz-e, és definiálja a sémát.

Configuring a table tag.

Miután definiálta a táblacímkét, címkézze fel a cellaértékeket.

Labeling a table.

Egyéni modell betanítása

A Betanítás lap megnyitásához válassza a bal oldali panel Betanítás ikonját. Ezután kattintson a Betanítás gombra a modell betanításának megkezdéséhez. A betanítási folyamat befejeződése után a következő információk láthatók:

  • Modellazonosító – A létrehozott és betanított modell azonosítója. Minden betanítási hívás létrehoz egy új modellt saját azonosítójával. Másolja ezt a sztringet egy biztonságos helyre; szüksége van rá, ha előrejelzési hívásokat szeretne végrehajtani a REST API vagy az ügyfélkódtár útmutatóján keresztül.
  • Átlagos pontosság – A modell átlagos pontossága. A modell pontosságát további űrlapok hozzáadásával és címkézésével, majd új modell létrehozásához történő újratanítással javíthatja. Javasoljuk, hogy először öt űrlapot címkézzen fel, és szükség szerint adjon hozzá további űrlapokat.
  • A címkék listája és a címkénkénti becsült pontosság.

Training view.

A betanítás befejezése után vizsgálja meg az Átlag pontosság értékét. Ha alacsony, adjon hozzá további bemeneti dokumentumokat, és ismételje meg a címkézési lépéseket. A már címkézett dokumentumok a projektindexben maradnak.

Tipp.

A betanítási folyamatot REST API-hívással is futtathatja. Ennek módjáról a Címkék betanítása a Python használatával című témakörben olvashat.

Betanított modellek összeállítása

A Model Compose használatával legfeljebb 200 modellt írhat egyetlen modellazonosítóba. Amikor meghívja az Elemzést a komponáltakkal modelID, a Dokumentumintelligencia osztályozza a beküldött űrlapot, kiválasztja a legjobban megfelelő modellt, majd visszaadja az adott modell eredményeit. Ez a művelet akkor hasznos, ha a bejövő űrlapok több sablon valamelyikéhez tartozhatnak.

  • Ha modelleket szeretne írni a Mintacímkézés eszközben, válassza a Modellírás (egyesítési nyíl) ikont a navigációs sávon.
  • Válassza ki azokat a modelleket, amelyeket össze szeretne írni. A nyilak ikonnal rendelkező modellek már összeállított modellek.
  • Válassza a Compose gombot. Az előugró ablakban nevezze el az új, komponált modellt, és válassza a Compose lehetőséget.
  • A művelet befejeződésekor az újonnan összeállított modellnek szerepelnie kell a listában.

Model compose UX view.

Űrlap elemzése

A modell teszteléséhez válassza az Elemzés ikont a navigációs sávon. Válassza ki a helyi forrásfájlt. Keresse meg a fájlt, és válasszon ki egy fájlt a tesztmappában kibontott mintaadatkészletből. Ezután a Futtatás elemzés gombot választva lekérheti az űrlap kulcs-/értékpárjait, szöveg- és táblázat-előrejelzéseit. Az eszköz címkéket alkalmaz a határolókeretekben, és az egyes címkék megbízhatóságát jelenti.

Screenshot of analyze-a-custom-form window

Tipp.

Az Analyze API-t REST-hívással is futtathatja. Ennek módjáról a Címkék betanítása a Python használatával című témakörben olvashat.

Eredmények javítása

A jelentett pontosságtól függően érdemes lehet további betanításokat végezni a modell továbbfejlesztése érdekében. Miután elvégezte az előrejelzést, vizsgálja meg az egyes alkalmazott címkék megbízhatósági értékeit. Ha az átlagos pontossági betanítási érték magas, de a megbízhatósági pontszámok alacsonyak (vagy az eredmények pontatlanok), adja hozzá az előrejelzési fájlt a betanítási csoporthoz, címkézze fel, és tanítsa be újra.

A jelentett átlagos pontosság, megbízhatósági pontszámok és tényleges pontosság inkonzisztens lehet, ha az elemzett dokumentumok eltérnek a betanításban használt dokumentumoktól. Ne feledje, hogy egyes dokumentumok hasonlóan néznek ki, ha mások tekintik meg, de az AI-modellhez hasonlóan néznek ki. Előfordulhat például, hogy két változattal rendelkező űrlaptípussal tanít be, ahol a betanítási csoport 20%-os A és 80%-os B változatból áll. Az előrejelzés során az A változatú dokumentumok megbízhatósági pontszámai valószínűleg alacsonyabbak lesznek.

Projekt mentése és folytatása később

Ha a projektet egy másik időpontban vagy egy másik böngészőben szeretné folytatni, mentenie kell a projekt biztonsági jogkivonatát, és később újra meg kell adnia.

Projekt hitelesítő adatainak lekérése

Lépjen a projektbeállítások lapjára (csúszka ikon), és jegyezze fel a biztonsági jogkivonat nevét. Ezután lépjen az alkalmazásbeállításokra (fogaskerék ikon), amely megjeleníti az aktuális böngészőpéldány összes biztonsági jogkivonatát. Keresse meg a projekt biztonsági jogkivonatát, és másolja a nevét és kulcsértékét egy biztonságos helyre.

Projekt hitelesítő adatainak visszaállítása

Ha folytatni szeretné a projektet, először létre kell hoznia egy kapcsolatot ugyanahhoz a blobtárolóhoz. Ehhez ismételje meg a lépéseket. Ezután lépjen az alkalmazásbeállítások lapra (fogaskerék ikon), és ellenőrizze, hogy a projekt biztonsági jogkivonata megtalálható-e. Ha nem, adjon hozzá egy új biztonsági jogkivonatot, és másolja át a jogkivonat nevét és kulcsát az előző lépésből. A beállítások megőrzéséhez válassza a Mentés lehetőséget.

Projekt folytatása

Végül nyissa meg a főoldalt (a ház ikonját), és válassza a Felhőprojekt megnyitása lehetőséget. Ezután válassza ki a Blob Storage-kapcsolatot, és válassza ki a projekt fájlját .fott . Az alkalmazás betölti a projekt összes beállítását, mert rendelkezik a biztonsági jogkivonattal.

Következő lépések

Ebben a rövid útmutatóban megtanulta, hogyan taníthat be manuálisan címkézett adatokat tartalmazó modelleket a Dokumentumintelligencia-mintacímkéző eszközzel. Ha saját segédprogramot szeretne létrehozni a betanítási adatok címkézéséhez, használja a címkézett adatbetanítással foglalkozó REST API-kat.