La “explainability” è un settore del machine learning, e ricade nell’ambito della “trustworthy AI”, uno dei pilastri della legislazione europea sugli algoritmi predittivi.
L’AI Act - legge sull’intelligenza artificiale - è stata approvata da pochi mesi dall’Unione Europea, ma è in discussione da molti anni. Si tratta di una legge basata su una struttura di carattere etico e scientifico. La trustworthy AI è uno dei concetti centrali di questa struttura e della legge, ovvero la “intelligenza artificiale degna di fiducia”. Per raggiungere questo standard di legge vi sono diversi fattori che un software di intelligenza artificiale deve prevedere e possedere, e la explainability è uno di questi.
L’explainability è la capacità di un software di intelligenza artificiale - da qui chiamato “algoritmo di machine learning”, perché non mi piace molto il termine intelligenza artificiale - di:
- spiegare autonomamente,
- in maniera comprensibile da un non esperto,
- una predizione che ha prodotto.
autonomamente
Siccome gli algoritmi di machine learning (ML) producono predizioni automaticamente, e a volte sono inseriti in sistemi che non contengono interventi umani (ad esempio la funzione che sblocca il telefonino se riconosce il viso del proprietario del telefono, che è basata su ML), è importante che la spiegazione sia creata autonomamente ovvero senza l’intervento di umani, così come lo è la predizione. Altrimenti, non sarebbe possibile garantire la possibilità di ottenere una spiegazione, che è inserita nella legislazione europea.
comprensibile da un non esperto
Non è accettabile che per comprendere un meccanismo di ML che ha una qualche influenza sulle nostre vite sia necessario studiare il ML oppure la data science. Per questo motivo parte dell’obiettivo di chi fa explainability è che le spiegazioni generate sia comprensibili senza possedere competenze specifiche di ML. Non è possibile invece escludere che per comprendere le spiegazioni sia necessario essere esperti “di dominio”, come si suol dire, ovvero dello specifico ambito in cui il modello di ML è utilizzato. Un esempio: se si usa ML per assistere un medico nella diagnosi su immagini radiografiche, la spiegazione che potrebbe essere offerta potrebbe essere comprensibile solo da un medico. Questo non è evitabile generalmente.
una predizione
Un algoritmo di ML è un software, come può essere qualunque applicazione installata sul proprio computer, e un modello di ML è una applicazione di questo software in uno specifico campo. Ad esempio, un modello di ML potrebbe essere alla base di un sistema che verifica in tempo reale le transazioni fatte con la tua carta di credito e si assicura che le transazioni siano legittime e non fraudolente.
Qualunque decisione presa da un modello di ML si può chiamare indifferentemente decisione o predizione. Questo perché in realtà ciò che effettivamente un computer sa è molto molto poco. Sa la matematica, la logica dal punto di vista formale, ma non molto di più. Quando viene messo di fronte ad una fotografia di un cane, il computer non sa che è un cane, a meno che non gli viene detto. Questo proprio filosoficamente: il computer o è certo di qualcosa (e le uniche cose su cui è certo sono la matematica), o gli viene detto qualcosa, oppure deve tirare ad indovinare. Quindi quando il computer “riconosce” che c’è un cane nella foto di un cane, in realtà il computer sta tirando ad indovinare. Un termine più conciso è che sta facendo una predizione. Generalmente, per compiti relativamente semplici (come riconoscere un cane in una foto) i modelli di ML sono così avanzati che questo tirare ad indovinare è molto molto preciso, e il computer ci azzecca quasi sempre. Ma questo non cambia il fatto che comunque sta tirando ad indovinare. Perché il computer non sa cosa è un cane. Né tantomeno cosa è una foto.