
# Prisitaikantis įrodymų priskyrimo variklis, paremtas grafų neuroniniais tinklais

Spartaus tempo SaaS saugumo vertinimų pasaulyje tiekėjai spaudžiami atsakyti į dešimtis reguliavimo klausimynų – [SOC 2](https://secureframe.com/hub/soc-2/what-is-soc-2), [ISO 27001](https://www.iso.org/standard/27001), [GDPR](https://gdpr.eu/), ir vis nuolat augančią pramonės specifinių apklausų sąrašą. Rankinis įrodymų paieškos, susiejimo ir atnaujinimo kiekvienam klausimui darbas sukelia spūstis, įveda žmogaus klaidas ir dažnai lemia pasenusius atsakymus, nebeatspindinčius dabartinės saugumo būklės.

**Procurize** jau vienija klausimyno sekimą, bendradarbiavimo peržiūrą ir AI‑generuojamus atsakymų juodraščius. Kitas logiškas žingsnis – **Prisitaikantis įrodymų priskyrimo variklis (AEAE)**, kuris automatiškai susieja tinkamą įrodymą su kiekvienu klausimyno elementu, įvertina šio susiejimo pasitikėjimą ir realiu laiku grąžina **Pasitikėjimo balą** į atitikties skydelį.

Šiame straipsnyje pristatomas visas šio variklio dizainas, paaiškinama, kodėl **grafų neuroniniai tinklai (GNN)** yra idealus pagrindas, ir parodyta, kaip sprendimą galima integruoti į esamus Procurize darbo srautus, siekiant matomų pranašumų greičio, tikslumo ir audituojamumo srityse.

---  

## Kodėl grafų neuroniniai tinklai?

Tradicinis raktažodžiais pagrįstas paieškos metodas gerai veikia paprastų dokumentų paieškai, tačiau klausimyno įrodymų susiejimas reikalauja giliau suprasti **semantinius santykius**:

| Iššūkis | Raktinių žodžių paieška | GNN pagrįstas pagrįstumas |
|---------|------------------------|----------------------------|
| Įrodymų daugiavenkštis šaltinis (politikos, kodo peržiūros, žurnalai) | Ribojasi tik tiksliais atitikmenimis | Užfiksuoja dokumentų tarpusavio priklausomybes |
| Konteksto suprantamas aktualumas (pvz., „šifravimas ramybės būsenoje“ vs „šifravimas perdavimo metu“) | Dviprasmiškas | Mokosi mazgo įterpinių, koduojančių kontekstą |
| Besikeičianti reguliavimo kalba | Trapus | Automatiškai prisitaiko, kai grafų struktūra keičiasi |
| Aiškinamumas auditoriams | Minimalus | Pateikia krašto lygio priskyrimo balus |

GNN laiko kiekvieną įrodymą, kiekvieną klausimyno elementą ir kiekvieną reguliavimo punktą kaip **mazgą** heterogeniame grafe. Briaunos koduoja santykius, pvz., *„cites“, „updates“, „covers“, „conflicts with“*. Propaguodamas informaciją per visą grafiką, tinklas išmoksta numatyti tikimiausią įrodymą bet kuriam klausimui, net kai tiesioginis raktažodžių sutapimas yra silpnas.

---  

## Pagrindinis duomenų modelis

```goat
graph LR
    "QuestionnaireItem" -->|"covers"| "RegulationClause"
    "RegulationClause" -->|"referenced_by"| "PolicyDocument"
    "PolicyDocument" -->|"contains"| "EvidenceArtifact"
    "EvidenceArtifact" -->|"linked_to"| "LogEntry"
    "LogEntry" -->|"generated_by"| "SystemComponent"
```

* Visi mazgų etiketės yra įrašytos dvigubomis kabutėmis, kaip reikalaujama.  
* Grafas yra **heterogeniškas**: kiekvienas mazgo tipas turi savo požymių vektorių (teksto įterpimai, laiko žymės, rizikos lygis ir t.t.).  
* Briaunos yra tipizuotos, leidžiančios GNN taikyti skirtingas žinučių perdavimo taisykles priklausomai nuo santykio.

### Mazgo požymių kūrimas

| Mazgo tipas | Pagrindinės savybės |
|-------------|---------------------|
| Klausimyno elementas | Klausimo teksto įterpimas (SBERT), atitikties struktūros žyma, prioritetas |
| Reguliacijos punktas | Teisinės kalbos įterpimas, jurisdikcija, reikalaujamos kontrolės |
| Politikos dokumentas | Pavadinimo įterpimas, versijos numeris, paskutinio peržiūrėjimo data |
| Įrodymo artefaktas | Failo tipas, OCR išgautas teksto įterpimas, pasitikėjimo balas iš Document AI |
| Žurnalo įrašas | Struktūruoti laukai (laiko žymė, įvykio tipas), sistemos komponento ID |
| Sistemos komponentas | Metaduomenys (paslaugos pavadinimas, kritiškumas, atitikties sertifikatai) |

Visi tekstiniai požymiai gaunami iš **retrieval‑augmented generation (RAG)** proceso, kuris pirmiausia ištraukia aktualias pastraipas, tada koduoja jas su smulkiai sutvarkytu transformatoriumi.

---  

## Inferencijos procesas

1. **Grafo kūrimas** – Kiekvieno įkėlimo įvykio metu (nauja politika, žurnalo eksportas, klausimyno kūrimas) procesas atnaujina globalų grafiką. Incrementiniai grafiniai duomenų bazės sprendimai, tokie kaip **Neo4j** arba **RedisGraph**, užtikrina realaus laiko mutacijas.  
2. **Įterpimo atnaujinimas** – Naujas tekstinis turinys paleidžia foninį darbą, kuris perskaičiuoja įterpimus ir saugo juos vektorų saugykloje (pvz., **FAISS**).  
3. **Žinučių perdavimas** – **heterogeniškas GraphSAGE** modelis vykdo kelis propagacijos žingsnius, sukuriant per mazgus platinamus slaptus vektorius, kurie jau įtrauka kontekstinius signalus iš gretimų mazgų.  
4. **Įrodymo įvertinimas** – Kiekvienam `QuestionnaireItem` modelis apskaičiuoja **softmax** per visus pasiekiamus `EvidenceArtifact` mazgus, gaunant tikimybinį pasiskirstymą `P(evidence|question)`. Aukščiausio k‑kūno įrodymai pateikiami peržiūrėti.  
5. **Pasitikėjimo priskyrimas** – Briaunų lygiu dėmesio svoriai pateikiami kaip **aiškinamumo balai**, leidžiantys auditoriams matyti, *kodėl* pasiūlė tam tikrą politiką (pvz., „aukštas dėmesys „covers“ briaunai į Reguliacijos punktą 5.3“).  
6. **Pasitikėjimo balo atnaujinimas** – Bendra pasitikėjimo balo reikšmė klausimynui yra svorių agregacija, atsižvelgianti į įrodymo pasitikėjimą, atsakymo pilnumą ir pagrindinių artefaktų šviežumą. Balas vizualizuojamas Procurize skydelyje ir gali sukelti įspėjimus, jei jis nukrenta žemiau nustatyto slenksčio.

### Pseudokodas

```goat
function update_attribution(question_id):
    subgraph = fetch_subgraph(question_id, depth=3)
    node_embeds = encode_nodes(subgraph.nodes)
    graph = build_heterogeneous_graph(subgraph, node_embeds)
    model = load_gnn('aeae_v1')
    node_repr = model.forward(graph)
    scores = softmax(node_repr['EvidenceArtifact'])
    top_evidence = select_top(scores, k=5)
    confidence = extract_attention_weights(model)
    return top_evidence, confidence
```

„goat“ sintaksės blokas naudojamas tik iliustracijai; faktinis įgyvendinimas yra Python/TensorFlow arba PyTorch aplinkoje.

---  

## Integracija su Procurize darbo srautais

| Procurize funkcija | AEAE integracija |
|--------------------|-------------------|
| **Klausimyno kūrėjas** | Siūlo įrodymus, kai naudotojas įveda klausimą, sumažindamas rankinį paieškos laiką |
| **Užduoties priskyrimas** | Automatiškai sukuria peržiūros užduotis žemų pasitikėjimo įrodymams, nukreipia jas atitinkamam savininkui |
| **Komentarų gija** | Įdeda pasitikėjimo šilumos žemėlapius šalia kiekvieno pasiūlymo, leidžiančius skaidrią diskusiją |
| **Audito takas** | Saugo GNN inferencijos metaduomenis (modelio versija, krašto dėmesio svoriai) kartu su įrodymo įrašu |
| **Išorinių įrankių sinchronizavimas** | Pateikia REST API galinį tašką (`/api/v1/attribution/:qid`), kurį CI/CD vamzdynai gali kviesti patikrinti atitikties artefaktus prieš išleidimą |

Kadangi variklis veikia **nekeičiamos grafinės momentinės nuotraukos** pagrindu, kiekvienas Pasitikėjimo balo skaičiavimas vėliau gali būti atkartotas, patenkinant net griežčiausius audito reikalavimus.

---  

## Realūs privalumai

### Greičio padidėjimas

| Metriška | Rankinis procesas | AEAE padedama |
|----------|------------------|---------------|
| Vidutinis įrodymo radimo laikas per klausimą | 12 min | 2 min |
| Klausimyno apdorojimo laikas (pilnas rinkinys) | 5 dienos | 18 valandų |
| Tikrinėjo nuovargis (paspaudimų per klausimą) | 15 | 4 |

### Tikslumo patobulinimai

* **Top‑1 įrodymo tikslumas** išaugo iš 68 % (raktažodžių paieška) iki 91 % (GNN).  
* **Bendras Pasitikėjimo balo svyravimas** sumažėjo 34 %, rodydamas stabilesnius atitikties būklės įvertinimus.

### Sąnaudų mažinimas

* Mažiau išorinių konsultacijų valandų reikalingų įrodymų susiejimui (numatomos sutaupytos $120 k per metus vidutinio dydžio SaaS įmonei).  
* Sumažinta neatitikimo baudų rizika dėl pasenusių atsakymų (galimas $250 k baudas išvengti).

---  

## Saugumo ir valdymo svarstymai

1. **Modelio skaidrumas** – Dėmesio pagrindu veikiantis aiškinamumo sluoksnis yra privalomas reguliavimo atitikties (pvz., ES AI įstatymo) reikalavimuose. Visi inferencijos žurnalai pasirašomi įmonės privatų raktu.  
2. **Duomenų privatumas** – Jautrūs artefaktai šifruojami poilsio režimu naudojant **konfidencialaus skaičiavimo** kameras; tik GNN inferencijos variklis gali juos dešifruoti žinučių perdavimo metu.  
3. **Versijavimas** – Kiekvienas grafo atnaujinimas sukuria naują nekeičiamos momentinės nuotraukos kopiją, saugomą **Merkle pagrindu veikiančiu ledger** forme, leidžiančiu atkūrimą konkrečiu momentu auditui.  
4. **Šališkumo šalinimas** – Reguliariai atliekami auditai, lyginant priskyrimo pasiskirstymus skirtingose reguliavimo srityse, siekiant užtikrinti, kad modelis nepervertintų vienų struktūrų labiau nei kiti.

---  

## Variklio diegimas per 5 žingsnius

1. **Grafinės duomenų bazės paruošimas** – Diegti Neo4j klasterį su HA konfigūracija.  
2. **Esamų išteklių įkėlimas** – Vykdyti migracijos skriptą, kuris išskaito visas dabartines politikas, žurnalus ir klausimyno elementus į grafiką.  
3. **GNN mokymas** – Naudoti pateiktą mokymo užrašų knygelę; pradėti su iš anksto apmokytu `aeae_base` modeliu ir smulkiu derinimu pagal organizacijos žymėtus įrodymų susiejimus.  
4. **API integravimas** – Pridėti `/api/v1/attribution` galinį tašką prie jūsų Procurize instancijos; konfigūruoti webhook'us, kurie sukelia įvykį kuriant naują klausimyną.  
5. **Stebėjimas ir iteravimas** – Sukurti Grafana skydelius modelio nuokrypiui, pasitikėjimo pasiskirstymui ir Pasitikėjimo balo tendencijoms stebėti; suplanuoti ketvirtinius permokymus.

---  

## Ateities plėtiniai

* **Federacinis mokymasis** – Dalintis anonimizuotais grafiniais įterpimais tarp partnerių įmonių, siekiant pagerinti įrodymų susiejimą neatskleidžiant nuosavų dokumentų.  
* **Zero‑Knowledge įrodymai** – Leisti auditoriams patvirtinti, kad įrodymas atitinka punktą neatskleidžiant pagrindinio artefakto.  
* **Daugialypiai įėjimai** – Įtraukti ekrano nuotraukas, architektūros diagramas ir video apžvalgas kaip papildomus mazgo tipus, praturtindami modelio kontekstą.

---  

## Išvada

Sujungus **grafų neuroninius tinklus** su Procurize AI‑valdomu klausimyno platformos sprendimu, Prisitaikantis įrodymų priskyrimo variklis paverčia atitiktį iš reaktivaus, darbo intensyviausio procesų į proaktyvią, duomenų centrą. Komandos gauna greitesnį atsakymų laiko terminą, didesnį pasitikėjimą ir skaidrų auditų taką – esminius pranašumus rinkoje, kur saugumo pasitikėjimas gali būti lemiantys veiksniais uždarant sandorius.

Įgyvendinkite reliacinės AI galią šiandien ir stebėkite, kaip jūsų Pasitikėjimo balai realiu laiku kyla į viršų.

---  

## <span class='highlight-content'>Žiūrėti</span> taip pat

- [Konfidencialaus skaičiavimo apžvalga – Microsoft Azure](https://learn.microsoft.com/azure/confidential-computing/overview)