Kategórie
Success-Stories

Identifikácia entít pre extrakciu adries z transkriptovaných rozhovorov s využitím syntetických dát

Identifikácia entít pre extrakciu adries z transkriptovaných rozhovorov s využitím syntetických dát

Podniky vynakladajú vel’ké množstvo úsilia a finančných prostriedkov na komunikáciu s klientmi. Zvyčajne je ciel’om informácie klientom poskytnúť’, niekedy je však naopak potrebné informácie vyžiadať’ (napr. miesto bydliska). Na riešenie tejto požiadavky sa vynakladá značné úsilie, napríklad vývojom chat- a voicebotov, ktoré na jednej strane slúžia na poskytovanie informácií klientom, ale možno ich využiť’ aj na kontaktovanie klienta so žiadosťou o poskytnutie informácií. Konkrétnym príkladom z reálneho života je kontaktovanie klienta prostredníctvom textovej správy alebo telefonicky s cieľom aktualizovať’ jeho kontaktnú adresu. Keďže adresa klienta sa mohla časom zmeniť, podnik potrebuje priebežne aktualizovať tieto informácie vo svojej internej databáze klientov.

Ilustračný obrázok

Pri vyžiadaní takýchto informácií prostredníctvom ”nových” kanálov, akými sú chat- alebo voiceboty, je dôležité overiť’ správnosť’ a formát adresy. V takýchto prípadoch informácie o adrese zvyčajne pochádzajú z voľného textového vstupu, alebo ako transkript (prepis) hovorenej reči do textu. Takéto vstupy môžu obsahovať’ značne množstvo ”šumu” alebo odchýlky voči požadovanému formátu adresy. Na overenie formátu a platnosti adresy je potrebné odfiltrovať’ šum a extrahovať’ zodpovedajúce entity, ktoré tvoria skutočnú, t.j. presnú adresu. Tento proces extrakcie entít zo vstupného textu je označovaný ako rozpoznávanie pomenovaných entít (NER, z angl. ”Named-Entity Recognition”). V našom konkrétnom prípade ide o tieto entity: názov obce, názov ulice, číslo domu a poštové smerovacie číslo. Cieľom tohto reportu je opísať’ vývoj, implementáciu a posúdenie kvality systému NER na extrakciu spomenutých informácií.

POPIS PROBLÉMU

Táto štúdia je výsledkom spoločného úsilia Národného kompetenčného centra pre vysokovýkonné počítanie a spoločnosti nettle, s.r.o., ktorá je slovenským start-upom zameraným na spracovanie prirodzeného jazyka, chatboty a voiceboty. Cieľom bolo vyvinúť’ vysoko presný a spoľahlivý NER model na extrakciu adries, ktorého vstupom je voľný text, ako aj transkript reči do textu. Výsledný NER model predstavuje dôležitý prvok pre vývoj reálnych systémov starostlivosti o zákazníkov, ktorý sa dá využiť’ všade, kde je nutné extrahovanie adresy.

Výzvou tejto štúdie bolo spracovanie dát, ktoré boli dostupné výlučne v slovenskom jazyku. Z tohto dôvodu bol výber základného modelu veľmi obmedzený. Aktuálne je k dispozícii niekoľko verejne dostupných NER modelov pre slovensky jazyk. Tieto modely sú založené na predtrénovanom univerzálnom modeli SlovakBERT [1]. Bohužiaľ’, všetky tieto modely podporujú len niekoľko typov entít, pričom podpora entít relevantných pre extrakciu adries chýba. Priame využitie populárnych veľkých jazykových modelov (LLM, z angl. ”Large Language Models”), ako je GPT, prostredníctvom cloudových rozhraní (API) neprichádza v našom prípade do úvahy, primárne z dôvodov ochrany osobných údajov a časových oneskorení.

Navrhovaným riešením je doladenie (z angl. ”fine-tuning”) modelu SlovakBERT pre NER. Úloha NER je v našom prípade klasifikačná úloha na úrovni tokenov. Cieľom je dosiahnuť’ dostatočnú presnosť’ v rozpoznávaní entít s malým počtom dostupných reálnych pozorovaní. V časti 2.1 opisujeme náš dátový súbor, vrátane procesu tvorby týchto dát. Výrazný nedostatok dostupných, reálnych pozorovaní nás prinútil vytvoriť’ ”syntetické dáta”. V časti 2.2 navrhujeme úpravy SlovakBERT-u s cieľom natrénovať’ a doladiť’ ho pre našu úlohu. V časti 2.3 skúmame iteračné zlepšenia nášho prı́stupu generovania syntetických dát. Záverom, v časti 3, uvádzame výsledky trénovania a diskutujeme výkonnosť’ modelu.

DÁTA

K dispozícii bolo iba 69 zaznamenaných, reálnych vstupov. Všetky tieto vstupy boli navyše značne ovplyvnené šumom, napr. prirodzeným váhaním v reči, chybami pri prepise reči a pod. Preto boli tieto dáta použité výlučne na testovanie. V tabuľke 1 sú uvedené dva príklady zo zhromaždeného súboru dát.

Tabul’ka 1: Dva prı́klady z reálnych dát. V stĺpci Veta je zobrazený pôvodný text adresy. Stĺpec Tokenizovaný text obsahuje tokenizovanú reprezentáciu vety a stĺpec Anotácie obsahuje tag-y pre prı́slušné tokeny. Zdôrazňujeme, že nie každá veta musı́ nevyhnutne obsahovat’ všetky uvažované typy entı́t. Niektoré vety obsahujú šum, zatial’ čo iné obsahujú gramatické/pravopisné chyby: Token ,,Ďalši” nie je súčasťou adresy a názov ulice ,,bauerová” nezačína veľkým písmenom.

Vytváranie syntetického súboru trénovacích dát sa ukázalo ako jediná možnost’ riešenia problému nedostatku pozorovaní. Inšpirovaní 69 reálnymi príkladmi sme pomocou API do OpenAI vygenerovali množstvo podobných, reálne vyzerajúcich príkladov. Na anotovanie vygenerovaného súboru dát sa použila anotačná schéma BIO [2]. Táto schéma, často používaná v NLP na anotovanie tokenov, označuje v sekvencii začiatok (beginning – B), vnútro (inside – I) alebo ”vonkajšok” (outside – O) entít. Používame 9 anotácií: O, B-Ulica, I-Ulica, B-ČísloDomu, I ČísloDomu, B-Obec, I-Obec, B-PSČ, I-PSČ.

Údaje boli generované vo viacerých iteráciách, vid’. časť’ 2.3. Konečný súbor trénovacích dát pozostával z viac ako 104 pozorovaní. Na generovanie bolo použité GPT-3.5-turbo API. Keďže generovanie textu prostredníctvom tohto API je obmedzené počtom tokenov – ako generovaných, tak aj tokenov v prompte –, nebolo možné v rámci promptov použiť’ kompletný zoznam všetkých existujúcich slovenských názvov ulíc a obcí. Preto boli dáta generované so zástupnými znakmi názov ulice a názov obce, ktoré sa následne nahradili náhodne vybranými názvami ulíc a obcí zo zoznamov názvov ulíc, resp. obcí. Kompletný zoznam slovenských názvov ulíc a obcí bol získaný z webových stránok Ministerstva vnútra Slovenskej republiky [3].

Pomocou generatívneho algoritmu OpenAI, dostupného cez API, sa nám podarilo dosiahnuť’ organické vety bez potreby ručného generovania dát, čo výrazne urýchlilo prácu. Použitie tohto prístupu však neprebehlo úplne bez problémov. Vo vygenerovanom súbore sa vyskytovalo mnoho chýb, boli to hlavne nesprávne anotácie, ktoré bolo potrebné ručne opraviť’. Vygenerovaný súbor bol rozdelený tak, že 80% dát bolo použitých na trénovanie modelu, 15% na validáciu a 5% ako syntetické testovacie dáta, aby bolo možné porovnať’ výkonnosť’ modelu na skutočných dátach s výkonom na umelých testovacích dátach.

VÝVOJ A TRÉNOVANIE MODELOV

V práci boli boli použité a porovnané dva predtrénované, všeobecné modely pre slovenský jazyk: SlovakBERT [1] a destilovaná verzia tohto modelu [4]. V tomto texte označujeme destilovanú verziu ako DistilSlovakBERT. SlovakBERT je open source predtrénovaný model slovenského jazyka, ktorý využíva maskované modelovanie jazyka (MLM, z angl. ”Masked Language Modeling”). Bol natrénovaný na všeobecnom slovenskom webovom korpuse, ale dá sa l’ahko prispôsobit’ na riešenie nových úloh [1]. Dis-tilSlovakBERT je predtrénovaný model získaný z modelu SlovakBERT metódou nazývanou ”destilácia znalostí”, ktorá výrazne zmenšuje vel’kost’ modelu pri zachovaní (až 97%) jeho schopností porozumiet’ jazyku.

Oba modely boli upravané pridaním vrstvy klasifikácie, čím sa v oboch prípadoch získali modely vhodné pre úlohy NER. Posledná klasifikačná vrstva pozostáva z 9 neurónov zodpovedajúcich 9 anotáciám entít, t.j. 4 časti adresy a každá je reprezentovaná dvoma anotáciami – začiatok (B) a vnútro (I) každej entity a jedna anotácia je pre neprítomnosť akejkoľvek entity (O). Počet parametrov pre každý model a jeho zložky sú zhrnuté v tabuľke 2.

Tabul’ka 2: Počet parametrov v použitých NER modeloch a ich prı́slušné počty parametrov pre základný model a klasifikačnú vrstvu.

Trénovanie modelov sa ukázalo byt’ značne náchylné na preučenie. Na riešenie tohto problému a dalšie zlepšenie procesu trénovania bolo použíté lineárne zmenšovanie parametru rýchlosti učenia, regularizačná stratégiu ”weight decay” a niektoré d’alšie stratégie ladenia hyperparametrov.

Na trénovanie modelov boli využité výpočtové prostriedky HPC systému Devana, ktorý prevádzkuje Výpočtové stredisko Centra spoločných činností SAV, konkrétne s využitím akcelerovaného uzla s 1 grafickou kartou (GPU) NVidia A100. Na pohodlnejšiu analýzu a ladenie bolo využívané interaktívne prostredie OpenOnDemand, ktoré umožňuje používatel’om vzdialený webový prístup k superpočítaču.

Proces trénovania vyžadoval iba 10 − 20 epoch na natrénovanie pre oba modely. Pri použití spomenutých HPC prostriedkov bol čas trénovania jednej epochy v priemere 20 sekúnd pre 9492 vzoriek v trénovanom súbore dát pre SlovakBERT a 12 sekúnd pre DistilSlovakBERT. Inferencia na 69 vzorkách trvá 0, 64 sekundy pre SlovakBERT a 0, 37 sekundy pre DistilSlovakBERT, čo dokazuje dostatočnú efektivitu pre použitie týchto modelov v NLP aplikáciách v reálnom čase.

ITERATÍVNE VYLEPŠENIA

Hoci sme mali k dispozícii len 69 reálnych pozorovaní, ich komplexnost’ bola pomerne náročná na simulovanie v generovaných dátach. Generovaný súbor dát bol vytvorený pomocou viacerých promptov, výsledkom čoho bolo 11,306 viet, ktoré pripomínali človekom generovaný text. Získanie finalného riešenia pozostávalo z niekol’kých iterácií, pričom každú iteráciu možno rozdeliť na viaceré kroky: generovanie dát, trénovanie modelu, vizualizácia chýb predikcie na reálnych a umelých testovacích dátach a ich analýza. Týmto spôsobom boli identifikované vzory, ktoré model nedokázal rozpoznat’. Na základe týchto poznatkov boli vygenerované nové dáta, ktoré sa riadili týmito novoidentifikovanými vzormi. Dáta dopĺňané v iteráciách boli generované pomocou promptov uvedených v tabul’ke 3. Pomocou každého novorozšíreného súboru dát boli natrénované oba modely, pričom presnost’ modelu Slovak-BERT vždy prevyšovala presnost’ modelu DistilSlovakBERT. Preto bol d’alej využívaný ako základný model už iba SlovakBERT.

Výsledky

Matica zámen (z angl. ”Confusion Matrix”) zodpovedajúca výsledkom modelu natrénovaného v Iterácii 1 (pozri Tabul’ka 3)—je zobrazená v Tabul’ke 4. Tento model dokázal správne rozpoznat’ iba 67, 51% entít v testovacom súbore údajov. Podrobné preskúmanie chýb predikcie ukázalo, že súbor trénovacích dát nereprezentuje dostatočne dobre reálne pozorovania a je potrebné generovat’ viac reprezentatívnejších údajov. V tabul’ke 4 je zrejmé, že najčastejšou chybou bola identifikácia obce ako ulice a dochádzalo k tomu v prípadoch, ked’ sa názov obce objavil pred názvom ulice v adrese. Výsledkom bolo generovanie dát pomocou iterácie 2 a iterácie 3.

Tabul’ka 3: Iteratı́vny proces vytvárania dátového súboru. Každý prompt bol použitý dvakrát: najprv so šumom a potom bez šumu, t.j. s prirodzenými váhaniami l’udskej reči. Niekedy, ak je v tabul’ke uvedené, prompt umožňoval zamiešat’ alebo vynechat’ niektoré časti adresy (entity).

Ciel’om bolo dosiahnut’ viac ako 90% presnost’ na reálnych testovacích dátach. Presnost’ predikcie modelu sa so systematickým generovaním údajov neustále zvyšovala. Finálne bol celý súbor údajov zduplikovaný tak, že duplicity reflektovali text s použitím len malých písmen, nakol’ko využitý predtrénovaný model je citlivý na malé a vel’ké písmená a niektoré testovacie pozorovania obsahovali názvy ulíc a obcí s malými písmenami. Vd’aka tomu sa model stal robustnejším voči forme, v ktorej dostáva vstup, a dosiahol konečnú presnost’ 93,06%. Matica zámen najlepšieho (finálneho) modelu je zobrazená v Tabul’ke 5.

Tabul’ka 4: Matica zámen modelu natrénovaného na súbore dát z prvej iterácie, ktorá dosiahla predikčnú presnost’ modelu 67, 51 %.
Tabul’ka 5: Matica zámen konečného modelu s presnost’ou 93,06%. Porovnanı́m výsledkov s výsledkami v Tabul’ke 4 vidı́me, že presnost’ sa zvýšila o 25,55%.

V predikciách sa stále vyskytujú niektoré chyby; najmä tokeny, ktoré majú byt’ identifikované ako O, sú občas nesprávne klasifikované ako Obec. Týmto problémom sme sa d’alej nezaoberali, pretože sa vyskytuje pri slovách, ktoré sa môžu podobat’ na časti názvov entít, ale v skutočnosti nepredstavujú samotné entity. Príklad je zobrazený v Tabul’ke 6.

Tabul’ka 6: Prı́klady predikciı́ konečného modelu pre dve testovacie vety. Prvá veta obsahuje jeden nesprávne klasifikovaný token: tretı́ token ,,Kal” s anotáciou O bol klasifikovaný ako B-Obec. K ne- správnej klasifikácii “Kal” ako obce došlo v dôsledku jeho podobnosti s podslovami nachádzajúcimi sa v slove “Kalša”. Druhá veta má všetky svoje tokeny klasifikované správne.

ZÁVER

V tejto štúdii bol natrénovaný NER model postavený na predtrénovanom LLM modeli SlovakBERT. Model bol natrénovaný výlučne na umelo vygenerovanom súbore dát. Finálne syntentické trénovacie dáta boli reprezentatívne a kvalitné, vd’aka ich iteratívnemu rozširovaniu. Spolu s dolad’ovaním hyperparametrov tento iteratívny prístup umožnuje dosiahnut’ predikčnú presnost’ na reálnom dátovom súbore, presahujúcu 90%. Prezentovaný prístup naznačuje vysoký potenciál používania výlučne synteticky generovaných dát a to najmä v prípadoch, ked’ množstvo reálnych údajov nie je dostatočné na trénovanie.

Získaný model je možné využit’ v reálnych aplikáciách slúžiacich na extrakciu a overenie správnosti adries, získaných mechanizmami prevodu reči na text. V prípade, že je k dispozícii väčší súbor reálnych dát, odporúčame model pretrénovat’ a prípadne aj rozšírit’ syntetický súbor dát o d’alšie generované údaje, pretože existujúci súbor nemusí reprezentovat’ potenciálne nové vzory v týchto nových, reálnych dátach.
Model je dostupný na https://huggingface.co/nettle-ai/slovakbert-address-ner

POĎAKOVANIE

Výskum bol realizovaný s podporou Národného kompetenčného centra pre HPC, projektu EuroCC 2 a Národného Superpočítačového Centra na základe dohody o grante 101101903-EuroCC 2-DIGITAL-EUROHPC-JU-2022-NCC-01. Výskum (alebo jeho čast’) bol realizovaný s využitím výpočtovej infraštruktúry obstaranej v projekte Národné kompetenčné centrum pre vysokovýkonné počítanie (kód projektu: 311070AKF2) financovaného z Európskeho fondu regionálneho rozvoja, Štrukturálnych fondov EÚ Informatizácia spoločnosti, operačného programu Integrovaná infraštruktúra 2014-2020.

AUTORI

Bibiána Lajčinová – Národné superpočítačové centrum

Patrik Valábek – Národné superpočítačové centrum, Ústav informatizácie, automatizácie a matematiky, Slovenská technická univerzita v Bratislave

Michal Spišiak – nettle, s. r. o.

Plná verzia článku SK
Plná verzia článku EN

Zdroje:

[1] Matús Pikuliak, Stefan Grivalsky, Martin Konopka, Miroslav Blsták, Martin Tamajka, Viktor Bachratý, Marián Simko, Pavol Balázik, Michal Trnka, and Filip Uhlárik. Slovakbert: Slovak masked language model. CoRR, abs/2109.15254, 2021.

[2] Lance Ramshaw and Mitch Marcus. Text chunking using transformation-based learning. In Third Workshop on Very Large Corpora, 1995.

[3] Ministerstvo vnútra Slovenskej republiky. Register adries. https://data.gov.sk/dataset/register-adries-register-ulic. Accessed: August 21, 2023.

[4] Ivan Agarský. Hugging face model hub. https://huggingface.co/crabz/distil-slovakbert, 2022. Accessed: September 15, 2023.


Kategórie
Success-Stories

Detekcia anomálií v časových radoch: prevencia gamblingu pomocou hlbokého učenia

Detekcia anomálií v časových radoch: prevencia gamblingu pomocou hlbokého učenia

Prevencia gamblingu u hráčov online kasín je výzvou, so zjavne pozitívnym dopadom nielen na bežný život hráčov, ale aj na prevádzkovateľov kasín, ktorých úmyslom je sprostredkovať zodpovedné hranie. Na dosiahnutie týchto cieľov sme použili metódy hlbokého učenia „bez učiteľa“ (z angl. „unsupervised learning“), ktoré dokážu identifikovať hráčov vykazujúcich známky problémového hráčstva, s využitím dostupných dát vo forme časových radov. Prezentujeme porovnanie nami navrhnutej architektúry autoenkódera založenej na transformeroch s rekurentnými a konvolučnými autoenkódermi, s dôrazom na výhody tejto architektúry v detekcii anomálií. Keďže klinická diagnóza hráčov nebola v dostupných dátach k dispozícii, výsledky našej štúdie vyhodnocujeme analyzovaním „skóre anomálie“ získaného z autoenkódera a niekoľkých pomocných ukazovateľov, ktoré sú v literatúre často spomínané ako symptómy problémového hráčstva.

Ilustračný obrázok

Patologické hranie hier je definované ako problémové správanie, kedy osoba opakovane staví objekt určitej hodnoty (najčastejšie peniaze) za účelom výhry, ale s neurčitým výsledkom [1], [2]. Bolo tiež odhalených mnoho podobností medzi problémovým gamblingom a závislosťami na omamných látkach [3]. S prístupnosťou internetu sa zvýšil aj výskyt patologického hráčstva. Toto správanie má často negatívny dopad nielen na život dotknutých jednotlivcov, ale aj ich rodiny. Práve preto je včasná detekcia známok patologického hráčstva kľúčová nielen pre zachovanie duševného zdravia, ale aj finančnej situácie ovplyvnených osôb. Táto práca vznikla ako spolupráca Národného kompetenčného centra pre vysokovýkonné počítanie, spoločnosti DOXXbet s.r.o. (športové tipovanie a online kasíno) a spoločnosti Codium s.r.o. (vývoj softvérovej platformy športové tipovanie a iGaming-u pre DOXXbet, s.r.o.), s cieľom zlepšenia služieb zákazníkom a prevencie patologického hráčstva. Tento „proof of concept“ projekt je základom pre ďalší vývoj nástrojov, ktoré pomôžu poskytovateľovi zmierniť dopad negatívnych následkov problémového hráčstva na životy hráčov, aj za cenu zníženia príjmov, čo je v súlade s aktuálnymi európskymi trendmi v risk manažmente online hazardných hier.

V našej práci sme použili prístup učenia „bez učiteľa“ s využitím neurónovej AE siete založenej na transformeroch za účelom detekcie anomálií. Predpokladáme, že dáta patologických hráčov, ktorých by (štatisticky) medzi všetkými hráčmi malo byť medzi 0.5 až 5%, vykazujú anomálie, nie nutne naopak. Dátová sada, ktorú používame, neobsahuje klinickú diagnózu hráčov a spomedzi pomocných ukazovateľov spomenutých vyššie sa v dátach nachádzajú len niektoré – žiadosti o zvýšenie limitu vkladov, doháňanie strát intenzívnejším hraním (ďalej budeme tento indikátor označovať „epizódy naháňania straty“), používanie viacerých platobných metód, časté výbery malých finančných obnosov a ďalšie, ktoré budú spomenuté neskôr. Nakoľko nie všetci hráči, ktorí preukážu anomálne správanie musia byť patologickými hráčmi, boli pomocné ukazovatele použité v kombinácii so „skóre anomálie“, získaného ako výstup z AE.

DÁTA

Dáta použité v tejto štúdii sú sekvenciami pozorovaní zbieraných v čase, monitorujúce viaceré aspekty hráčskeho správania ako frekvencia a časy hier, frekvencia a výška peňažných vkladov, platobné metódy použité pri peňažných vkladoch, informácie o výške stávok, výhier, strát, výberoch a taktiež početnosť žiadostí o zmenu limitu pre výšku vkladov. Z týchto dát bolo extrahovaných 19 prvkov deskriptora vo forme časových radov (ČR). Každý prvok deskriptora pozostáva z viacerých hodnôt, ktoré sú chronologicky usporiadané. Tieto príznaky sú pre zrozumiteľnosť klasifikované do troch kategórií – „čas“, „peniaze“ a „zúfalstvo“, inšpirované autormi Seth a kol. [4]. Každý prvok deskriptora je sekvenciou N hodnôt, pričom každá hodnota predstavuje jedno z N po sebe idúcich časových okien. Každá takáto hodnota bola získaná agregáciou denných dát v príslušnom časovom okne, pričom dĺžka časového okna bola v rozmedzí od 15 dní až po 3 mesiace. Časové okno bolo v niektorých prípadoch pohyblivé, v iných nie. Pre každé pozorovanie teda potrebujeme dáta z N časových okien a zvolená hodnota N po sérii experimentov bola 8 . Celý proces extrakcie premenných je zobrazený na Obrázku 1, finálny tvar dát na Obrázku 2.

Obrázok 1: Vizualizácia agregácie denných záznamov do časových okien a do finálnej formy prvkov deskriptora. t1, …, t450 predstavujú časové záznamy pre denné dáta x1, …, x450. Denné záznamy z časového okna sú agregované do jednej hodnoty zi pre všetky i ∈ (1, . . . , 8).
Obrázok 2: Finálny tvar dát vstupujúcich do modelu. Každé pozorovanie pozostáva z devätnástich prvkov deskriptora a každý prvok pozostáva z ôsmych časových okien.

Architektúra modelu neurónovej siete

Autoenkóder je metóda hlbokého učenia „bez učiteľa“ vhodná na detekciu anomálií v ČR. Myšlienka použitia tohto typu neurónovej siete na detekciu anomálií je založená na rekonštrukčnej schopnosti modelu. AE sa naučí rekonštruovať dáta v trénovacej sade a keďže trénovacia sada by ideálne mala obsahovať len „normálne“ pozorovania, model sa naučí správne rekonštruovať len takéto pozorovania. Preto keď je vstupné pozorovanie anomálne, natrénovaný AE model nedokáže tento vstup zrekonštruovať dostatočne správne, čo má za následok vysokú rekonštrukčnú chybu. Táto rekonštrukčná chyba môže byť použitá ako skóre anomálie daného pozorovania, pričom vyššie skóre znamená väčšiu pravdepodobnosť, že pozorovanie sa vymyká všeobecnému trendu.

V štúdii sme natrénovali AE model na báze transformerov, kde enkóder aj dekóder obsahujú vrstvu nazývanú „Multi Head Attention“ so štyrmi „hlavami“ a 32-dimenzionálnymi vektormi kľúčov a hodnôt. Za touto vrstvou nasleduje klasická neurónová sieť s tzv. „dropout“ vrstvami a reziduálnymi spojeniami. Celý AE model má niečo málo viac než 100k trénovateľných parametrov.

Rekonštrukčná chyba a predikčná schopnosť

Na vyhodnotenie stability modelov sme uskutočnili 3-násobnú krížovú validáciu. Výsledná priemerná strata na trénovacej množine je 0.010, na validačnej 0.012 a na testovacej 0.015. Strata na testovacej množine je vyššia než tá na trénovacej alebo validačnej množine, čo je spôsobené tým, že 211 anomálnych pozorovaní bolo presunutých do testovacej množiny. Bez presunu týchto pozorovaní by bola strata na testovacej množine 0.012. Výkon modelu je prezentovaný na Obrázku 3 vo forme histogramu hodnoty stratovej funkcie. Histogram má „ťažký pravý chvost“, čo je očakávané pre dátové sady obsahujúce anomálie.

Obrázok 3: Histogramy rekonštrukčnej chyby AE modelu na báze transformeru pre testovaciu množinu. Na osi x je hodnota skóre anomálie a na osi y je frekvencia príslušnej hodnoty.

Na demonštráciu kvality rekonštrukcie ČR sú na obrázku Obrázku 4 znázornené pôvodné (modrá čiara) a predikované (červená čiara) hodnoty pre náhodne vybrané anomálne pozorovanie jedného hráča. Hodnota skóre anomálie pre príslušné modely je uvedená v nadpise grafov.

Obrázok 4: Porovnanie predikčnej schopnosti AE modelov. Všetky modely rekonštruovali rovnaké pozorovanie, pochádzajúce z testovacej množiny. Predikčná schopnosť: modrá čiara predstavuje vstupné dáta, červená rekonštrukciu získanú pomocou AE modelu na báze transformera. Číslo uvedené v nadpise grafu predstavuje skóre anomálie pre danú vzorku dát.

Výsledky

Nakoľko nebola klinická diagnóza súčasťou dát, ktorými sme disponovali, môžeme sa pri identifikácii hráčov s potenciálne problémovým hráčstvom spoliehať len na pomocné ukazovatele. K tejto úlohe sme pristúpili tak, že síce detegujeme anomálie v dátach, ale sme si vedomí toho, že nie všetky anomálie musia indikovať problém s gamblingom. Preto budeme korelovať výsledky AE modelu s týmito pomocnými ukazovateľmi:

  • Priemerný počet prihlásení v časovom okne.
  • Priemerný počet výberov v časovom okne.
  • Priemerný počet malých a častých výberov v časovom okne.
  • Priemerný počet žiadostí o zmenu limitu výšky vkladov v časovom okne.
  • Celkový počet epizód naháňania straty v období N časových okien.

Na Obrázku 5 je zobrazená korelácia skóre anomálie s horeuvedenými pomocnými ukazovateľmi. Každý z grafov obsahuje desať stĺpcov, pričom každý stĺpec reprezentuje jeden decil pozorovaní (t. j. každý stĺpec zobrazuje 10% pozorovaní zoradených podľa hodnoty skóre anomálie). Farby stĺpcov prestavujú hodnotu, resp. kategóriu príslušného pomocného ukazovateľa.

(a)
(b)
(c)
(d)
(e)
Obrázok 5: Každý stĺpec v grafoch predstavuje jeden decil skóre anomálie (MSE). Farby predstavujú kategórie príslušných pomocných ukazovateľov s hodnotami kategórií špecifikovanými v legende.

Na každom grafe je možné pozorovať zreteľné vzorce v správaní hráčov – hráči s vysokou hodnotou skóre anomálie majú tendenciu mať tiež vysoké hodnoty všetkých skúmaných pomocných ukazovateľov. Vysoká frekvencia prihlásení do online kasína je úmerná vysokému skóre anomálie, pričom viac než polovica hráčov v poslednom decile rekonštrukčnej chyby má priemerný počet prihlásení v časovom okne väčší než 50. Niečo podobné pozorujeme aj pre priemerný počet výberov v časovom okne. Hráči s nízkou hodnotou skóre nemajú žiadny, alebo majú veľmi malý priemerný počet výberov a zároveň viac než štvrtina hráčov v poslednom decile skóre má v priemere až dva a viac výberov v časovom okne. Ďalším skúmaným pomocným ukazovateľom je počet malých a častých výberov. Väčšina hráčov, ktorí majú v histórii aspoň jednu takúto udalosť, sú v 10% hráčov s najvyšším MSE. Pri analýze ďalšieho ukazovateľa, konkrétne počtu žiadostí o zmenu limitu vkladu, pozorujeme už menej výrazný trend. Je evidentné, že hráči v prvých piatich deciloch nemajú vo všeobecnosti žiadne zmeny limitu výberov (až na pár výnimiek), čím však skóre anomálie rastie, tým sa frekvencia zmeny limitu výberov u hráčov zvyšuje. Posledným pomocným ukazovateľom zobrazeným na grafoch je počet epizód naháňania straty. Opäť môžeme pozorovať zvyšujúcu sa frekvenciu týchto udalostí úmernú skóre anomálie. Viac než polovica hráčov v poslednom decile má aspoň jednu takúto epizódu v časovom okne.

Ak vykonáme superpozíciu týchto grafov za účelom zistenia, aký podiel hráčov spĺňa viacero pomocných ukazovateľov, dospejeme k nasledovnému pozorovaniu: 98.6% hráčov v posledných piatich percentiloch skóre anomálie spĺňa aspoň jeden pomocný ukazovateľ a 77.3% spĺňa aspoň tri ukazovatele. Analýzou správania hráčov v posledných dvoch percentiloch skóre anomálie zisťujeme, že takmer 90% z nich spĺňa aspoň tri ukazovatele. Hranice, ktoré boli použité na výpočet týchto podielov sú: >=1 epizóda naháňania straty, >=1 žiadosť o zmenu limitu, >=1 malý a častý výber, >=31 prihlásení a >=1.25 výberu v priemere počas jedného časového okna.

Záver

V práci sme úspešne aplikovali model autoenkódera (AE) založený na transformeroch na problém detekcie anomálií v dátovej sade hráčov online kasína. Cieľom bolo detegovať hráčov s patologickým hráčstvom metódami „bez učiteľa“. Zo vstupných dát bolo odvodených 19 prvkov deskriptora vo forme časových radov, ktoré odrážajú správanie hráčov v kontexte „času“, „peňazí“ a „zúfalstva“. Porovnali sme detekčnú schopnosť tejto architektúry s ďalšími troma AE architektúrami založenými na LSTM a konvolučných vrstvách, pričom sme zistili, že architektúra modelu založená na transformeroch dosiahla najlepšie výsledky zo všetkých skúmaných modelov v zmysle najlepšej rekonštrukčnej schopnosti. Výsledky tohto modelu tiež vykazujú vysokú koreláciu s pomocnými ukazovateľmi ako počet prihlásení hráča, počet výberov, počet epizód naháňania straty a ďalšími, ktoré sú často spomínané v literatúre vo vzťahu k patologickému hraniu.Tento súlad ”skóre anomálie”, ktoré odráža pravdepodobnosť, že dané pozorovanie sa vymyká priemeru, s pomocnými ukazovateľmi nám dovoľuje porozumieť modelu a jeho efektívnosti v detekcii hráčov s potenciálnym patologickým hráčstvom. Aj keď tieto pomocné ukazovatele boli použité ako prediktory v modeli, navrhujeme ich používať spolu s rekonštrukčnou chybou pri detekcii potenciálne problémových hráčov, aby sa redukovala falošná pozitivita predikcií, nakoľko nie všetky anomálie musia byť spojené s patologickým hráčstvom.

Plná verzia článku

Zdroje:

[1] Alex Blaszczynski and Lia Nower. “A Pathways Model of Problem and Pathological Gambling”. In: Addiction (Abingdon, England) 97 (June 2002), pp. 487–99. doi: 10.1046/j.1360-0443.2002.00015.x.

[2] National Research Council. Pathological Gambling: A Critical Review. Washington, DC: The National Academies Press, 1999. isbn: 978-0-309-06571-9. doi: 10 . 17226 / 6329. url: https ://nap .nationalacademies.org/catalog/6329/pathological – gambling – a – critical -review.

[3] Luke Clark et al. “Pathological Choice: The Neuroscience of Gambling and Gambling Addiction”. In: Journal of Neuroscience 33.45 (2013), pp. 17617–17623. issn: 0270-6474. doi:  0.1523/JNEUROSCI.3231-13.2013.eprint: https : / / www . jneurosci . org /content / 33 / 45 / 17617 . full . pdf. url: https://www.jneurosci.org/content/33/45/17617.

[4] Deepanshi Seth et al. “A Deep Learning Framework for Ensuring Responsible Play in Skill-based Cash Gaming”. In: 2020 19th IEEE International Conference on Machine Learning and Applications (ICMLA) (2020), pp. 454–459.


Kategórie
Success-Stories

Meranie štrukturálnych parametrov kapsúl použitím techník umelej inteligencie (AI) a strojového učenia (ML)

Meranie štrukturálnych parametrov kapsúl použitím techník umelej inteligencie (AI) a strojového učenia (ML)

Cieľom spolupráce medzi Národným kompetenčným centrom pre HPC (NCC pre HPC) a Ústavom polymérov (ÚP) SAV bol návrh a implementácia pilotného softvérového riešenia pre automatické spracovanie obrazu frakcií polymérnych mikrokapsúl. Tieto mikrokapsuly slúžia ako obal pre pankreatické ostrovčeky tvoriace perspektívne liečivo na ochorenie diabetes mellitus (t.j. cukrovky 1. typu). Mikrokapsuly pozostávajú z pankreatických ostrovčekov enkapsulovaných do polopriepustnej polymérnej membrány, ktorá bola vyvinutá na Ústave polymérov SAV.

Ilustračný obrázok

Automatizované riešenie je pre ÚP SAV mimoriadne dôležité z hľadiska časovej úspory a zjednodušenia vyhodnocovania početných výstupov z meraní, ako aj minimalizácie chyby, ktorá sa môže objaviť pri manuálnom spracovaní. Obrázky z optického mikroskopu pri 4-násobnom zväčšení typicky obsahujú jednu alebo niekoľko mikrokapsúl a sú vstupom do tréningu AI/ML modelov. Obrázky z optického mikroskopu pri 2,5-násobnom zväčšení obsahujú viac mikrokapsúl, zvyčajne tri až sedem. V takomto prípade je nutné v prvom kroku identifikovať jednotlivé mikrokapsuly. V procese inferencie sa z príslušného obrázku vytvorí tzv. binárna maska, z ktorej sa následne extrahujú informácie o štrukturálnych parametroch, akými sú predovšetkým vnútorný a vonkajší priemer kapsuly a hrúbka jej membrány.

Obrazový materiál je spracovaný v dvoch krokoch. Prvým krokom je lokalizácia nedefektných kapsúl a ich následné vystrihnutie, druhým je séria operácií vedúcich k samotnému určeniu štrukturálnych parametrov.

DETEKCIA KAPSÚL

Na detekciu kapsúl bol použitý model YOLOv5 [1] s predtrénovanými váhami z databázy COCO128 [2]. Tréningové dáta pozostávali z 96 snímok, ktoré boli manuálne anotované pomocou nástroja LabelImg [3]. Tréningová jednotka pozostávala z 300 epoch, snímky boli rozdelené do sád po 16 a ich veľkosť bola nastavená na 640 pixelov. Výpočtový čas jednej tréningovej jednotky na grafickej karte NVIDIA GeForce GTX 1650 bol približne 3.5 hodiny.

Detekcia pomocou natrénovaného YOLOv5 modelu je prezentovaná na Obrázku 1. Spoľahlivosť natrénovaného modelu, overená na 12 snímkach, bola 96%, pričom priepustnosť na rovnakej grafickej karte bola približne 40 snímok za sekundu.

Obrázok 1: (a) vstupný obraz z optickej mikroskopie; (b) detegovaná kapsula; (c) výrez detegovanej kapsuly pri 4-násobnom zväčšení; (d) vstupný obraz z optickej mikroskopie; (e) detegovaná kapsula; (f) výrez detegovanej kapsuly pri 2,5-násobnom zväčšení.

MERANIE ŠTRUKTURALNÝCH PARAMETROV KAPSÚL POMOCOU TECHNÍK AI/ML

Binárne masky pre vnútorné a vonkajšie časti kapsúl boli získané individuálne, ako výstup z hlbokej neurónovej siete architektúry U-Net [4], ktorá bola vyvinutá na spracovanie obrazu v biomedicínskych aplikáciách. Na tréning príslušných váh bolo použitých 140 obrázkov s korešpondujúcimi maskami pre 4-násobné zväčšenie optického mikroskopu a rovnako 140 obrázkov s korešpondujúcimi maskami aj pre 2,5-násobné zväčšenie. Tréningový proces pozostával z 200 epoch (veľkosť sady 16), pričom 10% z tréningových dát bolo použitých na validáciu. Presnosť na testovacej sade, ktorá pozostávala zo 120 obrázkov, presahovala 96%. Tréningový proces trval 1,5 až 2 hodiny a na trénovanie bol využitý HPC systém s uzlami typu IBM Power 7. Tento proces bolo nutné niekoľkokrát opakovať. Výstupné binárne masky boli následne postprocesované operáciami „fill_holes” [5] a „watershed“ [6], na získanie čo najhladších oválnych masiek. Následne bola na masky fitovaná elipsa s využitím knižnice „scikit-image measure“ [7], ktorej hlavná a vedľajšia os sú základom pre samotný výpočet štrukturálnych parametrov. Postupnosť týchto krokov je prezentovaná na Obrázku 2.

Obrázok 2: (a) vstupná obraz; (b) vnútorná binárna maska; (c) vonkajšia binárna maska; (d) výstupný obraz s fitovanými elipsami elipsy na základe binárnych masiek.

Štrukturálne parametre získané predikciou  AI/ML modelu (značený ďalej ako „U-Net“) boli porovnané s hodnotami, ktorými disponovali pracovníci ÚP SAV a boli získané „manuálnym meraním“ v snímkach. Ako ďalší, nezávislý zdroj referenčných dát bol použitý prístup označovaný ďalej ako „Retinex“, ktorý navrhol a implementoval RNDR. Andrej Lúčny, PhD. z Katedry aplikovanej informatiky Fakulty matematiky, fyziky a informatiky Univerzity Komenského v Bratislave. Tento prístup nevyužíva neurónové siete, ale vytvára kandidátov na binárne masky agregáciou úsekov s nízkou krivosťou, získaných pomocou „retinex“ filtra [8] tak, aby vytvorili útvar s minimálnou štandardnou odchýlkou krivosti. Tento prístup je dobrou referenciou, nakoľko nevyžaduje trénovanie a je vysoko presný, avšak na rozdiel od modelu U-net nie je plne automatizovaný, obzvlášť pre vnútornú membránu kapsuly.

Obrázok 3 sumarizuje porovnanie všetkých spomenutých riešení pre rôzne sady („batches“) z experimentov pre obrázky získané pri 4-násobnom zväčšení.

(a)
(b)
(c)

Obrázok 3: (a) rozmer kapsúl vypočítaný pre prístupy U-net a Retinex ako priemer hlavnej a vedľajšej osi elipsy (b) rozdiel medzi hlavnou osou elipsy pre vonkajší priemer kapsúl (c) rozdiel medzi vedľajšou osou elipsy pre vonkajší priemer kapsúl. V obrázkoch (b) a (c) je červenou čiarou zobrazená hraničná odchýlka akceptovateľná ÚP SAV. Obrázky z optického mikroskopu boli získané pri 4-násobnom zväčšení.

Zo získaných výsledkov je možné skonštatovať, že až na 4 snímky (1.5%) v sade 194 pre vedľajšiu os elipsy, sú všetky parametre v medziach akceptovateľnej presnosti, ktorá bola definovaná ÚP SAV. Z Obrázku 3(a) pozorujeme systematicky lepšiu vzájomnú zhodu medzi výsledkami získanými prístupmi U-net a Retinex, čo môže byť spôsobené buď aproximáciou tvaru kapsuly elipsou, ktorá sa v „manuálnom vyhodnotení“ ÚP SAV neaplikovala, alebo iným, systematickým rozdielom pri vyhodnocovaní, a/alebo chybou v „manuálnom vyhodnotení“. Kvalita U-net modelu môže byť do budúcna výrazne zlepšená, hlavne rozšírením tréningovej sady ako aj aplikovaním ďalšieho pre- a postprocesingu. Zhoda medzi „manuálnym vyhodnotením“ a modelmi U-net / Retinex môže byť zlepšená harmonizáciou spôsobu vyhodnocovania štrukturálnych parametrov kapsúl z binárnych masiek.

AI/ML model bude nasadený v predprodukčnej fáze ako cloudové riešenie na HPC systémoch CSČ SAV. Inferencia a kontinuálny tréning s pribúdajúcimi snímkami nebude vyžadovať investíciu do vysokovýkonných výpočtových prostriedkov samotným ÚP SAV. Produkčná fáza, ktorá presahuje rámec pilotného riešenia, uvažuje s integráciou tohto prístupu do desktopovej aplikácie.

Zdroje:

[1] https://github.com/ultralytics/yolov5

[2] https://www.kaggle.com/ultralytics/coco128

[3] https://github.com/heartexlabs/labelImg

[4] https://lmb.informatik.uni-freiburg.de/people/ronneber/u-net/

[5] https://docs.scipy.org/doc/scipy/reference/generated/scipy.ndimage.binary_fill_holes.html

[6] https://scikit-image.org/docs/stable/auto_examples/segmentation/plot_watershed.html

[7] https://scikit-image.org/docs/stable/api/skimage.measure.html

[8] D.J. Jobson, Z. Rahman, G.A. Woodell, IEEE Transactions on Image Processing 6 (7) 965-976, 1997.


Kategórie
Success-Stories

Use case: Prenos a optimalizácia pracovného toku CFD výpočtov v HPC prostredí

Use case: Prenos a optimalizácia pracovného toku CFD výpočtov v HPC prostredí

Spoločnosť Shark Aero navrhuje a vyrába ultraľahké športové lietadlá s dvojmiestnym tandemovým kokpitom. Na vývoj dizajnu používajú populárny open-source softvérový balík openFOAM [1], konkrétne CFD simulácie (Computational Fluid Dynamics), využívajú metódu konečných prvkov (Finite elements method – FEM). Po vytvorení modelu pomocou softvéru Computer-Aided Design (CAD) sa model rozdelí na samostatné bunky, tzv. sieť (angl. mesh). Presnosť simulácie silne závisí od hustoty siete, pričom výpočtové a pamäťové požiadavky stúpajú s treťou mocninou počtu jej vrcholov. Pre niektoré simulácie môžu byť výpočtové nároky naozaj limitujúcim faktorom, ak používateľ pracuje s bežne dostupnou výpočtovou technikou. Pokúsili sme sa preto preniesť pracovný tok simulácie do High-Performance Computing (HPC) prostredia s osobitným zameraním na preskúmanie efektívnosti paralelizácie výpočtových úloh pre daný typ modelu.

METÓDY

Pre tento projekt boli použité výpočtové uzly s 2×6 jadrami Intel Xeon L5640 @ 2,27GHz, 48 GB RAM a 2×500 GB. Všetky výpočty sa robili v štandardnom HPC prostredí s použitím systému plánovania úloh Slurm. Takéto riešenie je prijateľné pre typ výpočtových úloh, kde sa nevyžaduje odozva v reálnom čase ani okamžité spracovanie údajov. Pre CFD simulácie sme používali softvérové ​​balíky OpenFOAM a ParaView verzie 9. Na spúšťanie výpočtov bol použitý kontajnerový softvér Singularity s ohľadom na možný budúci prenos výpočtov na iný HPC systém. Podľa očakávania, zrýchlenie výpočtov dosiahnuté len samotným transferom do HPC prostredia bolo približne 1,5x v porovnaní so štandardným notebookom.

PARALELIZÁCIA

Paralelne vykonávané výpočtové úlohy môžu zvýšiť rýchlosť celkového výpočtu využitím viacerých výpočtových jednotiek súčasne. Pre paralelizáciu úlohy takéhoto typu je potrebné rozdeliť pôvodnú sieť na domény – časti, ktoré sa budú spracovávať súbežne. Domény však potrebujú komunikovať cez procesorové okrajové podmienky, t.j. steny domény alebo plochy v mieste rozdelenia pôvodnej siete. Čím väčšia je hraničná plocha procesora, tým viac I/O operácií je potrebných na vyriešenie okrajových podmienok. Dátová komunikácia procesorových okrajových podmienok je zabezpečená protokolom MPI (distributed memory Message Passing Interface), takže rozdiel medzi jadrami CPU a rôznymi výpočtovými uzlami je od používateľa abstrahovaný. To vedie k určitým obmedzeniam efektívneho využívania mnohých paralelných procesov, pretože príliš paralelizované vykonávanie úloh môže byť v skutočnosti pomalšie kvôli úzkym miestam v komunikácii a I/O. Preto by mali byť domény vytvorené spôsobom, ktorý minimalizuje hranice procesora. Jednou z možných stratégií je rozdeliť pôvodnú sieť iba v koplanárnom smere s čo najmenšou stranou pôvodnej siete. Pri paralelizácii a definícii domén je potrebné dbať na množstvo prenášaných údajov – napríklad pri delení siete vo viacerých osiach sa vytvorí aj viac procesorových okrajových podmienok.

Figure 1: Ilustrácia segmentácie siete. Obklopujúci mesh je reprezentovaný priesvitnými kvádrami.

Výpočty sa robili v štyroch krokoch: generovanie siete, segmentácia siete, vnorenie modelu a simulácia CFD. Prvý krok – vytvorenie siete sme urobili pomocou utility blockMesh, nsledovala segmentácia siete pomocou utility decomposePar, vnorenie modelu pomocou programu snappyHexMesh a samotná CFD simulácia bola robená programom SimpleFoam. Výpočtovo najnáročnejší krok je snappyHexMesh. Je to pochopiteľné z toho, že kým pri CFD simulácii je potrebné vykonať výpočet niekoľkokrát pre každú hranu siete a každú iteráciu, v prípade vnorenia modelu sa vytvárajú nové vrcholy a staré sa vymazávajú na základe polohy vrcholov siete. To si vyžaduje vytvorenie „oktree“ (rozdelenie trojrozmerného priestoru jeho rekurzívnym rozdelením na osem oktantov), ​​opakované inverzné vyhľadávanie a opätovné zaradenie do oktantov. Každý z týchto procesov je N*log(N) v najlepšom prípade a N2 v najhoršom prípade, kde N je počet vrcholov. Samotné CFD škáluje lineárne s počtom hrán, t.j. „takmer“ lineárne s N (prepojené sú len priestorovo blízke uzly). Vyvinuli sme pracovný postup, ktorý vytvára množstvo domén, ktoré môžu byť priamo paralelné s rovinou yz (x je os nosa lietadla), čo používateľovi zjednodušuje rozhodovanie. Po zahrnutí nového modelu je možné jednoducho špecifikovať počet domén a spustiť výpočet, čím sa minimalizuje ľudský zásah potrebný na paralelizáciu výpočtu.

VÝSLEDKY A ZÁVER

Relatívne zrýchlenie výpočtových procesov je určené najmä obmedzenými vstupmi/výstupmi. Ak sú výpočtové úlohy hlboko pod hranicou I/O operácií, rýchlosť je nepriamo úmerná počtu domén. Pri menej náročných výpočtoch, t.j. pri malých modeloch sa môžu procesy ľahko stať nadmerne paralelizovanými.

Figure 2: Závislosť reálneho výpočtového času od počtu výpočtových jednotiek pre snappyHexMesh and simpleFoam. V prípade simpleFoam-u čas začína divergovať pre 8 procesov a viac, nakoľko dátový transfer prekonáva paralelizačnú výhodu. Ideálne škálovanie ukazuje teoretický čas potrebný na dokončenie výpočtu v prípade, že by procesorové podmienky a dátový transfer neboli zahrnuté.

Keď je hustota siete dostatočne vysoká, čas na výpočet kroku CFD je tiež nepriamo úmerný počtu paralelných procesov. Ako je znázornené na druhej dvojici obrázkov s dvojnásobným zvýšením hustoty siete, výpočty sú pod hranicou I/O dokonca aj v CFD kroku. Aj keď je krok CFD v tomto prípade pomerne rýchly v porovnaní s procesom tvorby siete, výpočet dlhých časových intervalov by z neho mohol urobiť časovo najnáročnejší krok.

Návrh častí lietadla vyžaduje viacnásobné simulácie relatívne malých modelov za meniacich sa podmienok. Hustota siete potrebná pre tieto simulácie patrí do strednej kategórie. Pri prenose výpočtov do HPC prostredia sme museli brať do úvahy skutočné potreby koncového užívateľa z hľadiska veľkosti modelu, hustoty siete a požadovanej presnosti výsledku. Používanie HPC má niekoľko výhod:

  • Koncový používateľ je nepotrebuje udržiavať svoje vlastné výpočtové kapacity.
  • Aj v prípade, že by simulácie boli obmedzené na úlohy s jedným vláknom (neparalelizované), ich prenos do HPC prostredia predstavuje zrýchlenie, navyše s možnosťou použitia tzv. embarrassingly parallel prístupu.
  • Pre ďalšie zefektívnenie vypočtov bol navrhnutý jednoduchý spôsob využitia paralelizácie pre tento konkrétny typ úloh. Identifikovali sme obmedzenia paralelných behov pre definovaný prípad použitia a podmienky. Celkové zvýšenie rýchlosti, ktoré bolo dosiahnuté v praktických podmienkach, je 7,3-násobné. Vo všeobecnosti je možné očakávať zrýchlenie rastúce so zložitosťou výpočtu a presnosťou/hustotou siete.


Kategórie
Success-Stories

MEMO98

MEMO98

MEMO 98 je nezisková mimovládna organizácia, ktorá sa viac ako 20 rokov zaoberá monitorovaním médií v kontexte volieb a iných udalostí, pričom svoje aktivity realizovala vo viac ako 50 krajinách. V poslednom čase sa taktiež zaoberá vplyvom sociálnych sietí na integritu volebných procesov.

Informačné prostredie sa v posledných rokoch výrazne zmenilo, obzvlášť vplyvom nástupu sociálnych sietí. Odhliadnuc od niektorých pozitívnych aspektov, ako sú rozšírené možnosti prijímania a zdieľania informácií, sociálne médiá tiež umožnili rýchle a lacné šírenie dezinformácií zasahujúcich široké publikum. Organizácia MEMO 98 analyzovala predvolebnú kampaň parlamentných volieb, ktoré sa konali 11. júla 2021 v Moldavsku, a to na piatich sociálnych platformách: Facebook, Instagram, Odnoklassniki, Telegram a YouTube.

Dáta zo sociálnych sietí boli získané pomocou nástroja CrowdTangle (nástroj na analýzu sociálnych médií vlastnený Facebookom). Len počet interakcií k postom kandidátov a jednotlivých politických strán na Facebooku bol 1,82 mil., počet interakcií postov predsedov strán sa vyšplhal k 1,09 mil. Pred začiatkom tohto projektu nemala organizácia MEMO 98 skúsenosti s využitím nástrojov na efektívnu analýzu veľkých objemov dát. Odborníci NCC navrhli riešenie na spracovanie dát a ich následnú vizualizáciu voľne dostupným softvérom Gephi [1] v HPC prostredí. Výsledkom je tzv. sieťová mapa, čo je interaktívna schéma umožňujúca hľadať a analyzovať šírenie špecifických výrazov a webových adries v kontexte predvolebnej kampane. NCC poskytlo v rámci projektu aj prístup k výpočtovým prostriedkom na testovanie riešení a tiež individuálne zaškolenie tak, aby organizácia MEMO98 vedela v budúcnosti s týmto riešením samostatne pracovať.

Predbežné výsledky a závery monitoringu MEMO98 zverejňuje na svojej webstránke [2].

Referencie


[1] Bastian M., Heymann S., Jacomy M. (2009). Gephi: an open source software for exploring and manipulating networks. International AAAI Conference on Weblogs and Social Media.

[2] Network mapping, Moldova Early Parliamentary Elections July 2021, Monitoring of Social Media – Preliminary Findings. Dostupné na:

https://memo98.sk/article/moldovan-social-media-reflected-a-division-in-society

https://memo98.sk/uploads/content_galleries/source/memo/moldova/2021/preliminary-findings-on-the-monitoring-of-parliamentary-elections-2021-on-social-media.pdf