L'apprentissage automatique dans la négociation : théorie, modèles, pratique et algo-trading - page 48

 
Dr. Trader:

J'ai expérimenté RNeat pendant un certain temps maintenant, et j'ai conclu qu'il ne peut pas être traité de la même manière que les réseaux neuronaux conventionnels.

Merci de partager vos découvertes, c'est très intéressant...

J'ai pris votre exemple avec les iris et je l'ai réécrit pour l'adapter à mes données et j'ai obtenu une erreur, qu'est-ce qui ne va pas, je ne comprends pas. Je voudrais savoir si vous avez essayé d'utiliser vos données ainsi que l'iris, quel a été le résultat par rapport à la grille régulière ?

 
Article intéressant sur l'évaluation des modèles de classification.
 
Dr. Trader:

J'ai expérimenté un peu plus avec RNeat et je suis arrivé à la conclusion qu'il ne peut pas être traité de la même manière que les réseaux neuronaux classiques.

1) Contrairement aux modèles classiques, la formation RNeat n'utilise pas de données brutes. Le modèle est en quelque sorte généré de manière aléatoire, amélioré, et seulement à la fin est testé sur les données brutes. En général, les modèles utilisent des données brutes, construisent leur logique sur celles-ci, puis utilisent un échantillonnage de validation pour voir si la logique du modèle est correcte ou s'il a simplement appris les exemples bruts. Contrairement aux autres, RNeat n'est pas du tout capable de mémoriser les données brutes, car il n'en a pas connaissance, tout ce que le modèle sait, ce sont les résultats souhaités et leur proximité.

2) La validation croisée ne permet pas d'améliorer les résultats du test frontal. Nous semblons tous d'accord sur le fait qu'il est possible de former un modèle régulier, d'exécuter quelques validations croisées et de traiter d'une manière ou d'une autre les erreurs sur tous les échantillons pour le score final de fitness du modèle. Comme RNeat ne connaît pas les données brutes, il ne se soucie pas de savoir si les données sont dans un échantillon d'entraînement ou de test, il ajustera sa logique au résultat souhaité dans tous les cas. Théoriquement, il va "apprendre" (plus précisément muter :) ) à partir de tous les échantillons qui sont utilisés dans la fonction de fitness. Tout ce que vous pouvez faire est d'entraîner le modèle à la bonne précision et espérer qu'il ne se surentraîne pas, une approche assez risquée pour le forex. La validation croisée ne peut être utilisée qu'après la formation, comme une estimation finale du résultat possible du test frontal, et en aucun cas utiliser cet échantillon de validation dans la fonction de fitness.

Lors de la validation croisée, les paramètres de formation sont repris. Y a-t-il des paramètres dans cette NS ? Il devrait y en avoir.
 
mytarmailS:

Dites-moi exactement si vous avez essayé de substituer vos propres données en plus de l'iris, quels ont été les résultats par rapport au filet habituel ?

J'ai utilisé des données de forex (eurusd d1 pour un an), le modèle a été appris pour un jour déjà, il montre sa propre meilleure estimation = 0.017 (plus c'est mieux, pour iris c'était 0.7). Jusqu'à présent, aucun résultat réel n'a été obtenu. Le modèle présente une erreur de 50 % même sur les données d'entraînement et je dois le laisser apprendre pendant quelques jours encore.

Alexey Burnakov:
Les paramètres de formation sont sélectionnés par validation croisée. Y a-t-il des paramètres dans cette NS ? Il doit y en avoir.

Le modèle devient de plus en plus compliqué et ajoute de plus en plus de neurones. Il existe un paramètre définissant le nombre maximal de neurones pour limiter leur croissance. Et un second paramètre définissant le nombre d'individus dans la génétique. En général, plus il y en a, mieux c'est. Une limite est introduite plutôt pour économiser de la mémoire et du temps, il est préférable d'utiliser la valeur maximale autorisée pour soi-même plutôt que de ramasser.

Le modèle, à en juger par les descriptions, a un prix pour chaque neurone et les connexions entre eux, il cherche donc à utiliser le moins de neurones possible. Si la formation est réussie, le modèle atteindra la précision requise avant d'atteindre le nombre maximal de neurones.

 
Dr. Trader:

J'ai ajouté des données de forex (eurusd d1 pour une année), le modèle apprend depuis un jour déjà et montre sa propre meilleure estimation = 0.017 (plus c'est mieux, pour Iris c'était 0.7). Le modèle affiche une erreur de 50 % même sur les données d'entraînement et je dois le laisser apprendre pendant quelques jours de plus.

Y a-t-il beaucoup de prédicteurs ?
 
SanSanych Fomenko:
Article intéressant sur l'estimation des modèles de classification.

J'ai essayé 3 métriques différentes pour estimer le modèle sur un sous-ensemble de prédicteurs : la précision comme dans cet article ; le modèle R^2 ; et juste l'erreur moyenne du modèle mean(abs(y-x)/(max(y)-min(y)), où X est le vecteur des résultats de prédiction et Y les résultats requis).

La précision des fonctions de fitness était correcte, mais j'ai eu un problème avec le manque d'exemples dans l'échantillon, la précision est très instable. Deux modèles, de qualité similaire, ont donné le même résultat. Mais s'il y a beaucoup d'échantillons de formation et de validation, ce serait une bonne mesure. Je ne peux rien dire sur les autres paramètres décrits dans l'article.

Le R^2 en général se comportait bizarrement, il pouvait même être négatif, alors que plus de 50% des résultats étaient corrects, en général je n'aimais pas ça.

L'erreur moyenne me convenait le mieux. Stepwise comme dans la précision n'est pas présent, car je substitue dans la formule le résultat de la régression, même avant d'arrondir aux classes 0 ou 1. Même si deux modèles donnent le même résultat pour les classes, je peux toujours déterminer le meilleur, en fonction de la mesure dans laquelle le résultat de la régression est "plus proche" des résultats souhaités.

mytarmailS:
Y a-t-il beaucoup de prédicteurs ?

Environ 400

 
L'un d'entre vous s'y connaît en analyse spectrale de Fourier ? J'ai besoin d'aide.
 
mytarmailS:
Les gars ici qui connaissent au moins un peu l'analyse spectrale de Fourier. J'ai besoin d'aide.
Qu'est-ce qui n'est pas clair ? Décomposer une fonction périodique en harmoniques et obtenir un spectre.
 
Yury Reshetov:
Pourquoi n'est-ce pas clair ? On décompose une fonction périodique en harmoniques et on obtient un spectre.

C'est vrai, mais ma tâche est différente...

J'ai besoin de trouver des similitudes dans BP ces zones qui sont proches les unes des autres, la proximité peut être mesurée par la corrélation, la métrique euclidienne, etc... D'après mes expériences, j'ai compris que ces métriques ne sont pas adaptées à ma tâche ; je pense que la recherche de proximité par l'amplitude, la phase, la fréquence... convient très bien. Mais comme tel est fait aucune idée, alors je demande qui sait comment et quoi, ce qui est correct, ce qui n'est pas, comment il devrait être en général.

P.S. vous pouvez en privé, de ne pas hors point, en principe, la conversation n'est pas sur le sujet de cette branche et est peu susceptible de quelqu'un d'intéressant

 
Yury Reshetov:
Qu'est-ce qui n'est pas clair ? On décompose une fonction périodique en harmoniques et on obtient un spectre.
Pourquoi périodique ?
On peut aussi décomposer une seule impulsion, qui n'est pas du tout périodique)
Raison: