Estou trabalhando em um algoritmo que utiliza um vetor do ponto de dados mais recente de um número de fluxos de sensores e compara a distância euclidiana aos vetores anteriores. O problema é que os diferentes fluxos de dados são de sensores completamente diferentes; portanto, tomar uma distância euclidiana simples enfatizará drasticamente alguns valores. Claramente, preciso de uma maneira de normalizar os dados. No entanto, como o algoritmo foi projetado para ser executado em tempo real, não posso usar nenhuma informação sobre nenhum fluxo de dados como um todo na normalização. Até agora, apenas acompanhei o maior valor visto para cada sensor na fase de inicialização (os primeiros 500 vetores de dados) e depois dividi todos os dados futuros desse sensor por esse valor. Isso está funcionando surpreendentemente bem, mas parece muito deselegante.
Não tive muita sorte em encontrar um algoritmo pré-existente para isso, mas talvez eu simplesmente não esteja procurando nos lugares certos. Alguém sabe de um? Ou tem alguma idéia? Vi uma sugestão de usar uma média corrente (provavelmente calculada pelo algoritmo de Wellford), mas se fizesse isso, várias leituras do mesmo valor não apareceriam como sendo iguais, o que parece ser um grande problema, a menos que eu estou faltando alguma coisa. Quaisquer pensamentos são apreciados! Obrigado!
fonte