E’ possibile un controllo dell’Intelligenza Artificiale?
E’ ormai assodato che l’intelligenza Artificiale deve essere vista come un sistema, e come tale possiede: input, output, attività ed un osservatore.
Ma a differenza di altri sistemi, l’osservatore è anche parte del sistema, non è esterno e relegato all’ambiente ma interagisce con il sistema.
Possiamo definire un sistema come:
Sistema è ciò che può essere distinto, sulla base di qualche criterio specifico agli scopi dell’osservatore, da ciò che è considerato esterno al sistema stesso, il suo ambiente.
Riportiamo alcune caratteristiche generali dei sistemi:
- Si assume che la realtà esista “là fuori” e che abbia caratteristiche che non dipendono dal fatto che qualcuno la osserva, benché in particolari casi già l’osservazione possa modificare la realtà osservata.
- In quanto osservatori costruiamo interpretazioni per “parti della realtà”: chiamiamo modelli tali interpretazioni, e sistemi tali “parti della realtà” oggetto di interpretazione. I modelli possono essere espressi in modo informale (per esempio mediante una descrizione in italiano o dei disegni); per renderli comunicabili (a esseri umani o sistemi automatici) in modo completo e non ambiguo, li si formalizza, mediante strumenti quantitativi o non.
- Poiché noi stessi siamo parte della realtà, i sistemi possono includerci o meno.
- Ogni sistema è immerso in un ambiente: la scelta di cosa includere nel sistema e cosa nell’ambiente, e quindi di dove stabilire il confine del sistema, dipende dal modello adottato. In generale, il confine è posto sia in ampiezza, a separare ciò che viene escluso dal sistema perché sufficientemente “lontano” da esso, sia in profondità, a separare ciò che viene escluso dal sistema perché eccessivamente specifico.
- Ogni sistema può essere interpretato come un tutt’uno, oppure può essere riconosciuto come costituito da più sottosistemi, che con modalità varie interagiscono reciprocamente
- Quanto più un sistema è specializzato, tanto meno è in grado di adattarsi ai cambiamenti;
- Quanto più grande è un sistema, tanto maggiore è la quantità delle risorse che devono essere dedicate per assicurare il suo funzionamento;
- E’ sempre possibile considerare un sistema come parte di sistemi che lo includono (supersistemi) e come insieme di sistemi inclusi in esso (sottosistemi);
- I sistemi tendono a crescere.
La descrizione di un sistema e delle sue interazioni con l’ambiente circostante può essere:
- statica: il modello fornisce una “fotografia” del sistema, che, però non può essere impiegata esplicitamente per realizzare una previsione sull’evoluzione del sistema stesso;
- dinamica, con l’ipotesi che l’osservatore non intervenga (per esempio perché non è in grado di farlo…) sull’evoluzione del sistema (“sistema autonomo”);
- dinamica, inclusiva degli effetti dell’intervento dell’osservatore sul sistema, generalmente finalizzati a modificarne l’evoluzione.
L’AI quindi può configurarsi come sistema chiuso o aperto.
Si ipotizza quindi, che il sistema riceva nel corso del tempo degli input dall’ambiente e/o dall’osservatore (che in questo caso è dunque più che un semplice osservatore) e produca degli output sull’ambiente, ma l’osservatore è parte del sistema.
Inoltre, siccome l’AI sfrutta dati (che sono intangibili) e algoritmi che risiedono su componenti elettronici è dipendente, un po’ come noi, dalla Meccanica Quantistica che governa la fisica subatomica (e non solo): incertezza, probabilità, effetto tunnel oppure logica Fuzzy.
Infatti, il principio di indeterminazione di Heisenberg o l’equazione di Schroedinger ci aiutano a comprendere come l’incertezza e gli stati del sistema (infatti il sistema vive in uno stato che viene modificato dall’input) non sono più riconducibili a situazioni classiche o determinate (0 o 1) ma che esistono situazioni probabilistiche di accadimento.
Illustriamo le equazioni che in qualche modo governano i sistemi:
Equazione di Schroedinger:
Principio di Heisenberg:
Teorema di Bayes:
Fuzzy Theory (non sono solo più valori 0 e 1 ma sono rappresentati da una sigmoide (scala di grigi):
I Qbit e la sfera di Bloch con a fianco gli autostati e i valori che possono assumere:
Il quadrato della funzione ψ risulta la probabilità dell’evento. Per meglio comprendere il concetto di autostato riportiamo un classico esempio studiato alle superiori cioè il binomio di un quadrato:
(a+b)2= a2+b2+2ab
Questo fatto è stato dimostrato nell’esperimento (e nella teoria) della doppia fenditura, dove i termini al quadrato sono le probabilità e il doppio prodotto l’interferenza.
A questo punto, data la situazione di incertezza, è opportuno introdurre i controlli al sistema AI all’ingresso dell’input, all’output e se è possibile anche alle attività interne della scatola AI (controllo della Black Box).
Per far questo possiamo analizzare i dati in ingresso verificandone la qualità, l’accuratezza e con un sistema verificare l’applicazione dei principi e l’analisi dei rischi relativi all’AI.
Riportiamo per completezza:
I principi:
- Dignità e supervisione umana;
- Robustezza e sicurezza;
- Privacy e governance dei dati;
- Trasparenza;
- Diversità, non discriminazione ed equità;
- Benessere sociale e ambientale;
- Accountability.
I rischi:
- Generalità
- Correttezza
- Sicurezza
- Safety
- Tutela della privacy
- Robustezza
- Trasparenza e spiegabilità
Si è accennato anche ad un sistema di gestione, in questo caso il riferimento è la norma ISO 42001: Information technology — Artificial intelligence — Management system.
Come tutte le norme ISO che riportano i requisiti, riporta la struttura HLS (High Level System) illustrata sotto:
Sempre per completezza riportiamo i capitoli della ISO 42001:
- 4 Contesto dell’organizzazione
- 4.1 Comprendere l’organizzazione e il suo contesto
- 4.2 Comprendere le esigenze e le aspettative delle parti interessate
- 4.3 Determinazione dell’ambito di applicazione del sistema di gestione dell’IA
- 4.4 Sistema di gestione AI
- 5 Leadership
- 5.1 Leadership e impegno
- 5.2 Politica
- 5.3 Ruoli, responsabilità e autorità
- 6 Pianificazione
- 6.1 Azioni per affrontare rischi e opportunità
- 6.1.1 Generalità
- 6.1.2 Valutazione del rischio dell’IA
- 6.1.3 Trattamento del rischio di IA
- 6.1.4 Valutazione d’impatto del sistema di IA
- 6.2 Obiettivi dell’IA e pianificazione per raggiungerli
- 6.3 Pianificazione delle modifiche
- 7 Supporto
- 7.1 Risorse
- 7.2 Competenza
- 7.3 Consapevolezza
- 7.4 Comunicazione
- 7.5 Informazioni documentate
- 7.5.1 Generalità
- 7.5.2 Creazione e aggiornamento di informazioni documentate
- 7.5.3 Controllo delle informazioni documentate
- 8 Funzionamento
- 8.1 Pianificazione e controllo operativo
- 9 Valutazione delle prestazioni
- 9.1 Monitoraggio, misurazione, analisi e valutazione
- 9.2 Audit interno
- 9.2.1 Generalità
- 9.2.2 Programma di audit interno
- 9.3 Riesame della direzione
- 9.3.1 Generalità
- 9.3.2 Input di revisione della direzione
- 9.3.3 Risultati del riesame della direzione
- 10 Miglioramento
- 10.1 Miglioramento continuo
- 10.2 Non conformità e azioni correttive
Il sistema può essere allora così descritto:
Utilizzando un framework (modello) che impone la verifica dei principi, rischi e un Sistema di Gestione, sviluppati con domande (cioè attraverso un processo di audit), alle quali l’organizzazione deve rispondere come livello di implementazione e di maturità, è possibile confrontare questi risultati (all’inizio) con i risultati dopo che gli algoritmi hanno svolto il loro compito (alla fine).
Per capire e analizzare lo stato dell’organizzazione rispetto a questi tre assi (principi, rischi e governance) si è introdotto il concetto di vettore.
Un vettore è uno strumento matematico, largamente utilizzato in fisica, che possiede una direzione, un verso ed un’intensità e appartiene ad uno spazio vettoriale. Si descrive attraverso un formalismo
v=(vx, vy, vz)
ovvero come combinazione lineare dei versori canonici
v=(vxi+vyj+vzk)
La posizione del punto sopra descritto è funzione quindi di tre coordinate: x, y, z.
Se andiamo a sostituire le coordinate canoniche con quelle relative allo spazio di Principi, Rischi e Governance, otteniamo un vettore funzione di queste.
Il vettore I sarà quindi:
I = px+sy+rz
Altro parametro importante è il modulo del vettore dato dalla radice quadrata della somma dei quadrati delle singole proiezioni sugli assi.
I = (px2+ sy2+rz2)1/2
Il modello ha prodotto i seguenti grafici con evidenziate le fasi iniziali e quelle finali:
Utilizzando il grafico a vettori possiamo quindi riportare:
Dove si può notare il miglioramento sui tre assi, con la diminuzione dei rischi.
E’ stato illustrato un modello che, attraverso un audit o autovalutazione, verifica lo stato, la bontà dell’input confrontandolo con la correttezza dell’output di un sistema di Intelligenza Artificiale considerando i Principi, i Rischi e l’implementazione di un Sistema di Gestione secondo la ISO 42001 dell’AI.
Articolo a cura di Stefano Gorla
Consulente e formatore in ambito governance AI, sicurezza e tutela dei dati e delle informazioni;
Membro commissione 533 UNINFO su AI; Comitato di Presidenza E.N.I.A.
Membro del Gruppo di Lavoro interassociativo sull’Intelligenza Artificiale di Assintel
Auditor certificato Aicq/Sicev ISO 42001, 27001, 9001, 22301, 20000-1, certificato ITILv4 e COBIT 5 ISACA, DPO Certificato Aicq/Sicev e FAC certifica, Certificato NIST Specialist FAC certifica,
Referente di schema Auditor ISO 42001 AicqSICEV.
Master EQFM. È autore di varie pubblicazioni sui temi di cui si occupa.
Relatore in numerosi convegni.