réseau neuronal et entrées - page 10

 
Figar0:
La NS est complexe.

1)Tout le monde "atteint" les entrées (certains les traversent jusqu'à ce qu'elles soient des boules grises),

2) Certaines personnes pensent à la sortie, choisissent la tâche du réseau, son type et son architecture,

3) seuls quelques-uns se lancent sérieusement dans la formation en réseau.

Il n'y a rien de mineur en NS, d'où le manque de résultats.


  1. J'ai essayé différentes entrées - de l'augmentation des cotations et des indices aux transformations FFT et à l'alimentation en composantes spectrales. J'ai essayé de me nourrir à partir de cartes Kohonen entraînées.
  2. L'architecture est un peseptron multicouche avec une fonction d'activation à tangente hyperbolique.
  3. Divers algorithmes allant du simple Back Prop à l'algorithme de Levenberg - Marquardt avec calcul exact du Hessian.
 
TimeMaster:
  1. différents algorithmes allant du simple Back Prop, à l'algorithme de Levenberg-Marquardt avec calcul exact du Hessian.
L'algorithme d'apprentissage ne se soucie pas de trois fois, même s'il s'agit d'un algorithme de génération).
 
TheXpert:
L'algorithme d'apprentissage ne se soucie pas de l'algorithme trois fois, même s'il s'agit d'un algorithme de génération ;)


Je suis d'accord. La seule différence est la vitesse d'apprentissage. Je ne vois pas l'intérêt de "rattraper" 6-7 décimales avec MSE, c'est pourquoi j'utilise plus souvent un simple Back Prop avec trois échantillons. Un échantillon de formation, un échantillon de validation et un échantillon de test. La validité est sélectionnée de différentes manières, ou la validité est sélectionnée immédiatement après celle de l'entraînement, selon l'intervalle de temps, ou je "saisis" au hasard des exemples de l'entraînement, respectivement en retirant des exemples de l'échantillon d'entraînement.
 

À propos des algorithmes génétiques...

Il est difficile d'imaginer l'"utilité" de l'utiliser sur des réseaux neuronaux comportant plus de 10000 synapses. Il faut une population d'environ 10000*1000 individus, ce qui n'est pas "bon" en termes de vitesse. Je suis silencieux sur les époques...

 
<br/ translate="no">

Par exemple, si je veux former un réseau. que 2*2 = 4, et non 5 ou 6 ou 7 . alors c'est à moi de décider doit comprendre clairement. ce qu'il faut lui enseigner. Pas pour que parfois 2*2=4 et parfois 5 ...

L'énoncé du problème en général est important. Qu'est-ce que je veux ? Et ainsi de suite.


Avec l'évolution du marché, "2*2" n'est pas toujours égal à 4, c'est là le problème. Le marché change, les conditions changent. Des données incohérentes commencent à être présentes dans les échantillons d'entraînement. Le réseau n'apprend pas. Si vous réduisez les échantillons afin de ne "capturer" que l'état actuel, vous serez confronté à la taille des échantillons eux-mêmes - elle est trop petite pour entraîner un réseau neuronal plus ou moins volumétrique. Le surentraînement a lieu. L'utilisation de réseaux neuronaux simples n'est pas non plus une option, car il est TRÈS difficile de "fourrer" des données utiles dans l'entrée, puisque l'entrée est petite.
 
TimeMaster:

À propos des algorithmes génétiques...

Il est difficile d'imaginer l'"utilité" de l'utiliser sur des réseaux neuronaux comportant plus de 10000 synapses. Il faut une population d'environ 10000*1000 individus, ce qui n'est pas "bon" en termes de vitesse. Sur les époques, je suis silencieux...

L'année dernière, j'ai écrit une optimisation génétique à l'intérieur d'un hibou sur 4. Pour le plaisir, j'ai entré 88 paramètres d'entrée dans la plage 0...200. Entraîné sur 15 minutes pendant 2 semaines ~20 min (P-4 3GHz, 2GB). J'ai pris le plummer - pas de stratégie, juste une expérience. Si cela vous intéresse, je peux vous en parler.

 
icas:

L'année dernière, j'ai écrit une optimisation génétique dans un hibou en 4. Pour le plaisir, j'ai entré 88 paramètres d'entrée dans la plage 0...200. Entraîné sur 15 mins pendant 2 semaines ~20 mins (P-4 3GHz, 2GB). J'ai pris le plummer - pas de stratégie, juste une expérience. Je peux vous en parler si vous êtes intéressé.


Et s'il y a 10000 paramètres d'entrée, alors le problème dans sa forme BEST deviendra 10000/88 fois plus compliqué, respectivement ~20min*100=2000min ....

C'est à peu près un jour et demi...

Les règles de la génétique, quand on a des milliards d'années, on peut se regarder dans un miroir. :-)

 
solar:
c'est la collecte des données, la préparation des données, l'atténuation du bruit, le rationnement, etc. qui doivent être effectués. C'est ainsi que l'on combat la non-stationnarité du marché. (En théorie )) )


La collecte de données est un domaine bien étudié, il existe des moyens et des endroits pour télécharger l'historique de citations relativement "bonnes".

La préparation des données, elle aussi, fait partie du passé. Je peux vous dire que même en appliquant une conversion côte à côte à chaque dimension du vecteur d'entrée, on n'élimine pas le problème des données incohérentes.

C'est plus compliqué avec le bruit, l'intervalle est IMPORTANT ici, les minutes par rapport aux semaines sont naturellement "bruyantes", mais 15 minutes par rapport aux heures, c'est à creuser...

La normalisation est également une question triviale.

 
TimeMaster:

À propos des algorithmes génétiques... Il est difficile d'imaginer l'"utilité" de l'utiliser sur des réseaux neuronaux comportant plus de 10000 synapses. Nécessite une population d'environ 10000*1000 individus, ce qui n'est pas "bon" en termes de vitesse. Je ne parle pas d'époques...

10000 synapses ? Je pense que c'est vraiment excessif, j'ai atteint mon maximum à environ 500-700. Je n'avais pas besoin de plus. Au fait, c'est GA que j'enseigne à NS. Oui, c'est lent, mais c'est plus pratique pour moi et cela a ses propres avantages.
TimeMaster:

Avec l'évolution du marché, "2*2" n'est pas toujours égal à 4, d'où le problème. Les conditions changent au fur et à mesure que le marché évolue. Les échantillons de formation commencent à avoir des données incohérentes. Le réseau n'apprend pas. Si vous réduisez les échantillons afin de ne "capturer" que l'état actuel, vous serez confronté à la taille de l'échantillonnage - elle est trop petite pour entraîner un réseau neuronal plus ou moins volumétrique.

2*2 n'est pas toujours 4 ? Il me suffit que 2*2=4 par exemple dans 70% des cas, et je ne filtre même pas les 30% d'exemples restants, où 2*2 n'est pas égal à 4. Le filet peut s'en occuper tout seul... Si 2*2 égale 4 dans 50% des cas, vous devriez essayer de changer quelque chose, par exemple les entrées..... Je pense que j'ai fait mon point)

icas:

L'année dernière, j'ai écrit l'optimisation génétique dans Owl sur 4. Pour le plaisir, j'ai entré 88 paramètres d'entrée dans la plage 0...200. Entraîné sur 15 minutes pendant 2 semaines ~20 min (P-4 3GHz, 2GB). J'ai pris le plummer - pas de stratégie, juste une expérience. Si cela vous intéresse, je peux vous en parler.

Parlez-moi de ça, bien sûr que c'est intéressant.
 
Figar0:
10000 synapses ? Je pense que c'est beaucoup trop, j'avais au maximum 500-700. Je n'avais pas besoin de plus. Au fait, c'est GA que j'enseigne à NS. Oui, c'est lent, mais pour moi, c'est plus pratique et cela a ses propres avantages.

2*2 n'est pas toujours 4 ? Il me suffit que 2*2=4 par exemple dans 70% des cas, et je ne filtre même pas les 30% restants d'exemples où 2*2 n'est pas égal à 4. Le filet peut s'en occuper tout seul... Si 2*2 égale 4 dans 50% des cas, vous devriez essayer de changer quelque chose, par exemple les entrées..... Je pense que j'ai fait mon point)

Parlez-moi de ça, bien sûr que c'est intéressant.

Pouvez-vous me donner un exemple où 2*2 n'est pas égal à 4 ?

J'ai souvent lu cela dans la littérature, mais malheureusement il n'y a pas d'exemples.

Raison: