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

 
Andrey Dik:
Pareces ter-me entendido mal. Eu não digo à rede onde entrar, nem com um zz, nem com qualquer outro indicador. Uma rede treinada escolhe por si só onde entrar.

Oh meu... Não percebo então...

 
mytarmailS:

O que deve estar relacionado com o quê? Como é que se faz? Eu também não percebo.

Acho que ninguém o fez aqui a não ser você )

Deixe-me explicar mais uma vez e encorajá-lo a ler sobre a validação cruzada aninhada.

Este é um exemplo do meu trabalho. Eu estava construindo um modelo de regressão fazendo uma previsão de alguns parâmetros de engenharia em um sistema muito complexo.

Percorro os parâmetros de treino do modelo, selecciono o melhor modelo nas dobras de teste de validação cruzada e depois valido-o. Selecionei um total de 100 modelos no teste (pontos no gráfico). Estes são os melhores modelos da amostra de teste. O que os torna diferentes é que eles usam preditores diferentes.

Você pode ver que o modelo sub-treinado no teste acaba sendo sub-treinado na validação também. O modelo totalmente treinado no teste e na validação é treinado. O estado de sobretreinamento, quando alto no teste e baixo na validação, não existe de todo.

Temos uma correlação entre o desempenho dos modelos selecionados no teste e o desempenho na validação.

Variando o número de preditores, o modelo passa de subequipado a totalmente adequado. E este crescimento é comum tanto aos dados onde o melhor modelo é selecionado quanto aos dados onde o melhor modelo selecionado é validado. Há consistência!

Ou seja, eu não escolhi apenas um modelo que fosse o melhor em validação (fora da amostra), mas fiz vários modelos de treinamento, selecionando-os por teste, e comparando métricas de qualidade em validação. Isto é uma validação cruzada aninhada. Este modelo não é recondicionado. Posso pegar o melhor modelo de validação cruzada e obter uma das melhores métricas fora da amostra.

E se eu tiver variação no desempenho do modelo em forex não explica a variação no desempenho do modelo na validação, então tendo as amostras em que selecionamos o melhor modelo (neste caso, a qualidade média nas faltas do teste de validação cruzada), não podemos prever o desempenho da qualidade fora da amostra.

Assim, ao fazer a seleção do modelo, mas não testando o procedimento de seleção fora da amostra em si, nós estamos encaixando um modelo.

Uma imagem como a minha sai em dados estacionários e consistentes - eles contêm dependências estáveis. Como exemplo, o sobreaquecimento do sensor degrada o valor modelado em todos os casos e isto é explicado fisicamente.

Ao modelar séries cronológicas financeiras, já mostrei, com 2.000 modelos selecionados, que suas métricas de qualidade em amostras de teste não se correlacionam com amostras de validação.

A validação cruzada aninhada envolve treinamento múltiplo de diferentes modelos - ou modelos com diferentes entradas ou parâmetros - em amostras de treinamento únicas seguidas de testes. Para cada amostra única, é seleccionado o melhor modelo. É então testado novamente em uma amostra de validação única. Este processo é repetido muitas vezes. Uma camada externa de testes é necessária para mostrar que o modelo em si e seu procedimento de seleção dá consistência de resultados dentro e fora da amostra.

Eu apontei isto ao SanSanych, ao Dr. e a outros. O Dr. entendeu-me. O SanSanSanych não percebeu.

Portanto, se conseguirmos este quadro para forex ou qualquer outro mercado financeiro, podemos executar o melhor modelo em termos de corte de teste na produção.

 
Alexey Burnakov:

Deixe-me explicar novamente e encorajá-lo a ler sobre a validação cruzada aninhada.

Este é um exemplo do meu trabalho. Eu estava construindo um modelo de regressão, fazendo uma previsão de alguns parâmetros de engenharia em um sistema muito complexo.

Percorro os parâmetros de treino do modelo, selecciono o melhor modelo nas dobras de teste de validação cruzada, e depois valido-o. Selecionei um total de 100 modelos no teste (pontos no gráfico). Estes são os melhores modelos da amostra de teste. O que os torna diferentes é que eles usam preditores diferentes.

Você pode ver que o modelo sub-treinado no teste acaba sendo sub-treinado na validação também. O modelo totalmente treinado no teste e na validação é treinado. O estado de sobretreinamento, quando alto no teste e baixo na validação, não existe de todo.

Temos uma correlação entre o desempenho dos modelos selecionados no teste e o desempenho na validação.

Variando o número de preditores, o modelo passa de subequipado a totalmente adequado. E este crescimento é comum tanto aos dados onde o melhor modelo é selecionado quanto aos dados onde o melhor modelo selecionado é validado. Há coerência!

Ou seja, eu não escolhi apenas um modelo que fosse o melhor em validação (fora da amostra), mas fiz vários modelos de treinamento, selecionando-os por teste, e comparando métricas de qualidade em validação. Isto é uma validação cruzada aninhada. Este modelo não é recondicionado. Posso pegar o melhor modelo de validação cruzada e obter uma das melhores métricas fora da amostra.

E se eu tiver variação no desempenho do modelo em forex não explica a variação no desempenho do modelo na validação, então tendo as amostras em que selecionamos o melhor modelo (neste caso, a qualidade média nas faltas do teste de validação cruzada), não podemos prever o desempenho da qualidade fora da amostra.

Assim, ao fazer a seleção do modelo, mas não testando o procedimento de seleção fora da amostra em si, nós estamos encaixando um modelo.

Uma imagem como a minha sai em dados estacionários e consistentes - eles contêm dependências estáveis. Como exemplo, o sobreaquecimento do sensor degrada o valor modelado em todos os casos e isto é explicado fisicamente.

Ao modelar séries cronológicas financeiras, já mostrei, com 2.000 modelos selecionados, que suas métricas de qualidade em amostras de teste não estão correlacionadas com amostras de validação.

A validação cruzada aninhada envolve treinamento múltiplo de diferentes modelos - ou modelos com diferentes entradas ou parâmetros - em amostras de treinamento únicas seguidas de testes. Para cada amostra única, é seleccionado o melhor modelo. É então testado novamente em uma amostra de validação única. Este processo é repetido muitas vezes. Uma camada externa de testes é necessária para mostrar que o modelo em si e seu procedimento de seleção dá consistência de resultados dentro e fora da amostra.

Eu apontei isto ao SanSanych, ao Dr. e a outros. O Dr. entendeu-me. O SanSanSanych não percebeu.

Assim, se conseguirmos este quadro para forex ou qualquer outro mercado financeiro, podemos executar o melhor modelo em termos do segmento de teste em produção.

Ainda não percebi, desculpa.

Faltas de validação: elas estão no mesmo arquivo que as faltas de teste ou a validação está em um novo arquivo ao todo?

PS.

Por crossvalidation quero dizer o seguinte algoritmo: o arquivo é dividido, por exemplo, em 10 faltas. Ensinar nos primeiros 9, e validação no 10. Depois ensinam de 2 a 10 e validam em 1 dobra. E assim eles movem a falta de validação. Certo?

 
SanSanych Fomenko:

Ainda não percebo, desculpa.

Faltas de validação: elas estão no mesmo arquivo que as faltas de teste ou a validação está em um novo arquivo ao todo?

PS.

Por crossvalidation quero dizer o seguinte algoritmo: o arquivo é dividido, por exemplo, em 10 faltas. Ensinar nos primeiros 9, e validação no 10. Depois ensinam de 2 a 10 e validam em 1 dobra. E assim eles movem a falta de validação. Certo?

Sim.

Um ciclo de aprendizagem com a validação cruzada M1 em 10 faltas, você entende corretamente. Para cada combinação de parâmetros de aprendizagem: em 9 faltas de aprendizagem, em uma verificação atrasada. Então, 10 vezes. Obtemos o valor médio da métrica de qualidade em 10 dobras. Vamos chamar-lhe m1.

Vamos repetir este procedimento N vezes (o tempo todo adicionando novos dados ao treinamento e testes).

Validação cruzada aninhada:

Repetimos M - N vezes. Cada ciclo M é uma amostra de treino única. Obtemos m1, m2, . mn métricas de qualidade obtidas durante o treinamento e seleção dos melhores modelos, tudo sobre dados diferentes.

Camada exterior. Cada modelo M selecionado é testado na amostra de validação única. Obtemos k1, k2, ... testes kn fora da amostra.

Vamos desenhar um gráfico de pontos M vs. K. Recebemos uma estimativa de como uma mudança na qualidade do modelo na validação cruzada predetermina a qualidade fora da amostra.

Sobre a seleção de preditores. Se você não tem a capacidade de obter uma quantidade tão grande de dados, basta dar a cada ciclo N do modelo um conjunto único de preditores. Você irá testar se há consistência no desempenho do modelo, dependendo dos preditores selecionados no teste e validação. Grosso modo, um modelo sub-treinado no teste também deve dar piores resultados na validação. Um modelo sobre-treinado no teste dará resultados muito piores na validação.

 
Alexey Burnakov:


Eu matei metade do ano 15 com esta ilusão. A validação do modelo só deve ser feita em dados que NÃO tenham a ver com o treinamento, testes e procedimentos de validação. Sou demasiado preguiçoso para olhar para os resultados dos cálculos relevantes. Mas por causa do guizo, que faz como você escreve, eu desperdicei meio ano.

 
SanSanych Fomenko:

A validação do modelo só deve ser feita em dados que NÃO tenham a ver com o treinamento, testes e procedimentos de validação.

Brrrrr.

É isso que é suposto fazer! A validação é feita por amostragem diferida (ou melhor, por amostragem, se estivermos a falar da abordagem aninhada).

Que ilusão? A abordagem é, de qualquer forma, mais objetiva do que a adaptação de um modelo de uma amostra.

 
Alexey Burnakov:

Brrrrr.

É assim que é suposto ser! A validação é feita em uma amostra atrasada (ou melhor, amostras, se estivermos falando da abordagem aninhada).

Que ilusão? Esta abordagem é, de qualquer forma, mais objetiva do que a adaptação de um modelo de uma amostra.

Tu é que sabes.

Para mim funciona. Se eu remover os preditores de ruído, um modelo treinado nos dados de junho funcionará nos dados de julho, e quando eu treinar um modelo nos dados de julho, o erro desse treinamento nos dados de julho será o mesmo que a previsão que usei em julho, no modelo treinado em junho. Isto é o que eu chamo de falta de reciclagem.

 
SanSanych Fomenko:

Tu é que sabes.

Tudo funciona para mim. Se eu remover os preditores de ruído, o modelo treinado nos dados de junho funcionará nos dados de julho, e quando eu treinar o modelo nos dados de julho, o erro desse treinamento nos dados de julho será o mesmo que a previsão que usei em julho no modelo treinado em junho. Isto é o que eu chamo de falta de reciclagem.

Suponha que você tenha isso funcionando o tempo todo e não apenas em um exemplo de 2 meses, o que pode ser um caso em questão.

Você está ensinando o que, pertencendo ao joelho em ziguezague? Não excluo que este alvo em particular aprenda consistentemente bem, mas pertencer a um joelho não dá informações precisas. Esse é o problema. Posso prever a volatilidade com bastante precisão um dia à frente, mas isso não me dará nada nas negociações.

 
Alexey Burnakov:

Suponha que você tenha isso funcionando o tempo todo e não apenas por um exemplo de 2 meses, o que pode ser um caso em questão.

Você está ensinando o que, pertencendo ao joelho em ziguezague? Não excluo que este alvo em particular aprenda consistentemente bem, mas pertencer a um joelho não dá informações precisas. Esse é o problema. Eu posso prever com precisão a volatilidade um dia antes, mas isso não me dará nada nas negociações.

As deficiências do alvo não têm nada a ver com a metodologia de determinação de modelos de sobretreinamento. Executei várias ordens com alvos e preditores desconhecidos. O resultado é o mesmo em todo lugar se você remover os preditores de ruído.
 
SanSanych Fomenko:
O alvo defeituoso não tem nada a ver com a metodologia para determinar o sobreajuste do modelo.

Acho que estás enganado. Etiquetas barulhentas (zelevka) dão uma dissonância entre o que você vê no seu teste e o que você verá no futuro. É para tais casos que todo o tipo de artifícios como a validação aninhada são introduzidos. Há mesmo abordagens que provam que, entre vários modelos alternativos no teste, você deve escolher aquele que é pior.

O resultado é o mesmo em todo lugar se você remover os preditores de ruído.

Como você determinou isso? Você já rastreou o desempenho de seus preditores sobre o futuro então desconhecido?