Inteligentna obdelava dokumentov s storitvami AWS AI in Analytics v zavarovalništvu: 2. del PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Inteligentna obdelava dokumentov z AWS AI in storitvami Analytics v zavarovalništvu: 2. del

In Del 1 V tej seriji smo razpravljali o inteligentni obdelavi dokumentov (IDP) in o tem, kako lahko IDP pospeši primere uporabe obdelave zahtevkov v zavarovalništvu. Razpravljali smo o tem, kako lahko uporabimo storitve umetne inteligence AWS za natančno kategorizacijo dokumentov zahtevkov skupaj s podpornimi dokumenti. Razpravljali smo tudi o tem, kako ekstrahirati različne vrste dokumentov v paketu zavarovalnih zahtevkov, kot so obrazci, tabele ali posebni dokumenti, kot so računi, potrdila ali osebni dokumenti. Preučili smo izzive v podedovanih procesih dokumentov, ki so zamudni, nagnjeni k napakam, dragi in jih je težko obdelati v velikem obsegu, in kako lahko uporabite storitve umetne inteligence AWS za pomoč pri implementaciji vašega cevovoda IDP.

V tej objavi vas vodimo skozi napredne funkcije IDP za ekstrakcijo, poizvedovanje in obogatitev dokumentov. Preučujemo tudi, kako dodatno uporabiti ekstrahirane strukturirane informacije iz podatkov o zahtevkih za pridobitev vpogledov z uporabo storitev AWS Analytics in vizualizacije. Poudarjamo, kako lahko ekstrahirani strukturirani podatki iz IDP pomagajo proti goljufivim zahtevkom z uporabo storitev AWS Analytics.

Pregled rešitev

Naslednji diagram prikazuje faze, če IDP uporablja storitve AI AWS. V 1. delu smo razpravljali o prvih treh fazah poteka dela IDP. V tej objavi razširjamo korak ekstrakcije in preostale faze, ki vključujejo integracijo IDP s storitvami AWS Analytics.

Te analitične storitve uporabljamo za nadaljnje vpoglede in vizualizacije ter za odkrivanje goljufivih zahtevkov z uporabo strukturiranih, normaliziranih podatkov iz IDP. Naslednji diagram ponazarja arhitekturo rešitve.

Diagram arhitekture IDP

Faze, o katerih razpravljamo v tej objavi, uporabljajo naslednje ključne storitve:

  • Amazon Comprehend Medical je storitev obdelave naravnega jezika (NLP), primerna za HIPAA, ki uporablja modele strojnega učenja (ML), ki so bili predhodno usposobljeni za razumevanje in pridobivanje zdravstvenih podatkov iz medicinskega besedila, kot so recepti, postopki ali diagnoze.
  • AWS lepilo je del nabora storitev AWS Analytics in je storitev integracije podatkov brez strežnika, ki olajša odkrivanje, pripravo in združevanje podatkov za analitiko, strojno učenje in razvoj aplikacij.
  • Amazon RedShift je še ena storitev v nizu Analytics. Amazon Redshift je popolnoma upravljana storitev skladiščenja podatkov v petabajtnem obsegu v oblaku.

Predpogoji

Preden začnete, si oglejte Del 1 za pregled na visoki ravni primera uporabe zavarovanja z IDP in podrobnosti o stopnjah zajema in klasifikacije podatkov.

Za več informacij o vzorcih kode glejte naše Repo za GitHub.

Faza ekstrakcije

V 1. delu smo videli, kako uporabiti API-je Amazon Texttract za pridobivanje informacij, kot so obrazci in tabele iz dokumentov, ter kako analizirati račune in osebne dokumente. V tej objavi izboljšujemo fazo ekstrakcije z Amazon Comprehend za ekstrahiranje privzetih entitet in entitet po meri, značilnih za primere uporabe po meri.

Zavarovalnice pogosto naletijo na gosto besedilo v vlogah za zavarovalne zahtevke, kot je pacientovo odpustno pismo (glejte naslednjo sliko). Težko je samodejno pridobiti informacije iz takih vrst dokumentov, kjer ni določene strukture. Za rešitev tega problema lahko uporabimo naslednje metode za pridobivanje ključnih poslovnih informacij iz dokumenta:

Vzorec povzetka odpustnice

Ekstrahirajte privzete entitete z API-jem Amazon Comprehend DetectEntities

Zaženemo naslednjo kodo na vzorčnem dokumentu zdravstvenega prepisa:

comprehend = boto3.client('comprehend') 

response = comprehend.detect_entities( Text=text, LanguageCode='en')

#print enitities from the response JSON

for entity in response['Entities']:
    print(f'{entity["Type"]} : {entity["Text"]}')

Naslednji posnetek zaslona prikazuje zbirko entitet, identificiranih v vhodnem besedilu. Rezultat je bil za namene te objave skrajšan. Glejte na GitHub repo za podroben seznam subjektov.

Inteligentna obdelava dokumentov s storitvami AWS AI in Analytics v zavarovalništvu: 2. del PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Ekstrahirajte entitete po meri s prepoznavanjem entitet po meri Amazon Comprehend

Odgovor s strani DetectEntities API vključuje privzete entitete. Vendar nas zanimajo specifične vrednosti entitet, kot je ime pacienta (označeno s privzeto entiteto PERSON) ali pacientov ID (označen s privzeto entiteto OTHER). Za prepoznavanje teh entitet po meri urimo model prepoznavalnika entitet po meri Amazon Comprehend. Priporočamo, da sledite obsežnim korakom o tem, kako usposobiti in uvesti model za prepoznavanje entitet po meri v Repo za GitHub.

Ko razmestimo model po meri, lahko uporabimo funkcijo pomočnika get_entities() za pridobivanje entitet po meri, kot je PATIENT_NAME in PATIENT_D iz odgovora API-ja:

def get_entities(text):
try:
    #detect entities
    entities_custom = comprehend.detect_entities(LanguageCode="en",
                      Text=text, EndpointArn=ER_ENDPOINT_ARN) 
    df_custom = pd.DataFrame(entities_custom["Entities"], columns = ['Text',  
                'Type', 'Score'])
    df_custom = df_custom.drop_duplicates(subset=['Text']).reset_index()
    return df_custom
except Exception as e:
    print(e)

# call the get_entities() function 
response = get_entities(text) 
#print the response from the get_entities() function
print(response)

Naslednji posnetek zaslona prikazuje naše rezultate.

Inteligentna obdelava dokumentov s storitvami AWS AI in Analytics v zavarovalništvu: 2. del PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Faza obogatitve

V fazi obogatitve dokumentov izvajamo funkcije obogatitve dokumentov, povezanih z zdravstvom, da pridobimo dragocene vpoglede. Upoštevamo naslednje vrste obogatitve:

  • Ekstrakt jezika, specifičnega za domeno – Uporabljamo Amazon Comprehend Medical za ekstrahiranje medicinskih ontologij, kot so ICD-10-CM, RxNorm in SNOMED CT
  • Uredite občutljive informacije – Uporabljamo Amazon Comprehend za urejanje osebno določljivih podatkov (PII) in Amazon Comprehend Medical za redigiranje zaščitenih zdravstvenih informacij (PHI).

Izvlecite zdravstvene informacije iz nestrukturiranega medicinskega besedila

Dokumenti, kot so opombe zdravstvenih delavcev in poročila o kliničnih preskušanjih, vključujejo gosto medicinsko besedilo. Nosilci zavarovalnih zahtevkov morajo identificirati razmerja med izvlečenimi zdravstvenimi informacijami iz tega gostega besedila in jih povezati z medicinskimi ontologijami, kot so kode ICD-10-CM, RxNorm in SNOMED CT. To je zelo dragoceno pri avtomatizaciji delovnih tokov za zajemanje terjatev, validacijo in odobritev za zavarovalnice, da pospešijo in poenostavijo obdelavo zahtevkov. Poglejmo, kako lahko uporabljamo Amazon Comprehend Medical InferICD10CM API za odkrivanje možnih zdravstvenih stanj kot entitet in njihovo povezavo z njihovimi kodami:

cm_json_data = comprehend_med.infer_icd10_cm(Text=text)

print("nMedical codingn========")

for entity in cm_json_data["Entities"]:
      for icd in entity["ICD10CMConcepts"]:
           description = icd['Description']
           code = icd["Code"]
           print(f'{description}: {code}')

Za vhodno besedilo, ki ga lahko posredujemo iz Amazon Texttract DetectDocumentText API, InferICD10CM API vrne naslednji izhod (izhod je bil zaradi kratkosti skrajšan).

Izvlecite zdravstvene informacije iz nestrukturiranega medicinskega besedila

Podobno lahko uporabimo Amazon Comprehend Medical InferRxNorm API za prepoznavanje zdravil in InferSNOMEDCT API za odkrivanje zdravstvenih subjektov v zavarovalnih dokumentih, povezanih z zdravstvenim varstvom.

Izvedite redigiranje PII in PHI

Paketi zavarovalnih zahtevkov zahtevajo veliko skladnosti z zasebnostjo in predpisi, ker vsebujejo podatke, ki omogočajo osebno prepoznavo, in podatke o osebni zdravstveni zaščiti. Zavarovalnice lahko zmanjšajo tveganje skladnosti s preoblikovanjem informacij, kot so številke polic ali pacientovo ime.

Poglejmo primer odpustnice bolnika. Uporabljamo Amazon Comprehend DetectPiiEntities API za odkrivanje oseb PII v dokumentu in zaščito pacientove zasebnosti z redigiranjem teh entitet:

resp = call_textract(input_document = f's3://{data_bucket}/idp/textract/dr-note-sample.png')
text = get_string(textract_json=resp, output_type=[Textract_Pretty_Print.LINES])

# call Amazon Comprehend Detect PII Entities API
entity_resp = comprehend.detect_pii_entities(Text=text, LanguageCode="en") 

pii = []
for entity in entity_resp['Entities']:
      pii_entity={}
      pii_entity['Type'] = entity['Type']
      pii_entity['Text'] = text[entity['BeginOffset']:entity['EndOffset']]
      pii.append(pii_entity)
print(pii)

V odgovoru od osebe prejmemo naslednje subjekte PII detect_pii_entities() API:

odgovor API-ja detect_pii_entities().

Entitete PII, ki so bile zaznane v dokumentih, lahko nato redigiramo z uporabo geometrije omejevalnih okvirjev entitet iz dokumenta. Za to uporabljamo pomožno orodje, imenovano amazon-textract-overlayer. Za več informacij glejte Prekrivanje besedila. Naslednji posnetki zaslona primerjajo dokument pred in po redigiranju.

Inteligentna obdelava dokumentov s storitvami AWS AI in Analytics v zavarovalništvu: 2. del PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.Inteligentna obdelava dokumentov s storitvami AWS AI in Analytics v zavarovalništvu: 2. del PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Podobno kot Amazon Comprehend DetectPiiEntities API, lahko uporabimo tudi DetectPHI API za odkrivanje podatkov PHI v pregledovanem kliničnem besedilu. Za več informacij glejte Zaznaj PHI.

Faza pregleda in validacije

V fazi pregleda in validacije dokumentov lahko zdaj preverimo, ali paket zahtevkov izpolnjuje zahteve podjetja, saj imamo vse informacije, zbrane iz dokumentov v paketu iz prejšnjih faz. To lahko storimo tako, da v zanko uvedemo človeka, ki lahko pregleda in potrdi vsa polja, ali samo postopek samodejne odobritve za nizke zahtevke, preden paket pošlje aplikacijam na nižji stopnji. Lahko uporabimo Amazon, razširjeni AI (Amazon A2I) za avtomatizacijo postopka človeškega pregleda za obdelavo zavarovalnih zahtevkov.

Inteligentna obdelava dokumentov s storitvami AWS AI in Analytics v zavarovalništvu: 2. del PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Zdaj, ko imamo vse zahtevane podatke ekstrahirane in normalizirane iz obdelave zahtevkov z uporabo storitev AI za IDP, lahko razširimo rešitev za integracijo s storitvami AWS Analytics, kot sta AWS Glue in Amazon Redshift, za reševanje dodatnih primerov uporabe in zagotavljanje dodatnih analiz in vizualizacij.

Odkrijte goljufive zavarovalne zahtevke

V tem prispevku izvajamo arhitekturo brez strežnika, kjer so ekstrahirani in obdelani podatki shranjeni v podatkovnem jezeru in se uporabljajo za odkrivanje goljufivih zavarovalniških zahtevkov z uporabo strojnega jezika. Uporabljamo Preprosta storitev shranjevanja Amazon (Amazon S3) za shranjevanje obdelanih podatkov. Nato lahko uporabimo AWS lepilo or Amazonski EMR za čiščenje podatkov in dodajanje dodatnih polj, da bodo potrošni za poročanje in ML. Po tem uporabimo Amazon Redshift ML za izgradnjo modela ML za odkrivanje goljufij. Končno sestavimo poročila z uporabo Amazon QuickSight da bi dobili vpogled v podatke.

Nastavite zunanjo shemo Amazon Redshift

Za namen tega primera smo ustvarili a vzorec nabora podatkov emulira izhod postopka ETL (izvleček, pretvorba in nalaganje) in uporabi katalog podatkov AWS Glue kot katalog metapodatkov. Najprej ustvarimo bazo podatkov z imenom idp_demo v podatkovnem katalogu in zunanjo shemo v Amazon Redshift, imenovano idp_insurance_demo (glejte naslednjo kodo). Uporabljamo an AWS upravljanje identitete in dostopa (IAM) za dodelitev dovoljenj gruči Amazon Redshift za dostop do Amazon S3 in Amazon SageMaker. Za več informacij o tem, kako nastaviti to vlogo IAM z najmanjšimi privilegiji, glejte Združite in konfigurirajte nastavitev za skrbništvo Amazon Redshift ML.

CREATE EXTERNAL SCHEMA idp_insurance_demo
FROM DATA CATALOG
DATABASE 'idp_demo' 
IAM_ROLE '<<>>'
CREATE EXTERNAL DATABASE IF NOT EXISTS;

Ustvarite zunanjo tabelo Amazon Redshift

Naslednji korak je ustvariti zunanjo tabelo v Amazon Redshift, ki se sklicuje na lokacijo S3, kjer se nahaja datoteka. V tem primeru je naša datoteka besedilna datoteka, ločena z vejicami. Prav tako želimo preskočiti vrstico glave iz datoteke, ki jo je mogoče konfigurirati v razdelku z lastnostmi tabele. Oglejte si naslednjo kodo:

create external table idp_insurance_demo.claims(id INTEGER,
date_of_service date,
patients_address_city VARCHAR,
patients_address_state VARCHAR,
patients_address_zip VARCHAR,
patient_status VARCHAR,
insured_address_state VARCHAR,
insured_address_zip VARCHAR,
insured_date_of_birth date,
insurance_plan_name VARCHAR,
total_charges DECIMAL(14,4),
fraud VARCHAR,
duplicate varchar,
invalid_claim VARCHAR
)
row format delimited
fields terminated by ','
stored as textfile
location '<<>>'
table properties ( 'skip.header.line.count'='1');

Ustvarite nabore podatkov za usposabljanje in testiranje

Ko ustvarimo zunanjo tabelo, pripravimo naš nabor podatkov za ML tako, da ga razdelimo na nabor za usposabljanje in nabor za testiranje. Ustvarimo novo zunanjo tabelo, imenovano claim_train, ki je sestavljen iz vseh zapisov z ID <= 85000 iz tabele zahtevkov. To je komplet za usposabljanje, na katerem usposabljamo naš model ML.

CREATE EXTERNAL TABLE
idp_insurance_demo.claims_train
row format delimited
fields terminated by ','
stored as textfile
location '<<>>/train'
table properties ( 'skip.header.line.count'='1')
AS select * from idp_insurance_demo.claims where id <= 850000

Ustvarimo še eno zunanjo tabelo, imenovano claim_test ki je sestavljen iz vseh zapisov z ID-jem >85000, da bo testni niz, na katerem testiramo model ML:

CREATE EXTERNAL TABLE
idp_insurance_demo.claims_test
row format delimited
fields terminated by ','
stored as textfile
location '<<>>/test'
table properties ( 'skip.header.line.count'='1')
AS select * from idp_insurance_demo.claims where id > 850000

Ustvarite model ML z Amazon Redshift ML

Sedaj ustvarimo model z uporabo USTVARJI MODEL ukaz (glejte naslednjo kodo). Izberemo ustrezne stolpce iz claims_train tabelo, ki lahko ugotovi goljufivo transakcijo. Cilj tega modela je napovedati vrednost fraud stolpec; torej, fraud je dodan kot cilj predvidevanja. Ko se model usposobi, ustvari funkcijo z imenom insurance_fraud_model. Ta funkcija se uporablja za sklepanje med izvajanjem stavkov SQL za predvidevanje vrednosti fraud stolpec za nove zapise.

CREATE MODEL idp_insurance_demo.insurance_fraud_model
FROM (SELECT 
total_charges ,
fraud ,
duplicate,
invalid_claim
FROM idp_insurance_demo.claims_train
)
TARGET fraud
FUNCTION insurance_fraud_model
IAM_ROLE '<<>>'
SETTINGS (
S3_BUCKET '<<>>'
);

Ocenite meritve modela ML

Ko ustvarimo model, lahko zaženemo poizvedbe, da preverimo točnost modela. Uporabljamo insurance_fraud_model funkcijo za napovedovanje vrednosti fraud stolpec za nove zapise. Zaženite naslednjo poizvedbo na claims_test tabela za ustvarjanje matrike zmede:

SELECT 
fraud,
idp_insurance_demo.insurance_fraud_model (total_charges ,duplicate,invalid_claim ) as fraud_calculcated,
count(1)
FROM idp_insurance_demo.claims_test
GROUP BY fraud , fraud_calculcated;

Odkrivanje goljufij z uporabo modela ML

Ko ustvarimo nov model, ko so novi podatki o zahtevkih vstavljeni v podatkovno skladišče ali podatkovno jezero, lahko uporabimo insurance_fraud_model funkcijo za izračun goljufivih transakcij. To naredimo tako, da nove podatke najprej naložimo v začasno tabelo. Nato uporabimo insurance_fraud_model funkcijo za izračun fraud zastavico za vsako novo transakcijo in vstavite podatke skupaj z zastavico v končno tabelo, ki je v tem primeru claims miza.

Vizualizirajte podatke o zahtevkih

Ko so podatki na voljo v Amazon Redshift, lahko ustvarimo vizualizacije s QuickSightom. Nato lahko delimo nadzorne plošče QuickSight s poslovnimi uporabniki in analitiki. Če želite ustvariti nadzorno ploščo QuickSight, morate najprej ustvariti nabor podatkov Amazon Redshift v QuickSightu. Za navodila glejte Ustvarjanje nabora podatkov iz baze podatkov.

Ko ustvarite nabor podatkov, lahko ustvarite novo analizo v QuickSightu z uporabo nabora podatkov. Sledi nekaj vzorčnih poročil, ki smo jih ustvarili:

  • Skupno število zahtevkov po državah, razvrščenih po fraud Polje – Ta grafikon nam prikazuje delež goljufivih transakcij v primerjavi s skupnim številom transakcij v določeni državi.
  • Vsota skupne vrednosti terjatev v dolarjih, razvrščenih po fraud Polje – Ta grafikon nam prikazuje delež dolarskega zneska goljufivih transakcij v primerjavi s skupnim dolarskim zneskom transakcij v določeni državi.
  • Skupno število transakcij na zavarovalnico, razvrščenih po fraud Polje – Ta grafikon nam prikazuje, koliko zahtevkov je bilo vloženih za vsako zavarovalnico in koliko jih je goljufivih.

• Skupno število transakcij na zavarovalnico, razvrščenih po področju goljufij

  • Skupna vsota goljufivih transakcij po državah, prikazanih na zemljevidu ZDA – Ta grafikon samo prikazuje goljufive transakcije in prikazuje skupne stroške za te transakcije po državah na zemljevidu. Temnejši odtenek modre označuje višje skupne stroške. To lahko nadalje analiziramo po mestih znotraj te države in poštnih številkah z mestom, da bi bolje razumeli trende.

Inteligentna obdelava dokumentov s storitvami AWS AI in Analytics v zavarovalništvu: 2. del PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Čiščenje

Če želite preprečiti prihodnje bremenitve vašega računa AWS, izbrišite vire, ki ste jih omogočili v nastavitvi, tako da sledite navodilom v Oddelek za čiščenje v našem repoju.

zaključek

V tej dvodelni seriji smo videli, kako zgraditi cevovod IDP od konca do konca z malo ali brez izkušenj z ML. Raziskali smo primer uporabe obdelave zahtevkov v zavarovalništvu in kako lahko IDP pomaga avtomatizirati ta primer uporabe s storitvami, kot so Amazon Texttract, Amazon Comprehend, Amazon Comprehend Medical in Amazon A2I. V 1. delu smo pokazali, kako uporabljati storitve AI AWS za ekstrakcijo dokumentov. V 2. delu smo razširili fazo ekstrakcije in izvedli obogatitev podatkov. Nazadnje smo razširili strukturirane podatke, pridobljene iz IDP, za nadaljnjo analitiko in ustvarili vizualizacije za odkrivanje goljufivih zahtevkov z uporabo storitev AWS Analytics.

Priporočamo, da pregledate varnostne razdelke Amazonovo besedilo, Amazonsko razumevanjein Amazon A2I dokumentacijo in upoštevanje navedenih smernic. Če želite izvedeti več o cenah rešitve, si oglejte podrobnosti o cenah Amazonovo besedilo, Amazonsko razumevanjein Amazon A2I.


O avtorjih

AvtorChinmayee Rane je specialist za rešitve AI/ML pri Amazon Web Services. Navdušena je nad uporabno matematiko in strojnim učenjem. Osredotoča se na oblikovanje inteligentnih rešitev za obdelavo dokumentov za stranke AWS. Zunaj službe uživa v plesu salse in bachate.


Inteligentna obdelava dokumentov s storitvami AWS AI in Analytics v zavarovalništvu: 2. del PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.
Uday Narayanan
je strokovnjak za analitične rešitve pri AWS. Strankam rad pomaga pri iskanju inovativnih rešitev za kompleksne poslovne izzive. Njegova glavna področja so podatkovna analitika, sistemi velikih podatkov in strojno učenje. V prostem času se rad ukvarja s športom, gleda televizijske oddaje in potuje.


Inteligentna obdelava dokumentov s storitvami AWS AI in Analytics v zavarovalništvu: 2. del PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.
Sonali Sahu
vodi skupino arhitektov rešitev Intelligent Document Processing AI/ML Solutions pri Amazon Web Services. Je strastna tehnofilka in uživa v delu s strankami pri reševanju kompleksnih problemov z uporabo inovacij. Njeno osrednje področje je umetna inteligenca in strojno učenje za inteligentno obdelavo dokumentov.

Časovni žig:

Več od Strojno učenje AWS