Eu tenho muitas sequências de endereços:
1600 Pennsylvania Ave, Washington, DC 20500 USA
Eu quero analisá-los em seus componentes:
street: 1600 Pennsylvania Ave
city: Washington
province: DC
postcode: 20500
country: USA
Mas é claro que os dados estão sujos: vêm de muitos países em vários idiomas, escritos de maneiras diferentes, contêm erros de ortografia, faltam peças, têm lixo extra, etc.
No momento, nossa abordagem é usar regras combinadas com a correspondência difusa de gazetas, mas gostaríamos de explorar técnicas de aprendizado de máquina. Marcamos dados de treinamento para aprendizado supervisionado. A questão é: que tipo de problema de aprendizado de máquina é esse? Realmente não parece ser agrupamento, classificação ou regressão ...
O mais próximo que posso chegar seria classificando cada token, mas você realmente deseja classificá-los todos simultaneamente, satisfazendo restrições como "deve haver no máximo um país"; e realmente existem muitas maneiras de tokenizar uma string, e você quer tentar cada uma delas e escolher a melhor .... Eu sei que existe uma coisa chamada análise estatística, mas não sei nada sobre ela.
Então: quais técnicas de aprendizado de máquina eu poderia explorar para analisar endereços?