Logo tel tavolo

EDITORIALE: Big Data – L’automatizzazione dei meccanismi di ineguaglianza e di oppressione attraverso la forma del capitale

Parte I

Di f.f.

1. Introduzione

Lo scopo distintivo del capitale è ovviamente il profitto ove, come sottolinea David Harvey, il capitale è un processo in quanto contrapposto a un attore (una moltitudine di attori). [1] Un’affermazione di questo tipo, quasi tautologica, è un dato che da un punto di vista sociale si traduce nell’accumulazione di capitale e nella riproduzione del potere capitalistico da parte del processo capitalistico. Come conseguenza, l’obiettivo immediato del capitale è l’incremento costante della produttività, dell’efficienza e del margine di profitto attraverso la creazione di nuove linee produttive ovviamente più redditizie. L’importanza della “macchina” nell’evoluzione del processo capitalistico era stata brillantemente colta dallo stesso Marx, con particolare riguardo alle pagine ad essa dedicate nei “Grundrisse”. [2]

Oggi, se pensiamo al concetto di “macchina” immediatamente pensiamo all’hardware, al software, e alle corrispondenti forme di organizzazione del lavoro sociale. È altrettanto un dato che le funzioni cosiddette immateriali delle macchine, ad esempio le forme organizzative delle multinazionali high-tech che si traducono nelle corrispondenti strutture di controllo, nel sistema creditizio e nel banking elettronico (Fintech), nel commercio elettronico con il “just-in-time” delivery (E-commerce), nella creazione di nuovi farmaci attraverso l’utilizzazione di strumenti computazionali (Computer-aided Drug Design), nella gestione di quantità enormi di dati raccolti da sensori di diversa natura (Big Data), nell’Intelligenza Artificiale (Artificial Intelligence), con la sotto-disciplina dell’apprendimento automatico (Machine Learning), giocano un ruolo fondamentale nell’incremento della profittabilità . In altri termini, l’hardware delle macchine è secondario e funzionale rispetto al software e alle corrispondenti forme di organizzazione sociale. [3]

Comunque, il capitale non è l’unico attore interessato ai processi di innovazione tecnologica. Gli apparati di governo e di controllo lo sono stati e lo sono altrettanto. In primo luogo si pensi agli apparati di tipo militare. Tuttavia non possiamo dimenticare tutte quelle tecnologie connesse alla gestione del denaro, al sistema fiscale, alla sorveglianza, al controllo poliziesco e, in generale, alla governance di un paese. In breve le cosiddette funzioni immateriali sono sempre più strumenti di controllo e di oppressione delle masse. Una ovvia conseguenza derivante dall’adozione di questi strumenti, dal momento che la loro gestione è nelle mani del capitale e, dunque, della classe dominante, è l’incremento dell’ineguaglianza e dei meccanismi di ineguaglianza e la minaccia che questi stessi strumenti costituiscono dal punto di vista della salvaguardia delle conquiste democratiche di un paese. In questo articolo voglio analizzare il senso e la portata di queste affermazioni, con un particolare riguardo alla sotto-disciplina dell’Intelligenza Artificiale che va sotto il nome di “Big Data”, anche se i cosiddetti “Big Data” sono semplicemente un mattoncino di un puzzle molto più complesso che non dovrebbe essere trascurato. Una qualsiasi considerazione sulla tecnologia “Big Data” non può dunque prescindere da un’analisi delle tecnologie Internet of Things (IoT) e dell’Intelligenza Artificiale nel suo insieme includendo le sue principali sotto-discipline: Automatic Reasoning, Natural Language Processing, Computer Vision e, last but not least, Machine Learning. [4]

A mio avviso il vero rischio dietro all’Intelligenza Artificiale non sta nella possibilità palesata da personaggi come Ray Kurzweil, Ellon Musk, o perfino Stephen Hawking, che un giorno l’intelligenza delle macchine possa sorpassare l’intelligenza degli esseri umani sino a prendere il controllo della civilizzazione umana. La cosiddetta “Artificial General Intelligence” (AGI) è una realtà non soltanto assolutamente lontana quanto impredicibile rispetto allo stato attuale della tecnologia. [5] Avventurarsi in predizioni a lungo termine che non sono fondate sullo stato della tecnologia attuale distoglie dai problemi immediati. I rischi reali sono di tipo etico, sociale e politico, rispetto al quale un qualsiasi soggetto antagonista non può non confrontarsi. Il mondo oggi è totalmente plasmato da forze che agiscono oltre il nostro controllo, determinando le storie che leggiamo su Facebook, le persone che incontriamo su OKCupid, e i risultati delle nostre ricerche su Google. La tecnologia “Big Data” è utilizzata per prendere decisioni nelle aree più diverse, che spaziano dal sistema sanitario al sistema creditizio, all’educazione, al lavoro, e via dicendo, con la pretesa di utilizzare una tecnologia oggettiva rispetto ai pregiudizi o agli stereotipi che condizionano le opinioni degli esseri umani. Peraltro non è la prima volta che l’idea che la tecnologia sia neutrale viene affermata al punto che questa idea è stata abbracciata anche da autori importanti. [6] Il mio punto di vista è completamente diverso: i sistemi di Intelligenza Artificiale in generale e i Big Data in particolare di fatto impiegano algoritmi che sono ben lontani dall’essere neutrali o asettici, come un certo meccanismo promozionale pretende.

Gli esempi sono molteplici e li vedremo più approfonditamente nella seconda parte di questo articolo che intendo pubblicare nel prossimo numero del bollettino. La “autocomplete feature” di Google o Bing è un buon esempio del carattere discriminatorio di quelli che sono stati definiti correttamente come “algoritmi di oppressione”. [7] Ad esempio, una Google search del tipo “are transgender” veniva completata sino a poco tempo fa con il suggerimento “are transgenders going to hell”. Una ricerca della Carnegie Mellon University ha mostrato come il target di proposte di assunzione con una soglia salariale molto alta (>200K USD) fosse nella maggior parte dei casi indirizzata a persone di sesso maschile invece che femminile. Peraltro, se si digita l’espressione CEO e poi si fa una ricerca per immagini si scopre che la maggior parte dei volti che appaiono sono maschili, anche se il 27% dei CEO negli USA sono donne. Ironicamente si scopre che le immagini di Ginny Rometty (IBM Chief Executive) o di Marissa Mayer (Yahoo Chief Executive) non compaiono nella lista delle immagini che vengono proposte. Se poi cerchiamo di comprendere le cause di questi comportamenti discriminatori, ci scontriamo con la cosiddetta “opacità” di queste tecnologie. Il problema principale è che questi algoritmi si comportano come “black box” che non siamo in grado di aprire e comprendere pienamente. [8] Eppure plasmano sempre di più le nostre vite. In generale possiamo dire che nella misura in cui riproducono razionalmente le nostre preferenze sociali, queste tecnologie riproducono anche i comportamenti discriminatori che sono codificati nelle nostre società. Li riproducono e, ancor peggio, li amplificano attraverso la pervasività di Internet. Il paragrafo successivo è completamente dedicato a illustrare ove si annidano i “bias”, i pregiudizi, gli stereotipi, nelle tecnologie di cui stiamo parlando. In particolare, mi soffermerò sul Machine Learning in quanto componente principale delle tecnologie “Big Data”.

Ho deciso dunque di dividere il mio intervento in due parti che verranno condivise separatamente in modo che i lettori possano avere una chiara e completa visione dell’ampiezza e della drammaticità del problema. La prima parte è un presupposto necessario dal punto di vista teorico per comprendere che queste tecnologie non sono “asettiche” o “deideologizzate” come il capitale e le classi dominanti vorrebbero farci credere, soprattutto quando ci raccontano la favola per la quale esse sarebbero più neutrali o più oggettive degli esseri umani. Invece la seconda parte prenderà in considerazione l’utilizzo di queste tecnologie come strumenti di automatizzazione delle ineguaglianze, delle discriminazioni, perfino di controllo e di oppressione, anche a partire dal loro uso in diversi paesi del panorama mondiale. Il lettore dunque dovrà essere sufficientemente paziente di comprendere alcuni concetti teorici prima di muovere alla seconda parte, sicuramente più affascinante a cause delle sue implicazioni politiche, sociali e culturali. Naturalmente ho cercato di rendere i concetti teorici quanto più accessibili possibili e spero di esserci riuscito. Direi che questo in particolare è stato il massimo sforzo di questo articolo.

2. Cosa sono i “Big Data”?

Il termine si riferisce a tutte quelle tecnologie che permettono di catturare, gestire e processare enormi quantità di dati che altrimenti sarebbero ingestibili da tecnologie di tipo più tradizionale, come ad esempio i database relazionali (RDBMS). Quali sono le dimensioni di un dataset cosiddetto “big”? Tipicamente parliamo di diversi exabyte ove un exabyte corrisponde a 10^18 (un miliardo di miliardi) bytes. Se partiamo dall’assunzione che la memoria centrale di un portatile (ad esempio un MacBook Pro) tipicamente si aggira intorno agli 8-16 gigabyte, un exabyte corisponde a 1 000 000 000 gigabyte. Un termine di comparazione più concreto è fornito dal traffico mondiale sulla rete Internet che nell’ipotesi di Cisco dovrebbe essersi aggirato nel 2018 intorno ai 130 exabyte/mese. [9] Tuttavia l’aggettivo “big” è soltanto una delle quattro “V” che caratterizza una soluzione “Big Data”. Vediamole.

I dati, una volta catturati e immagazzinati, dovranno essere processati attraverso opportuni algoritmi. Questi algoritmi provengono da una serie di discipline generalmente afferenti all’Intelligenza Artificiale, con particolar riguardo al Machine Learning. L’apprendimento automatico gioca un ruolo fondamentale nell’individuare pattern di regolarità, ovvero strutture ricorrenti, all’interno di volumi di dati strutturati (database relazionali) o non-strutturati (testo, immagini, video, ecc.) talmente enormi che altrimenti sfuggirebbero all’occhio di un essere umano. Peraltro è bene precisare che il volume di dati è solo un aspetto del problema in quanto un ulteriore aspetto è il numero di parametri che un essere umano dovrebbe tenere in considerazione per individuare le regolarità cui accennavamo in precedenza. Infatti è ben noto che la memoria umana a breve termine (short-term memory) può gestire un numero di parametri molto limitato (7 +/-2). [10] Tipicamente un problema di Machine Learning gestisce centinaia di migliaia di parametri sino anche all’ordine di milioni. Un dato dunque potrebbe essere anche descritto da milioni di attributi, come di fatto è stato empiricamente dimostrato.

3. La nozione di “bias”

Supponiamo di voler imparare la giornata più propizia per andare a vela a partire da un campione di esempi relativi ad amici che praticano questo sport. In particolare vogliamo apprendere dai dati metereologici che essi stessi hanno utilizzato nel passato per prendere una decisione (positiva / negativa) relativa alle condizioni atmosferiche più propizie per uscire a vela. La seguente tabella illustra questo esempio.

Tabella

  1. Sereno – Caldo – Normale – Debole – Calmo – Stabile – Positiva
  2. Sereno – Caldo – Alta – Forte – Calmo – Stabile – Positiva
  3. Piovoso – Freddo – Alta – Forte – Agitato – Peggioramento – Negativa
  4. Sereno – Caldo – Alta – Debole – Calmo – Peggioramento – Positiva

Nella maggior parte dei casi apprendere significa apprendere una funzione f (la nostra ipotesi) che mapperà i dati di input X (Cielo, Temperatura, Umidità, Vento, Mare, Previsioni) su un output Y (decisione positiva / negativa).

Tuttavia è noto che l’output di un algoritmo di Machine Learning può essere condizionato da quel che tipicamente viene definito “bias”, un termine anglosassone che sta per “pregiudizio”. La letteratura ha coniato una espressione “ad hoc” che va sotto il nome di “bias algoritmico”. Come dice Wikipedia, il termine “bias algoritmico” descrive un qualsiasi sistema computazionale che produce errori sistematici e ripetibili tali da produrre risultati falsati che tipicamente privilegiano un certo gruppo di utenti rispetto ad un altro. Per esempio, un sistema computazionale deputato alla valutazione di crediti che privilegi un gruppo di utenti ai danni di un altro che peraltro condivide quasi le stesse caratteristiche dei primi e che ripeta consistentemente lo stesso comportamento è un sistema “biasato”. In altri termini esso soffre dai “pregiudizi” codificati nell’algoritmo stesso. A seconda delle circostanze il bias potrebbe essere intenzionale o meno. Joseph Weizenbaum nel suo libro seminale dal titolo “Computer Power and Human Reason” fu tra i primi ad utilizzare il termine “bias” nel caso di sistemi computazionali. [11] È importante notare che i bias possono influenzare search engines, social media, un qualsiasi sistema computazionale che abbia una complessità sufficiente. L’aggettivo che ho appena utilizzato potrebbe sembrare vago. Qualcuno potrebbe correttamente domandarsi: cosa si intende con l’espressione “una complessità sufficiente”? Un sistema computazionale che abbia un comportamento che risponde a input / output in una modalità che non può essere totalmente anticipata, pur producendo risultati approssimativamente corretti, è un sistema sufficientemente complesso. Nel caso di questo articolo concentrerò la mia attenzione sulle tecnologie Big Data e, in particolare, sulla componente di Machine Learning.

Nel caso del Machine Learning, il “bias” è sistematicamente prodotto da una o più erronee assunzioni che possono riguardare la selezione dell’algoritmo prescelto, oppure il campione di esempi (o dati) impiegato per addestrare l’algoritmo stesso, oppure la scelta degli attributi utilizzati per descrivere gli esempi che appaiono nel campione di dati. Nel caso della tabella precedente, ad esempio, abbiamo selezionato i seguenti attributi e non altri: cielo, temperatura, umidità, ecc., e il campione di dati è alquanto limitato. Ovviamente un algoritmo di Machine Learning approssimerà la funzione f a partire dal campione di dati e dagli attributi di cui dispone. Se le assunzioni che sono implicite nella scelta dell’algoritmo, nel campione di dati e negli attributi che descrivono i dati stessi sono erronee l’algoritmo non identificherà la funzione che avremmo dovuto identificare. Come ho sottolineato, è importante notare che la radice di queste assunzioni erronee può essere estremamente diversa. Nel seguito vedremo alcuni casi.

3.1 Il bias intrinseco all’algoritmo

Iniziamo dal bias proveniente dall’algoritmo stesso. Un qualsiasi problema di Machine Learning consiste nel trovare il corretto equilibrio tra bias e varianza. ­­­Il bias rappresenta quanto la media di una statistica si discosta dal valore vero. In questo senso il bias di un algoritmo corrisponde alla sua accuratezza. Invece la varianza esprime di quanto i campioni si discostano dal valore medio. Dunque la varianza corrisponderà all’affidabilità dell’algoritmo rispetto a campioni diversi di dati. Un algoritmo avrà un bias alto in tutti i casi in cui il modello che genera non descrive correttamente i dati. Se ad esempio utilizzeremo un modello lineare per descrivere un campione di dati che non è lineare, la sua accuratezza per definizione sarà molto bassa per quanto ampio sia il campione di dati che utilizziamo. In questo caso si dice che l’algoritmo lavora in regime di “underfitting”. La seguente immagine aiuta a comprendere meglio il problema.

Grafico con punti dispersi a forma di onda e linea orizzontale I punti rappresentano il campione di dati. Il segmento in rosso rappresenta l’ipotesi (lineare) generata dal nostro algoritmo. Il regime è un regime di “underfitting”. In questo senso l’errore dovuto al bias rappresenta la differenza tra la predizione del modello e la realtà dei dati, dunque l’output che dovremmo di fatto predire. Il modello generato dal nostro algoritmo non si adatta (fitting) ai dati. In altri termini il modello è troppo semplice rispetto al campione di dati che si vuole analizzare. Un possibile correttivo consisterebbe nel prendere in considerazione attributi o variabili del problema che non sono state previamente prese in considerazione, anche se una soluzione di questo tipo ha i suoi limiti. Infatti è impossibile “imparare” una funzione quadratica attraverso l’uso di un algoritmo che produce unicamente funzioni lineari. L’algoritmo soffre di pregiudizi, di bias intrinseci, che gli impediscono di prendere in considerazione tutta l’informazione proveniente dai dati.

Invece, l’immagine successiva mostra il caso di un modello che lavora in regime di “overfitting”.

Grafico con punti dispersi a forma di onda e linea spezzata che passa per ogni punto In questo caso il modello generato dall’algoritmo si adatta perfettamente al campione di dati e risulta dunque inutile per predire il futuro (nuovi dati). Se cambiassimo il campione di dati, la stima della funzione che vogliamo modellare cambierebbe perché il modello generato dall’algoritmo si adatterebbe di nuovo perfettamente al campione di dati che si vuol modellare includendo anche eventualmente dati rumorosi. In altri termini il modello è troppo complesso rispetto al campione di dati che si vuole analizzare, con la conseguenza che l’algoritmo per così dire “impara a memoria” il campione di dati. In questo senso la varianza è la differenza tra le predizioni della funzione target ottenute da campioni di esempi diversi. Idealmente la funzione generata dall’algoritmo di Machine Learning non dovrebbe cambiare sostanzialmente a partire da campioni di dati diversi più o meno rispettosi della stessa distribuzione sottostante, dimostrando quindi che l’algoritmo è in grado di generalizzare rispetto alla relazione tra le variabili di input e quelle di output e, dunque, predire correttamente nuovi dati, ove generalizzare qui significa “imparare”.

Infine l’immagine sotto riportata mostra un modello che ha trovato un buon equilibrio tra bias e varianza.

Grafico con punti dispersi a forma di onda e curva che passa fra i punti come un'onda Una regola molto semplice ci dice che all’aumentare della varianza decresce il bias mentre all’incremento del bias decresce la varianza.

Una immagine ulteriore può aiutare. Si immagini che il centro del bersaglio corrisponde a un modello che predice perfettamente i valori corretti. Come ci muoviamo dal centro, le nostre stime diverranno sempre peggiori. Qui ogni punto rappresenta un diverso modello data la variabilità del nostro campione di dati. Se il nostro campione di dati è rappresentativo della vera distribuzione allora saremo vicini al centro del bersaglio. Quando invece il campione di dati è ricco di esempi “non-standard”, allora si allontanerà dal centro del bersaglio. Avremo dunque quattro possibili combinazioni di bias (alto / basso) e varianza (alta / bassa).

Bersagli con punti più o meno vicini al centro e più o meno vicini fra di loro Se il bias è basso ma la varianza è alta ci troveremo in una situazione in cui i modelli che genereremo cambieranno continuamente a seconda del campione di dati in quanto saremo in un regime di overfitting. Se il bias è alto ma la varianza è bassa i modelli che genereremo saranno tutti molto simili e tuttavia alquanto lontani dalla distribuzione reale e dunque inaccurati. Saremo dunque in un regime di underfitting. Infine se entrambi bias e varianza sono molto alti ci troveremo nel caso peggiore, dunque molto distanti dalla funzione che vogliamo modellare (il centro del bersaglio). Dunque la soluzione migliore consisterebbe nel minimizzare quanto più possibile bias e varianza, come ci dice la prima figura in alto a sinistra.

Questa soluzione sfortunatamente è impraticabile. Infatti, se il modello ha un bias alto, quindi è troppo semplice nel senso che ad esempio utilizza un basso numero di parametri (gli attributi utilizzati per descrivere i dati), allora la varianza sarà bassa, con la conseguenza che potrebbe non catturare adeguatamente i dati (underfitting). Viceversa, se il nostro modello avrà un numero più ampio di parametri (bias basso), allora la varianza sarà alta, con la conseguenza di adattarsi perfettamente allo specifico campione di dati (overfitting). La regola che enunciavamo precedentemente viene quindi rispettata nel senso che all’aumentare della varianza decrescerà il bias, mentre all’incremento del bias decrescerà la varianza. Quindi è la complessità del modello a definire il rapport bias/varianza. Un modello non può essere per definizione semplice e complesso allo stesso tempo. Dunque non potrà avere allo stesso tempo bias e varianza bassi. Se il bias è alto, la varianza sarà bassa. Viceversa, se il bias è basso, la varianza sarà alta. Il compito di chi si occupa di Big Data / Machine Learning consiste nel trovare il miglior equilibrio possibile tra bias e varianza.

La scelta dell’algoritmo dunque è fondamentale anche dal punto di vista della (presunta) oggettività dell’algoritmo stesso. Come ho già detto, non saremo ad esempio in grado di catturare una funzione quadratica (la funzione target che vogliamo apprendere) attraverso un algoritmo che è in grado di generare unicamente funzioni lineari. La Figura 1 è comunque una interpretazione del nostro dominio, anche se ne è ovviamente una interpretazione falsata o distorta. Anche ideologicamente falsata? Come abbiamo visto, un algoritmo di Machine Learning non può non prescindere dall’utilizzare un qualche bias (un risultato che è importante anche dal punto di vista della psicologia cognitiva), come addirittura è stato dimostrato matematicamente. [12] Gli esseri umani necessitano una qualche forma più o meno implicita di bias per apprendere. Conseguentemente la scelta dell’algoritmo, anche se nella maggior parte dei casi non è una scelta di tipo ideologico ovvero esplicita, è una scelta che condiziona pesantemente e nascostamente la lettura della realtà. Nei paragrafi successivi prenderemo invece in esame delle scelte che nascondono più visibilmente dei condizionamenti ideologici.

3.2 Il bias intrinseco al campione di dati

Supponiamo che il nostro obiettivo consista nello stimare l’altezza media mondiale. A questo scopo supponiamo di utilizzare un campione di persone la cui maggioranza è scandinava (notoriamente alti). La nostra media sarà quindi diversa dalla media effettiva della popolazione mondiale. L’errore che genereremo è dunque di fatto un errore sistematico, nel senso che il nostro campione di dati non appare sufficientemente rappresentativo della distribuzione reale. Si dice che il campione di esempi contiene un bias verso stature superiori rispetto alla popolazione mondiale. Un esempio più calzante proviene dall’area dei veicoli a guida autonoma (self-driving vehicles). Un veicolo di questo tipo è ovviamente supposto viaggiare a qualsiasi ora del giorno o della notte. Tuttavia, se si addestra il veicolo unicamente durante le ore di luce (il campione di dati), si introduce un bias all’interno del campione.

Automobile in una strada circondata da una doppia linea continua

Si pensi al caso estremo in questione. La fotografia illustra una macchina a guida autonoma che entra all’interno di una duplice circonferenza al cui esterno si trova una linea tratteggiata seguita immediatamente da una linea continua. Il veicolo entra nell’area in questione senza poi poterne uscire muovendosi maldestramente avanti e indietro all’interno dell’area in questione. Un caso del genere è la conclusione di un addestramento rispetto a un campione di dati in cui il caso in questione semplicemente non appare o appare in un numero insufficiente di casi. In questo caso il bias è totalmente immerso nel campione di dati e ovviamente non dipende da pregiudizi o stereotipi di chi lo costruisce.

Un secondo caso consiste nella presenza di rumore all’interno del campione di dati. Si pensi al caso di una camera che filtra i colori e che viene utilizzata per raccogliere le immagini che addestreranno il nostro modello. Invece la camera che verrà utilizzata nello scenario finale è più accurata. In questo caso siamo di fronte a una sistematica distorsione dello schema dei colori da parte del dispositivo che viene utilizzato per addestrare il modello. Questa cosa introdurrà un bias nei dati che influenzerà anche l’output finale rispetto a dati diversi raccolti da una camera con una maggiore accuratezza.

Infine si pensi al caso di un algoritmo che è addestrato per distinguere tra persone di sesso maschile e persone di sesso femminile dato un campione di fotografie. Quando l’algoritmo viene addestrato utilizzando più persone di sesso femminile invece che maschile all’interno di una cucina, oppure più persone di sesso maschile invece che femminile programmando di fronte a un computer, l’algoritmo tenderà a fare inferenze incorrette rispetto al genere delle persone che sono coinvolte all’interno di questi specifici contesti. Questo esempio è diverso dal precedente in quanto riflette i pregiudizi o gli stereotipi di chi ha costruito il campione di dati. Non si tratta semplicemente di aver generato un campione di dati che è incompleto o parziale, come ad esempio nel caso precedente dei veicoli autonomi o della camera fotografica. Il modello riflette una realtà stereotipata e trae delle conclusioni di tipo causale: nella maggior parte dei casi sono persone di sesso femminile a trovarsi in cucina e dunque è molto probabile che la persona che in questo momento si trova in cucina è una persona di sesso femminile. Ovviamente vi sono una varietà di tecniche per ovviare a questo problema. Tuttavia è importante comprendere che la distribuzione nel campione di dati nel caso in questione riflette uno scenario che non si vuole ottenere a livello di output fermo restando che non si voglia conservare lo stereotipo intenzionalmente.

3.3 Il bias intrinseco agli attributi che vengono utilizzati per descrivere i dati

Una ulteriore sorgente di bias sono gli attributi che vengono utilizzati per descrivere i dati. Apparentemente sembrerebbe esserci una sovrapposizione tra questo caso e il precedente. In realtà non vi è nella misura in cui il campione di dati potrebbe anche essere rappresentativo della distribuzione reale, se non fosse che gli attributi per descrivere i dati inducono una qualche forma di bias. Voglio chiarire questo punto con un esempio artificioso eppure utile. Supponiamo di voler predire il tasso di potenziale recidività di un soggetto nel commettere atti criminosi. A questo punto il mio software potrebbe ad esempio verificare se il soggetto ha commesso atti di violenza all’interno del proprio nucleo familiare, se ha eventualmente altre accuse pendenti, ecc. Allo stesso tempo potrebbe escludere la razza, la cittadinanza, ecc., per evitare qualsiasi atteggiamento discriminatorio. Tuttavia, pur volendo escludere questi attributi, il software potrebbe conservare una serie di variabili latenti che nascostamente codificano l’appartenenza ad una certa razza. Ad esempio, se il software chiedesse semplicemente il codice postale dell’area in cui il soggetto vive, potrebbe indirettamente inferire un pregiudizio razziale in quanto vi sono spesso aree nelle nostre città prevalentemente popolate da immigrati e, se questa domanda fosse accompagnata da altre domande che in un qualche modo sono input latenti della razza, o della cittadinanza di appartenenza, indurrebbe indirettamente un bias relativo esattamente a quegli attributi che l’autore del questionario ha voluto intenzionalmente escludere.

È importante sottolineare che se l’algoritmo, o i dati, o gli attributi prescelti per descrivere i dati incorporano un qualche bias, il modello non solo incorporerà quei bias ma li amplificherà enormemente. In altri termini, una volta dato un campione di dati che incorpora un qualche bias, il modello finirà per comportarsi come un profeta di se stesso, un profeta che si realizza nelle sue stesse profezie.

4. Il bias algoritmico: una diversa classificazione

Il problema del bias è un problema che concerne un qualsiasi sistema computazionale. Come ho spiegato in precedenza, un bias di questo tipo è etichettato come “bias algoritmico”. Il bias algoritmico può essere oscurato da una ingannevole e presunta autorità attribuita alla nozione stessa di “algoritmo”. [13] Questo atteggiamento può essere ulteriormente aggravato dal fatto che vi è una forte attitudine a spostare la delega decisionale dall’essere umano al software, con la conseguenza di perdere completamente la visibilità di eventuali alternative o possibili compromessi. Tipicamente la letteratura distingue tra le seguenti tipologie di bias.

4.1 Technical bias

Insorge a seguito di limiti intrinseci al design del sistema computazionale. Si pensi al software che controlla i casi di plagio a livello di istruzione universitaria. Questi software generalmente operano a partire da stringhe molto lunghe di testo corrispondenti a un periodo. Un software di questo tipo penalizzerà per definizione gli studenti non-nativi rispetto ai nativi che sono facilmente in grado di spezzare un periodo particolarmente lungo, di utilizzare sinonimi, o semplicemente di esprimere lo stesso concetto attraverso una costruzione diversa della frase.

4.2 Emergent bias

Il bias emergente è il bias che emerge nel momento in cui il sistema non è affinato rispetto a nuove scoperte in ambito medico, nuovi modelli di business, nuove leggi, ecc., oppure viene semplicemente applicato a scenari o contesti diversi rispetto a quelli per il quale è stato creato. Ad esempio, i sistemi di riconoscimento facciale che sono sviluppati in Asia riconoscono molto più facilmente un asiatico rispetto a un caucasico in quanto sono stati addestrati a partire da campioni di immagini provenienti da video girati specificamente nel continente in questione.

4.3 Ideological bias

È quel bias che emerge dalla componente istituzionale, culturale, o ideologica proveniente da coloro che hanno disegnato il software. Può essere intenzionale o non-intenzionale. Un set di dati di input malamente selezionato può influenzare o compromettere l’output finale. Beauty.AI fu un concorso di bellezza lanciato nel 2016 e sponsorizzato da Microsoft. Il concorso di bellezza, cui hanno atteso migliaia di candidati, consisteva nell’essere giudicati da un algoritmo di Machine Learning che era stato previamente addestrato attraverso decine di migliaia di foto di modelle provenienti dal mondo intero. Ebbene la stragrande maggioranza delle 44 vincitrici aveva la pelle bianca, soltanto alcune erano asiatiche, e solo una con la pelle scura. Qui il problema principale risiedeva nel campione con cui il sistema era stato addestrato il quale non includeva un numero sufficiente di donne non-caucasiche (ammesso e non concesso che l’esperimento avesse un qualche senso dato che i canoni di bellezza femminile o maschile variano ovviamente da un contesto culturale a un altro), con la conseguenza che il bias del sistema rifletteva i canoni di bellezza nel mondo occidentale.

Nell’articolo che verrà pubblicato nel prossimo numero del bollettino prenderò in considerazione una serie di esempi concreti che dimostrano come le tecnologie “Big Data” possano trasformarsi in strumenti di controllo, oppressione e discriminazione.

Note

[1] Harvey, D., A Companion to Marx’s Capital, London, Verso, 2018. [2] Cfr. Marx, K., Lineamenti fondamentali della critica dell’economia politica, vol. II, Firenze, La Nuova Italia, 1978, pp. 389-411. [3] L’affermazione è alquanto grossolana in quanto non prende in considerazione l’innovazione a livello hardware che ad esempio potrebbe provenire dai cosiddetti quantum computer. [4] L’etichetta “Automatic Reasoning” si riferisce a tutte quelle tecniche che permettono a una macchina di ragionare nel senso più ampio del termine: deduzione, abduzione, ragionamento per analogia, sono tutti esempi che ricadono nell’ambito del ragionamento automatico. Il termine “Natural Language Processing” si riferisce a tutti quei sistemi che sono in grado di processare il linguaggio naturale: sistemi di comprensione automatica del linguaggio, sistemi di generazione automatica del linguaggio, sistemi di traduzione automatica, ecc. Infine la Computer Vision include tutti quei sistemi che sono in grado riconoscere oggetti, scene, volti, perfino sentimenti a partire dall’espressione e dalla postura del volto (felice, triste, annoiato, ecc.). [5] Una macchina si dirà in grado di esibire una intelligenza artificiale di tipo generale (Artificial General Intelligence) nella misura in cui sarà in grado di completare qualsiasi compito che un essere umano è in grado di portare a termine. Oggi abbiamo sistemi computazionali che sono in grado di guidare autonomamente un veicolo, di giocare a scacchi o perfino a poker, di tradurre automaticamente un testo, e tuttavia non sono in grado di muoversi trasversalmente da un ambito a un altro come un essere umano fa. [6] Kranzberg, M., “Technology and History: Kranzberg's Laws”, in Technology and Culture, 27, 1986. [7] Noble, S. U., Algorithms of Oppression, New York, New York University Press, 2018. [8] Il caso delle reti neuronali è particolarmente eclatante in quanto la ragione per la quale una rete neuronale apprende e dunque generalizza non è chiara neppure dal punto di vista scientifico, anche se una rete neuronale è sostanzialmente una composizione estremamamente articolata di funzioni logistiche, dunque lineari. [9] Cfr. Cisco, Cisco Visual Networking Index: Forecast and Trends 2017-2022, 28 November 2018. [10] Miller, G. E., “The magical number seven, plus or minus two: Some limits on our capacity for processing information”, in Psychological Review, 63, 1956. [11] Weizenbaum, J., Computer Power and Human Reason, San Francisco, Freeman, 1976. [12] Wolpert, D.H., Macready, W.G., “No Free Lunch Theorems for Optimization”, in IEEE Transactions on Evolutionary Computation 1, 67, 1997. [13] Shirky, C., A Speculative Post on the Idea of Algorithmic Authority, in www.shirky.com, 2017.

Bibliografia

Per una recente e completa bibliografia critica sui Big Data si consulti anche il seguente link: https://cs.nyu.edu/faculty/davise/papers/BigDataBib.html