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

 
Mihail Marchukajtes:

A verdadeira questão, no entanto, é esta. Se houver uma má divisão na seção de teste, não importa se a divisão está correta ou não, o fato de que a divisão é fraca. E o modelo não funcionou mais do que 50% do intervalo de treinamento, então o modelo é considerado super treinado.... IMHO

A propósito, lembra-se, no seu artigo sobre sequências sugeriu contar vários sinais em fila, invertendo aí... sobreposição de sinais

Eu inventei uma solução interessante para implementar algo assim através de uma lógica difusa e incorporá-la no processo de aprendizagem... Eu vou postar algo mais tarde :)

 
Maxim Dmitrievsky:

Às vezes o cérebro começa a avariar... sobre o barulho em forex, não é um sinal de rádio, pois não? De onde vem o barulho em forex?


O conceito de "ruído" em forex tem sido discutido bastante extensivamente por mim neste tópico. Eu mesmo o fiz ou copiei de outra pessoa - não me lembro, e isso não importa. Em qualquer caso, coloquei links para artigos semelhantes neste tópico.

Meu entendimento de "ruído" é todo ou parte do preditor que não tem relação com a variável alvo, uma espécie de borra de café.


Deixe-me explicar com um exemplo (repito o que escrevi anteriormente).


Vamos tomar um alvo que consiste em duas classes: homens e mulheres.

Vamos levar um prognosticador: roupa.

Existem apenas dois valores preditores: calças e saias. Em certos países este preditor tem 100% de capacidade de previsão, ou seja, as saias prevêem as mulheres e as calças prevêem os homens. Este preditor não tem barulho nenhum. Erro de classificação = 0. Não há sobretreinamento.

O exemplo é rebuscado e o preditor "roupa" pode conter roupas com o nome "unisexo". Para nós isto significa que tais roupas podem ser usadas tanto por homens como por mulheres, ou seja, para a nossa variável-alvo "unissexo" as roupas NÃO têm qualquer poder de previsão - este é o meu entendimento de SHUM.

Se tomarmos um preditor que tenha valores "calças", "saias" e "unissexo", então "unissexo" será uma fonte de erro de classificação. Se a proporção de roupa "unissexo" for 30%, é teoricamente possível alcançar um erro de aprendizagem do modelo = 30%, mas num tal preditor, um erro de 29% significa um overtraining do modelo de 1%!


Eu uso isto na prática. Graças a isso, consegui selecionar preditores para uma floresta aleatória com um erro inferior a 30%. Este aqui não é um modelo demasiado treinado. O erro é praticamente o mesmo no treinamento, em amostras de teste dentro do mesmo arquivo e em outros arquivos externos.

O que significa reduzir o erro no meu exemplo? Significa encontrar preditores cujos valores, os valores de ruído, seriam inferiores a esses mesmos 30%. Eu não tive sucesso. Talvez alguém consiga.

Mas sem esta análise, o uso de qualquer modelo de MO é um exercício vazio, um jogo intelectual de números sobre as borras de café.


PS.

O erro acima não costuma depender do tipo de modelos. Experimentei andaimes diferentes, variantes ada - mais ou menos o mesmo. Mas NS, que é nnet, dá um resultado visivelmente pior.

 
SanSan Fomenko:

Eu tenho discutido o conceito de "ruído" em forex bastante extensivamente neste tópico. Não me lembro se fui eu que o inventei ou pedi emprestado a outra pessoa, e isso não importa. Em qualquer caso, coloquei links para artigos semelhantes neste tópico.

Meu entendimento de "ruído" é todo ou parte do preditor que não tem relação com a variável alvo, uma espécie de borra de café.


Deixe-me explicar com um exemplo (repito o que escrevi anteriormente).


Vamos tomar um alvo que consiste em duas classes: homens e mulheres.

Vamos levar um prognosticador: roupa.

Existem apenas dois valores preditores: calças e saias. Em certos países este preditor tem 100% de capacidade de previsão, ou seja, as saias prevêem as mulheres e as calças prevêem os homens. Este preditor não tem barulho nenhum. Erro de classificação = 0. Não há sobretreinamento.

O exemplo é rebuscado e o preditor "roupa" pode conter roupa com o nome "unisexo". Para nós isto significa que tais roupas podem ser usadas tanto por homens como por mulheres, ou seja, para a nossa variável-alvo "unissexo" as roupas NÃO têm qualquer poder de previsão - este é o meu entendimento de SHUM.

Se tomarmos um preditor que tenha valores "calças", "saias" e "unissexo", então "unissexo" será uma fonte de erro de classificação. Se a proporção de roupa "unissexo" for 30%, é teoricamente possível alcançar um erro de aprendizagem do modelo = 30%, mas num tal preditor um erro de 29% significaria um sobretreinamento do modelo de 1%!


Só que não sabemos de antemão até que ponto este indicador de ruído pode dar um erro mínimo, se em condições reais, ao seleccionar os indicadores... apenas se seleccionam os não-informativos e pronto.

mas em geral parece estar claro )

 
Maxim Dmitrievsky:

...simplesmente peneirar os não-informativos.


Este é um profundo equívoco: o algoritmo de minimização de erros funciona, o que pode ser compreendido de muitas maneiras diferentes. O ruído que contém mais diversidade do que o NÃO ruído é o mais adequado. O algoritmo capta a espuma das borras de café.

 
SanSanych Fomenko:

Este é um profundo equívoco: o algoritmo de minimização de erros funciona, o que pode ser compreendido de muitas maneiras diferentes. O ruído que contém MAIS variedade do que NÃO ruído é o mais adequado. O algoritmo capta a espuma das borras de café.

Eu queria dizer Jpredictor... ele meio que peneira o barulho por si só.

Então, é mais para a experimentação do que para tentar realmente entender o que está acontecendo lá )

Eu quero experimentar esta plataforma h2O, é apenas uma floresta com impulso... Talvez tenhas ouvido? As pessoas dizem que está tudo bem, juntamente com mcroft's e xgbboost.

https://www.h2o.ai/

 

Para aqueles que ainda não viram, recomendo que verifiquem este tópico.

 
Vizard_:

Fa e Mishan não são mineiros)))
Serve para andar de papagaios. + LightGBM, + CatBoost.
Quer um corte um pouco melhor - coloque python e tudo na GPU...

Muitos pacotes R funcionam bem com a GPU.

Você já rodou o SatBoost? Tão interessado.

Boa sorte.

 
Maxim Dmitrievsky:
Quero dizer, Jpredictor... Filtra as características do ruído por si só.

De qualquer forma, este tópico é mais para experimentação do que para tentar realmente entender o que está acontecendo lá )

Eu quero experimentar esta plataforma h2O, é apenas uma floresta com impulso... talvez já tenhas ouvido? as pessoas dizem que está tudo bem, juntamente com mcroft's e xgbboost

https://www.h2o.ai/

Está escrito em Java e usa muita memória. Não funciona melhor nem pior do que pacotes R semelhantes. Tem uma desvantagem e uma vantagem - melhoria contínua sem retrocompatibilidade.

É bom experimentar, mas eu não o recomendaria para o trabalho (IMHO).

Boa sorte.

 
SanSanych Fomenko:

Este é um profundo equívoco: o algoritmo de minimização de erros funciona, o que pode ser compreendido de muitas maneiras diferentes. O ruído que contém MAIS variedade do que NÃO ruído é o mais adequado. O algoritmo capta a espuma das borras de café.

"Barulho" e "excesso de roupa" são jargões que todos definem de forma diferente. Intuitivamente, entendemos a diferença entre "aprendido" e "superfitting" - é difícil traduzi-lo para a linguagem do programa. Eu defino-o simplesmente - o momento em que o erro de teste começa a crescer e é o início do "overtraininga" (não é o mesmo com "overfitting"). Se eu o encontrar, enviarei um link para uma discussão interessante sobre este assunto na rede em inglês.

Boa sorte.

 
SanSanych Fomenko:

Eu tenho discutido o conceito de "ruído" em forex bastante extensivamente neste tópico. Não me lembro se fui eu que o inventei ou pedi emprestado a outra pessoa, e isso não importa. Em qualquer caso, coloquei links para artigos semelhantes neste tópico.

Meu entendimento de "ruído" é todo ou parte do preditor que não tem relação com a variável alvo, uma espécie de borra de café.


Deixe-me explicar com um exemplo (repito o que escrevi anteriormente).


Vamos tomar um alvo que consiste em duas classes: homens e mulheres.

Vamos levar um prognosticador: roupa.

Existem apenas dois valores preditores: calças e saias. Em certos países este preditor tem 100% de capacidade de previsão, ou seja, as saias prevêem as mulheres e as calças prevêem os homens. Este preditor não tem barulho nenhum. Erro de classificação = 0. Não há sobretreinamento.

O exemplo é rebuscado e o preditor "roupa" pode conter roupa com o nome "unisexo". Para nós isto significa que tais roupas podem ser usadas tanto por homens como por mulheres, ou seja, para a nossa variável-alvo "unissexo" as roupas NÃO têm qualquer poder de previsão - este é o meu entendimento de SHUM.

Se tomarmos um preditor que tenha valores "calças", "saias" e "unissexo", então "unissexo" será uma fonte de erro de classificação. Se a proporção de roupa "unissexo" for 30%, é teoricamente possível alcançar um erro de aprendizagem do modelo = 30%, mas num tal preditor, um erro de 29% significa um overtraining do modelo de 1%!


Eu uso isto na prática. Graças a isso, consegui selecionar preditores para uma floresta aleatória com um erro inferior a 30%. Este aqui não é um modelo demasiado treinado. O erro é praticamente o mesmo quando se treina, em amostras de teste dentro do mesmo arquivo e em outros arquivos externos.

O que significa reduzir o erro no meu exemplo? Significa encontrar preditores cujos valores, os valores de ruído, seriam inferiores a esses mesmos 30%. Eu não tive sucesso. Talvez alguém consiga.

Mas sem esta análise, o uso de qualquer modelo de MO é um exercício vazio, um jogo intelectual de números sobre as borras de café.


PS.

O erro acima não costuma depender do tipo de modelos. Experimentei andaimes diferentes, variantes ada - mais ou menos o mesmo. Mas nnet NS, por outro lado, dá resultados visivelmente piores.

Você pode remover exemplos irrelevantes, isolar componentes principais ou independentes, discretizar finalmente. Vocês já pré-processaram os preditores? Espero que os outliers tenham sido removidos (para as florestas, não críticos).

Você parece pessimista.

É impressão minha?

Boa sorte.

Razão: