Réseaux neuronaux - page 13

 
Kazam:
Si vous souhaitez une bonne source d'informations sur les HONN, procurez-vous le livre "Artificial Higher Order Neural Networks for Economics and Business". Il s'agit d'une nouvelle publication qui contient de très bonnes informations. Le prix est élevé (180 $) mais vous pouvez le trouver en format pdf à l'adresse .

C'est celui dont je parlais, il est bien. Je n'en suis qu'au début et il m'a déjà donné beaucoup d'idées. Leur mise en œuvre, pour moi en tout cas, est un peu plus délicate, je suis un peu un néophyte en matière de codage...

Merci pour les recommandations, je vais y jeter un coup d'oeil et voir... Je pourrais avoir de la chance et trouver certains d'entre eux dans la bibliothèque de l'université. Ils viennent de construire un nouveau bâtiment pour l'intelligence artificielle avec sa propre bibliothèque, donc il pourrait y avoir quelque chose là-bas. Sinon, je vais juste le télécharger...

Oh, j'ai divisé mes données de 10 ans en deux parties, 2/3 et 1/3 respectivement, j'ai entraîné le réseau sur les premiers 2/3 (y compris la division de ces 2/3 en parties d'entraînement, de test et de CV), puis j'ai testé le réseau résultant sur le 1/3 restant et il semble rester précis. Il y a eu une perte minimale de précision, mais la ligne de régression était toujours de 0,9995. Cela pourrait-il s'expliquer par un surajustement sur les données d'entraînement précédentes ?

 
Kazam:

- "Programmation de l'expression génétique" - par Candida Ferreira.

Candida Ferreira n'est pas la bactérie qui cause le muguet ?

 

surfeur

Je ne négocie pas le Forex en utilisant ENN. Je pourrais commencer bientôt mais j'utiliserai probablement des systèmes pour la classification /des systèmes qui décident quand prendre des positions longues/courtes/ plutôt que d'essayer de prévoir le prix - le Forex est trop volatile.

Pour l'instant, j'utilise des ENN et des algorithmes génétiques /et d'autres trucs comme la logique floue, la théorie des ensembles bruts, etc./ pour la gestion de portefeuille /pour prédire les taux d'intérêt à long terme dans le but de négocier des bons du Trésor, etc./.

Les résultats sont plutôt bons. Ils seront encore meilleurs lorsque tout ira mieux et sera plus stable à la fin de la crise financière.

mrwobbles

Dans le but de trader le Forex, ne regardez pas les mesures d'erreur mais vérifiez plutôt si les prédictions montrent la même direction de mouvement de prix que le résultat souhaité. Ce que je veux dire - si NN montre que le prochain prix clôturera plus haut que le prix actuel, vous devriez vous attendre à ce que le prix se déplace au moins x pips au-dessus de son niveau d'ouverture. Prédire le niveau exact du prix est presque impossible pour des cadres temporels comme H1 ou H4.

La petite erreur que vous obtenez maintenant est causée par la mauvaise méthode de mesure.

Et vous avez raison - il existe un genre de levures appelé Candida.

 

J'ai essayé de prédire la clôture ainsi que l'écart ouverture-clôture car je pense que vous avez raison de prédire la clôture exacte serait presque impossible. Mais je pense qu'un réseau approprié avec des neurones et des poids génétiquement optimisés serait capable de le faire à 5 pips près si vous lui fournissiez les bonnes entrées. Avez-vous envisagé d'utiliser des cartes auto-organisées (SOM) de Kohonen pour prédire plus loin dans le futur que t+1 ? Si je comprends bien, les réseaux de Kohonen peuvent prendre la prédiction pour t+1 et ensuite utiliser cette valeur pour prédire toutes les valeurs jusqu'à t+10, mais je peux me tromper. Ce serait utile, bien que tous les exemples que j'ai vus aient été moins précis que ce que je recherche.

 

Pour prédire les séries temporelles du Forex, oubliez les SOM. Les ENN sont bien meilleurs.

Si vous voulez prédire des étapes sur t+1 /t+2, t+3 etc./ utilisez simplement un cadre temporel différent. Par exemple, si vous voulez prédire la tendance de la semaine prochaine, utilisez le cadre temporel W1. Ne prédisez pas t+n sur la base de t+n-1 /parce que les taux de change du Forex sont chaotiques et non linéaires/. Vous pouvez également former un réseau pour prédire t+1, un second pour prédire t+2 /en utilisant les mêmes données/ et ainsi de suite.

Une très bonne idée consiste à construire des systèmes hybrides. En d'autres termes, prenez 5 ou 6 des meilleurs réseaux neuronaux et combinez leurs résultats. Vous pouvez utiliser la moyenne simple [(out1+out2+...+outN)/N)], GEM, LWPR [LWPR est le meilleur choix, selon moi], etc.

 

C'est en gros ce que je pensais, j'ai vu quelques prédictions de SOM et ils ont pu avoir la bonne tendance sur une période de disons 20 étapes, mais ils étaient très loin du chemin réel que le prix a pris. Je pense que l'utilisation de l'optimisation génétique est la voie à suivre, étant donné que les NN sont conçus pour imiter les systèmes biologiques, il semble logique que l'ajout d'une certaine forme de processus évolutif augmente la précision.

Je ne suis pas sûr de ces résultats, j'ai zoomé pour vérifier si la direction était correcte et il semble qu'elle le soit plus souvent qu'autrement. Il y a quelques résultats anormaux (un où il est en dehors de 400 pips = S), mais pour la plupart, il obtient la bonne direction. L'image montre les prédictions (vertes) par rapport aux objectifs (bleus) pour la clôture, le haut et le bas. J'ai lu beaucoup de choses sur les ANNs mais c'est la première fois que j'en construis, donc je ne sais pas exactement ce que je cherche en dehors de ce qui est évident.

Dossiers :
gbpjpy60-3.jpg  67 kb
 

Bonjour

Il y a plusieurs années, j'ai écrit une thèse sur la logique floue + le réseau neuronal avec la propagation arrière pour prédire le dépôt de pétrole dans un processus d'enregistrement de puits et le résultat est bon, donc je pense que la logique floue avec la propagation arrière NN peut être mise en œuvre pour prédire la tendance dans ce domaine, mais il faut plus de données à former pour obtenir un meilleur résultat, j'ai utilisé 9 nœuds pour prédire le modèle de roches, je ne sais pas combien de nœuds pour reconnaître un modèle de forex.

===================

Collection d'indicateurs Forex

 
prasxz:
Il y a plusieurs années, j'ai écrit une thèse concernant la logique floue + le réseau neuronal avec la propagation arrière pour prédire le dépôt de pétrole dans un processus de diagraphie de puits et le résultat est bon, donc je pense que la logique floue avec la propagation arrière NN peut être mis en œuvre pour prédire la tendance dans ce domaine, mais il faut plus de données à former pour obtenir un meilleur résultat, j'ai utilisé 9 nœuds pour prédire le modèle de roches, je ne sais pas combien de nœuds pour reconnaître un modèle forex.

===================

Collection d'indicateurs Forex

J'ai lu que cela dépendait largement du nombre d'entrées que vous donnez au réseau. Je lui donne 32 entrées et je veux 3 sorties, je commencerais donc avec (32-3)/2=14.5, soit 14 neurones, et je travaillerais ensuite à partir de là. Le modèle que j'ai construit utilise 13 nœuds. Il est amusant de constater qu'en diminuant le nombre de nœuds, on augmente à la fois la précision et le temps de convergence, mais qu'il diminue après un certain temps. Appliquer un algorithme génétique au problème pour créer un ENN, comme Kazam en parlait, devrait permettre au réseau de choisir le réseau le plus optimal dans un espace d'échantillonnage de tous les réseaux possibles qui produisent des résultats précis. Enfin, si j'ai bien compris ce que j'ai lu à leur sujet. Mais j'imagine que cela augmenterait considérablement le temps nécessaire à la construction du réseau.

 

prasxz

Les réseaux neuronaux flous et les systèmes neuronaux hybrides flous peuvent être un très bon choix pour construire des systèmes de trading. Ils pourraient être moins utiles pour la prévision de séries chronologiques chaotiques.

mrwobbles

Ces graphiques montrent les données de formation /souhaitée vs prédite/ ?

Le choix d'un nombre approprié de nœuds est très très difficile. La formule que vous avez présentée est inutile /mais elle est très populaire/ - il n'y a pas de moyen déterministe de choisir une architecture NN optimale, ou presque optimale.

Les algorithmes génétiques permettent de surmonter ce problème. Vous fournissez à un AG deux groupes - l'un avec des symboles terminaux (entrées, constantes, etc.) et l'autre avec des fonctions (nœuds avec différentes fonctions d'activation, fonctions trigonométriques, etc. De cette façon, vous pouvez obtenir un NN qui a 3 nœuds et 5 entrées ou un NN qui a 30 nœuds et 50 entrées. Plus vous attendez de générations, meilleurs sont les NN que vous obtenez / lisez le théorème du schéma de Holland si vous voulez savoir pourquoi cela se passe comme ceci

http://en.wikipedia.org/wiki/Holland%27s_schema_theorem

/.

 
Kazam:

mrwobbles

Ces graphiques montrent les données de formation /souhaitée vs prédite/ ?

Le choix d'un nombre approprié de nœuds est très très difficile. La formule que vous avez présentée est inutile /mais elle est très populaire/ - il n'y a pas de moyen déterministe de choisir une architecture NN optimale, ou presque optimale.

Les algorithmes génétiques permettent de surmonter ce problème. Vous fournissez à un AG deux groupes - l'un avec des symboles terminaux (entrées, constantes, etc.) et l'autre avec des fonctions (nœuds avec différentes fonctions d'activation, fonctions trigonométriques, etc. De cette façon, vous pouvez obtenir un NN qui a 3 nœuds et 5 entrées ou un NN qui a 30 nœuds et 50 entrées. Plus vous attendez de générations, meilleurs sont les NNs que vous obtenez / lisez le théorème du schéma de Holland si vous voulez savoir pourquoi cela se passe ainsi

http://en.wikipedia.org/wiki/Holland%27s_schema_theorem
/.

Oui, la formation par rapport à la prédiction. J'ai construit un nouveau réseau avec les 6-7 premières années de données utilisées pour la formation, le test et la validation croisée. Je l'ai ensuite alimenté avec les 3 années de données restantes comme un test sans apprentissage, l'idée étant d'imiter un test réel. La ligne de régression de l'apprentissage avait une pente de 0,99995 et lorsque je l'ai alimenté avec environ 3 ans de données inédites, cette pente est tombée à 0,9995. Je ne sais pas trop comment interpréter ce résultat. Cela semble un peu trop précis pour quelque chose que j'ai mis en place en moins d'une heure.

Oui, je suis tombé sur cette formule dans un livre d'introduction aux réseaux neuronaux que j'ai trouvé à la bibliothèque. Il couvrait les bases et était pour moi une bonne introduction au monde des réseaux neuronaux. Pour quelqu'un qui débute, c'est un bon point de départ avant de s'attaquer à des concepts plus difficiles comme les algorithmes génétiques.

Si j'ai bien compris, il s'agit de générer une population, au départ aléatoire, de programmes (poids d'entrée, couches cachées, neurones, etc.) qui pourraient résoudre le problème, puis d'utiliser les programmes parents optimaux pour engendrer une nouvelle génération de programmes qui, espérons-le, seront meilleurs que les précédents. Si vous générez la première population au hasard, n'y a-t-il pas une chance que vous génériez une population dans laquelle aucun programme ne résout le problème ? Ou l'idée est-elle de commencer avec une population qui ne résout pas le problème et d'en faire évoluer une qui le résout ? Cela impliquerait sûrement beaucoup de calculs ? Plus que ce que peut supporter un ordinateur de bureau moyen ? J'imagine que des cartes graphiques parallèles ou, mieux encore, un système massivement parallèle seraient nécessaires. Cela dit, il semble que ce soit la meilleure approche pour sélectionner la solution la plus optimale.

Ne serait-il pas préférable de commencer avec une population de 12 réseaux, par exemple, créés à partir d'une formation utilisant les méthodes existantes, puis d'utiliser cet ensemble de programmes pour produire des descendants les uns des autres ? Vous pourriez ensuite créer une structure de type arbre généalogique, en utilisant les méthodes que vous avez suggérées pour faire évoluer une meilleure population, en élaguant les descendants infructueux et en sélectionnant les 12 programmes les plus optimaux pour être les parents de la prochaine génération ? L'idée est de commencer par une population dont vous savez qu'elle résout le problème, puis de faire évoluer un programme plus efficace à partir de la progéniture résultante.

Raison: