Roma, 4 Marzo 2008 Luso di R per il calcolo delle stime e degli errori Monica Scannapieco...

20
Roma, 4 Marzo 2008 L’uso di R per il calcolo delle stime e degli errori Monica Scannapieco Internalizzazione dello Sviluppo Software Diego Zardetto Software Generalizzato per la Produzione Statistica L’uso di per il calcolo delle stime e degli errori Risultati ottenuti e lavori in corso Roma, 4 Marzo 2008 Il software per la statistica ufficiale: dai sistemi proprietari a quelli open source

Transcript of Roma, 4 Marzo 2008 Luso di R per il calcolo delle stime e degli errori Monica Scannapieco...

Page 1: Roma, 4 Marzo 2008 Luso di R per il calcolo delle stime e degli errori Monica Scannapieco Internalizzazione dello Sviluppo Software Diego Zardetto Software.

Roma, 4 Marzo 2008

L’uso di R per il calcolo

delle stime e degli errori

Monica ScannapiecoInternalizzazione dello Sviluppo Software

Diego ZardettoSoftware Generalizzato per la Produzione Statistica

L’uso di per il calcolo delle stime e degli errori

Risultati ottenuti e lavori in corso

Roma, 4 Marzo 2008

Il software per la statistica ufficiale: dai sistemi proprietari a quelli open source

Page 2: Roma, 4 Marzo 2008 Luso di R per il calcolo delle stime e degli errori Monica Scannapieco Internalizzazione dello Sviluppo Software Diego Zardetto Software.

Roma, 4 Marzo 2008

L’uso di R per il calcolo

delle stime e degli errori Struttura della presentazione

• Introduzione• Descrizione del Test di Fattibilità• Risultati Conseguiti• Progetto di Migrazione• Lavori in Corso• Conclusioni

Page 3: Roma, 4 Marzo 2008 Luso di R per il calcolo delle stime e degli errori Monica Scannapieco Internalizzazione dello Sviluppo Software Diego Zardetto Software.

Roma, 4 Marzo 2008

L’uso di R per il calcolo

delle stime e degli errori Introduzione

• Esigenza di individuare alternative al SAS – Presente in Istat dai primi anni ’80– Originariamente inteso come software per

l’analisi dei dati e la ricerca statistica…– …oggi è il sistema di elaborazione dominante in

buona parte dei processi di produzione

Page 4: Roma, 4 Marzo 2008 Luso di R per il calcolo delle stime e degli errori Monica Scannapieco Internalizzazione dello Sviluppo Software Diego Zardetto Software.

Roma, 4 Marzo 2008

L’uso di R per il calcolo

delle stime e degli errori Introduzione (continua)

• Individuazione di R come possibile candidato a sostituire il SAS:– Consenso diffuso sulle grandi potenzialità di R

nell’analisi dei dati e nella ricerca statistica– Dubbi sulla possibilità concreta di utilizzare R nei

processi di produzione: gestione di grosse moli di dati velocità di elaborazione affidabilità dei package aggiuntivi

Necessità di testare la fattibilità della migrazioneSAS−>R in una specifica fase del processo di produzione

Page 5: Roma, 4 Marzo 2008 Luso di R per il calcolo delle stime e degli errori Monica Scannapieco Internalizzazione dello Sviluppo Software Diego Zardetto Software.

Roma, 4 Marzo 2008

L’uso di R per il calcolo

delle stime e degli errori Caratteristiche del Test di Fattibilità

• Criterio di scelta: test di fattibilità nel caso Istat “peggiore” per– complessità degli algoritmi– dimensione dei dati da elaborare

• Quale Fase?• Quale Indagine?• Disponibilità di un

package R?

Calibrazione Forze di Lavoro Survey

(funzione calibrate)

Page 6: Roma, 4 Marzo 2008 Luso di R per il calcolo delle stime e degli errori Monica Scannapieco Internalizzazione dello Sviluppo Software Diego Zardetto Software.

Roma, 4 Marzo 2008

L’uso di R per il calcolo

delle stime e degli errori Il Problema di Calibrazione

Problema di Calibrazione

Ud

wL

w

wdG

k

k

skkk

skkk

Xx

),(min

Pesi diretti

Funzionedistanza

Variabiliausiliarie

Vettore deitotali noti

Bounds

kx

kd

G

X

],[ UL

Pesi finali

kw

Stimatori di Calibrazione:• consentono di migliorare la qualità delle inferenze mediante il

ricorso ad informazioni ausiliarie…• …ma presuppongono un metodo di calcolo dei pesi complesso

Page 7: Roma, 4 Marzo 2008 Luso di R per il calcolo delle stime e degli errori Monica Scannapieco Internalizzazione dello Sviluppo Software Diego Zardetto Software.

Roma, 4 Marzo 2008

L’uso di R per il calcolo

delle stime e degli errori La Calibrazione dei Dati in Istat

• Sistema GENESEES (GENEralized Sampling Estimates and Errors in Surveys)– Sviluppato in Istat alla fine degli anni ’90, in uso

dal 2001/2002– Basato su SAS

• Funzionalità principali:– Calibrazione– Calcolo delle stime e degli errori standard

Page 8: Roma, 4 Marzo 2008 Luso di R per il calcolo delle stime e degli errori Monica Scannapieco Internalizzazione dello Sviluppo Software Diego Zardetto Software.

Roma, 4 Marzo 2008

L’uso di R per il calcolo

delle stime e degli errori Il Processo seguito per il Test

1.2: Selezione dati di benchmark

1.1: Selezione sistemadi benchmark

1.3: Ambiente HW e SW di sperimentazione

Fase 1: Definizione dell’ambiente di test

Fase 2: Sviluppo prototipale per il test

2.1: Definizione dell’ambientedi prototipazione

2.2: Test di efficacia

2.3: Test di efficienza

3.1: Test di efficienza e ottimizzazione

3.2: Test di efficacia e correzione

Fase 3: Realizzazione del test di fattibilità

Page 9: Roma, 4 Marzo 2008 Luso di R per il calcolo delle stime e degli errori Monica Scannapieco Internalizzazione dello Sviluppo Software Diego Zardetto Software.

Roma, 4 Marzo 2008

L’uso di R per il calcolo

delle stime e degli errori Ambiente di Test

• Dati di benchmark:– Forze di lavoro

• Disegno di campionamento complesso• ~ 200.000 record individuali, ~ 75.000 record

familiari• 182 variabili ausiliarie• 21 domini di calibrazione

• Sistema di benchmark:– GENESEES/SAS

• Ambiente HW e SW: – PC Windows XP, 760 MB RAM, CPU da 3 GHz– Server Linux, 10 GB RAM, 4 CPU da 2 GHz

Page 10: Roma, 4 Marzo 2008 Luso di R per il calcolo delle stime e degli errori Monica Scannapieco Internalizzazione dello Sviluppo Software Diego Zardetto Software.

Roma, 4 Marzo 2008

L’uso di R per il calcolo

delle stime e degli errori Risultati Sperimentali: Efficacia

• Pesi calibrati: GENESEES/SAS vs. Survey/R

Massimo valore assoluto delle differenze relative fra i pesi calibrati nei due sistemi

> summary(abs(pesi_GENESEES-pesi_SURVEY)/pesi_GENESEES)

Min. 1st Qu. Median Mean 3rd Qu. Max.

8.405e-16 7.460e-12 2.326e-11 5.590e-10 1.189e-10 1.086e-7

Page 11: Roma, 4 Marzo 2008 Luso di R per il calcolo delle stime e degli errori Monica Scannapieco Internalizzazione dello Sviluppo Software Diego Zardetto Software.

Roma, 4 Marzo 2008

L’uso di R per il calcolo

delle stime e degli errori Risultati Sperimentali: Efficienza

• Tempi di esecuzione: GENESEES/SAS vs. Survey/R– GENESEES in ambiente PC: ~ 9 minuti– Survey:

Funzione Ambiente Tempo

R calibrate originaria PC –

R calibrate originaria Server > 4 giorni

R calibrate corretta PC –

R calibrate corretta Server 155 minuti

R calibrate_iter PC 84 secondi

R calibrate_iter Server 86 secondi

Page 12: Roma, 4 Marzo 2008 Luso di R per il calcolo delle stime e degli errori Monica Scannapieco Internalizzazione dello Sviluppo Software Diego Zardetto Software.

Roma, 4 Marzo 2008

L’uso di R per il calcolo

delle stime e degli errori Esito del Test di Fattibilità

Efficacia identica Efficienza confrontabile Interventi di programmazione ad-hoc contenuti

E’ possibile utilizzare Survey/R nella fase di calibrazione dei dati nei contesti applicativi reali dell’Istat?

Page 13: Roma, 4 Marzo 2008 Luso di R per il calcolo delle stime e degli errori Monica Scannapieco Internalizzazione dello Sviluppo Software Diego Zardetto Software.

Roma, 4 Marzo 2008

L’uso di R per il calcolo

delle stime e degli errori La migrazione di GENESEES

• Il risultato positivo della sperimentazione ha consentito di avviare il progetto di migrazione del sistema GENESEES da SAS ad R

GENESEES

R

GENESEES

SAS

Page 14: Roma, 4 Marzo 2008 Luso di R per il calcolo delle stime e degli errori Monica Scannapieco Internalizzazione dello Sviluppo Software Diego Zardetto Software.

Roma, 4 Marzo 2008

L’uso di R per il calcolo

delle stime e degli errori Il Progetto di Migrazione

• Obiettivo minimo: realizzare in R entrambe le funzionalità fondamentali di GENESEES (calibrazione e calcolo delle stime e degli errori standard)

• Migrazione come occasione per reingegnerizzare il software migliorandone la qualità complessiva

CARATTERISTICHE GENESEES/SAS GENESEES/R

LINGUAGGIO SAS R

ARCHITETTURA STANDALONE STANDALONE

INTERFACCIA GUI GUI

QUALITA’ DEL SOFTWARE

MONOLITICO - MODULARE +

LEGACY - ESTENDIBILE +

EFFICIENZA = EFFICIENZA =

Page 15: Roma, 4 Marzo 2008 Luso di R per il calcolo delle stime e degli errori Monica Scannapieco Internalizzazione dello Sviluppo Software Diego Zardetto Software.

Roma, 4 Marzo 2008

L’uso di R per il calcolo

delle stime e degli errori

GENESEES/SAS

CALIBRAZIONESTIME ED

ERRORI

GENESEES/R

STIME ED

ERRORICALIBRAZIONE

Reingegnerizzazione: Astrazione

1. Interazione con l’utente a maggiore livello di astrazione

DATI OUTPUT

DATI INPUT

variabile stimaerrore standard

errore relativo %

Y1 1531592,64 9948,24 0,65Y2 87612,3 1827,89 2,09Y3 118096,89 3441,11 2,91Y4 358668,86 4458,85 1,24Y5 88532,33 2648,92 2,99Y6 87612,3 1827,89 2,09Y7 118096,89 3441,11 2,91Y8 358668,86 4458,85 1,24Y9 88532,33 2648,92 2,99Y10 358668,86 4458,85 1,24Y11 88532,33 2648,92 2,99

Stime ed errori di campionamento

variabile stimaerrore standard

errore relativo %

Y1 1531592,64 9948,24 0,65Y2 87612,3 1827,89 2,09Y3 118096,89 3441,11 2,91Y4 358668,86 4458,85 1,24Y5 88532,33 2648,92 2,99Y6 87612,3 1827,89 2,09Y7 118096,89 3441,11 2,91Y8 358668,86 4458,85 1,24Y9 88532,33 2648,92 2,99Y10 358668,86 4458,85 1,24Y11 88532,33 2648,92 2,99

Stime ed errori di campionamento

variabile stimaerrore standard

errore relativo %

Y1 1531592,64 9948,24 0,65Y2 87612,3 1827,89 2,09Y3 118096,89 3441,11 2,91Y4 358668,86 4458,85 1,24Y5 88532,33 2648,92 2,99Y6 87612,3 1827,89 2,09Y7 118096,89 3441,11 2,91Y8 358668,86 4458,85 1,24Y9 88532,33 2648,92 2,99Y10 358668,86 4458,85 1,24Y11 88532,33 2648,92 2,99

Stime ed errori di campionamento

calmodel=~(X+Y:Z)partition=~D1:D2...

DATI INPUT

Page 16: Roma, 4 Marzo 2008 Luso di R per il calcolo delle stime e degli errori Monica Scannapieco Internalizzazione dello Sviluppo Software Diego Zardetto Software.

Roma, 4 Marzo 2008

L’uso di R per il calcolo

delle stime e degli errori

GENESEES/R

STIME ED

ERRORICALIBRAZIONE

Reingegnerizzazione: Integrazione

DATI OUTPUT

DATI INPUT

variabile stimaerrore standard

errore relativo %

Y1 1531592,64 9948,24 0,65Y2 87612,3 1827,89 2,09Y3 118096,89 3441,11 2,91Y4 358668,86 4458,85 1,24Y5 88532,33 2648,92 2,99Y6 87612,3 1827,89 2,09Y7 118096,89 3441,11 2,91Y8 358668,86 4458,85 1,24Y9 88532,33 2648,92 2,99Y10 358668,86 4458,85 1,24Y11 88532,33 2648,92 2,99

Stime ed errori di campionamento

variabile stimaerrore standard

errore relativo %

Y1 1531592,64 9948,24 0,65Y2 87612,3 1827,89 2,09Y3 118096,89 3441,11 2,91Y4 358668,86 4458,85 1,24Y5 88532,33 2648,92 2,99Y6 87612,3 1827,89 2,09Y7 118096,89 3441,11 2,91Y8 358668,86 4458,85 1,24Y9 88532,33 2648,92 2,99Y10 358668,86 4458,85 1,24Y11 88532,33 2648,92 2,99

Stime ed errori di campionamento

variabile stimaerrore standard

errore relativo %

Y1 1531592,64 9948,24 0,65Y2 87612,3 1827,89 2,09Y3 118096,89 3441,11 2,91Y4 358668,86 4458,85 1,24Y5 88532,33 2648,92 2,99Y6 87612,3 1827,89 2,09Y7 118096,89 3441,11 2,91Y8 358668,86 4458,85 1,24Y9 88532,33 2648,92 2,99Y10 358668,86 4458,85 1,24Y11 88532,33 2648,92 2,99

Stime ed errori di campionamento

calmodel=~(X+Y:Z)partition=~D1:D2...

2. Integrazione di funzionalità

Page 17: Roma, 4 Marzo 2008 Luso di R per il calcolo delle stime e degli errori Monica Scannapieco Internalizzazione dello Sviluppo Software Diego Zardetto Software.

Roma, 4 Marzo 2008

L’uso di R per il calcolo

delle stime e degli errori Reingegnerizzazione: Estensione

3. Aggiunta di nuove funzionalità

• Calcolo degli errori di campionamento basato sul metodo DAGJK (Delete-A-Group Jackknife) Sviluppato un nuovo package R dedicato:

EVER (Estimation of Variance by Efficient Replication)

• Vantaggi rispetto al metodo tradizionale (Taylor linearization) implementato in GENESEES/SAS:

– Minore complessità matematica

– Procedura di calcolo indipendente dalla forma funzionale dello stimatore e dal disegno di campionamento

– Utilizzabile anche per stimatori non-analitici (es. stime di povertà)

Page 18: Roma, 4 Marzo 2008 Luso di R per il calcolo delle stime e degli errori Monica Scannapieco Internalizzazione dello Sviluppo Software Diego Zardetto Software.

Roma, 4 Marzo 2008

L’uso di R per il calcolo

delle stime e degli errori

GENESEES/R

CALIBRAZIONE

STIME ED ERRORI

METODO ANALITICO

METODO DIREPLICAZIONE

Architettura Logica di GENESEES/R

Page 19: Roma, 4 Marzo 2008 Luso di R per il calcolo delle stime e degli errori Monica Scannapieco Internalizzazione dello Sviluppo Software Diego Zardetto Software.

Roma, 4 Marzo 2008

L’uso di R per il calcolo

delle stime e degli errori Stato di Avanzamento del Progetto

• Inizio Sperimentazione: Maggio 2006 • Fine prevista Migrazione: Dicembre 2008• Stima Mesi/Persona (allo stato attuale): 23,8

ID Nome attivitàgiuset febgiu lug dic novgen magago dicagoaprnov genottlugmag ott setmar marfeb

1FATTIBILITA’: CALIBRAZIONE

SVILUPPO PACKAGE EVER

2FATTIBILITA’: STIME ED ERRORI

4

3MIGRAZIONE: CALIBRAZIONE

MIGRAZIONE: STIME ED ERRORI

6

5

SVILUPPO GUI

apr mag giu lug ago set ott nov dic

200820072006

Oggi 30/6/2008

β-Version

Page 20: Roma, 4 Marzo 2008 Luso di R per il calcolo delle stime e degli errori Monica Scannapieco Internalizzazione dello Sviluppo Software Diego Zardetto Software.

Roma, 4 Marzo 2008

L’uso di R per il calcolo

delle stime e degli errori

Conclusioni

• Una delle prime esperienze di utilizzo di R per la realizzazione di funzionalità standard nei processi di produzione dell’Istituto– Giudizio pienamente positivo sull’utilizzo di R

nella realtà Istat:• Accesso al codice sorgente dei package,

importante per la personalizzazione e l’ottimizzazione delle soluzioni

• Grandi potenzialità del linguaggio R: elevato livello di astrazione, semplicità di programmazione e tempi di sviluppo contenuti

L’uso di R per il calcolo delle stime e degli errori

Roma, 4 Marzo 2008