Wolfram Language

Decomposição em modos

Dado um conjunto de funções básicas , um sinal pode ser aproximado pela combinação linear . Normalmente, quanto maior a base, melhor o sinal pode ser aproximado. No entanto, nem todos os sinais precisam de todas as funções básicas para uma aproximação razoável. A idéia de decomposição em modos é escolher um pequeno subconjunto de um conjunto maior, ou dicionário, de funções básicas que podem ser sobredeterminadas.

Este exemplo demonstra como a decomposição em modos pode ser feita de maneira fácil e eficiente usando Fit com a opção FitRegularization.

Para sinais com amostragem de tempo discreto, a reconstrução pode ser simplesmente dada como uma equação matricial , onde é a matriz com elementos . Para bases sobredeterminadas, os coeficientes α que dão a melhor aproximação podem simplesmente ser encontrados por mínimos quadrados. Se, em vez de minimizar , um termo de regularização L1 é adicionado para dar , valores suficientemente grandes do parâmetro incentivam componentes de α a serem zero. O problema pode ser resolvido com eficiência usando Fit com a nova opção FitRegularization.

Use uma base de funções Gabor e para um exemplo de um grande dicionário de funções básicas.

Aqui está um gráfico mostrando uma amostra das funções do Gabor.

No intervalo de 0 a 1 com um intervalo de amostragem de tempo , um conjunto de funções básicas com , e fixado, são suficientes para representar exatamente uma ampla variedade de sinais.

A matriz de base pode ser construída usando DesignMatrix.

Esta matriz é muito grande, mas com uma pequena perda na precisão da representação, é possível usar o fato de que as funções de Gabor decaem rapidamente de para torná-la esparsa, usando um limite.

Agora considere um sinal.

O sinal pode ser discretizado simplesmente calculando todas as amostras de tempo.

Um ajuste de mínimos quadrados indicará quão bem a função pode ser representada pelas funções de base. Isso leva muito tempo porque a matriz é muito grande.

O erro de representação completo é efetivamente arredondamento de precisão da máquina.

Agora use a regularização L1 para encontrar um ajuste esparso. Na verdade, isso é mais rápido de calcular do que o ajuste de mínimos quadrados, pois ele usa um algoritmo esparso.

A representação esparsa usa apenas 50 dos 30561 elementos de base. Isso é pequeno o suficiente para realmente ter uma forma funcional.

Mostre o erro.

O ajuste pode ser melhorado ligeiramente fazendo um ajuste de mínimos quadrados apenas com esses elementos de base.

O erro pode ser ajustado alterando o parâmetro . Geralmente, maiores resultarão em menos funções básicas e mais erros, enquanto menores resultarão em mais funções de base e menor erro. Aqui estão os gráficos de erros para outras opções de .

Exemplos Relacionados

de en es fr ja ko zh