2011-03-03 6 views
1

J'ai deux types de modèles d'entrée distincts (relation inconnue) et j'ai besoin de concevoir un réseau de neurones où j'obtiendrais une sortie basée sur ces deux modèles. Cependant, je ne suis pas sûr de la façon de concevoir un tel réseau. Je suis un débutant dans NN mais j'essaye de lire autant que je peux. Dans mon problème autant que je peux comprendre il y a deux matrices d'entrée d'ordre disons 6 * 1 et une matrice d'o/p d'ordre 6 * 1. Alors, comment dois-je commencer avec ça? Est-il acceptable d'utiliser backpropogation et une seule couche cachée?Réseaux neuronaux - Recherche de o/p à partir de deux modèles d'E/S distincts

.- par exemple>

 
Input 1 Input 2 Output 
0.59  1  0.7 
0.70  1  0.4 
0.75  1  0.5 
0.83  0  0.6 
0.91  0  0.8 
0.94  0  0.9 

Comment puis-je décider de l'ordre de la matrice de poids et la fonction de transfert?

Aidez-nous s'il vous plaît. Tout lien relatif à cela fera également. Merci.

+0

dans l'exemple - est-ce que chaque ligne est un échantillon seul, ou est-ce que ce tout est un échantillon unique (et ensuite pour la formation, vous aurez plusieurs séries de 6 lignes chacune)? –

+0

@Ofri: tout est un seul échantillon ... Oui, vous avez la bonne idée :) – 5lackp1x3l0x17

Répondre

2

La chose la plus simple à essayer est de concaténer les 2 vecteurs d'entrée. De cette façon, vous aurez 1 vecteur d'entrée de longueur 12, et cela devient un problème d'apprentissage de "texte-livre" de R^{12} à R^{6}. L'inconvénient de ceci, c'est que vous perdez l'information sur chacune des 6 entrées provenant d'une source différente, mais par votre description, cela ne semble pas que vous en sachiez beaucoup sur ces sources. De toute façon, si vous avez une connaissance particulière des 2 sources, vous pouvez utiliser un prétraitement (comme soustraire la moyenne, ou diviser par l'écart type) sur chacune des sources, pour les rendre plus similaires, mais la plupart des algorithmes d'apprentissage devraient fonctionne aussi sans ça. Pour ce qui est de l'algorithme à essayer, je pense que l'ordre canonique est: les machines linéaires (perceptron), puis SVM, puis les réseaux multicouches (formés avec backprop). La raison est la suivante: plus la machine que vous utilisez est puissante, plus vous avez de chances de l'adapter à la rame, mais moins vous avez la possibilité d'adapter le "vrai" modèle (surapprentissage).

Questions connexes