Automatisoi PDF-esimerkinnät Amazon Comprehend | Amazon Web Services

Automatisoi PDF-esimerkinnät Amazon Comprehend | Amazon Web Services

Amazonin käsitys on luonnollisen kielen käsittelypalvelu (NLP), joka tarjoaa valmiiksi koulutettuja ja mukautettuja sovellusliittymiä oivallusten saamiseksi tekstitiedoista. Amazon Comprehend -asiakkaat voivat kouluttaa mukautettuja nimettyjen entiteettien tunnistusmalleja (NER) poimiakseen kiinnostavia kokonaisuuksia, kuten sijainnin, henkilön nimen ja päivämäärän, jotka ovat ainutlaatuisia heidän liiketoimintaansa.

Mukautetun mallin kouluttamiseksi sinun on ensin valmisteltava harjoitustiedot merkitsemällä kokonaisuudet manuaalisesti asiakirjoihin. Tämä voidaan tehdä käyttämällä Ymmärrä puolistrukturoitujen asiakirjojen merkintätyökalu, joka luo an Amazon SageMaker Ground Totuus työ mukautetun mallin avulla, jolloin annotaattorit voivat piirtää rajoituslaatikoita entiteettien ympärille suoraan PDF-dokumentteihin. Yrityksille, joilla on olemassa taulukkokokonaisuuksien tietoja ERP-järjestelmissä, kuten SAP, manuaalinen huomautus voi kuitenkin olla toistuvaa ja aikaa vievää.

Vähentääksemme harjoitustietojen valmistelua, rakensimme esimerkintätyökalun käyttämällä AWS-vaihetoiminnot joka tekee automaattisesti esimerkinnät asiakirjoihin käyttämällä olemassa olevia taulukkokokonaisuuksia. Tämä vähentää merkittävästi manuaalista työtä, jota tarvitaan tarkkojen mukautetun kokonaisuuden tunnistusmallien kouluttamiseen Amazon Comprehendissä.

Tässä viestissä opastamme sinut esimerkintätyökalun käyttöönottovaiheiden läpi ja näytämme esimerkkejä siitä, kuinka se merkitsee automaattisesti julkisia asiakirjoja. aineisto näytetiliotteita PDF-muodossa. Koko koodi on saatavilla osoitteessa GitHub repo.

Ratkaisun yleiskatsaus

Tässä osiossa käsittelemme esimerkintätyökalun tuloja ja lähtöjä ja annamme yleiskatsauksen ratkaisun arkkitehtuurista.

Tulot ja lähdöt

Esimerkintätyökalu ottaa syötteeksi tekstiä sisältäviä PDF-dokumentteja merkinnöillä. Demossa käytämme seuraavan esimerkin kaltaisia ​​simuloituja tiliotteita.

Automatisoi PDF-esimerkinnät Amazon Comprehend | Amazon Web Services PlatoBlockchain Data Intelligence. Pystysuuntainen haku. Ai.

Työkalu ottaa myös luettelotiedoston, joka yhdistää PDF-dokumentit entiteeteihin, jotka haluamme poimia näistä asiakirjoista. Entiteetit koostuu kahdesta asiasta: expected_text poimia asiakirjasta (esim. AnyCompany Bank) ja vastaava entity_type (esimerkiksi, bank_name). Myöhemmin tässä viestissä näytämme, kuinka tämä luettelotiedosto rakennetaan CSV-asiakirjasta seuraavan esimerkin mukaisesti.

Automatisoi PDF-esimerkinnät Amazon Comprehend | Amazon Web Services PlatoBlockchain Data Intelligence. Pystysuuntainen haku. Ai.

Esimerkintätyökalu käyttää luettelotiedostoa asiakirjoihin automaattisesti merkitsemään niitä vastaavilla entiteeteillä. Voimme sitten käyttää näitä merkintöjä suoraan Amazon Comprehend -mallin kouluttamiseen.

Vaihtoehtoisesti voit luoda SageMaker Ground Truth -merkintätyön ihmisen tarkastettavaksi ja muokkaamiseksi, kuten seuraavassa kuvakaappauksessa näkyy.

Automatisoi PDF-esimerkinnät Amazon Comprehend | Amazon Web Services PlatoBlockchain Data Intelligence. Pystysuuntainen haku. Ai.

Kun tarkistus on valmis, voit käyttää huomautettuja tietoja Amazon Comprehend mukautetun entiteetin tunnistusmallin kouluttamiseen.

arkkitehtuuri

Esimerkintätyökalu koostuu useista AWS Lambda Step Functions -tilakoneen ohjaamia toimintoja. Siinä on kaksi versiota, jotka käyttävät erilaisia ​​tekniikoita esimerkintöjen luomiseen.

Ensimmäinen tekniikka on sumea vastaavuus. Tämä vaatii esiluettelotiedoston, joka sisältää odotetut entiteetit. Työkalu käyttää sumeaa täsmäysalgoritmia luodakseen esimerkintöjä vertaamalla tekstin samankaltaisuutta.

Sumea vastaavuus etsii asiakirjasta merkkijonoja, jotka ovat samanlaisia ​​(mutta eivät välttämättä identtisiä) premanifest-tiedostossa lueteltujen odotettujen entiteettien kanssa. Se laskee ensin tekstin samankaltaisuuspisteet odotetun tekstin ja asiakirjan sanojen välillä, minkä jälkeen se vastaa kaikkiin kynnyksen ylittäviin pareihin. Vaikka tarkkoja vastaavuuksia ei olisikaan, sumea vastaavuus voi löytää muunnelmia, kuten lyhenteitä ja kirjoitusvirheitä. Tämän ansiosta työkalu voi merkitä asiakirjoja valmiiksi ilman, että entiteetit näkyvät sanatarkasti. Esimerkiksi jos 'AnyCompany Bank' on lueteltu odotetuksi kokonaisuudeksi, Fuzzy Matching merkitsee esiintymät 'Any Companys Bank'. Tämä tarjoaa enemmän joustavuutta kuin tiukka merkkijonosovitus ja mahdollistaa esimerkintätyökalun automaattisesti merkitsemään useampia kokonaisuuksia.

Seuraava kaavio havainnollistaa tämän Step Functions -tilakoneen arkkitehtuuria.

Automatisoi PDF-esimerkinnät Amazon Comprehend | Amazon Web Services PlatoBlockchain Data Intelligence. Pystysuuntainen haku. Ai.

Toinen tekniikka vaatii a valmiiksi koulutettu Amazon Comprehend -kokonaisuuden tunnistusmalli. Työkalu luo esihuomautukset Amazon Comprehend -mallilla seuraavan kaavion työnkulkua noudattaen.

Automatisoi PDF-esimerkinnät Amazon Comprehend | Amazon Web Services PlatoBlockchain Data Intelligence. Pystysuuntainen haku. Ai.

Seuraava kaavio havainnollistaa koko arkkitehtuuria.

Automatisoi PDF-esimerkinnät Amazon Comprehend | Amazon Web Services PlatoBlockchain Data Intelligence. Pystysuuntainen haku. Ai.

Seuraavissa osioissa käymme läpi vaiheet ratkaisun toteuttamiseksi.

Ota esimerkintätyökalu käyttöön

Kloonaa arkisto paikalliselle koneellesi:

git clone https://github.com/aws-samples/amazon-comprehend-automated-pdf-prelabeling-tool.git

Tämä arkisto on rakennettu Comprehend Semi-Structured Documents Annotation Toolin päälle ja laajentaa sen toimintoja mahdollistamalla SageMaker Ground Truth -merkintätyön aloittamisen esimerkinnöillä, jotka on jo näkyvissä SageMaker Ground Truth -käyttöliittymässä.

Esimerkintätyökalu sisältää sekä Comprehend Semi-Structured Documents Annotation Tool -resurssit että joitain esimerkintätyökaluun liittyviä resursseja. Voit ottaa ratkaisun käyttöön AWS-palvelimeton sovellusmalli (AWS SAM), avoimen lähdekoodin kehys, jota voit käyttää palvelimettoman sovellusinfrastruktuurin koodin määrittämiseen.

Jos olet aiemmin ottanut käyttöön Comprehend Semi-Structured Documents Annotation Toolin, katso UKK-osio Pre_labeling_tool/README.md saadaksesi ohjeet vain esimerkintätyökalulle ominaisten resurssien käyttöönotosta.

Jos et ole ottanut työkalua käyttöön aiemmin ja aloitat alusta, ota koko ratkaisu käyttöön seuraavasti.

Muuta nykyinen hakemisto merkintätyökalukansioksi:

cd amazon-comprehend-semi-structured-documents-annotation-tools

Rakenna ja ota käyttöön ratkaisu:

make ready-and-deploy-guided

Luo esiluettelotiedosto

Ennen kuin voit käyttää esimerkintätyökalua, sinun on valmisteltava tietosi. Pääsyötteet ovat PDF-dokumentit ja esiluettelotiedosto. Esiluettelotiedosto sisältää jokaisen alla olevan PDF-dokumentin sijainnin 'pdf' ja JSON-tiedoston sijainti, jossa on oletetut entiteetit tunnistettavaksi 'expected_entities'.

Muistikirja gener_premanifest_file.ipynb näyttää kuinka tämä tiedosto luodaan. Esittelyssä esiluettelotiedosto näyttää seuraavan koodin:

[ { 'pdf': 's3://<bucket>/data_aws_idp_workshop_data/bank_stmt_0.pdf', 'expected_entities': 's3://<bucket>/prelabeling-inputs/expected-entities/example-demo/fuzzymatching_version/file_bank_stmt_0.json' }, ...
]

Jokainen esiluettelotiedostossa listattu JSON-tiedosto (alla expected_entities) sisältää luettelon sanakirjoista, yhden kullekin odotetulle kokonaisuudelle. Sanakirjoissa on seuraavat avaimet:

  • 'expected_texts' – Luettelo mahdollisista entiteettiä vastaavista tekstijonoista.
  • 'entity_type' – Vastaava entiteettityyppi.
  • "ignore_list" (valinnainen) – Luettelo sanoista, jotka tulee jättää huomiotta ottelussa. Näitä parametreja tulee käyttää estämään sumeaa hakua yhdistämästä tiettyjä sanayhdistelmiä, joiden tiedät olevan vääriä. Tästä voi olla hyötyä, jos haluat jättää huomiotta jotkin numerot tai sähköpostiosoitteet nimiä tarkastellessasi.

Esimerkiksi expected_entities aiemmin näytetystä PDF-tiedostosta näyttää seuraavalta:

[ { 'expected_texts': ['AnyCompany Bank'], 'entity_type': 'bank_name', 'ignore_list': [] }, { 'expected_texts': ['JANE DOE'], 'entity_type': 'customer_name', 'ignore_list': ['JANE.DOE@example_mail.com'] }, { 'expected_texts': ['003884257406'], 'entity_type': 'checking_number', 'ignore_list': [] }, ...
]

Suorita esimerkintätyökalu

Aloita esimerkintätyökalun suorittaminen edellisessä vaiheessa luomallasi esiluettelotiedostolla. Katso lisätietoja muistikirjasta start_step_functions.ipynb.

Aloita esimerkintätyökalu antamalla event seuraavilla näppäimillä:

  • Premanifest – Yhdistää jokaisen PDF-dokumentin siihen expected_entities tiedosto. Tämän pitäisi sisältää Amazonin yksinkertainen tallennuspalvelu (Amazon S3) ämpäri (alle bucket) ja avain (alla key) tiedostosta.
  • Etuliite – Käytetään luomaan execution_id, joka nimeää S3-kansion tulosteen tallennusta varten ja SageMaker Ground Truth -merkintätyön nimen.
  • entiteetti_tyypit – Näytetään käyttöliittymässä, jotta merkinnät voivat merkitä. Näiden pitäisi sisältää kaikki entiteettityypit odotetuissa entiteettitiedostoissa.
  • työryhmän_nimi (valinnainen) – Käytetään SageMaker Ground Truth -merkintätyön luomiseen. Se vastaa käytettävää yksityistä työvoimaa. Jos sitä ei ole annettu, SageMaker Ground Truth -merkintätyön sijaan luodaan vain luettelotiedosto. Voit käyttää luettelotiedostoa luodaksesi SageMaker Ground Truth -merkintätyön myöhemmin. Huomaa, että tätä kirjoitettaessa et voi tarjota ulkopuolista työvoimaa luodessasi merkintätyötä muistikirjasta. Voit kuitenkin kloonata luodun työn ja määrittää sen ulkopuoliselle työvoimalle SageMaker Ground Truth -konsolissa.
  • comprehend_parameters (valinnainen) – Parametrit, joilla voit kouluttaa suoraan Amazon Comprehend mukautetun kokonaisuuden tunnistusmallin. Jos se jätetään pois, tämä vaihe ohitetaan.

Käynnistä tilakone suorittamalla seuraava Python-koodi:

import boto3
stepfunctions_client = boto3.client('stepfunctions')

response = stepfunctions_client.start_execution(
stateMachineArn=fuzzymatching_prelabeling_step_functions_arn,
input=json.dumps(<event-dict>)
)

Tämä käynnistää tilakoneen ajon. Voit seurata tilakoneen edistymistä Step Functions -konsolissa. Seuraava kaavio havainnollistaa tilakoneen työnkulkua.

Automatisoi PDF-esimerkinnät Amazon Comprehend | Amazon Web Services PlatoBlockchain Data Intelligence. Pystysuuntainen haku. Ai.

Kun tilakone on valmis, toimi seuraavasti:

  • Tarkista seuraavat tiedostoon tallennetut lähdöt prelabeling/ kansio comprehend-semi-structured-docs S3-ämpäri:
    • Yksittäiset huomautustiedostot jokaiselle asiakirjojen sivulle (yksi sivua kohti asiakirjaa kohti). temp_individual_manifests/
    • Luettelo SageMaker Ground Truth -etikettityöstä consolidated_manifest/consolidated_manifest.manifest
    • Luettelo, jota voidaan käyttää mukautetun Amazon Comprehend -mallin kouluttamiseen consolidated_manifest/consolidated_manifest_comprehend.manifest
  • Avaa SageMaker-konsolissa SageMaker Ground Truth -merkintätyö, joka luotiin merkintöjen tarkistamista varten.
  • Tarkista ja testaa koulutettua mukautettua Amazon Comprehend -mallia

Kuten aiemmin mainittiin, työkalu voi luoda SageMaker Ground Truth -merkintätöitä vain yksityisille työntekijöille. Ulkoistaaksesi inhimillisen merkintätyön voit kloonata merkintätyön SageMaker Ground Truth -konsolissa ja liittää minkä tahansa työvoiman uuteen työhön.

Puhdistaa

Voit välttää lisäkuluja poistamalla luomasi resurssit ja poistamalla pinon, jonka otit käyttöön seuraavalla komennolla:

make delete

Yhteenveto

Esimerkintätyökalu tarjoaa yrityksille tehokkaan tavan käyttää olemassa olevia taulukkotietoja nopeuttaakseen mukautettujen entiteettien tunnistusmallien koulutusta Amazon Comprehendissä. Automaattinen esimerkintä PDF-dokumenteille vähentää merkittävästi merkitsemisprosessin vaatimaa manuaalista työtä.

Työkalusta on kaksi versiota: sumea vastaavuus ja Amazon Comprehend -pohjainen, mikä antaa joustavuutta alkuperäisten huomautusten luomiseen. Kun asiakirjat on merkitty valmiiksi, voit tarkistaa ne nopeasti SageMaker Ground Truth -merkintätyössä tai jopa ohittaa tarkistuksen ja kouluttaa suoraan mukautetun Amazon Comprehend -mallin.

Esimerkintätyökalun avulla voit nopeasti avata historiallisten entiteettitietojesi arvon ja käyttää niitä luodessasi mukautettuja malleja, jotka on räätälöity verkkotunnuksellesi. Nopeuttamalla prosessin tyypillisesti työvoimavaltaisinta osaa, se tekee mukautetun kokonaisuuden tunnistamisen Amazon Comprehendin avulla helpommin saavutettavissa kuin koskaan.

Lisätietoja PDF-dokumenttien merkitsemisestä SageMaker Ground Truth -merkintätyön avulla on kohdassa Mukautettu asiakirjamerkintä nimettyjen entiteettien poimimiseen asiakirjoista Amazon Comprehendin avulla ja Käytä Amazon SageMaker Ground Truthia tietojen merkitsemiseen.


Tietoja kirjoittajista

Automatisoi PDF-esimerkinnät Amazon Comprehend | Amazon Web Services PlatoBlockchain Data Intelligence. Pystysuuntainen haku. Ai.Oskar Schnaack on soveltava tutkija Generatiivisen tekoälyn innovaatiokeskuksessa. Hän on intohimoinen sukeltaa koneoppimisen takana olevaan tieteeseen, jotta se olisi asiakkaiden käytettävissä. Työn ulkopuolella Oskar nauttii pyöräilystä ja tietoteorian trendeistä seuraamisesta.

Automatisoi PDF-esimerkinnät Amazon Comprehend | Amazon Web Services PlatoBlockchain Data Intelligence. Pystysuuntainen haku. Ai.Romain Besombes on Deep Learning Architect Generative AI Innovation Centerissä. Hän on intohimoinen innovatiivisten arkkitehtuurien rakentamiseen, joka ratkaisee asiakkaiden liiketoimintaongelmia koneoppimisen avulla.

Aikaleima:

Lisää aiheesta AWS-koneoppiminen