Lo script Python Anti-Calderoli

roberto calderoli

Jacopo Notarstefano ha pubblicato uno script Python in grado di analizzare gli emendamenti pressoché identici presentati solo per paralizzare il Senato, tecnica molto amata dal senatore Calderoli.

Lo scorso anno ha fatto molto scalpore l’azione ostruzionistica di alcuni senatori della minoranza, tra cui spiccano i leghisti Jonny Crosio e Roberto Calderoli (colui che bruciava le leggi inutili), che consisteva nella presentazione di circa 85 milioni di emendamenti ad un disegno di legge (il DDL Boschi) tutti estremamente simili tra loro. L’obiettivo era chiaramente di bloccare la discussione del disegno di legge (ci sarebbero voluti oltre 150 anni per votarli tutti senza fermarsi), ovviamente tutto a spese del confronto democratico e delle tasche degli italiani (non vogliamo neanche sapere quanto sarebbero costate le oltre 800 tonnellate di carta per stamparli tutti in doppia copia come regolamento prevede).

Questo approccio di una certa parte della minoranza in Senato ha portato quindi ad un altra aberrazione per la democrazia italiana, ovvero l’uso/abuso della non ammissibilità in blocco degli emendamenti da parte del Presidente del Senato e del raggruppamento al voto di emendamenti simili (i cosiddetti canguri). Inutile dire che tutto questo è pura strategia politica e non ricerca di vero confronto in Parlamento.

 

Ma come hanno fatto (e fanno tuttora) i politici come Calderoli a generare questa massa immane di emendamenti?

 

Tramite software di Article Spinning, che a partire da un documento (ad esempio un emendamento) applicano infinite minime variazioni di termini lessicali, piccole frasi, numeri e punteggiatura generando nuove versioni del testo originale.

Una sorta di “mailbombing di emendamenti” in Senato.

 

L’Article Spinning è una tecnica del male creata nell’ambito dell’editoria digitale (e adorata da alcuni SEO specialist) usata per generare velocemente e automaticamente tante versioni lievemente diverse di uno stesso articolo. E’ usata in modo particolare in quegli ambienti in cui si preferiscono i generatori di contenuto ai giornalisti e scrittori.

 

Ma se il male viene dalla tecnologia (o meglio, da un suo deprecabile utilizzo), la soluzione può forse venire dalla stessa tecnologia. A tal proposito Jacopo Notarstefano ha pubblicato su Github con licenza MIT un suo script per l’analisi degli emendamenti e l’individuazione di pattern di similitudini che può battere gli algoritmi di spinning sul loro stesso campo.

Lo script utilizza una serie di librerie open e strumenti per l’analisi dei dati e per la risoluzione del problema di ricerca:

[…] il problema che vogliamo risolvere è un clustering non supervisionato in un numero ignoto di cluster. Il tipico approccio per risolvere questo problema è una delle varianti di Hierarchical Clustering insieme a un’euristica per tagliare il dendrogramma risultante all’altezza giusta per produrre i cluster cercati.

 

I risultati sembrano soddisfacenti, e lo script potrebbe essere utilizzato per la preparazione di strumenti di analisi che possono servire per creare “filtri” sugli emendamenti clone.

Il codice sorgente, la spiegazione dell’approccio e i risultati sperimentali sono tutti disponibili sul blog di Jacopo Notarstefano.

 

Fight fire with fire!

 

Diventare buoni programmatori: lascia perdere la matematica e migliora le tue qualità comunicative
Diventare buoni programmatori: lascia perdere la matematica e migliora le tue qualità comunicative
Diventare buoni programmatori: lascia perdere la matematica e migliora le tue qualità comunicative
Diventare buoni programmatori: lascia perdere la matematica e migliora le tue qualità comunicative