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

 
Dr. Trader:

ressemble à l'ensemble de NS

si je ne me trompe pas

 
Dr. Trader:

Ensuite, nous choisissons les paramètres du modèle (fonction d'activation, nombre de couches et leur taille, etc.), en effectuant à chaque fois toutes ces étapes (former 5 modèles, prédire 5 morceaux uniques pour chaque modèle, les combiner, R2), en obtenant une estimation de plus en plus précise.

Cela représente des centaines de réseaux à construire et à former ! Mais jusqu'à présent, je ne vois pas d'autre option(

 
Je dois aller me coucher et finir mes livres cette semaine :

Je pense que si vous lui écrivez et lui proposez mille livres par heure, vous pouvez prendre des leçons individuelles de Perchik, Perepelkin coûtera un peu plus, mais ça vaut le coup.


Mec, tu es sérieux à propos de Perchik ?)

Payer une somme d'argent à un chauffeur de location.

Je ne sais rien de l'autre... et je ne veux pas le savoir.)

Bref, tout cela est intéressant, mais je vais aller me coucher et finir mes livres cette semaine.

 
Maxim Dmitrievsky:

on dirait juste un ensemble de la NS

si je ne me trompe pas.

Vous vous retrouverez avec un ensemble normal, oui. Mais le résultat sera bien meilleur que "former 5 neurones sur l'ensemble de la feuille de calcul".


Vizard_:

Eh bien oui, c'est l'option standard, bien que je la préfère sans qv, j'ai déjà écrit auparavant...
Doc, essayez de fixer la pente avec différents paramètres et testez.

J'ai LibreOffice, cette neuronique n'a pas fonctionné dans celui-ci.


elibrarius:

Cela représente des centaines de réseaux à construire et à former ! Mais jusqu'à présent, aucune autre option n'est en vue(

C'est pourquoi j'aime le paquet gbm dans R par exemple, sa vitesse d'apprentissage est plus rapide de plusieurs ordres de grandeur. Ce n'est pas de la neuronique, c'est de l'échafaudage et du renforcement.

Il est également intéressant de noter que la validation croisée k-fold a bien fonctionné pour moi, même avec un petit nombre d'époques de formation du réseau neuronal. Le nombre d'époques est l'un des paramètres d'apprentissage que j'ai retenu. Petit nombre d'époques = apprentissage rapide, c'est un plus. Mais la précision possible du modèle est moindre, c'est un moins.

 
Dr. Trader:

Je vous suggère d'apprendre à faire de la validation croisée k-fold. J'ai vu plusieurs façons différentes, celle-ci fonctionne bien -

...


Il est également à noter que les poids initiaux de neuronka sont fixés de manière aléatoire, et que le résultat final de la formation peut en dépendre fortement, y compris pour les modèles forestiers et autres.
Chaque fois, avant de former le modèle, je règle la valeur du générateur de nombres aléatoires sur le même état :

set.seed(12345)

De cette façon, j'obtiens des résultats reproductibles et une stabilité. La valeur du grain gpsch peut également être relevée au lieu de 12345, ce qui, bien que cela semble plutôt drôle, est parfois nécessaire.

 
Dr. Trader:

Une autre nuance est que les poids initiaux de neuronka sont fixés de manière aléatoire, et qu'ils peuvent très bien dépendre du résultat final de la formation, y compris pour les modèles forestiers et autres.
Chaque fois qu'avant de former un modèle, je règle la valeur du générateur de nombres aléatoires sur le même état :

De cette façon, j'obtiens la répétabilité et la stabilité. Vous pouvez également régler la valeur du grain gpsh au lieu de 12345, ce qui semble assez drôle, mais est parfois nécessaire.



Si vous voulez vous faire une idée, vous devriez jeter votre réseau à la poubelle, puisqu'il réagit aux valeurs gpsh de cette manière. Un réseau normal fonctionne et apprend à n'importe quelle valeur initiale, même à des valeurs nulles.


 
Sergey Chalyshev:

Si vous donnez à ce neurone un grand nombre de neurones et de couches, ainsi qu'un nombre infini d'époques d'apprentissage, il n'aura aucun problème à atteindre la précision souhaitée, quel que soit le grain initial.

Moi, par exemple, j'apprends à prédire l'augmentation du prix par barre. Le problème est qu'il y a beaucoup de bruit dans les prix (prix réel + quelques variations aléatoires), et qu'il est impossible de prévoir le bruit. Mais nous pouvons utiliser la validation croisée pour choisir des paramètres pour lesquels le modèle ne se souviendra pas encore du bruit mais compilera d'une manière ou d'une autre ces données et fera des prédictions correctes au moins dans un petit pourcentage de cas. Et avec certaines valeurs initiales des poids, le modèle commence immédiatement à se souvenir du bruit au lieu d'essayer de généraliser ces données, c'est mauvais, alors vous devriez chercher un autre grain initial pour l'initialisation des poids.

 
Sergey Chalyshev:


Jetez votre réseau à la poubelle s'il réagit autant aux valeurs gpsh. Un réseau normal fonctionne et apprend à toutes les valeurs initiales, même à zéro.



C'est juste une autre explication du fait que vous ne pouvez pas utiliser des méthodes statiques dans des systèmes dynamiques.

Il s'agit d'une autre explication du fait qu'il ne faut pas utiliser de méthodes statiques pour les systèmes dynamiques.

 

Eh bien, examinons maintenant l'architecture pour l'apprentissage sur des lignes de temps plutôt que sur des photos de SEALs, première option :

 

Option 2 :

Je veux dire, combiner NS et automates semble être une bonne solution, avec des circuits positifs et négatifs, mais qui et comment la mettra en œuvre est une autre question. Pour moi, cette approche est la plus évidente.

Raison: