Weka forex trading


Weka 3: Data Mining Software em Java Weka é uma coleção de algoritmos de aprendizagem de máquinas para tarefas de mineração de dados. Os algoritmos podem ser aplicados diretamente a um conjunto de dados ou chamados de seu próprio código Java. Weka contém ferramentas para pré-processamento de dados, classificação, regressão, agrupamento, regras de associação e visualização. Também é adequado para o desenvolvimento de novos esquemas de aprendizado de máquinas. Encontrado apenas nas ilhas da Nova Zelândia, o Weka é um pássaro sem vôo com uma natureza inquisitiva. O nome é pronunciado assim. E o pássaro parece assim. Weka é um software de código aberto emitido sob a GNU General Public License. Reunimos vários cursos on-line gratuitos que ensinam aprendizado de máquinas e mineração de dados usando Weka. Confira o site dos cursos para obter detalhes sobre quando e como se inscrever. Os vídeos para os cursos estão disponíveis no Youtube. Sim, é possível aplicar Weka a grandes dados Introdução à FX Data Mining Permite uma introdução simples e rápida a um dos campos mais interessantes de hoje - Data Mining. Existe uma ampla gama de aplicações de Mineração de Dados. Devemos integrar a Data Mining na nossa negociação FX. FX, FOREX ou o Foreign Exchange FX é o maior mercado em termos de volume negociado diariamente. Tem três níveis principais de participantes: os meninos grandes, o intermediário e os comerciantes simples como você e eu. Tem uma natureza especulativa, o que significa que a maior parte do tempo não trocamos bens. Nós nos preocupamos apenas com a diferença e desejamos comprar baixo e vender alto ou vender alto e comprar baixo. Por operações curtas ou longas, podemos obter pips. Dependendo do seu volume comercial, o valor do pip pode variar de um centavo a 10 e mais. Esta é a principal maneira de ganhar dinheiro no mercado FX (juntamente com Carry Trade, Brokering, Arbitrage e mais). Observe que o mercado FX é enorme, mas é adequado para todos os níveis de jogadores. Pense no mercado FX como um supermercado infinito com inúmeros produtos e clientes, mas também tem um número infinito de caixas. Significa que existe uma quantidade igual de oportunidades para todos. Mineração de Dados e Aprendizado de Máquinas A Mineração de Dados é um sub-campo maduro da Ciência da Computação. É sobre uma grande quantidade de dados e extração não trivial de conhecimentos utilizáveis ​​a partir de enormes quantidades de dados. É feito por processamento inteligente de dados usando algoritmos de Aprendizado de Máquinas. A mineração de dados não é apenas CRUD (Criar, Ler, Atualizar e Excluir). Temos vários métodos de Data Mining. Aqui os métodos e algumas aplicações. Classificação - classificando o email como spam, classificando uma transação como fraude. Associação - YouTube nos sugere novos vídeos baseados em nossa história. A Amazon nos sugere mais itens durante o check-out. Clustering - análise de dados não estruturados, como notícias econômicas e opiniões para encontrar grupos comuns. Process Mining - examine os logs dos operadores de chamadas para encontrar operações ineficientes. Text Mining - notícias de mineração ou análise técnica para o reconhecimento de padrões. Algorithmic Trading é uma execução automatizada de um algoritmo de negociação. No nosso caso, o algoritmo de negociação vem da mineração. O comércio automatizado é feito por algum rei da linguagem de programação. Velocidade e robustez são pontos-chave aqui: o comerciante humano não consegue vencer o programa de computador em relação a esses atributos. Poderia ser HFT (High Frequency Trading) e programação de baixo nível (como C) ou negociação de longo prazo e programação de alto nível (como Java). Mix Algorithmic Trading with Data Mining Misturando mineração de dados em Algorithmic Trading é importante. O mais importante é o dado. Um princípio simples afirma que, se seus dados não forem bons o suficiente, seus modelos não serão suficientemente bons (GIGO). Trata-se de criar um modelo, implementá-lo e testá-lo (como sempre). Atualmente esse fluxo é principalmente manual. Software de mineração de dados Existem muitas opções de software de código aberto no campo da mineração de dados. WEKA é uma estrutura de Data Mining originada na Universidade de Waikato, Hamilton, Nova Zelândia. O WEKA está escrito em Java e tem uma ótima API. Além disso, você possui implementações para a maioria dos bem conhecidos algoritmos de Aprendizado de Máquinas. A mistura de boas ferramentas é vital. Existem muitos modelos comerciais possíveis. Jogar uma moeda é um sistema de comércio estúpido, mas é um sistema comercial. Precisamos da Data Mining para encontrar o ouro. As boas ferramentas são fáceis de ter tanta sorte com a mineração. Se você está procurando mais informações sobre o comércio científico de FX, o próximo passo é explorar as ferramentas de Mineração de Dados e os dados históricos. Visite algonell para mais detalhes. Você pode nos encontrar no Twitter. Facebook. Google. LinkedIn e WordPress. Consultor Expert MétaTrader Devido às características únicas de diferentes pares de moedas, muitas estratégias quantitativas de Forex são projetadas com um par de moedas específicas em mente. Embora isso possa produzir muitas estratégias de negociação lucrativas, também há vantagens em desenvolver estratégias que podem ser negociadas em vários pares de moedas. Isso introduz um elemento de diversificação que pode fornecer um nível adicional de proteção contra desvantagem. Daniel Fernandez publicou recentemente um sistema que ele projetou para negociar em cada um dos quatro maiores de Forex. Seu objetivo era encontrar um sistema que teria produzido um histórico de 20 anos de negociação rentável em EURUSD, GBPUSD, USDJPY e USDCHF. Daniel usa uma abordagem de mineração de dados para desenvolver uma estratégia para negociar as quatro principais divisas. Para construir seu sistema, Daniel usou seu software de mineração de dados para definir sinais de entrada e saída que teriam produzido uma estratégia de negociação lucrativa em cada um dos quatro pares de moedas nos últimos 20 anos. O que ele aparece é uma combinação de três regras baseadas em preços que formam a base de sua estratégia Forex Majors. Daniel8217s Forex Majors Strategy Daniel8217s A estratégia Forex Majors é muito simples na medida em que sempre tem uma posição, longa ou curta, em cada um dos quatro pares de moedas que negocia. Baseia todas as suas negociações em gráficos diários. A estratégia vai longa quando as três condições seguintes são atendidas: a estratégia é curta quando as três condições seguintes são atendidas: como você pode ver, a estratégia é basicamente uma estratégia otimizada seguindo a estratégia. Isso faz sentido, porque Daniel afirma no início de seu artigo que a tendência de longo prazo seguindo as estratégias são geralmente as melhores estratégias para negociar múltiplos mercados. Uma regra adicional que a estratégia de Daniel8217s usa é uma parada-perda baseada em ATR. A perda de parada fixa é definida em 180 da ATR de 20 dias. Se a perda de parada for disparada, a estratégia permanece fora do mercado até que um sinal seja gerado na direção oposta. O teste indica que a reintrodução em um sinal na mesma direção afetou negativamente o desempenho. Backtesting Performance Os resultados de backtesting que Daniel incluiu em sua publicação mostram que a estratégia foi bastante lucrativa. Produziu um índice de ganhos de 45, um fator de lucro de 1,38, e um índice de recompensa para risco de 1,68. A maior preocupação de Daniel8217 sobre a estratégia foi que o período de retirada máxima representava um tempo muito longo. De acordo com os números de Daniel8217s, o retorno anual médio foi de 9,67. Isso consistiu em 16 anos rentáveis, 4 anos perdidos e um ano que basicamente se rompeu. O melhor ano foi um retorno de 37,76, eo pior ano foi uma perda de 20,2. Daniel observa que este sistema não representaria uma boa estratégia autônoma por causa de seus retornos em relação a remessas máximas. No entanto, ele sugere que poderia ser uma peça interessante de uma estratégia maior e multi-sistema. Análise e Previsão da Série Horária com a Weka 1 Introdução A análise da série temporal é o processo de usar técnicas estatísticas para modelar e explicar uma série de dados dependentes do tempo pontos. A previsão de séries temporais é o processo de utilização de um modelo para gerar previsões (previsões) para eventos futuros com base em eventos passados ​​conhecidos. Os dados da série temporal têm uma ordem temporal natural - isso difere das aplicações típicas de aprendizagem de máquinas de mineração de dados, em que cada ponto de dados é um exemplo independente do conceito a ser aprendido e a ordenação de pontos de dados dentro de um conjunto de dados não importa. Exemplos de aplicações de séries temporais incluem: planejamento de capacidade, reabastecimento de inventário, previsão de vendas e níveis de pessoal futuros. Weka (gt 3.7.3) possui agora um ambiente dedicado de análise de séries temporais que permite que modelos de previsão sejam desenvolvidos, avaliados e visualizados. Este ambiente assume a forma de uma guia do plugin na interface gráfica do usuário do Wekas ​​Explorer e pode ser instalado através do gerenciador de pacotes. A estrutura da série temporal Wekas ​​leva uma abordagem de mineração learningdata da máquina para modelar séries temporais transformando os dados em uma forma que os algoritmos de aprendizagem proposicionais padrão podem processar. Ele faz isso removendo a ordem temporal de exemplos de entrada individuais, codificando a dependência de tempo através de campos de entrada adicionais. Esses campos às vezes são chamados de variáveis ​​atrasadas. Vários outros campos também são computados automaticamente para permitir que os algoritmos modelem tendências e sazonalidade. Depois que os dados foram transformados, qualquer um dos algoritmos de regressão do Wekas ​​pode ser aplicado para aprender um modelo. Uma escolha óbvia é aplicar regressão linear múltipla, mas qualquer método capaz de prever um alvo contínuo pode ser aplicado - incluindo métodos não lineares poderosos, como máquinas de vetor de suporte para regressão e árvores modelo (árvores de decisão com funções de regressão linear nas folhas) . Esta abordagem de análise e previsão de séries temporais é muitas vezes mais poderosa e mais flexível que as técnicas estatísticas clássicas, como ARMA e ARIMA. O ambiente de modelagem da série temporal de tempo acima mencionado está disponível como software livre de código aberto na versão CE do Weka. A mesma funcionalidade também foi enrolada em um plugin Spoon Perspective que permite que os usuários da Pentaho Data Integration (PDI) trabalhem com a análise de séries temporais dentro da GUI da Spoon PDI. Há também um passo de plugin para PDI que permite que os modelos que foram exportados do ambiente de modelagem de séries temporais sejam carregados e usados ​​para fazer previsões futuras como parte de uma transformação ETL. Os plugins de perspectiva e etapa para PDI fazem parte da edição da empresa. 2 Requisitos O ambiente de modelagem da série temporal Weka requer o Weka gt 3.7.3 e é fornecido como um pacote que pode ser instalado através do gerenciador de pacotes. 3 Usando o ambiente da série de tempo Uma vez instalado através do gerenciador de pacotes, o ambiente de modelagem da série temporal pode ser encontrado em uma nova guia na GUI do Wekas ​​Explorer. Os dados são trazidos para o ambiente da maneira normal, carregando de um arquivo, URL ou banco de dados através do painel de pré-processamento do Explorer. O ambiente possui opções de configuração básicas e avançadas. Estas são descritas nas seções a seguir. 3.1 Configuração básica Neste exemplo, a linha aérea de dados de amostra (incluída na embalagem) foi carregada no Explorer. Este dado é um conjunto de dados de referência acessível ao público que tem uma série de dados: números mensais de passageiros para uma companhia aérea para os anos 1949 a 1960. Além dos números de passageiros, os dados também incluem um carimbo de data. O painel de configuração básica seleciona automaticamente a série de alvo único e o campo Data do carimbo de data / hora. Na seção Parâmetros da GUI (lado superior direito), o usuário pode inserir o número de etapas de tempo para prever além do final dos dados fornecidos. Abaixo da caixa suspensa do carimbo de data / hora, há uma caixa suspensa para especificar a periodicidade dos dados. Se os dados tiverem um carimbo de data / hora e o carimbo de data / hora for uma data, o sistema pode detectar automaticamente a periodicidade dos dados. Abaixo disso, há caixas de seleção que permitem ao usuário optar por ter o sistema calcular intervalos de confiança para suas previsões e realizar uma avaliação de desempenho nos dados de treinamento. Mais detalhes sobre todas essas opções são fornecidos nas seções subseqüentes. 3.1.1 Seleção de destino No canto superior esquerdo do painel de configuração básico é uma área que permite ao usuário selecionar qual (s) campo (s) alvo nos dados que deseja prever. O sistema pode modelar múltiplos campos de destino simultaneamente para capturar dependências entre eles. Devido a isso, modelar várias séries simultaneamente pode dar resultados diferentes para cada série do que modelá-las individualmente. Quando existe apenas um único alvo nos dados, o sistema seleciona-o automaticamente. Na situação em que existem potencialmente múltiplos destinos, o usuário deve selecioná-los manualmente. A captura de tela abaixo mostra alguns resultados em outro conjunto de dados de referência. Nesse caso, os dados são vendas mensais (em litros por mês) de vinhos australianos. Existem seis categorias de vinho nos dados, e as vendas foram registradas mensalmente desde o início de 1980 até meio de 1995. A previsão modelou duas séries simultaneamente: Fortificado e Branco seco. 3.1.2 Parâmetros básicos No canto superior direito do painel de configuração básico é uma área com vários parâmetros simples que controlam o comportamento do algoritmo de previsão. Número de unidades de tempo O primeiro e o mais importante destes é o número de unidades de tempo para prever a caixa de texto. Isso controla a quantidade de passos de tempo no futuro para o qual o provisor proverá previsões. O padrão é definido como 1, ou seja, o sistema fará uma única previsão de 1 passo a frente. Para os dados da companhia aérea, estabelecemos isso para 24 (para fazer previsões mensais no futuro por um período de dois anos) e para os dados do vinho, estabelecemos para 12 (para fazer previsões mensais no futuro por um período de um ano). As unidades correspondem à periodicidade dos dados (se conhecidos). Por exemplo, com dados registrados diariamente, as unidades de tempo são dias. Marcação de horário A seguir é a caixa suspensa Selo de horário. Isso permite que o usuário selecione qual, se for o caso, o campo no dado armazena o carimbo de data / hora. Se houver um campo de data nos dados, o sistema seleciona isso automaticamente. Se não houver data presente nos dados, a opção ltUtilize uma indexação de tempo artificial é selecionada automaticamente. O usuário pode selecionar o carimbo de data / hora manualmente e precisará fazê-lo se o carimbo de data / hora for um campo numérico não datado (porque o sistema não pode distinguir este de um campo alvo potencial). O usuário também tem a opção de selecionar ltNonegt na caixa suspensa para indicar ao sistema que nenhum selo de horário (artificial ou não) deve ser usado. Periodicidade Abaixo da caixa suspensa Selo de horário é uma caixa suspensa que permite ao usuário especificar a Periodicidade dos dados. Se um campo de data foi selecionado como o carimbo de data / hora, o sistema pode usar heurísticas para detectar automaticamente a periodicidade - ltDetect automaticamentegt será configurado como padrão se o sistema tiver encontrado e definir um atributo de data como o carimbo de data / hora inicialmente. Se o carimbo de data / hora não for uma data, o usuário pode dizer explicitamente ao sistema qual a periodicidade ou selecionar ltUnknowngt se não for conhecido. Periodicidade é usada para definir padrões razoáveis ​​para a criação de variáveis ​​atrasadas (cobertas abaixo na seção Configuração Avançada). No caso em que o carimbo de data / hora é uma data, a periodicidade também é usada para criar um conjunto padrão de campos derivados da data. Por exemplo. Para uma periodicidade mensal, o mês do ano e o trimestre dos campos são criados automaticamente. Abaixo da caixa suspensa Periodicidade é um campo que permite ao usuário especificar períodos de tempo que não devem contar como um incremento de carimbo de tempo em relação ao processo de modelagem, previsão e visualização. Por exemplo, considere dados de negociação diária para uma determinada ação. O mercado está fechado para negociação durante o fim de semana e nos feriados públicos, portanto, esses períodos de tempo não contam como um incremento e a diferença, por exemplo, entre o fechamento do mercado na sexta-feira e na segunda-feira seguinte é uma unidade de tempo (não três). A heurística usada para detectar automaticamente a periodicidade não pode suportar esses buracos nos dados, pelo que o usuário deve especificar uma periodicidade para usar e fornecer os períodos de tempo que não são considerados como incrementos no campo de texto Saltar. O campo Saltar lista pode aceitar cadeias de caracteres, como fim de semana, sábado, terça, mar e outubro, datas específicas (com seqüência de formatação opcional), como 2017-07-04yyyy-MM-dd e números inteiros (que são interpretados de forma diferente dependendo do especificado periodicidade). Para dados diários, um número inteiro é interpretado como o dia do ano para dados horários é a hora do dia e para dados mensais é o mês do ano. Para datas específicas, o sistema possui uma seqüência de formatação padrão (aaaa-MM-ddTHH: mm: ss) ou o usuário pode especificar um para usar sufixando a data com ltformatgt. Se todas as datas na lista tiverem o mesmo formato, então ele só precisa ser especificado uma vez (para a primeira data presente na lista) e então isso se tornará o formato padrão para datas subseqüentes na lista. As seguintes capturas de tela mostram um exemplo para os dados do appleStocks2017 (encontrado no diretório de dados de amostra da embalagem). Este arquivo contém dados diários altos, baixos, de abertura e de fechamento para os estoques de computadores da Apple de 3 de janeiro a 10 de agosto de 2017. Os dados foram retirados do Yahoo finance (finance. yahooqhpsAAPLampa00ampb3ampc2017ampd07ampe10ampf2017ampgd). Uma previsão de cinco dias para o valor de encerramento diário foi definida, um atraso máximo de 10 configurado (veja a criação de Lag na Seção 3.2), a periodicidade definida para Diariamente e as seguintes entradas da Lista de saltos fornecidas para cobrir fins de semana e feriados públicos: fim de semana, 2017-01-17yyyy-MM-dd, 2017-02-21, 2017-04-22, 2017-05-30, 2017-07-04 Observe que é importante inserir datas para feriados públicos (e quaisquer outras datas que Não conta como incrementos) que ocorrerão durante o período de tempo futuro que está sendo previsto. Intervalos de confiança Abaixo da caixa suspensa Selo de hora é uma caixa de seleção e um campo de texto que o usuário pode optar por que o sistema computa os limites de confiança nas previsões que ele faz. O nível de confiança padrão é 95. O sistema usa as previsões feitas para os valores-alvo conhecidos nos dados de treinamento para definir os limites de confiança. Assim, um nível de confiança 95 significa que 95 dos valores reais do alvo caíram dentro do intervalo. Observe que os intervalos de confiança são computados para cada nível passo a passo de forma independente, ou seja, todas as previsões de um passo em frente nos dados de treinamento são usadas para calcular o intervalo de confiança de um passo a frente, todas as previsões de duas etapas são Costumava calcular o intervalo de duas etapas, e assim por diante. Execute avaliação Por padrão, o sistema é configurado para aprender o modelo de previsão e gerar uma previsão além do final dos dados de treinamento. Selecionar a caixa de seleção Executar avaliação indica ao sistema que realize uma avaliação do previsão usando os dados de treinamento. Ou seja, uma vez que o pré-programador tenha sido treinado nos dados, ele é aplicado para fazer uma previsão em cada ponto do tempo (na ordem), passando pelos dados. Essas previsões são coletadas e resumidas, usando várias métricas, para cada etapa futura prevista, ou seja, todas as previsões passo a passo são coletadas e resumidas, todas as previsões em duas etapas são coletadas e resumidas, e assim por diante. Isso permite que o usuário veja, até certo ponto, como as previsões mais próximas no tempo se comparam com as mais próximas do tempo. O painel de Configuração Avançada permite ao usuário ajustar a configuração, selecionando quais métricas para calcular e se deve manter alguns dados do final dos dados de treinamento como um conjunto de teste separado. A captura de tela a seguir mostra a avaliação padrão dos dados de treinamento do vinho australiano para os alvos Fortified e Dry-white. 3.1.3 Saída A saída gerada por configurações disponíveis a partir do painel de configuração básico inclui a avaliação de treinamento (mostrada na captura de tela anterior), gráficos de valores previstos além do final dos dados de treinamento (como mostrado na Seção 3.1), valores previstos em formato de texto E uma descrição textual do modelo aprendido. Existem mais opções de saída disponíveis no painel de configuração avançado (discutido na próxima seção). A próxima captura de tela mostra o modelo aprendido nos dados da companhia aérea. Por padrão, o ambiente da série temporal é configurado para aprender um modelo linear, ou seja, uma máquina de vetor de suporte linear para ser preciso. Controle total sobre o modelo subjacente aprendido e seus parâmetros estão disponíveis no painel de configuração avançado. Os resultados da análise da série temporal são salvos em uma lista de resultados no lado inferior esquerdo da tela. Uma entrada nesta lista é criada sempre que uma análise de previsão é iniciada pressionando o botão Iniciar. Todos os resultados e gráficos de texto associados a uma análise são armazenados com a respectiva entrada na lista. Também é armazenado na lista o próprio modelo de previsão. O modelo pode ser exportado para o disco, selecionando Salvar modelo de previsão a partir de um menu popup contextual que aparece ao clicar com o botão direito do mouse em uma entrada na lista. É importante perceber que, ao salvar um modelo, o modelo que é salvo é aquele que é construído com os dados de treinamento correspondentes a essa entrada na lista de histórico. Se estiver executando uma avaliação em que alguns dos dados são exibidos como um conjunto de teste separado (veja abaixo na Seção 3.2), o modelo salvo só foi treinado em parte dos dados disponíveis. É uma boa idéia desligar a avaliação de retenção e construir um modelo em todos os dados disponíveis antes de salvar o modelo. 3.2 Configuração Avançada O painel de configuração avançada fornece ao usuário o controle total sobre uma série de aspectos da análise de previsão. Estes incluem a escolha do modelo e parâmetros subjacentes, a criação de variáveis ​​atrasadas, a criação de variáveis ​​derivadas de um carimbo de data, especificação de dados de sobreposição, opções de avaliação e controle sobre o resultado criado. Cada um deles tem um sub-painel dedicado na configuração avançada e é discutido nas seções a seguir. 3.2.1 Aprendiz base O painel Aprendiz da Base fornece controle sobre o qual o algoritmo de aprendizado Weka é usado para modelar as séries temporais. Também permite ao usuário configurar parâmetros específicos para o algoritmo de aprendizagem selecionado. Por padrão, o ambiente de análise é configurado para usar uma máquina de vetor de suporte linear para regressão (Wekas ​​SMOreg). Isso pode ser facilmente alterado pressionando o botão Escolher e selecionando outro algoritmo capaz de prever uma quantidade numérica. Ajustar os parâmetros individuais do algoritmo de aprendizagem selecionado pode ser realizado clicando no painel de opções. Encontrado imediatamente à direita do botão Escolher. Ao fazê-lo, abre uma caixa de diálogo de opções para o algoritmo de aprendizagem. 3.2.2 Criação de atraso O painel de criação de Lag permite ao usuário controlar e manipular como as variáveis ​​atrasadas são criadas. As variáveis ​​retardadas são o principal mecanismo pelo qual a relação entre os valores passados ​​e atuais de uma série pode ser capturada por algoritmos de aprendizagem proposicional. Eles criam uma janela ou instantâneo ao longo de um período de tempo. Essencialmente, o número de variáveis ​​atrasadas criadas determina o tamanho da janela. O painel de configuração básica usa a configuração de Periodicidade para definir valores padrão razoáveis ​​para o número de variáveis ​​atrasadas (e, portanto, o tamanho da janela) criado. Por exemplo, se você tivesse dados de vendas mensais, incluindo atrasos até 12 etapas de tempo no passado, fariam sentido para dados horários, você pode querer atrasos até 24 passos de tempo ou talvez 12. O lado esquerdo do painel de criação de atraso Tem uma área chamada comprimento de atraso que contém controles para configuração e afinação de atrasos de atraso. No topo desta área há uma caixa de seleção Ajuste para variância que permite ao usuário optar por ter o sistema compensar a variação nos dados. Isso faz isso tomando o log de cada alvo antes de criar variáveis ​​atrasadas e construir o modelo. Isso pode ser útil se a variância (quanto os dados saltam) aumenta ou diminui ao longo do tempo. Ajustar por variância pode ou não melhorar o desempenho. É melhor experimentar e ver se isso ajuda na combinação de seleção do dataparameter. Abaixo da caixa de seleção ajustar para variação é uma caixa de seleção Usar intervalos de atraso personalizados. Isso permite que o usuário altere os comprimentos de latência padrão que são configurados pelo painel de configuração básico. Observe que os números mostrados para os comprimentos não são necessariamente os padrões que serão usados. Se o usuário selecionou ltDetectar automaticamente na caixa suspensa de periodicidade no painel de configuração básico, os comprimentos de atraso padrão reais serão configurados quando os dados forem analisados ​​em tempo de execução. O campo de texto de atraso mínimo permite que o usuário especifique o passo de tempo anterior mínimo para criar um campo atrasado para - p. Um valor de 1 significa que uma variável atrasada será criada que contenha valores de destino no tempo - 1. O campo de texto de atraso máximo especifica o passo de tempo anterior máximo para criar uma variável retardada para - p. Um valor de 12 significa que será criada uma variável retardada que mantenha os valores alvo no tempo - 12. Todos os períodos de tempo entre o atraso mínimo e máximo serão transformados em variáveis ​​atrasadas. É possível afinar a criação de variáveis ​​dentro do mínimo e máximo, inserindo um intervalo no campo de texto de seleção de atraso fino de sintonia. Na captura de tela abaixo, temos dados semanais, então optamos por definir atrasos mínimos e máximos para 1 e 52, respectivamente. Dentro disso, optamos por criar apenas atrasos 1-26 e 52. No lado direito do painel de criação de atraso é uma área chamada de média. Ao selecionar a caixa de seleção Retardos longos consecutivos médios, o número de variáveis ​​retrasadas deve ser reduzido pela média dos valores de várias variáveis ​​consecutivas (no tempo). Isso pode ser útil quando você quer ter uma janela larga sobre os dados, mas talvez não tenha muitos pontos de dados históricos. Uma regra de ouro indica que você deve ter pelo menos 10 vezes mais linhas que campos (há exceções a isso dependendo do algoritmo de aprendizagem - por exemplo, ferramentas de vetor de suporte podem funcionar muito nos casos em que existam muitos outros campos que linhas). Avaliar uma série de variáveis ​​atrasadas consecutivas em um único campo reduz o número de campos de entrada com perda de informações provavelmente mínima (pelo menos, pelo menos). O tempo de atraso médio mais longo do que o campo de texto permite que o usuário especifique quando o processo de média começará. Por exemplo, na captura de tela acima, isso é definido como 2, o que significa que o tempo - 1 e a hora - 2 variáveis ​​atrasadas serão deixadas intactas enquanto o tempo - 3 e superior será substituído por médias. Os 35 atrasos consecutivos para a média controlam quantas variáveis ​​atrasadas serão parte de cada grupo médio. Por exemplo, na captura de tela acima, isso também está definido para 2, o que significa que o tempo - 3 e o tempo - 4 serão calculados para formar um novo tempo de campo - 5 e tempo - 6 serão calculados para formar um novo campo e assim por diante. Observe que apenas a variável atrasada consecutiva será calculada de forma média, portanto, no exemplo acima, onde já ajustamos a criação de atraso selecionando os atrasos 1-26 e 52, o tempo 26 não seria calculado com o tempo - porque não são consecutivo. 3.2.3 Atributos periódicos O painel de atributos periódicos permite ao usuário personalizar quais atributos periódicos derivados da data são criados. Esta funcionalidade só está disponível se os dados contiverem um carimbo de data. Se o carimbo de data / hora for uma data, determinados padrões (conforme determinado pela configuração de Periodicidade no painel de configuração básico) são definidos automaticamente. Por exemplo, se os dados tiverem um intervalo de tempo mensal, o mês do ano e trimestre serão automaticamente incluídos como variáveis ​​nos dados. O usuário pode selecionar a caixa de seleção de personalização na área de criação periódica baseada na data para desativar, selecionar e criar novas variáveis ​​derivadas de data customizadas. Quando a caixa de seleção é selecionada, o usuário é apresentado com um conjunto de variáveis ​​pré-definidas como mostrado na seguinte captura de tela: deixar todas as variáveis ​​padrão não selecionadas resultará em nenhuma variável derivada da data sendo criada. Além dos padrões predefinidos, é possível criar variáveis ​​derivadas de data personalizadas. Uma nova variável derivada da data personalizada, com base em uma regra, pode ser criada pressionando o botão Novo. Isso traz um editor como mostrado abaixo: neste exemplo, criamos uma variável derivada da data customizada chamada ChistmasBreak que compreende um único teste baseado em data (mostrado na área da lista na parte inferior da caixa de diálogo). Esta variável é booleana e assumirá o valor 1 quando a data for entre 24 de dezembro e 2 de janeiro inclusive. Testes adicionais podem ser adicionados para permitir que a regra seja avaliada como verdadeira para períodos disjuntos no tempo. O campo de texto Nome do campo permite que o usuário dê uma nova variável a um nome. Abaixo estão dois botões. O botão Novo adiciona uma nova prova à regra e o botão Excluir exclui o teste atualmente selecionado da lista na parte inferior. Selecionar um teste na lista copia seus valores para as caixas suspensas para os limites superior e inferior do teste, conforme mostrado na área do intervalo de teste da captura de tela acima. Cada caixa suspensa edita um elemento de um limite. Eles são (da esquerda para a direita): operador de comparação, ano, mês do ano, semana do ano, semana do mês, dia do ano, dia do mês, dia da semana, hora do dia, minuto Da hora e do segundo. Dicas de ferramentas que dão a função de cada aparecem quando o mouse paira sobre cada caixa suspensa. Cada caixa suspensa contém os valores legais para esse elemento do limite. Os caracteres Asterix () são curingas e combinam com qualquer coisa. Abaixo da área do intervalo de teste é um campo de texto de etiqueta. Isso permite que um rótulo de string seja associado a cada intervalo de teste em uma regra. Todos os intervalos em uma regra devem ter um rótulo, ou nenhum deles. Ter alguns intervalos com um rótulo e alguns sem irá gerar um erro. Se todos os intervalos tiverem um rótulo, estes serão usados ​​para definir o valor do campo personalizado associado à regra em vez de apenas 0 ou 1. A avaliação da regra prossegue como uma lista, ou seja, de cima para baixo e o primeiro intervalo Que avalia como verdadeiro é aquele que é usado para definir o valor do campo. Um rótulo padrão (ou seja, um que é atribuído se nenhum outro intervalo de teste corresponder) pode ser configurado usando todos os curingas para o último intervalo de teste na lista. No caso em que todos os intervalos tenham rótulos e, se não houver configuração padrão de catch-all, o valor para o campo personalizado será definido como ausente se nenhum intervalo corresponder. Isso é diferente do caso em que os rótulos não são usados ​​eo campo é um sinalizador binário - neste caso, a falha ao combinar um intervalo resulta no valor do campo personalizado sendo definido como 0. 3.2.4 Dados de sobreposição Os dados de Sobreposição O painel permite ao usuário especificar campos (se houver) que devem ser considerados como dados de sobreposição. O padrão não é usar dados de sobreposição. Por dados de sobreposição, queremos dizer campos de entrada que devem ser considerados externos aos processos de transformação de dados e previsão de ciclo fechado. Ou seja, dados que não devem ser previstos, não podem ser derivados automaticamente e serão fornecidos para os períodos de tempo futuros a serem previstos. Na captura de tela abaixo, os dados do vinho australiano foram carregados no sistema e Fortified foi selecionado como o alvo a prever. Ao selecionar a caixa de seleção Usar dados sobrepostos, o sistema mostra os campos restantes nos dados que não foram selecionados como alvos ou na carimbo de data / hora. Esses campos estão disponíveis para uso como dados de sobreposição. O sistema usará os campos de sobreposição selecionados como entradas para o modelo. Desta forma, é possível que o modelo leve em consideração condições históricas especiais (por exemplo, crash do mercado de ações) e fator nas condições que ocorrerão em pontos conhecidos no futuro (por exemplo, promoções de vendas irregulares que ocorreram historicamente e estão planejadas para o futuro ). Essas variáveis ​​são muitas vezes referidas como variáveis ​​de intervenção na literatura de séries temporais. Ao executar uma análise que usa dados de sobreposição, o sistema pode informar que não consegue gerar uma previsão além do final dos dados. Isso ocorre porque não temos valores para os campos de sobreposição para os períodos de tempo solicitados, portanto o modelo não consegue gerar uma previsão para o (s) alvo (s) selecionado (s). Observe que é possível avaliar o modelo nos dados de treinamento e ou dados aguardados a partir do final dos dados de treinamento porque esses dados possuem valores para campos de sobreposição. Mais informações sobre a elaboração de previsões que envolvem dados de sobreposição são fornecidas na documentação sobre o passo do plugin de previsão para Pentaho Data Integration. 3.2.5 Avaliação O painel de avaliação permite ao usuário selecionar quais métricas de avaliação desejam ver e configurar se deve avaliar o uso dos dados de treinamento e / ou um conjunto de dados estendidos a partir do final dos dados de treinamento. Selecionar Executar avaliação no painel de Configuração Básica é equivalente a selecionar Avaliar no treinamento aqui. Por padrão, o erro absoluto médio (MAE) eo erro quadrático médio (RMSE) das previsões são computados. O usuário pode selecionar as métricas para calcular na área de métricas no lado esquerdo do painel. As métricas disponíveis são: erro absoluto médio (MAE): soma (abs (predito - real)) N Erro quadrático médio (MSE): soma ((predito - real) 2) N erro quadrático médio da raiz (RMSE): sqrt (soma ((Predito - real) 2) N) erro médio de porcentagem absoluta (MAPE): soma (abs (real predito real)) N Precisão de direção (DAC): contagem (sinal (sinal atual (atual) - realprevious) (predecorrente - predprevious )) N erro absoluto relativo (RAE): soma (abs (predito - real)) soma (abs (previoustarget - real)) Erro relativo ao quadrado relativo (RRSE): sqrt (soma ((predito - real) 2) N) sqrt (Soma (previoustarget - real) 2) N) As medidas relativas dão uma indicação de como as previsões dos pronosticos do bom estão fazendo em comparação com apenas usar o último valor alvo conhecido como a previsão. Eles são expressos como uma porcentagem, e os valores mais baixos indicam que os valores previstos são melhores previsões do que apenas usar o último valor alvo conhecido. Uma pontuação de gt100 indica que o pré-download não está melhorando (ou pior ainda) do que prever o último valor alvo conhecido. Note-se que o último valor alvo conhecido é relativo ao passo em que a previsão está sendo feita - por exemplo, Uma previsão de 12 passos é comparada em relação ao uso do valor alvo 12 etapas de tempo anteriores à predição (já que este é o último valor real conhecido). O campo de texto à direita da caixa de seleção Avaliar em treinamento aberto permite ao usuário selecionar quanto dos dados de treinamento aguardam do final da série para formar um conjunto de teste independente. O número inserido aqui pode indicar um número absoluto de linhas ou pode ser uma fração dos dados de treinamento (expresso como um número entre 0 e 1). 3.2.6 Saída O painel Saída fornece opções que controlam a saída textual e gráfica produzida pelo sistema. O painel é dividido em duas seções: opções de saída e opções de representação gráfica. O primeiro controla o que a saída textual aparece na principal área de Saída do ambiente, enquanto o último controla quais gráficos são gerados. Na área Saída do painel, selecionar as previsões de saída no passo faz com que o sistema publique os valores reais e previstos para um único alvo em uma única etapa. O erro também é gerado. Por exemplo, as previsões de 5 passos anteriores em um conjunto de teste de espera para o alvo Fortified nos dados do vinho australiano são mostradas na seguinte captura de tela. Selecionar Saídas de previsões futuras além do final da série fará com que o sistema exiba os dados de treinamento e os valores previstos (até o número máximo de unidades de tempo) além do final dos dados para todos os alvos previstos pelo provisorista. Os valores previstos são marcados com a para tornar claro o limite entre os valores de treinamento e os valores previstos. Na área de opções de representação gráfica do painel, o usuário pode selecionar quais gráficos são gerados pelo sistema. Semelhante ao resultado textual, as previsões em um passo específico podem ser representadas graficadas selecionando a caixa de seleção Previsões do gráfico na etapa. Ao contrário do resultado textual, todos os alvos previstos pelo previsor serão representados graficamente. Selecionar a caixa de seleção Graph target at steps permite que um único alvo seja representado graficamente em mais de um passo - e. Um gráfico pode ser gerado que mostra 1 passo a frente, 2 passos e as previsões de 5 passos para o mesmo alvo. A caixa suspensa Destino a gráfico e o campo Etapas para gritar texto ficam ativos quando a caixa de seleção Gráfico alvo nas etapas está selecionada. A seguinte captura de tela mostra a representação gráfica do alvo fortificado dos dados do vinho australiano em um conjunto de espera nas etapas 1,2,3,6 e 12. 4 Usando a API Aqui está um exemplo que mostra como construir um modelo de previsão e fazer Uma previsão programática. Javadoc para o pacote de previsão de séries temporais pode ser encontrado em weka. sourceforgedoc. packagestimeseriesForecasting 5 Time Series Analysis PDI Spoon Plugin O ambiente de análise de séries temporais descrito nas seções anteriores também pode ser usado na interface de usuário Pentaho Data Integrations Spoon. Aparece como uma perspectiva dentro da Colher e funciona exatamente da mesma maneira como descrito acima. A única diferença é a forma como os dados são trazidos para o ambiente da série temporal. Quando executado dentro da Spoon, os dados podem ser enviados para o ambiente da série temporal através de uma etapa de Entrada de Tabela ou Tabela. Right-clicking on either of these steps brings up a contextual menu selecting Forecast from this menu activates the time series Spoon perspective and loads data from the data base table configured in the Table InputOutput step into the time series environment.

Comments

Popular Posts