Gostaria de saber como combinar endereços postais quando o formato deles for diferente ou quando um deles estiver incorreto.
Até agora, encontrei soluções diferentes, mas acho que elas são bastante antigas e não muito eficientes. Tenho certeza de que existem métodos melhores; portanto, se você tiver referências para ler, tenho certeza de que é um assunto que pode interessar várias pessoas.
A solução que encontrei (exemplos estão em R):
Distância Levenshtein, que é igual ao número de caracteres que você precisa inserir, excluir ou alterar para transformar uma palavra em outra.
agrep("acusait", c("accusait", "abusait"), max = 2, value = TRUE)
## [1] "accusait" "abusait"
A comparação de fonemas
library(RecordLinkage)
soundex(x<-c('accusait','acusait','abusait'))
## [1] "A223" "A223" "A123"
O uso de um corretor ortográfico (eventualmente um bayesiano como o de Peter Norvig) , mas não muito eficiente no endereço, eu acho.
Pensei em usar as sugestões do Google sugerir, mas da mesma forma, não é muito eficiente em endereços postais pessoais.
Você pode imaginar usando uma abordagem supervisionada de aprendizado de máquina, mas precisa ter armazenado as solicitações incorretas dos usuários para fazer isso, o que não é uma opção para mim.