Aprendizado de máquina no trading: teoria, prática, negociação e não só - página 1373

 
elibrarius:
Eu estava a serrar o Darch na R. Encontrei um par de bugs, descrevi-os nos comentários. Após algumas semanas de silêncio, este Darch acabou por estar no arquivo da CRANa.
Pediu ao desenvolvedor para consertar alguns consertos, ele o fez. E depois voltou completamente para a versão original, apagando todas as correcções. Como resultado, todas as modificações que eu usei não estavam disponíveis.
Conclusão - ou faça tudo você mesmo, ou use produtos de ponta com muito bom suporte.

1. você tem que fazer um garfo e hospedar todas as mudanças. Eles podem ou não ser aceitos, mas você poderá usar sua versão do seu GitHub.

2. Claro, esta é a opção mais confiável.

 
Maxim Dmitrievsky:

Para aqueles que lutam pelo complexo mas não entendem como o simples pode ser belo

e inglês, é claro, como solicitado. Não, eu mesmo não vou traduzir. Há um link para o site onde você pode traduzir os artigos.


É um relatório muito interessante, não apenas sobre o simples e o complexo. A ênfase está no fato de que usando o pré-processamento complexo você pode reduzir a resolução de um problema a modelos simples. Apenas uma confirmação de uma simples verdade que nunca me canso de repetir nos meus artigos: "O principal esforço deve ser dedicado aos preditores de pré-processamento, os modelos são secundários.

O orador é hilariante.

Boa sorte.

 
Vladimir Perervenko:

Esta conversa muito interessante não se trata apenas de simples e complexa. A ênfase está em como utilizar o pré-processamento complexo pode ser reduzido à resolução de um problema com modelos simples. Apenas uma confirmação de uma simples verdade que nunca me canso de repetir nos meus artigos: "O principal esforço deve ser dedicado aos preditores de pré-processamento, os modelos são secundários.

O orador é hilariante.

Boa sorte.

O XGBOOST tem um conjunto de pesos de entrada com pesos de cordas. Alguns outros pacotes também o têm.
Eu estava pensando que eu poderia escrever ali pesos de 1 (para cordas novas) a 0,5 para cordas velhas. Isto aumentaria o impacto dos novos dados.
Eu tentei e não notei nenhuma melhoria em particular.

Alguém mais tentou - alguma melhoria?

 
elibrarius:
O XGBOOST tem um conjunto de pesos de entrada com pesos de linha. Alguns outros pacotes também o têm.
Pensei que poderia escrever lá pesos de 1 (para dados frescos) a 0,5 para dados antigos. Isto aumentaria o impacto dos novos dados.
Eu tentei e não notei nenhuma melhoria em particular.

Alguém mais tentou - alguma melhoria?

É um pouco errado. Você tem, por exemplo, trem[2000, ] e teste[500, ]. Você treina no trem com pesos de exemplo iniciais = 1.0, faça o teste[] predicar um modelo treinado. Com base na qualidade de cada prefixo de teste, você lhe dá um peso. Em seguida, combine o trem e teste e forme uma nova amostra de treinamento, treine o modelo, teste-o e assim por diante até que todas as amostras de treinamento tenham os pesos obtidos desta forma. Pode aplicar-lhes um factor de redução para barras mais antigas, mas ainda não o verifiquei. Tudo isto é para a classificação, claro.

now_train <- rbind(train,test)%>% tail(dim(train)[1])

Verificado com ELM, dá bons resultados.

Boa sorte.

 
Vladimir Perervenko:

Isso não está muito certo. Você tem, por exemplo, trem[2000, ] e teste[500, ]. Treinar em nrain com pesos de exemplo iniciais = 1.0, fazer teste predicado[] um modelo treinado. Com base na qualidade de cada prefixo de teste, você lhe dá um peso. Em seguida, fundir o trem e testar e formar uma nova amostra de treinamento, treinar o modelo, testá-lo e assim por diante até que toda a amostra de treinamento tenha pesos obtidos desta forma. Pode aplicar-lhes um factor de redução para barras mais antigas, mas ainda não o verifiquei. Tudo isto é para a classificação, claro.

Verificado com ELM, dá bons resultados.

Boa sorte.

É como na validação cruzada - dividir os dados em 5-10 partes e colocar pesos para cada ciclo até que todos os pesos estejam definidos. Acho que devíamos fazer 2-3 círculos completos para conseguirmos o equilíbrio.

Lembra-me de várias iterações como no auto-estudo para definir os melhores pesos das filas.
 
elibrarius:
É como a validação cruzada - dividir os dados em 5 -10 partes e colocar pesos de parte das linhas de cada ciclo, até que todos eles estejam definidos. Acho que devíamos fazer 2-3 rondas completas para equilibrar.

Lembra-me de várias iterações como no auto-estudo para definir os melhores pesos das filas.

É possível verificar com uma verificação cruzada.

 
elibrarius:
O XGBOOST tem um conjunto de pesos de entrada com pesos de linha. Alguns outros pacotes também o têm.
Eu pensei, nós poderíamos escrever lá pesos de 1 (para fresco) a 0,5 para cordas velhas. Isto aumentaria o impacto dos novos dados.
Eu tentei e não notei nenhuma melhoria em particular.

Alguém mais tentou - alguma melhoria?

bem e só se educar sob os novos então. Estes pesos são para o alinhamento da variância do modelo no conjunto de dados, na regressão logit com variância variável também é usado (se não estou confuso sobre o que estamos falando)

nenhuma melhoria conceitualmente significativa, além do ajuste do conjunto de dados, deve dar

Se você precisa de uma generalização confiável para a população em geral sobre uma pequena subamostra, estas são abordagens Bayesianas
 
elibrarius:
XGBOOST tem um conjunto de pesos de entrada com pesos de linha. Alguns outros pacotes também têm isto.
Eu estava pensando que eu poderia colocar pesos de 1 (para dados novos) a 0,5 para dados antigos. Isto aumentaria o impacto dos novos dados.
Eu tentei e não notei nenhuma melhoria em particular.

Alguém mais tentou - alguma melhoria?

A idéia é que estes pesos afetarão a construção da primeira árvore, ou seja, quase a mesma semente e insetos, técnicas diferentes. Teoricamente, o resultado pode mudar muito se você mover os preditores de amostra bem separados para o fundo nas filas onde eles dão a classificação correta.

Não é possível definir a aplicação do preditor apenas a partir do X split? Acho que é muito útil para encontrar um bom modelo.
 
Maxim Dmitrievsky:

e só treinar para os novos então. Estes pesos são para alinhar a variância do modelo no conjunto de dados, na regressão logit com a variância da variável também é usada (se não estou enganado sobre o que estamos a falar)

Qualquer melhoria conceitualmente significativa, exceto para a adequação do conjunto de dados, não deve dar

se você precisa de uma generalização confiável para a população em geral sobre uma pequena subamostra, são abordagens Bayesianas

Ou seja, o alinhamento é escolhido pelo método sugerido pelo Vladimir?

 
Aleksey Vyazmikin:

Em idéia estes pesos afetarão a construção da primeira árvore, ou seja, quase a mesma semente e insetos, técnicas diferentes. Teoricamente, o resultado pode mudar muito se mudarmos os preditores de amostra bem separados para o fundo nas filas onde eles dão a classificação correta.

Não é possível especificar como aplicar um preditor apenas a partir da divisão X? Acho que é uma coisa muito útil na procura de um bom modelo.

Estes pesos não só no reforço, mas também no caso de florestas e NS podem ser aplicados. Aparentemente, a metodologia é comum a todos os sistemas MoD.
A primeira experiência com a diminuição da influência de dados antigos não mostrou qualquer melhoria.

O teste parece melhor quando se treina em 30000 linhas do que quando se treina em 80000 linhas. Em 80000 ambas as transações são menores e o erro é maior. Eu tentei diminuir o peso proporcionalmente (de 1 para fresco para 0,5 para velho) - os resultados são quase os mesmos.


Aparentemente ainda é para o alinhamento da dispersão, como apontado por Maxim, pelo método indicado por Vladimir.