Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina...

46
Linkage Linkage Probabilístico de Bases de Dados Probabilístico de Bases de Dados Método Método Cláudia Medina Coeli

Transcript of Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina...

Page 1: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

LinkageLinkage Probabilístico de Bases de Dados Probabilístico de Bases de Dados MétodoMétodo

Cláudia Medina Coeli

Page 2: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Processos Linkage - RL3

Arquivos padrão xBase (DBF)Arquivos padrão xBase (DBF)Arquivos índice (MDX)Arquivos índice (MDX)

Funções Módulo RL3 ConfiguraPadronização Padronização STDBlocagem Relaciona CLNComparação Relaciona CLNCálculo de Escores Relaciona CLNEstima Parâmetros Relaciona CLNSeleção de Pares Combina CLNCria Base Para Análise Associa JFGDuplicidade Duplica DUP

Page 3: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

RecLink IIIMethodology: Fellegi-Sunter ModelFile format: xBase (DBF) Type of computers: Workstation/personal computersComputer operating system: WindowsSupports: deduplication, linkage of two files.Interface: user friendly Linkage parameter files : fully customizedStandardization/parsing: fully customizedBlocking: supports multiple linkage passes Comparison functions: edition distances and others Estimation of parameters: EM algorithmCost: Free software.

Page 4: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

PadronizaçãoPadronização

Page 5: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Padronização

Page 6: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

PadronizaçãoPadronização

Seleção de subconjunto de registros

Seleção de Campos

Padronização de estruturas (campos de mesmo tamanho)

Limpeza de dados sem valor (ex “cadáver”, “SI”)

Limpeza dos campos (ex. espaços duplos, caixa alta)

Padronização de códigos (sexo M, F; 1, 2)

Padronização de formatos (DD/MM/AAAA, AAAAMMDD)

Quebra (parsing) de campos (componentes nome, datas)

Page 7: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Arquivo A Arquivo B3 Renato Mendes Silva RENATO M SILVAM 119701209 09/12/70

Arquivo A Arquivo BRENATO MENDES SILVA RENATO M SILVARENATO RENATOM MSILVA SILVAM M19701209 197012091970 197012 129 9

PadronizaçãoPadronização

Page 8: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Campos chaves de cada arquivo (ex. número da DO, número da notificação).

Campos que serão utilizados no processo de blocagem ou de pareamento (ex. data de nascimento, nome, sexo).

Campos que serão utilizados no processo de revisão manual. Por exemplo, endereço, data do óbito

Padronização - CamposPadronização - Campos

Page 9: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Padronização - DicionárioPadronização - Dicionário

Page 10: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Padronização - Padronização - MissingMissing

Page 11: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Padronização - Roteiro Padronização - Roteiro

Dicionários de de dados (todos os anos)

Appendar vários anos

Alteração de estrutura

Aleração de nome de campos (diminuir tamanho)

Fequência de todos os campos usados no linkage

Limpar (vazio) campos com códigos missing ou

inválidos

Compatibilizar conteúdos

Selecionar subconjunto de registros de interesse

Page 12: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

BlocagemBlocagem

Page 13: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Formação de Links- BlocagemREG NOME SEXO

1 Antonio M2 Maria F3 Lucia F4 Joao M

REG NOME SEXO1 Gustavo M2 Ana F3 Maria F4 Antonio M

REG REG NOME NOME SEXO SEXO1 1 Antonio Gustavo M M1 2 Antonio Ana M F1 3 Antonio Maria M F1 4 Antonio Antonio M M2 1 Maria Gustavo F M2 2 Maria Ana F F2 3 Maria Maria F F2 4 Maria Antonio F M3 1 Lucia Gustavo F M3 2 Lucia Ana F F3 3 Lucia Maria F F3 4 Lucia Antonio F M4 1 Joao Gustavo M M4 2 Joao Ana M F4 3 Joao Maria M F4 4 Joao Antonio M M

REG REG NOME NOME SEXO SEXO1 1 Antonio Gustavo M M1 4 Antonio Antonio M M2 2 Maria Ana F F2 3 Maria Maria F F3 2 Lucia Ana F F3 3 Lucia Maria F F4 1 Joao Gustavo M M4 4 Joao Antonio M M

Page 14: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Aumentar a probabilidade de pares verdadeiros.

Chave de blocagem → um ou mais campos

Com grande número de valores

Com baixa probabilidade de erro

Códigos fonéticos de primeiro e último nomes, sexo, UF

Soundex – código fonético muito usado

BlocagemBlocagem

Page 15: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

O código soundex é formado por 4 dígitos sendo o primeiro representado pela primeira letra da palavra a ser codificada enquanto os demais são dígitos numéricos codificados segundo as seguintes regras:1 As letras A, E, I, O, U, H, W e Y são ignoradas.

2 Para as demais letras empregam-se os seguintes códigos numéricos: B, F,P,V – 1; C, G, J, K, Q, S, X, Z - 2; D, T- 3; L - 4; M,N - 5; R-6.

3 Se duas letras contíguas na palavra apresentarem o mesmo código, este só é computado uma única vez. 4 Uma vez que os três dígitos numéricos tenham sido completados as demais letras da palavra são ignoradas.

5 Todos os códigos devem ter 4 dígitos. Sendo assim, para as palavras onde o código inicialmente formado seja constituído por menos do que 3 dígitos numéricos, completa-se os dígitos restantes com zeros.

Blocagem - SoundexBlocagem - Soundex

Page 16: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

BlocagemBlocagem

- Primeira letra W e segunda A -> Primeira letra passa a V- Primeira letra H -> Deleta primeira letra- Primeira letra K e segunda A, O ou U -> Primeira letra passa a C- Primeira letra Y -> Primeira letra passa a I - Primeira letra C e segunda E ou I -> Primeira letra passa a S

- Primeira letra G e segunda E ou I -> Primeira letra passa a J

Rotina de Padronização

Campos: PBLOCO e UBLOCO

Page 17: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Últimos nomes mais frequentes na base de óbitos. Município do Rio de Janeiro, 1998.

Silva

Santos

Oliveira

Souza

0.0% 2.0% 4.0% 6.0% 8.0% 10.0% 12.0%

Coeli CM & Camargo JR. Rev Bras. Epidemiol 2002; 5:185-196

Page 18: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Coeli CM & Camargo JR. Rev Bras. Epidemiol 2002; 5:185-196

Page 19: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Vieira, CL, 2010

SINASC - 2002 vs 2003-2004

Page 20: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

ComparaçãoComparação

Page 21: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Implementa o algoritmo distância de edição Levenshtein

Mínimo de operações necessárias para transformar uma cadeia de caracter em outra

Inserção, Deleção e Substituição.

Aproximado Aproximado

WrongWrong

Wromg - Substituição

Wronmg - Deleção

Wrog - Inserção

Page 22: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Substitui p por p (custo 0)

Insere u (custo 1)

Substitui z por z (custo 0)

Substitui z por z (custo 0)

Insere l (custo 1)

Substitui e com e (custo 0)

Deleta l (custo 1)

p-zz-elpuzzle-

PUZZLE vs PZZEL

Page 23: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Concordância = tamanho da maior cadeia - resultado da comparação de Levestein tamanho da maior cadeia

RecLink III – Função Levenshtein

Manoel vs. Manuel

C= (6-1)/6= 5/6=0.833 ou 83,3%

Manoel vs. Manuel

C= (20-9)/20= 11/20=0.55 ou 55,5%

Claudia Medina Coeli vs. Maria Claudia Coeli

Manuel vs Manoel

Claudia Medina Coeli vs Maria Claudia Coeli

Page 24: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Compara caracter a caracter em cada posição

19880120 19880120 - 100%

19880120 19880102 - 75%

CaracterCaracter

ExatoExato

19880120 19880120 - Par

19880120 19880102 - Não

DiferençaDiferença

1988 1988 - Par

1988 1990 – Par

1988 1996 – Não Par

Page 25: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

O maior número possível

Mas não incluir campos com muito missing ou muito erro no preenchimento

Não incluir campos e partes de campos ao mesmo tempo (nome e suas partes, por exemplo)

Não incluir campos usados na blocagem

Sensível ou específico, depende da qualidade do preenchimento dos dados (partes de nomes e datas OU nome completo).

Campos - AutomáticoCampos - Automático

Page 26: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Cálculo do EscoreCálculo do Escore

Page 27: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Parâmetros

Sim

Não

AlgoritmoPadrão Ouro

Verdadeiro Falso

Verdadeiro Positivo

VPi

Falso NegativoFNi

Falso PositivoFPi

Verdadeiro NegativoVNi

Page 28: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Carlos Sllatery Mansa vs Carlos Sllatery Mansa

19700702 vs 19611221

Concordância Discordância

Page 29: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Par Não Par0.92 0.010.08 0.99

Nome

Par Não Par0.90 0.050.10 0.95

Data de Nascimento

Carlos Sllatery Mansa vs Carlos Sllatery Mansa

19700702 vs 19611221

log2 (0.92/0.01) + log2(0.10/0.95)=

6.52+(-3.25)=3.28

Valor Máximo = 10.69 Valor Mínimo = -6.87

Page 30: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Seleção de ParesSeleção de Pares

Page 31: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Distribuição de links segundo escore

Percentual

SCORE-9 -4 0 5 9

0

.3

.6

.9 0 4,3

Dúvida Par

Não Par

Page 32: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Distribuição de links segundo escore

Winkler, 2006

Page 33: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Na dúvida, não classifique como par

Defina regras antes de iniciar a revisão manual (estudo piloto)

Nomes raros (nomes com três partes ou mais), são soberanos

Se nome comum (nomes com duas partes, frquentes) deve concordar em pelo menos mais dois atributos

Se nome médio, deve concordar ao menos em mais um atributo.

Decisão Final Decisão Final

Page 34: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Arquivo de Relacionamento

ARQUIVO de pares

parp1

Combina –executa

Arquivo A’

Sinanexp

Arquivo B’

Doexp

Arquivo de Relacionamento

(passo1.dbf)

ARQUIVO A’ reduzido

Sinanexp2

ARQUIVO B’ reduzido

Doexp2

2º passo de blocagem

Page 35: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Formação de Formação de Bases Para AnáliseBases Para Análise

Page 36: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

O arquivo de interesse para a análise depende do objetivo do projeto de linkage.

Appendar arquivos de pares de cada passo.

Antes de formar a base para análise, conferir se houve atribuição de mais de um registro de um arquivo a um mesmo registro do outro (frequência dos campos chaves)

Usar arquivo de pares e os arquivos originais – (não padronizados)

EstratégiasEstratégias

Page 37: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Primeira Etapa

Arquivo de Pares Passo 1

Arquivo de Pares Passo 2

Arquivo de Pares Total

Page 38: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Segunda Etapa

Arquivo de Pares Total

N SINAN

SINAN

SINAN + N DO

Eliminar Eliminar campos campos

IdentificadoresIdentificadores

Page 39: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Terceira Etapa

SIM

N DO

SINAN + N DO

SINAN + DADOS SIM

Page 40: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Estimativas de Estimativas de ParâmetrosParâmetros

Page 41: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Emprega-se amostra de links gerados por um processo sem blocagem.

Arquivo A (1.000 registros) relacionado com ele próprio sem blocagem → total de links formados é de 1.000.000 → Desses apenas 1.000 são pares verdadeiros → 0,1%

Então, considera-se que os links não são pares e qualquer concordância é falso positiva. Para estimar u para cada campo, basta contar quantas vezes se observa concordância.

Estimativa de Falso Postivo Estimativa de Falso Postivo (u)(u)

Page 42: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Emprega-se amostra de links gerados por processo de blocagem mais restrito (primeiro passo), que aumenta a probabilidade de ocorrência de pares verdadeiros.

Considera-se que o status final do par é a variável não observada.

Aplica-se algoritmo EM (expectation-maximization) para estimativa de m.

Estimativa de Verdadeiro Postivo Estimativa de Verdadeiro Postivo (m)(m)

Page 43: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

(1) Estimam-se valores do status do par (verdadeiro ou falso - dados não observados) considerando os valores de parâmetros m iniciais (valores iniciais informados)

(2) Re-estimam-se os valores de parâmetros m para Maximizar a verossimilhança dos valores do status do par, considerando os valores estimados para essa variável na etapa 1.

(3) As duas etapas são repetidas até que se alcance a convergência (os valores param de mudar de uma iteração para outra)

Estimativa de Verdadeiro Postivo Estimativa de Verdadeiro Postivo (m)(m)

Page 44: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

DuplicidadesDuplicidades

Page 45: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

Eliminar duplicações após escolha do registro mais adequado para permanecer na base;

Eliminar duplicações após a atualização de um dos registros com informações presentes nos múltiplos registros duplicados;

Criar um arquivo mestre com apenas uma ocorrência (registro) de cada indivíduo e adicionalmente criar um campo chave comum que é armazenado no arquivo mestre e nos arquivos de movimento, permitindo a recuperação de todos os dados de um indivíduo em um determinado período de tempo.

Duplicidades

Page 46: Linkage Probabilístico de Bases de Dados Método · Na dúvida, não classifique como par Defina regras antes de iniciar a revisão manual (estudo piloto) Nomes raros (nomes com

121234...

12124....

Chave

Arquivo Original Arquivo Reduzido

TotalChave