29 novembre 2019

È l'algoritmo, stupido

​O è l'algoritmo a essere stupido?

Secondo wikipedia la frase "The economy, stupid" è stata coniata da James Carville, uno stratega della campagna elettorale di Bill Clinton. È sicuramente così, ma a noi piace pensare che sia stata ispirata dal mitico "giù la testa, coglione" di Giù la testa, il film di Sergio Leone.
Ma non importa, e non c'entra.

Qualche settimana fa David Heinemeier Hansson (@DHH) ha twittato questo:

Dhh.png

Ne sono seguiti una serie di aggiornamenti sulla assurda posizione di Apple e di Goldmann Sachs (che in effetti emette la carta) e sulla loro incapacità di spiegare come fossero arrivati a una simile conclusione e come giustificavano l'ovvia disparità di trattamento apparentemente legata al genere.

Vi risparmiamo l'infinità di tweet e articoli che sono scaturiti da questa prima osservazione. Moltissimi hanno detto di aver subito lo stesso trattamento, molti politici hanno detto l'ovvio, che non era giusto.

Alcuni hanno risposto con insulti di vario tipo (ma perché c'è sempre qualcuno pronto a insultare sui social?). Il New York State Department of Financial Services ha aperto una inchiesta per stabilire se ci siano state discriminazioni basate sul genere, che sarebbero vietate dalla legge.

Senza entrare nei dettagli, proviamo a riassumere alcune affermazioni e giustificazioni di Apple:
- Non sappiamo perché ha fatto così, ma il genere non c'entra. Davvero. Lo giuro!
- Gli elementi di validazione sono molteplici, forse non tutti erano uguali tra DHH e la moglie
- Non possiamo dire quale parametro ha determinato questo risultato
- Aumentiamo il fido di sua moglie (ma la smetta di massacrarci con Twitter)

Queste sono le risposte che hanno dato direttamente a DHH, ma per molto tempo hanno evitato qualsiasi dichiarazione pubblica sulla faccenda.

Ora, consideriamo che per la legge americana non si potrebbe negare un credito solo sulla base di un algoritmo, senza poi giustificare la decisione, mentre il GDPR esplicitamente dice che l'utente deve poter chiedere una valutazione non automatizzata. Quindi queste risposte sono in ogni caso contrarie a quella che dovrebbe essere la regola.

Ma tutto questo non è il punto di cui vorremmo parlare. Vorremmo parlare dell'elefante nella stanza: l'Algoritmo.

Algoritmo: un procedimento a passi per risolvere un problema o raggiungere uno scopo (MerriamWebster), oppure, dalla Treccani: l'espressione in termini matematicamente precisi di una procedura generale, di un metodo sistematico valido per la soluzione di una certa classe di problemi.

Ok, quindi l'Algoritmo è l'insieme di operazioni da fare per raggiungere un certo risultato. Il computer è l'esecutore dell'algoritmo. Una volta che ho definito e correttamente implementato l'Algoritmo lo posso eseguire su dati diversi per ottenere i risultati che mi servono.

Ovviamente di algoritmi interessanti o meno ce ne sono tantissimi, da per esempio quello per sommare due numeri interi (lo ricordate? lo insegnavano alle elementari… ma chi lo usa più?) a cose molto complesse che oggi chiamano AI (sarebbe intelligenza artificiale, ma evidentemente non riusciamo a usare l'italiano nemmeno negli acronimi) e che sono per esempio sofisticate analisi statistiche, complesse reti neuronali, o semplici alberi decisionali che di intelligente hanno poco.

Gli algoritmi di cui parliamo oggi devono affrontare problemi del tipo "Diamo un mutuo a questo signore?", "Che massimale mettiamo in questa carta di credito?", "cosa potrei vendere a questo cliente?", "E' il caso di assicurare questo automobilista?". In ingresso riceveranno delle caratteristiche della persona in oggetto, in uscita produrranno un responso di qualche tipo.

Ma come è costruito un algoritmo che fa questo?
Alla fine si tratta sempre di varianti di un procedimento che parte da prendere dati storici, raccolti in vari modi, insieme con le risposte corrette per ogni dato, e metterli in un gigantesco "tritadati" (*), per costruire un meccanismo che dia le risposte giuste per quei dati, e che quindi ci aspettiamo dia risposte giuste anche per dati nuovi, come per analogia. E non sempre le ragioni per cui l'algoritmo ha emetterà un certo verdetto saranno ovvie, anzi certe volte saranno incomprensibili o addirittura illogiche (**) Il che non è poi tanto diverso da come funziona l'intelligenza vera, che per giudicare le persone si basa anche su quello che l'esperienza ci ha insegnato. Alcune volte è inconscio (ho paura dei cani perché da piccolo sono stato morso, ma nemmeno lo ricordo), altre è ragionato, logico (in auto con maschio, giovane, neopatentato = meglio se guido io).


L'Algoritmo tutto sommato fa la stessa cosa. Si basa su quello che è stato (le statistiche, i dati storici) per predire quello che, secondo l'Algoritmo,  probabilmente succederà (questo signore potrebbe essere un truffatore!).

L'implicazione però non è trascurabile: vogliamo essere giudicati per quello che siamo e per chi siamo, oppure per quello che sono coloro che si assomigliano a noi? Perché in effetti l'Algoritmo ragiona proprio così, ti attribuisce pregi e difetti di chi ti assomiglia: ad esempio se spesso una persona residente in un certo rione non era economicamente affidabile, allora raccomanderà di dare un basso limite di credito a un richiedente che abita lì. Ma non perché QUELLA persona non pare affidabile. Se andassimo in banca a chiedere un mutuo, il funzionario che deciderà se approvare o no si baserà su molti fattori, alcuni simili a quelli che usa l'Algoritmo, altri (il suo giudizio personale) meno definiti, ma non meno importanti. E se dovessimo sentirci dire di no, potremmo anche provare a convincerlo,  confutando alcune delle motivazioni per cui ce lo dicono. Non a caso il GDPR dice proprio che la persona deve poter chiedere di essere valutata da una persona, appunto. Dicevamo prima che in teoria l'Algoritmo non deve fare discriminazioni di genere. Il che è come dire che il genere non deve essere nei dati storici usati per costruirlo e metterlo a punto. Benissimo. Ma se tra questi dati vi fosse ad esempio un attributo come "che rivista preferisce" con due alternative "Grazia" e "Quattroruote", sarebbe tanto diverso? Il fatto è che certe volte alcuni attributi, soprattutto se presi insieme, implicano il genere, anche se non vi sono direttamente collegati. Ad Apple e Goldman Sachs deve essere successo qualcosa di simile, e loro non necessariamente sanno quale insieme di attributi ha portato ad abbassare tanto il credito della moglie di David Hansson. Esattamente lo stesso può succedere per la profilazione basata sulla razza (cosa ovviamente vietatissima) ma che potrebbe essere un effetto collaterale ad esempio del rione di residenza.

In definitiva l'Algoritmo è la formalizzazione dello stereotipo, del dimmi con chi vai e ti dirò chi sei, insomma di un modo di giudicare il prossimo che sembra l'opposto di quello vorremmo si facesse nel giudicare noi.

Perché in verità l'intelligenza artificiale sarà anche molto intelligente, ma è certamente artificiale. E quindi le manca un ingrediente, che speriamo continui a mancare, che però fa tutta la differenza: l'umanità.

* un interessante considerazione relativamente ai modelli di intelligenza artificiale, è che la fase di messa a punto dell'algoritmo (l'allenamento, "training") è molto più costoso in termini di soldi e energia di quanto si possa aspettarsi: https://www.technologyreview.com/s/613630/training-a-single-ai-modelcan-emit-as-much-carbon-as-five-cars-in-their-lifetimes

** Certe volte il modo di ragionare dell'Algoritmo può essere anche sbagliato, ma l'errore potrebbe non essere evidente: "Un esempio che mi viene sempre in mente è di come una rete neuronale aveva imparato a distinguere cani da lupi. Non aveva imparato la differenza tra cane e lupo, ma invece aveva scoperto che i lupi stanno nella neve, i cani sull'erba". Ovviamente c'era un errore sistematico nelle foto usate per allenare l'algoritmo. https://hackernoon.com/dogs-wolves-data-science-and-why-machines-must-learn-like-humans-do-41c43bc7f982


Segui la nostra
pagina su LinkedIn