Onda Média Móvel


Análise de dados de precipitação usando modelo de média móvel (MA) e modelo inteligente de múltiplas resoluções wavelet para avaliação de ruído para melhorar a precisão de previsão. Cite este artigo como: Akrami, S. A. El-Shafie, A. Naseri, M. et al. Neural Comput Applic (2014) 25: 1853. doi: 10.1007s00521-014-1675-0 A previsão de precipitação e a aproximação da sua magnitude têm um papel enorme e imperativo na gestão da água e na previsão de escoamento. O objetivo principal deste trabalho é obter a relação entre as séries temporais de precipitação obtidas da transformada wavelet (WT) e da média móvel (MA) na bacia do rio Klang, na Malásia. Para este fim, os Haar e Dmey WTs foram aplicados para decompor as séries temporais de precipitação em 7, 10 diferentes níveis de resolução, respectivamente. Vários estudos de caso de pré-processamento baseados em mestras de 2, 3, 5, 10, 15, 20, 25 e 30 meses foram realizados para descobrir uma tendência de longo prazo em comparação com um MA de curto prazo. As informações e os dados foram recolhidos da barragem de Klang Gates, na Malásia, de 1997 a 2008. Quanto ao comportamento, as séries temporais de precipitação de 10, 15, 20 e 30 dias são decompostas em aproximação e coeficiente de detalhes com diferentes tipos De WT. O coeficiente de correlação R 2 e os critérios de erro do quadrado médio da raiz são aplicados para examinar o desempenho dos modelos. Os resultados mostram que existem algumas semelhanças entre os filtros MA e os filtros da sub-série de aproximação wavelet devido à eliminação do ruído. Além disso, os resultados obtidos que a alta correlação com MAs podem ser alcançados através de Dmey WT em comparação com wavelet Haar para dados de precipitação. Além disso, sinais limpos podem ser usados ​​como entradas de modelo para melhorar o desempenho do modelo. Portanto, as técnicas de decomposição de sinal com o objetivo de pré-processamento de dados podem ser favoráveis ​​e podem ser apropriadas para a eliminação dos erros. Coeficientes de decomposição Dmey wavelet Onda de Haar Média em movimento Precisão de previsão Referências Akrami SA, Nourani V, Hakim SJS (2014) Desenvolvimento de modelo não-linear baseado em wavelet-ANFIS para previsão de precipitação na represa Klang Gates. Water Resour Manag 28 (10): 29993018 CrossRef Google Scholar Cannas B, Fanni A, Ver L, Sias G (2006) Pré-processamento de dados para a previsão de fluxo de rio usando redes neurais: transformações wavelet e particionamento de dados. Phys Chem Earth 31: 11641171 CrossRef Google Scholar Chang FJ, Chen L (1998) Algoritmo genético codificado real para o gerenciamento de reservatórios de controle de inundação baseado em regras. Water Resour Management 12 (3): 185198 CrossRef Google Scholar Chen GY, Bui TD, Krzyzak A (2009) Reconhecimento de padrões invariantes usando radon, wavelet complexo de duas árvores e transformadas de Fourier. Pattern Recognition 42: 20132019 CrossRef MATH Google Scholar Chen RJC, Bloomfield P, Fu JS (2003) Uma avaliação de métodos de previsão alternativos para visitas recreativas. J livres Res 35 (4): 441454 Google Scholar Earth Observation Center, Universiti Kebangsaan Malásia (UKM), Malásia 2013 Fonseca ES, Guido RC, Scalassara PR (2007) Análise de frequência de onda de onda e máquinas de vetores de apoio de mínimos quadrados para a identificação de distúrbios de voz . Comput Biol Med 37: 571578 CrossRef Google Scholar Fu Y, Serrai H (2011) Imagem espectroscópica de ressonância magnética rápida (MRSI) usando codificação wavelet e imagem paralela: resultados in vitro. J Magn Reson 211: 4551 CrossRef Google Scholar Genovese L, Videaud B, Ospici M, Deutschd T, Goedeckere S, Mhaut JF (2011) Daubechies wavelets para cálculos de estrutura eletrônica de alto desempenho. CR Mec 339: 149164 CrossRef MATH Google Scholar Lisi F, Nicolis O, Sandri M (1995) Combinando análises de espectro singular e redes neurais para previsão de séries temporais. Neural Process Lett 2 (4): 610 CrossRef Google Scholar Maier HR, Dandy GC (2000) Redes neuronais para a previsão e previsão de variáveis ​​de recursos hídricos: uma revisão de problemas de modelagem e aplicações. Modelo Environ Model: 15: 101123 CrossRef Google Scholar Mallat SG (1998) Uma turnê wavelet de processamento de sinal. Academic Press, San Diego MATH Google Scholar Masset P (2008) Análise de séries temporais financeiras utilizando métodos de Fourier e Wavelet, Universidade de Friburgo (Suíça) Faculdade de Ciências Econômicas e Sociais Newbold P, Carlson WL, Thorne BM (2003) Estatísticas para Negócios e economia (quinta versão). Prentice Hall, Upper Saddle River Google Scholar Nourani V, Komasi M, Mano A (2009) Uma abordagem de onda múltipla multivariada para a modelagem de precipitação-escoamento. Water Resour Manag 23: 28772894 CrossRef Google Scholar Partal T, Kisi O (2007) Wavelet e modelo de conjunção neuro-fuzzy para a previsão de precipitação. J Hydrol 342: 199212 CrossRef Google Scholar Rioul O, Vetterli M (1991) Wavelets e processamento de sinal. Revista IEEE SP. Pp 1438 Serrai H, Senhadji L (2005) Redução do tempo de aquisição na imagem espectroscópica de ressonância magnética usando codificação discreta de wavelet. J Magn Reson 177: 2230 CrossRef Google Scholar Shafiekhah M, Moghaddam MP, Sheikh El Eslami MK (2011) Previsão de preços dos mercados de eletricidade diária usando um método de previsão híbrido. Energy Convers Manag 52: 21652169 CrossRef Google Scholar Sifuzzaman M, Islamand MR, Ali MZ (2009) Aplicação da transformada wavelet e suas vantagens em comparação com a transformada fourier. J Phys Sci 13: 121134 Google Scholar Syed AR, Aqil B, Badar S (2010) Previsão de carga de tráfego de rede usando filtros de wavelet e modelo de média móvel autônomo sazonal. Int J Comput Electr Eng 2 (6): 17938163 Google Scholar Wu CL, Chau KW, Li YS (2009) Métodos para melhorar o desempenho da rede neural na previsão dos fluxos diários. J Hydrol 372: 8093 CrossRef Google Scholar Yang X, Ren H, Li B (2008) Codificação embutida de wavelets de árvore zero com base em agrupamentos flexíveis adaptativos para compressão de imagens. Image Vis Comput 26: 812819 CrossRef Google Scholar Zhao X, Ye B (2010) Transformação de pacotes wavelet de convolução e suas aplicações para processamento de sinal. Processo de sinal de dígito 20: 13521364 CrossRef Google Scholar Informações de direitos autorais The Natural Computing Applications Forum 2014 Autores e afiliações Seyed Ahmad Akrami 1 Email autor Ahmed El-Shafie 1 Mahdi Naseri 2 Celso AG Santos 3 1. Departamento de Engenharia Civil e Estrutural Universiti Kebangsaan Malásia (UKM ) Bangi Malaysia 2. Departamento de Engenharia Civil Universidade de Birjand Birjand Irã 3. Departamento de Engenharia Civil e Ambiental Universidade Federal de Paraba Joo Pessoa Brasil Sobre este artigo Análise wavelet baiana de processos de migração vertical indiretamente divididos Kyungduk Ko a Marina Vannucci b. . Um Departamento de Matemática, Boise, State University, Boise, ID 83725-1555, EUA b Departamento de Estatística, Texas AampM University, College Station, TX, 77843-3143, EUA Recebido 30 de outubro de 2003, aceito 27 de janeiro de 2005, disponível on-line 22 de março 2005 Os processos de memória longa são amplamente utilizados em muitos campos científicos, como economia, física e engenharia. Neste artigo, descrevemos um procedimento de estimativa bayesense baseado em wavelets para estimar os parâmetros de um ARFIMA gaussiano geral (p, d, q) (p. D. Q). Modelo de média móvel vertical parcialmente integrado, autoregressivo, com parâmetros médios verticais e auto-expressivos desconhecidos. Utilizamos as propriedades de decorrelation das transformações wavelet para escrever um modelo Bayes relativamente simples no domínio Wavelet. Utilizamos um algoritmo recursivo eficiente para calcular as variâncias dos coeficientes wavelet. Estes dependem dos parâmetros característicos desconhecidos do modelo. Usamos métodos de Monte Carlo de cadeia de Markov e integração numérica direta para inferência. As performances são avaliadas em dados simulados e em conjuntos de dados reais. ARFIMA processa inferências bayesianas Wavelets Autor correspondente. Tel. 1xA0979xA0845xA00805 fax: 1xA0979xA0845xA03144. Copyright copie 2005 Elsevier B. V. Todos os direitos reservados. Os cookies são usados ​​por este site. Para mais informações, visite a página de cookies. Copyright 2017 Elsevier B. V. ou seus licenciadores ou contribuidores. ScienceDirect é uma marca registrada da Elsevier B. V. Esta foi a primeira página da web que escrevi em Wavelets. A partir desta semente cresceu outras páginas da web que discutem uma variedade de tópicos relacionados a wavelets. Para um índice, veja Wavelets e processamento de sinal. Esta página da Web aplica a transformada wavelet a uma série temporal composta de preços de fechamento no mercado de ações. Páginas web posteriores expandem este trabalho em uma variedade de áreas (por exemplo, compressão, análise espectral e previsão). Quando comecei, pensei que implementaria a wavelet Haar e que alguns dos meus colegas poderiam achar útil. Eu não esperava que o processamento de sinal fosse um tópico tão interessante. Também não entendi que muitas áreas diferentes de ciência da computação, matemática e financiamento quantitativo seriam tocadas por wavelets. Eu continue achando que uma coisa leva a outra, dificultando a localização lógica. Este caminho errante de descoberta na minha parte também explica o crescimento um tanto orgânico dessas páginas da web. Tentei dominar esse crescimento e organizá-lo, mas temo que ainda reflita o fato de que eu não sabia para onde estava indo quando comecei. O código Java publicado juntamente com esta página da Web reflete o primeiro trabalho que fiz nas wavelets. Mais sofisticados algoritmos baseados em esquema de levantamento, implementados em Java podem ser encontrados em outras páginas da web. O código do esquema de levantamento de wavelet, publicado em outras páginas da web, é mais simples e fácil de entender. O esquema de levantamento de wavelet também fornece uma estrutura elegante e poderosa para implementar uma variedade de algoritmos wavelet. Na implementação de algoritmos de pacote de wavelet, eu mudei de Java para C. O algoritmo de pacote de wavelets que usei é mais simples e mais elegante usando recursos de sobrecarga do operador Cs. C também suporta estruturas genéricas de dados (modelos), o que me permitiu implementar uma hierarquia de classe genérica para wavelets. Este código inclui vários algoritmos wavelet diferentes, incluindo Haar, interpolação linear e Daubechies D4. Como os algoritmos wavelet, a modelagem financeira feita aqui representa um trabalho muito antigo. Quando comecei a trabalhar nessas páginas da web, não tive experiência em modelar séries temporárias financeiras. O trabalho descrito nesta página da Web leva a experimentos mais intensivos com filtros wavelet em modelos financeiros, que eu continuo trabalhando. Nesta página, eu uso os preços de fechamento do mercado de ações. Na modelagem financeira, geralmente usamos retornos, pois o que você está tentando prever é retorno futuro. Fiquei interessado em wavelets por acidente. Eu estava trabalhando em software envolvido com séries temporais financeiras (por exemplo, equidade aberta e fechar preço), então eu suponho que foi um acidente à espera de acontecer. Eu estava lendo a edição de fevereiro de 2001 da revista WIRED quando vi o gráfico abaixo. Todo mês WIRED executa várias visualizações gráficas de dados financeiros e este foi um deles. Se os preços das ações realmente influenciam em todas as informações conhecidas, um gráfico de preço composto deve prosseguir de forma ordenada, uma vez que a nova informação sugere valor percebido contra a atração das tendências estabelecidas. A análise de wavelet, amplamente utilizada nas comunicações para separar o sinal (movimento padronizado) do ruído (atividade aleatória), sugere o contrário. Esta imagem mostra os resultados da execução de uma transformada Haar - a fórmula fundamental de wavelet - no fechamento diário do Dow e NASDQ desde 1993. As montanhas azuis constituem sinal. Os picos vermelhos incorporados representam o ruído, dos quais a linha amarela segue uma média móvel de 50 dias. O ruído, que pode ser considerado como ignorância dos investidores, aumentou junto com o valor de ambos os índices. Mas, enquanto o ruído no Dow cresceu 500 por cento em média, o ruído do NASDAQ cresceu 3.000 por cento, superando o crescimento espetacular de 500 por cento do NASDAQ durante o mesmo período. A maior parte desse aumento ocorreu desde 1997, com um aumento extraordinário desde janeiro de 2000. Talvez houvesse um glitch Y2K depois de tudo - um que descarrilava sistemas operacionais e CPUs, mas - - psicologia de investidores. - Clem Chambers (clemcadvfn). Gráfico e citações de WIRED Magazine, fevereiro de 2001, página 176 Eu sou platônico. Eu acredito que, em resumo, há verdade, mas que nunca podemos alcançá-la. Só podemos chegar a uma aproximação, ou a uma sombra de verdade. A ciência moderna expressa isso como incerteza de Heisenberg. Uma visão platônica de uma série de tempo financeiro é que existe uma verdadeira série de tempo que está obscurecida até certo ponto pelo ruído. Por exemplo, um preço fechado ou uma série de tempo de bidask para movimentação de ações com base na oferta e demanda de ações. No caso de uma série de tempo de bidask, a curva supplydemand será cercada pelo ruído criado pela chegada da ordem aleatória. Se, de alguma forma, o ruído pudesse ser filtrado, veríamos a verdadeira curva de oferta. O software que usa essa informação pode ser capaz de fazer um trabalho melhor porque não seria confundido com falsos movimentos criados pelo ruído. O gráfico WIRED acima sugere que a análise wavelet pode ser usada para filtrar uma série de tempo financeiro para remover o ruído associado. Claro que existe uma vasta área que não é abordada pela citação WIRED. O que, por exemplo, constitui o ruído O que são wavelets e ondas de Haar Por que as wavelets são úteis na análise de séries temporais financeiras Quando eu vi esse gráfico, eu conheci respostas a nenhuma dessas perguntas. A análise fornecida no parágrafo breve WIRED é superficial também. O ruído na série temporal aumenta com o volume de negócios. Para alegar que o ruído aumentou, o ruído deve ser normalizado para o volume de negócios. Ler é uma coisa perigosa. Pode lançá-lo em direções estranhas. Mudei da Califórnia para Santa Fé, Novo México, porque eu li um livro. Esse gráfico na revista WIRED me lançou pelo caminho que passei muitos meses depois. Como qualquer aventura, não tenho certeza se eu tivesse embarcado nessa se eu soubesse quanto tempo e, às vezes, difícil, a jornada seria. Anos atrás, quando saí pela primeira vez, comprei uma cópia do livro The World De acordo com Wavelets de Barbara Hubbard, com base em uma revisão que li na revista Science. O livro estava sentado na minha prateleira sem ler até ver o gráfico WIRED. Wavelets tem sido um pouco de moda, uma palavra de moda que as pessoas jogaram ao redor. Barbara Hubbard começou a escrever o mundo de acordo com Wavelets quando a moda das ondas estava começando a se incendiar. Ela fornece uma história interessante de como wavelets se desenvolveram nos mundos matemático e de engenharia. Ela também faz uma tentativa valente de fornecer uma explicação sobre o que é a técnica wavelet. A Sra. Hubbard é uma escritora científica, não uma matemática, mas dominou uma quantidade razoável de cálculos básicos e teoria do processamento de sinais (para a qual eu a admiro). Quando escreveu The World De acordo com Wavelets, havia poucos livros sobre wavelets e nenhum material introdutório. Embora eu admire o esforço heróico de Barbara Hubbards, eu tinha apenas uma compreensão superficial de wavelets depois de ler The World De acordo com Wavelets. Há uma vasta literatura sobre wavelets e suas aplicações. Do ponto de vista de um engenheiro de software (com apenas um ano de cálculo da faculdade), o problema com a literatura wavelet é que ele foi amplamente escrito por matemáticos, seja para outros matemáticos ou para estudantes em matemática. Eu não sou um membro de nenhum dos dois grupos, então talvez meu problema seja que eu não tenho uma compreensão fluente da linguagem da matemática. Eu realmente sinto isso sempre que eu leio artigos de revistas sobre wavelets. No entanto, tentei me concentrar em livros e artigos que são explicitamente introdutórios e tutoriais. Mesmo estes provaram ser difíceis. O primeiro capítulo do livro Wavelets Made Easy de Yves Nievergelt começa com uma explicação das ondas de Haar (estas são as wavelets usadas para gerar o gráfico publicado em WIRED). Este capítulo tem numerosos exemplos e consegui entender e implementar wavelets Haar a partir deste material (os links para o meu código Java para wavelets Haar podem ser encontrados abaixo). Um capítulo posterior discute a transformada wavelet Daubechies. Infelizmente, este capítulo de Wavelets Made Easy não parece ser tão bom quanto o material em ondas de Haar. Parece haver uma série de erros neste capítulo e implementar o algoritmo descrito por Nievergelt não resulta em uma transformada wavelet correta. Entre outras coisas, os coeficientes de wavelet para as ondas de Daubechies parecem estar errados. Minha página da web na transformada wavelet Daubechies pode ser encontrada aqui. O livro Ripples in Mathematics (veja as referências no final da página web) é uma referência melhor. Há uma vasta literatura sobre wavelets. Isso inclui milhares de artigos de revistas e muitos livros. Os livros em wavelets variam de trabalhos relativamente introdutórios como Nievergelts Wavelets Made Easy (que ainda não é leitura leve) para livros acessíveis apenas para estudantes de pós-graduação em matemática. Há também uma grande quantidade de material wavelet na Web. Isso inclui uma série de tutoriais (veja a referência baseada na Web abaixo). Dada a vasta literatura sobre wavelets, não há necessidade de mais um tutorial. Mas pode valer a pena resumir a minha visão das wavelets à medida que são aplicadas em sinais 1-D ou séries temporais (uma imagem é dados 2-D). Uma série de tempo é simplesmente uma amostra de um sinal ou registro de algo, como temperatura, nível de água ou dados de mercado (como preço de fechamento de ações). Wavelets permitem que uma série de tempos seja visualizada em múltiplas resoluções. Cada resolução reflete uma freqüência diferente. A técnica wavelet leva médias e diferenças de um sinal, quebrando o sinal para dentro do espectro. Todos os algoritmos wavelet que estou familiarizado com o trabalho em séries temporais de uma potência de dois valores (por exemplo, 64, 128, 256.). Cada passo da transformada wavelet produz dois conjuntos de valores: um conjunto de médias e um conjunto de diferenças (as diferenças são referidas como coeficientes de wavelet). Cada passo produz um conjunto de médias e coeficientes que é metade do tamanho dos dados de entrada. Por exemplo, se a série temporal contém 256 elementos, o primeiro passo produzirá 128 médias e 128 coeficientes. As médias, em seguida, tornam-se a entrada para o próximo passo (por exemplo, 128 médias resultando em um novo conjunto de 64 médias e 64 coeficientes). Isto continua até se calcular uma média e um coeficiente (por exemplo, 2 0). A média e a diferença da série temporal são feitas em uma janela de valores. A maioria dos algoritmos wavelet calcula cada nova média e diferença, deslocando esta janela sobre os dados de entrada. Por exemplo, se a série temporal de entrada contiver 256 valores, a janela será deslocada por dois elementos, 128 vezes, no cálculo das médias e das diferenças. O próximo passo do cálculo usa o conjunto anterior de médias, além de mudar a janela por dois elementos. Isso tem o efeito da média em uma janela de quatro elementos. Logicamente, a janela aumenta em dois fatores cada vez. Na literatura wavelet, esse algoritmo recursivo estruturado em árvore é referido como um algoritmo piramidal. O poder do espectro de dois coeficientes (diferença) gerado por um cálculo wavelet reflete a mudança nas séries temporais em várias resoluções. A primeira banda de coeficientes gerada reflete as maiores mudanças de freqüência. Cada banda posterior reflete mudanças em freqüências mais baixas e baixas. Há um número infinito de funções baseadas em wavelets. As funções mais complexas (como as ondas de Daubechies) produzem médias e diferenças sobrepostas que proporcionam uma média melhor do que a wavelet Haar em resoluções mais baixas. No entanto, esses algoritmos são mais complicados. Todo campo de especialidade desenvolve sua própria sub-linguagem. Isso certamente é verdade em wavelets. Eu incluí algumas definições aqui que, se eu entendesse seu significado, teria me ajudado em minhas andanças pela literatura wavelet. Uma função que resulta em um conjunto de diferenças de alta freqüência ou coeficientes wavelet. Ao levantar os termos do esquema, a wavelet calcula a diferença entre uma predição e um valor real. Se tivermos uma amostra de dados s i. S i1. S i2. As equações da wavelet de Haar são onde c i é o coeficiente wavelet. O wavelet Lifting Scheme usa uma expressão ligeiramente diferente para a wavelet Haar: a função de escala produz uma versão mais suave do conjunto de dados, que é metade do tamanho do conjunto de dados de entrada. Os algoritmos wavelet são recursivos e os dados suavizados se tornam a entrada para o próximo passo da transformada wavelet. A função de escala de wavelet Haar é onde i é um valor suavizado. A transformada Haar preserva a média nos valores suavizados. Isso não é verdade para todas as transformações wavelet. Filtro passa alta Nos termos de processamento de sinal digital (DSP), a função wavelet é um filtro de passagem alta. Um filtro de passagem alta permite os componentes de alta freqüência de um sinal ao mesmo tempo que suprime os componentes de baixa freqüência. Por exemplo, as diferenças que são capturadas pela função wavelet Haar representam a mudança de alta freqüência entre um valor ímpar e um mesmo. Filtro de passagem baixa Nos termos de processamento de sinal digital (DSP), a função de escala é um filtro passa-baixa. Um filtro de passagem baixa suprime os componentes de alta freqüência de um sinal e permite a entrada de componentes de baixa freqüência. A função de escala de Haar calcula a média de um elemento par e um elemento estranho, o que resulta em um sinal de passagem baixa mais suave. Transformação ortogonal (ou ortogonal) A definição de transformação ortonormal (a. k.a. ortogonal) em Métodos Wavelet para análise de séries temporais por Percival e Walden, Cambridge University Press, 2000, Chaper 3, seção 3.1, é uma das melhores vistas. Ive citou isso abaixo: as transformações ortonormais são interst, porque elas podem ser usadas para reexpressar uma série temporal de tal maneira que podemos reconstruir facilmente a série a partir da sua transformação. Em um sentido solto, a informação na transformação é, portanto, equivalente à informação é a série original para colocá-la de outra forma, a série e sua transformação podem ser consideradas duas representações da mesma entidade matemática. Em termos de transformações wavelet, isso significa que a série temporal original pode ser exatamente reconstruída a partir da média da série temporal e dos coeficientes gerados por uma transformada wavelet ortogonal (ortonormal). Isso também é referido como desinteresse. Os algoritmos de estimativa de sinal tentam caracterizar partes da série temporal e remover aqueles que se enquadram em um modelo particular de ruído. Essas páginas da Web publicam um código fonte Java bastante documentado para a transformada wavelet Haar. Livros como Wavelets Made Easy explicam algumas das matemáticas por trás da transformada wavelet. Descobri, no entanto, que a implementação deste código pode ser pelo menos tão difícil quanto a compreensão das equações wavelet. Por exemplo, a transformada em wavelet Haar no local produz coeficientes wavelet em um padrão de borboleta na matriz de dados original. A fonte Java publicada aqui inclui o código para reordenar a borboleta em espectros de coeficientes que são mais úteis quando se trata de analisar os dados. Embora este código não seja grande, me levou mais de um sábado para implementar o código para reordenar o padrão de dados de borboleta. O wavelet Lifting Scheme, desenvolvido por Wim Sweldens e outros fornece uma maneira mais simples de procurar tantos algoritmos wavelet. Comecei a trabalhar nas implementações Wavelet do Esquema de Levantamento depois de ter escrito esta página e desenvolvido o software. O código de wavelet de Haar é muito mais simples quando expresso no esquema de elevação. Veja a minha página da Web O esquema de elevação do Wavelet. O link para a página da Web de download de origem Java está abaixo. Existem vários algoritmos de análise de wavelets. Diferentes algoritmos de wavelets são aplicados de acordo com a natureza dos dados analisados. A wavelet Haar, que é usada aqui, é muito rápida e funciona bem para a série de tempo financeiro (por exemplo, o preço de fechamento de uma ação). As séries temporais financeiras não são estacionárias (para usar um termo de processamento de sinal). Isso significa que mesmo dentro de uma janela, as séries temporais financeiras não podem ser bem descritas por uma combinação de termos de pecado e cos. Nem as séries temporais financeiras são cíclicas de forma previsível (a menos que você acredite em ondas de Elliot). As séries temporais financeiras se prestam à análise wavelet de Haar, uma vez que os gráficos das séries temporais financeiras tendem a ficar irregulares, sem muitos detalhes. Por exemplo, o gráfico abaixo mostra o preço de fechamento diário de materiais aplicados durante um período de cerca de dois anos. Preço de fechamento diário para materiais aplicados (símbolo: AMAT), 121897 a 123099. Os algoritmos Wavelet Haar implementaram trabalho em dados que consistem em amostras que são uma potência de dois. Neste caso, existem 512 amostras. Há uma grande variedade de algoritmos wavelet populares, incluindo wavelets Daubechies, wavelets Mexican Hat e wavelets Morlet. Esses algoritmos wavelet têm a vantagem de uma melhor resolução para a mudança de tempo das séries temporais. Mas eles têm a desvantagem de serem mais caros de calcular do que as ondas de Haar. A maior resolução fornecida por esses wavlets não vale o custo das séries temporais financeiras, que são caracterizadas por transições irregulares. Os algoritmos wavelet de Haar publicados aqui são aplicados em séries temporais onde o número de amostras é uma potência de dois (por exemplo, 2, 4, 8, 16, 32, 64.). A onda de Haar usa uma janela retangular para provar as séries temporais. A primeira passagem sobre a série temporal usa uma largura de janela de dois. A largura da janela é dobrada em cada passo até a janela abranger toda a série temporal. Cada passagem sobre a série temporal gera uma nova série de tempo e um conjunto de coeficientes. A nova série de tempo é a média das séries temporais anteriores na janela de amostragem. Os coeficientes representam a alteração média na janela de amostra. Por exemplo, se tivermos uma série de tempo consistindo nos valores v 0. V 1. V n. Uma nova série de tempo, com a metade dos pontos é calculada pela média dos pontos na janela. Se for a primeira passagem sobre a série temporal, a largura da janela será de dois, então dois pontos serão calculados de forma média: a superfície 3-D abaixo dos gráficos, nove espectros de wavelet gerados a partir das séries temporais de preço próximo de 512 pontos AMAT. O eixo x mostra o número da amostra, o eixo y mostra o valor médio nesse ponto e o eixo z mostra o log 2 da largura da janela. Os coeficientes das ondas são calcalculados juntamente com os novos valores das séries temporais médias. Os coeficientes representam a mudança média sobre a janela. Se a largura da janela for dois, isso seria: o gráfico abaixo mostra os espectros de coeficientes. Como antes, o eixo z representa o log 2 da largura da janela. O eixo y representa a mudança da série temporal sobre a largura da janela. Um pouco contra intuitivo, os valores negativos significam que as séries temporais estão se movendo para cima. Os valores positivos significam que a série temporal está indo para baixo, uma vez que v i é maior que v i1. Observe que o espectro de coeficientes de alta freqüência (log 2 (windowWidth) 1) reflete a parte mais lenta da série temporal. Aqui, a mudança entre os valores flutua em torno de zero. Lote do espectro do coeficiente Haar. A superfície traça o maior espectro de freqüência na frente e o menor espectro de freqüência na parte de trás. Observe que o maior espectro de freqüência contém a maior parte do ruído. A transformada wavelet permite que alguns ou todos de um determinado espectro sejam removidos ajustando os coeficientes para zero. O sinal pode então ser reconstruído usando a transformada wavelet inversa. Os lotes das séries temporais de preço próximo de AMAT com vários espectro filtrados são mostrados aqui. Cada espectro que compõe uma série temporal pode ser examinado de forma independente. Um filtro de ruído pode ser aplicado a cada espectro, eliminando os coeficientes classificados como ruído ajustando os coeficientes a zero. Esta página da Web mostra uma análise de histograma dos três maiores espectro de freqüência do preço de fechamento AMAT. O resultado de um filtro que remove os pontos que se enquadram dentro de uma curva gaussiana em cada espectro também é mostrado. A curva gaussiana tem um desvio padrão e médio dos coeficientes nesse espectro. Outra maneira de remover o ruído é usar limiar. Minha página web descrevendo um algoritmo de limiar pode ser encontrada aqui. Como os filtros wavelet Haar se comparam a filtros simples, como filtros médios e médios com janelas. Um gráfico da série temporizada AMAT, filtrado com um filtro médio (que neste caso é praticamente idêntico a um filtro médio), é mostrado aqui. Esses filtros podem ser comparados aos filtros de espectro (onde um determinado espectro de coeficientes de onda está descartado) aqui .. Se um filtro wavelet é melhor do que um filtro médio com janela depende da aplicação. O filtro wavelet permite que partes específicas do espectro sejam filtradas. Por exemplo, todo o espectro de alta freqüência pode ser removido. Ou as partes selecionadas do espectro podem ser removidas, como é feito com o filtro de ruído gaussiano. O poder dos filtros Wavelet Haar é que eles podem ser calculados de forma eficiente e proporcionam muita flexibilidade. Eles podem potencialmente deixar mais detalhes na série temporal, em comparação com o filtro médio ou médio. Na medida em que esse detalhe é útil para um aplicativo, o filtro wavelet é uma escolha melhor. A transformada wavelet Haar tem uma série de vantagens: é conceitualmente simples. Isso é rápido. É eficiente na memória, pois pode ser calculado no local sem matriz temporária. É exatamente reversível sem os efeitos de borda que são um problema com outros trasformes wavelet. A transformação do Haar também possui limitações, o que pode ser um problema para algumas aplicações. Ao gerar cada conjunto de médias para o próximo nível e cada conjunto de coeficientes, a transformada Haar realiza uma média e diferença em um par de valores. Em seguida, o algoritmo muda de dois valores e calcula outra média e diferença no próximo par. O espectro de coeficientes de alta freqüência deve refletir todas as mudanças de alta freqüência. A janela Haar tem apenas dois elementos de largura. Se uma grande mudança ocorre de um valor par a um valor ímpar, a mudança não será refletida nos coeficientes de alta freqüência. Por exemplo, nas séries de tempo de 64 elementos representadas abaixo, há uma grande queda entre os elementos 16 e 17, e os elementos 44 e 45. Uma vez que são mudanças de alta freqüência, poderíamos esperar vê-las refletidas nos coeficientes de alta freqüência. No entanto, no caso da transformada wavelet Haar, os coeficientes de alta freqüência perdem essas mudanças, uma vez que estão em até elementos ímpares. A superfície abaixo mostra três coeficientes de espectro: 32, 16 e 8 (onde o espectro do coeficiente de 32 elementos é a maior freqüência). O espectro de alta freqüência é plotado na borda de ataque da superfície. O espectro de freqüência mais baixo (8) é o limite distante da superfície. Observe que faltam duas grandes mudanças de magnitude no espectro de alta freqüência (32). A primeira alteração é recolhida no próximo espectro (16) e a segunda alteração é retirada no último espectro no gráfico (8). Muitos outros algoritmos wavelet, como o algoritmo wavelet Daubechies, usam janelas sobrepostas, de modo que o espectro de alta freqüência reflete todas as mudanças nas séries temporais. Como o algoritmo Haar, Daubechies muda por dois elementos em cada etapa. No entanto, a média e a diferença são calculadas em quatro elementos, portanto não há buracos. O gráfico abaixo mostra o espectro de coeficientes de alta freqüência calculado a partir da mesma série temporal de 64 elementos, mas com o algoritmo Daubechies D4 wavelet. Because of the overlapping averages and differences the change is reflected in this spectrum. The 32, 16 and 8 coefficient spectrums, calculated with the Daubechies D4 wavelet algorithm, are shown below as a surface. Note that the change in the time series is reflected in all three coefficient spectrum. Wavelet algorithms are naturally parallel. For example, if enough processing elements exist, the wavelet transform for a particular spectrum can be calculated in one step by assigning a processor for every two points. The parallelism in the wavelet algorithm makes it attractive for hardware implementation. The Web page for downloading the Haar wavelet source code can be found here. This Java code is extensively documented and this web page includes a link to the Javadoc generated documentation. A simpler version of the Haar wavelet algorithm can be found via my web page The Wavelet Lifting Scheme. The plots above are generated with gnuplot for Windows NT. See my web page of Gnuplot links here. I am only marginally statisified with gnuplot. The software is easy to use and the Windows NT version comes with a nice GUI and a nice help system. However, when it comes to 3-D plots, the software leaves some things to be desired. The hidden line removal consumes vast amounts of virtual memory. When I tried to plot one of the coefficients surfaces with the x and z axes switched, it ran out of memory on a Windows NT system with 256K of virtual memory. Also, the surface would be much easier to understand if it could be colored with a spectrum. If you know of a better 3D plotting package that runs on Windows NT, please drop me a note. I have also had a hard time getting gnuplot to generate 2-D plots with multiple lines that have different colors. I have succeeded in doing this only when the data for each line was in a separate file, which can be awkward. I was sent the reference to Root by a physicist, Costas A. Root is a data analysis framework that is targeted at the massive amounts of data generated by high energy physics experiments at CERN and elsewhere. Although Root leans heavily toward physics, it looks to me like Root would be useful in other areas. Some of the statistical techniques that are used to analyze results in experimental physics is also used in quantitive finance, for example. Root has different goals than gnuPlot. It is targeted at a much more challenging data analysis enviroment (terabytes of data). But it has a large learning curve and Im skeptical if it can be easily used by those who do not have a sophisticated command of C. In contrast gnuPlot is a simple plotting environment. So my search for a better plotting environment continues. I know that such environments are supported by Matlab and Mathematics, but these packages are too expensive for my limited software budget. References Ripples in Mathematics: the Discrete Wavelet Transform by Jensen and la Cour-Harbo, 2001 So far this is the best book Ive found on wavelets. I read this book after I had spent months reading many of the references that follow, so Im not sure how easy this book would be for someone with no previous exposure to wavelets. But I have yet to find any easy reference. Ripples in Mathematics covers Lifting Scheme wavelets which are easier to implement and understand. The book is written at a relatively introductory level and is aimed at engineers. The authors provide implementations for a number of wavelet algorithms. Ripples also covers the problem of applying wavelet algorithms like Daubechies D4 to finite data sets (e. g. they cover some solutions for the edge problems encountered for Daubechies wavelets). Wavelets and Filter Banks by Gilbert Strang and Truong Nguyen, Wellesley Cambridge Pr, 1996 A colleague recommend this book, although he could not load it to me since it is packed away in a box. Sadly this book is hard to find. I bought my copy via abebooks, used, from a book dealer in Australia. While I was waiting for the book I read a few of Gilbert Strangs journal articles. Gilbert Strang is one of the best writers Ive encountered in mathematics. I have only just started working through this book, but it looks like an excellent, although mathematical, book on wavelets. Wavelets Made Easy by Yves Nievergelt, Birkhauser, 1999 This books has two excellent chapters on Haar wavelets (Chapter 1 covers 1-D Haar wavelets and Chapter 2 covers 2-D wavelets). At least in his coverage of Haar wavelts, Prof. Nievergelt writes clearly and includes plenty of examples. The coverage of Haar wavelets uses only basic mathematics (e. g. algebra). Following the chapter on Haar wavelets there is a chapter on Daubechies wavelets. Daubechies wavelets are derived from a general class of wavelet transforms, which includes Haar wavelets. Daubechies wavelets are better for smoothly changing time series, but are probably overkill for financial time series. As Wavelets Made Easy progresses, it gets less easy. Following the chapter on Daubechies wavelets is a discussion of Fourier transforms. The later chapters delve into the mathematics behind wavelets. Prof. Nievergelt pretty much left me behind at the chapter on Fourier transforms. For an approachable discussion of Fourier transforms, see Understanding Digital Signal Processing by Richard G. Lyons (below). As Wavelets Made Easy progresses, it becomes less and less useful for wavelet algorithm implementation. In fact, while the mathematics Nievergelt uses to describe Daubechies wavelets is correct, the algorithm he describes to implement the Daubechies transform and inverse transform seems to be wrong. Wavelets Made Easy does not live up to the easy part of its title. Given this and the apparent errors in the Daubechies coverage, I am sorry to say that I cant recommend this book. Save your money and buy a copy of Ripples in Mathematics . Discovering Wavelets by Edward Aboufadel and Steven Schlicker At 125 pages, this is one of the most expensive wavelet books Ive purchased, on a per page basis. It sells on Amazon for 64.95 US. I bought it used for 42.50. If Discovering Wavelets provided a short, clear description of wavelets, the length would be a virtue, not a fault. Sadly this is not the case. Discovering Wavelets seems to be a book written for college students who have completed calculus and linear algebra. The book is heavy on theorms (which are incompletely explained) and very sort on useful explaination. I found the description of wavelets unnecessarily obscure. For example, Haar wavelets are described in terms of linear algebra. They can be much more simply described in terms of sums, differences and the so called pyramidal algorithm. While Discovering Wavelets covers some important material, its coverage is so obscure and cursory that I found the book useless. The book resembles a set of lecture notes and is of little use without the lecture (for their students sake I hope that Aboufadel and Schlicker are better teachers than writers). This is a book that I wish I had not purchased. Wavelet Methods for Time Series Analysis by Donald B. Percival and Andrew T. Walden, Cambridge University Press, 2000 Im not a mathematician and I dont play one on television. So this book is heavy going for me. Never the less, this is a good book. For someone with a better mathematical background this might be an excellent book. The authors provide a clear discussion of wavelets and a variety of time series analsysis techniques. Unlike some mathematicians, Percival and Walden actually coded up the wavelet algorithms and understand the difficulties of implementation. They compare various wavelet families for various applications and chose the simplest one (Haar) in some cases. One of the great benifits of Wavelet Methods for Time Series Analysis is that it provides a clear summary of a great deal of the recent research. But Percival and Walden put the research in an applied context. For example Donoho and Johnstone published an equation for wavelet noise reduction. I have been unable to find all of their papers on the Web and I have never understood how to calculate some of the terms in the equation in practice. I found this definition in Wavelet Methods . The World According to Wavelets: The Story of a Mathematical Technique in the Making by Barbara Burke Hubbard, A. K. Peters, 1996 This book provides an interesting history of the development of wavelets. This includes sketches of many of the people involved in pioneering the application and mathematical theory behind wavelets. Although Ms. Hubbard makes a heroic effort, I found the explaination of wavelets difficult to follow. The Cartoon Guide To Statistics by Larry Gonic and Woollcott Smith, Harper Collins I work with a number of mathematicians, so its a bit embarrassing to have this book on my disk. I never took statistics. In college everyone I knew who took statistics didnt like it. Since it was not required for my major (as calculus was), I did not take statistics. Ive come to understand how useful statistics is. I wanted to filter out Gaussian noise, so I needed to understand normal curves. Although the title is a bit embarrassing, The Cartoon Guide to Statistics provided a very rapid and readable introduction to statistics. Understanding Digital Signal Processing by Richard G. Lyons. This book is fantastic. Perhaps the best introductory book ever written on digital signal processing. It is the book on signal processing for software engineers like myself with tepid mathematical backgrounds. It provides the best coverage Ive ever seen on DFTs and FFTs. In fact, this book has inspired me to try FFTs on financial time series (an interesting experiment, but wavelets produce better results and Fourier transforms on non-stationary time series). See my web page A Notebook Compiled While Reading Understanding Digital Signal Processing by Lyons My web page on the wavelet Lifting Scheme. The Haar wavelet algorithm expressed using the wavelet Lifting Scheme is considerably simpler than the algorithm referenced above. The Lifting Scheme also allows Haar wavelet to be extended into a wavelet algorithms that have perfect reconstruction and have better multiscale resolution than Haar wavelets. Emil Mikulic has published a simple explaination of the Haar transform, for both 1-D and 2-D data. For those who find my explaination obscure, this might be a good resource. The Wavelet Tutorial . The Engineers Ultimate Guide to Wavelet Analysis, by Robi Polikar. The ultimate guide to wavelet analysis has yet to be written, at least for my purposes. But Prof. Polikars Wavelet Tutorial is excellent. When it comes to explaining Wavelets and Fourier transforms, this is one of the best overviews Ive seen. Prof. Polikar put a great deal of work into this tutorial and I am greateful for his effort. However, there was not sufficient detail in this tutorial to allow me to create my own wavelet and inverse wavelet tranform software. This Web page (which is also available in PDF) provides a nice overview of the theory behind wavelets. But as with Robi Polikars web page, its a big step from this material to a software implementation. Whether this Web page is really friendly depends on who your friends are. If you friends are calculus and taylor series, then this paper is for you. After working my way through a good part of Wavelets Made Easy this paper filled in some hole for me. But I would not have understood it if I had read it before Wavelets Made Easy . Wim Sweldens, who has published a lot of material on the Web (he is the editor of Wavelet Digest ) and elsewhere on Wavelets is a member of this group. An interesting site with lots of great links to other web resources. Lifting Scheme Wavelets Win Sweldens and Ingrid Daubechies invented a new wavelet technique known as the lifting scheme . Gabriel Fernandez has published an excellent bibliography on the lifting scheme wavelets which can be found here. This bibliography has a pointer to Wim Sweldens and Peter Schroders lifting scheme tutorial Building Your Own Wavelets at Home . Clemens Valens has written a tutorial on the fast lifting wavelet transform. This is a rather mathematically oriented tutorial. For many, Wim Sweldens paper Building Your Ownh Wavlets at Home may be easier to under stand (although I still found this paper heavy going). Gabriel Fernandez has developed LiftPack . The LiftPack Home Page publishes the LiftPack software. The bibliography is a sub-page of the LiftPack Home page. Wavelets in Computer Graphis One of the papers referenced in Gabriel Fernandezs lifting scheme bibliography is Wim Sweldens and Peter Schroders paper Building Your Own Wavelets at Home . This is part of a course on Wavelets in Computer Graphics given at SigGraph 1994, 1995 and 1996. The sigGraph course coverd an amazing amount of material. Building Your Own Wavelets at Home was apparently covered in a morning. There are a lot of mathematically gifted people in computer graphics. But even for these people, this looks like tough going for a morning. Ive spent hours reading and rereading this tutorial before I understood it enough to implement the polynomial interpolation wavelets that it discusses. D. Donoho De-Noising By Soft-Thresholding . IEEE Trans. on Information Theory, Vol 41, No. 3, pp. 613-627, 1995. D. Donoho Adapting to Unknown Smoothness via Wavelet Shrinkage . JASA. 1995. CalTech Multi-Resolution Modeling Group Publications The Wavelets in Computer Graphics page, referenced above, is one of the links from the CalTech Multi-resolution Modeling Group Publications web page. The wavelet publications referenced on this page concentrate on wavelet applications for computer graphics. This is yet another introductory tutorial by a mathematician. It gives a feeling for what you can do with wavelets, but there is not enough detail to understand the details of implementing wavelet code. Amara Graps web page provides some good basic introductory material on wavelets and some excellent links to other Web resources. There is also a link to the authors (Amara) IEEE Computational Sciences and Engineering article on wavelets. Wave from Ryerson Polytechnic University Computational Signals Analysis Group Wave is a C class library for wavelet and signal analysis. This library is provided in source form. I have not examined it in detail yet. Wavelet and signal processing algorithms are usually fairly simple (they consist of a relatively small amount of code). My experience has been that the implementation of the algorithms is not as time consuming as understanding the algorithms and how they can be applied. Since one of the best ways to understand the algorithms is to implement and apply them, Im not sure how much leverage Wave provides unless you already understand wavelet algorithms. Wavelet Compression Arrives by Peter Dyson, Seybold Reports, April 1998. This is an increasingly dated discussion on wavelet compression products, especially for images. The description of the compression products strengths and weaknesses is good, but the description of wavelets is poor. Prof. Zbigniew R. Struzik of Centrum voor Wiskunde en Informatica in the Netherlands has done some very interesting work with wavelets in a variety of areas, including data mining in finance. This web page has a link to Prof. Struziks publications (at the bottom of the Web page). Prof. Struziks work also shows some interesting connections between fractals and wavelets. Disclaimer This web page was written on nights and weekends, using my computer resources. This Web page does not necessarily reflect the views of my employer (at the time this web page was written). Nothing published here should be interpreted as a reflection on any techniques used by my employer (at that time). Ian Kaplan, July 2001 Revised: February 2004

Comments