Como medir a concordância entre as curvas?

11

Tenho valores (plotados abaixo) dos valores RSSI esperados ao longo do tempo que gostaria de comparar com meus valores RSSI medidos. O que eu procurava era uma maneira de quantificá-lo para que eu pudesse alterar os parâmetros e poder comparar / contrastar diferentes abordagens.

É um problema difícil em minha mente, porque não sei como comparar os sinais e, ainda assim, levo em consideração as escalas em grande escala (forma geral) e em pequena escala (flutuações individuais) do sinal.

Por exemplo, aqui está um gráfico de um conjunto de sinais: RSSI vs Tempo

Na imagem, vejo que o sinal de medida vermelho segue aproximadamente o modelo, mas também faz um bom trabalho em simular algumas das qualidades sinusoidais do modelo (em alguns lugares). Alguma ideia?

<> Em resposta aos comentários das pichenettes (que parecem razoáveis), peguei um diff dos dois valores e plotei o abs (fft (diff)) e obtive o seguinte: FFT

Não tenho certeza do que fazer com isso. Como não temos freqs reais, não sei como dimensionar o eixo e, se o fizesse, que métrica você usaria?

toozie21
fonte
2
Que tal calcular algo como o erro quadrado em diferentes faixas de frequência (ou dividir o diferente em diferentes faixas de frequência)? Na faixa de frequência mais baixa, ele mede as habilidades gerais de rastreamento - independentemente de solavancos rápidos. Na frequência mais alta, ele medirá a capacidade de rastrear alterações abruptas, independentemente de erros maiores de DC.
Pichenettes
OK, adicionei um novo gráfico à postagem original (como uma edição) para mostrar o fft (real (diff)), mas não tenho muita certeza do que fazer com isso.
gostar de
2
Eu suavizaria os dois primeiro; então você obtém um ótimo acordo (supondo que esse seja o resultado desejado). PS Eu sempre recomendo compartilhar os dados que você usou para fazer seus gráficos, para que possamos ajudar mais facilmente.
Emre
Quanto você se importa em combinar a fase em frequências mais altas? A sensação que tenho é que você pode comparar diretamente o sinal no domínio do tempo (após um filtro passa-baixo) e comparar o domínio da frequência para frequências mais altas, possivelmente olhando apenas a magnitude e ignorando a fase.
Dan Bryant
@ toozie21 você já sabe os locais de horário em que as propriedades do sinal mudam? por exemplo, 8 ms, 17 ms ... etc.
User13107

Respostas:

1

Se os sinais não estiverem alinhados, você ainda tem uma pista de que eles "significam" mais ou menos a mesma coisa ou se refere a dados semelhantes, você pode usar o algoritmo DTW (Dynamic Time Warping) para obter uma correspondência melhor (então, basta usar o valor no mesmo local). Você pode medir o RMS, o MSE ou o que quiser, usando essas correspondências. Para o DTW, convém verificar: http://en.wikipedia.org/wiki/Dynamic_time_warping

Uma boa maneira de elaborar essa idéia é utilizada no Earth Mover Distance (EMD), que calcula o esforço mínimo para alinhar os sinais, como uma medida de distância. O EMD é apresentado aqui: http://ai.stanford.edu/~rubner/emd/default.htm

O EMD oferece uma distância direta, que você pode usar para análises adicionais.

Tolga Birdal
fonte
0

Estou usando o RMS do vetor de erro como uma medida. Como estou lidando com esquemas de modulação complexos, também estou usando o EVM como medida.

Euripedes Rocha Filho
fonte
0

Eu provavelmente combinaria algumas abordagens. Primeiro, suavizaria as duas formas de onda ou faria uma interpolação de spline para remover as variações de grande escala. Convém combinar outra etapa após a correlação cruzada para alinhá-las, supondo que o viés de tempo não seja importante para você. Depois de obter o pico de correlação cruzada, você pode até interpolar esse pico em uma forma de parábola e, em seguida, voltar a amostrar uma forma de onda para corresponder à outra. Eu computaria o RMSE entre as duas formas de onda naquele ponto e produziria uma métrica indicando o delta de variação lenta.

Depois disso, subtrairia o valor interpolado do original para normalizar os desvios em pequenas escalas de tempo. A partir daí, você pode tentar RMSE-los uns contra os outros ou até mesmo calcular uma variação de cada um, para ter uma noção de quanto "ruído" você tem sobre a forma de onda que varia lentamente, dependendo do que você precisa e do que está realmente tentando. medir.

Eric C.
fonte