
# Kauzalna AI za predviđanje utjecaja usklađenosti u stvarnom vremenu

Regulatorni krajolici mijenjaju se munjevito. Jedna izmjena u zakonu o zaštiti podataka može se proširiti na desetke značajki proizvoda, pomaknuti datume izdanja i promijeniti ocjene rizika. Tradicionalni alati za usklađenost reagiraju tek nakon događaja – do trenutka kad je promjena zabilježena, plan proizvoda već može biti nesinkroniziran.  

Uđite u **kauzalnu AI**: spoj kauzalnog zaključivanja, grafičkih neuronskih mreža (GNN‑ova) i kontinuiranog strujanja događaja koji predviđa *kako* će regulatorna promjena utjecati na proizvod **prije** nego što se promjena pojavi u downstream sustavima. Ovaj članak vodi vas kroz dizajn **Kauzalne Grafičke Neuronske Mreže (Causal‑GNN)** koja predviđa utjecaj usklađenosti, od ingestije podataka do inferencije u stvarnom vremenu, i pokazuje kako ugraditi prognoze u GitOps‑stil pipeline proizvoda.

---

## 1. Zašto kauzalna AI nadmašuje modele temeljene samo na korelaciji

| Aspekt | Modeli temeljeni samo na korelaciji | Kauzalni AI modeli |
|--------|--------------------------------------|--------------------|
| **Što uče** | Statistička ko‑pojava (npr. “značajka X se često mijenja nakon regulative Y”). | Usmjereni uzročno‑posljedični odnosi (npr. “regulativa Y *prisiljava* onemogućavanje značajke X”). |
| **Otpornost na konfondere** | Niska – skriveni varijabli mogu proizvesti lažne obrasce. | Visoka – kauzalni grafovi izričito modeliraju konfondere. |
| **Kontrafaktičko razmišljanje** | Nemoguće. | Izvorno – postavite pitanje “Što ako regulativa Y nikada nije postojala?”. |
| **Objašnjivost** | Ograničena – ocjene važnosti značajki su nejasne. | Jaka – svaki brid u grafu je ljudski čitljiva kauzalna tvrdnja. |

U usklađenosti, mogućnost izvođenja **kontrafaktičkih simulacija** je neprocjenjiva. Menadžeri proizvoda mogu pitati: “Ako se usvoji nadolazeća izmjena [GDPR‑a](https://gdpr.eu/), koje će API‑je biti potrebno pre‑inženjerirati?” i odmah dobiti kvantificirano predviđanje utjecaja.

---

## 2. Visokorazinski arhitektura

```mermaid
graph LR
    A[Event Stream Ingestion] --> B[Temporal KG Builder]
    B --> C[Causal Graph Constructor]
    C --> D[Training Pipeline]
    D --> E[Causal‑GNN Model]
    E --> F[Real‑Time Inference Service]
    F --> G[Roadmap Sync (GitOps)]
    F --> H[Explainability Dashboard]
    I[Compliance Policy Store] --> C
    J[Product Feature Registry] --> B
    K[Audit Log] --> D
```

*Slika 1 – End‑to‑end pipeline za predviđanje kauzalne usklađenosti.*

1. **Event Stream Ingestion** – Kafka, Pulsar ili Azure Event Hubs prikupljaju regulatorna priopćenja, ažuriranja politika i interne zapise promjena.  
2. **Temporal Knowledge Graph (KG) Builder** – Normalizira događaje u vremenski osviješteni KG (entiteti: regulative, značajke, kontrole; odnosi: “utječe”, “zahtijeva”).  
3. **Causal Graph Constructor** – Primjenjuje domeno‑specifično otkrivanje kauzalnosti (npr. PC algoritam, NOTEARS) za orijentaciju bridova i dodjeljivanje ocjena pouzdanosti.  
4. **Training Pipeline** – Generira nadzirane i samonadzirane zadatke (predviđanje veza, kontrafaktični gubitak) za treniranje Causal‑GNN‑a.  
5. **Real‑Time Inference Service** – Izlaže gRPC/REST endpoint koji prima “what‑if” scenarij i vraća ocjene utjecaja po značajci.  
6. **Roadmap Sync (GitOps)** – Automatski otvara pull request u repozitoriju plana proizvoda s predloženim prilagodbama, uz obrazloženje.  
7. **Explainability Dashboard** – Vizualizira kauzalni pod‑graf koji je pokrenuo svako predviđanje, podržavajući revizije i provjere usklađenosti.

---

## 3. Kontinuirana ingestija podataka vođena događajima

### 3.1 Izvori

| Izvor | Primjer | Normalizacija |
|--------|---------|---------------|
| Regulatorni feedovi (EU, US, APAC) | XML/JSON iz EUR‑LEX, Federal Register | Entitet: `Regulation`, Atributi: `jurisdiction`, `effectiveDate`, `textHash`. |
| Interni repozitorij politika (Git) | Markdown datoteke politika | Entitet: `Policy`, Odnos: `implements` → `Regulation`. |
| Zapisi promjena proizvoda (Jira, Git commit‑i) | Issue #1234 “Add encryption at rest” | Entitet: `Feature`, Odnos: `modifies` → `Control`. |
| Vanjski threat intel (STIX) | MITRE ATT&CK ažuriranja | Entitet: `Threat`, Odnos: `exposes` → `Control`. |

### 3.2 Streaming pipeline

```goat
pipeline:
  - name: kafka_consumer
    type: source
    config:
      brokers: ["kafka01:9092"]
      topics: ["regulatory_updates","policy_commits","feature_events"]
  - name: schema_enforcer
    type: transform
    script: |
      // Validate against JSON schema, enrich with timestamps
  - name: temporal_kg_writer
    type: sink
    config:
      endpoint: "http://kg-service:8080/ingest"
```

*Slika 2 – Minimalni GoAT‑stil pipeline (prikazan radi ilustracije; stvarna implementacija koristi Kafka Connect ili Flink).*

Pipeline jamči **exactly‑once** semantiku, što je ključno za kauzalno otkrivanje gdje duplikati bridova narušavaju ocjene pouzdanosti.

---

## 4. Izgradnja kauzalnog znanja grafa

### 4.1 Temporal KG model

Svaki trokut pohranjen je s intervalom valjanosti `[t_start, t_end]`. Primjer:

```
(Regulation: GDPR‑2024, affects, Feature: UserDataExport) [2024‑04‑01, ∞)
```

Temporalno indeksiranje omogućuje **time‑sliced** kauzalno otkrivanje, dopuštajući modelu da nauči da utjecaj regulative može evoluirati (npr. početni rok usklađenosti vs. kasnije akcije provođenja).

### 4.2 Kauzalno otkrivanje

1. **Constraint‑Based** – PC algoritam na matrici susjedstva dobivenoj iz ko‑pojava.  
2. **Score‑Based** – NOTEARS s penalizacijom rijetkosti kako bi se izbjeglo prekomjerno povezivanje grafa.  
3. **Domain Priors** – Učvršćivanje poznatih regulatornih hijerarhija (npr. “Zakon o zaštiti podataka → Kategorija osobnih podataka”) kao tvrdih ograničenja.

Rezultat je **usmjereni aciklični graf (DAG)** gdje svaki brid nosi težinu `w ∈ [0,1]` koja predstavlja jačinu kauzalnosti.

---

## 5. Trening Causal‑GNN‑a

### 5.1 Odabir modela

Koristimo **Relational Graph Convolutional Network (RGCN)** proširen s **Temporal Attention** kako bismo uhvatili vremenski promjenjive utjecaje.

```python
class CausalGNN(nn.Module):
    def __init__(self, num_relations, hidden_dim):
        super().__init__()
        self.rgcn = RGCN(num_relations, hidden_dim, num_bases=30)
        self.time_attn = nn.MultiheadAttention(embed_dim=hidden_dim, num_heads=4)
        self.fc_out = nn.Linear(hidden_dim, 1)  # impact score

    def forward(self, g, node_feats, timestamps):
        h = self.rgcn(g, node_feats)
        # Apply temporal attention
        h = self.time_attn(h, h, h, key_padding_mask=self._mask(timestamps))[0]
        return torch.sigmoid(self.fc_out(h))
```

### 5.2 Funkcije gubitka

* **Link Prediction Loss** – Binary cross‑entropy na promatranim bridovima.  
* **Counterfactual Loss** – Za svaki trening događaj `e` kreiramo sintetičnu “what‑if” verziju u kojoj je regulativa preokrenuta; penaliziramo odstupanje od stvarnog utjecaja.  
* **Regularizacija** – L1 na težinama bridova radi poticanja rijetkosti, usklađeno s povjerenjem iz kauzalnog otkrivanja.

### 5.3 Regimen treniranja

| Faza | Podaci | Cilj |
|------|--------|------|
| Warm‑up | Povijesni KG (statičan) | Samo link prediction |
| Causal fine‑tune | Klizni prozori od 30 dana | Counterfactual loss + link loss |
| Online update | Real‑time stream (mini‑batches) | Inkremenalni gradientni korak, weight decay |

Trening se odvija na GPU‑omogućenom Kubernetes čvoru; checkpoint‑i modela verzionirani su u **MLflow** registru, omogućujući reproducibilne revizije.

---

## 6. Servis za inferenciju u stvarnom vremenu

Servis za inferenciju prima **payload scenarija**:

```json
{
  "regulation_id": "GDPR-2024-Article-15",
  "effective_date": "2024-07-01",
  "what_if": "enforced"
}
```

Servis:

1. Dohvaća pod‑graf doseziv iz regulative unutar konfigurabilnog horizonta (npr. 3 skoka).  
2. Primjenjuje Causal‑GNN za izračun **vektora utjecaja** `I_f ∈ [0,1]^N` gdje je `N` broj značajki.  
3. Vraća rangiranu listu značajki s ocjenama pouzdanosti i **kauzalnim tragom** (minimalni skup bridova koji objašnjava ocjenu).

Primjer odgovora:

```json
{
  "impacts": [
    {"feature":"UserDataExport","score":0.92,"trace":["Regulation→Feature","Feature→Control"]},
    {"feature":"AuditLogRetention","score":0.45,"trace":["Regulation→Control"]},
    {"feature":"ThirdPartyAPI","score":0.12,"trace":["Regulation→Feature"]}
  ],
  "generated_at":"2026-09-06T14:23:11Z"
}
```

Servis je kontejneriziran, automatski skalira pomoću **KEDA**, i osiguran mutual TLS‑om.

---

## 7. Ugradnja prognoza u planove proizvoda (GitOps)

### 7.1 Automatizacija pull‑request‑a

**GitHub Action** prati endpoint inferencije. Kada prognoza premaši konfigurabilni prag rizika (npr. `score > 0.8`), ona:

1. Generira markdown datoteku `compliance/impact-<regulation>.md` koja sažima prognozu.  
2. Otvara PR protiv repozitorija `roadmap` s novim mileston‑om ili prilagođenim datumima sprinta.  
3. Tagira odgovornog product owner‑a i voditelja usklađenosti.

### 7.2 Pregled čovjek‑u‑petlji

Predložak PR‑a uključuje **kauzalni dijagram** (Mermaid) koji product owneri mogu proširiti:

```mermaid
graph TD
    R["Regulation GDPR‑2024‑Art‑15"] --> F1["Feature: UserDataExport"]
    F1 --> C1["Control: DataEncryption"]
    R --> C2["Control: RetentionPolicy"]
```

Zainteresirane strane mogu komentirati, tražiti dodatne dokaze ili odobriti promjenu, čime se osigurava auditabilnost AI sugestija.

---

## 8. Upravljanje, objašnjivost i revizija

| Briga | Ublažavanje |
|-------|-------------|
| **Model drift** | Tjedno ponovno treniranje s novim prozorima događaja; praćenje validacijskog gubitka. |
| **Pristranost u kauzalnom otkrivanju** | Primjena domeno‑specifičnih ograničenja; provjera pravednosti na težinama bridova. |
| **Regulatorna revizija** | Pohranjivanje svakog zahtjeva i odgovora inferencije u nepromjenjivi ledger (npr. AWS QLDB). |
| **Objašnjivost** | Pružanje ocjena pouzdanosti po bridovima; omogućavanje korisnicima da detaljno pregledaju izvorne dokumente. |
| **Privatnost podataka** | Svi pipeline‑i maskiraju PII; korištenje diferencijalne privatnosti pri agregaciji brojeva za kauzalno otkrivanje. |

---

## 9. Lista provjere implementacije

- [ ] Postaviti platformu za strujanje događaja (Kafka) i definirati topike.  
- [ ] Izgraditi temporalni KG servis s Neo4j‑om ili JanusGraph‑om (vremenski indeksirani bridovi).  
- [ ] Implementirati pipeline za kauzalno otkrivanje (PC/NOTEARS) s domeno‑specifičnim priorima.  
- [ ] Razviti Causal‑GNN model i skripte za treniranje (PyTorch Geometric).  
- [ ] Deploy servis inferencije s autoscalingom i mTLS‑om.  
- [ ] Kreirati GitHub Action za automatizaciju PR‑ova i generiranje Mermaid trasa.  
- [ ] Integrirati audit log u nepromjenjivi store.  
- [ ] Konfigurirati monitoring dashboarde (Prometheus + Grafana) za latenciju, greške i zdravlje modela.  

---

## 10. Budući smjerovi

1. **Multimodalno spajanje dokaza** – Kombinirati tekstualne isječke politika, OCR‑izlaze PDF‑ova i strukturirani STIX threat intel u jedinstveni node embedding.  
2. **Zero‑Knowledge Proof validacija** – Omogućiti dobavljačima da dokažu usklađenost bez otkrivanja vlasničkih detalja, te takav dokaz ugraditi u graf kao pouzdan brid.  
3. **Self‑Healing KG** – Koristiti reinforcement learning za automatsko predlaganje korekcija bridova kada revizije downstream otkriju lažne pozitivne.  
4. **Transfer učenja preko regulatornih jurisdikcija** – Pre‑trenirati Causal‑GNN na globalnom regulatornom korpusu, zatim fino podesiti za specifičnu jurisdikciju, smanjujući potrebu za podacima.

---

## Zaključak

Kauzalna AI pretvara usklađenost iz reaktivnog zadatka provjere u **prediktivni motor odlučivanja** koji govori jezikom planova proizvoda. Spoj kontinuiranog strujanja događaja, vremenski osviještenog znanja grafa i specijalizirane Causal‑GNN‑a omogućuje predviđanje regulatornog utjecaja u sekundi, izvođenje kontrafaktičkih “what‑if” simulacija i automatsko usklađivanje razvojnih planova putem GitOps‑a. Rezultat je **jedinstveni izvor istine** koji drži usklađenost, inženjering i poslovne dionike u sinkronizaciji – pretvarajući regulatornu nestabilnost u stratešku prednost.

---

## Vidi također

- [Temporal Graph Neural Networks for Event‑Driven Analytics (NeurIPS 2024)](https://arxiv.org/abs/2406.11234)  
- [Causal Discovery in Knowledge Graphs: A Survey (IEEE Transactions on Knowledge and Data Engineering)](https://ieeexplore.ieee.org/document/10234567)  
- [GitOps for Continuous Compliance (GitHub Blog)](https://github.blog/2025-03-12-gitops-compliance/)