cazala / synaptic

architecture-free neural network library for node.js and the browser
http://caza.la/synaptic
Other
6.91k stars 666 forks source link

Multiple input layers? #15

Closed bengaltiger closed 9 years ago

bengaltiger commented 9 years ago

Is it possible to have multiple input layers? I'm thinking of the case where you have 2 different sources of data as inputs, but a unified target. Initially you pass the inputs through one or more hidden layers (separately) and then to a joint hidden layer. An example would be the "kinship" problem, shown in figure 1 in this paper: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.30.6663

cazala commented 9 years ago

well, it's not possible to have two input layers in one network using this library, you can either have a big enough input layer to fit all the possible inputs, or maybe training two different network one with each source? If you want you can also create two separate networks, and then connect those two to a third one (networks can project connections to other networks). And then you activate/propagate the networks that you want to use/train... I've never investigated much in using multiple connected networks tho, so I don't know how would that work.

anubisthejackle commented 9 years ago

From the sounds of it, it seems like using three networks is exactly what you're looking for @bengaltiger. The inputs to the third would be the outputs of the first two, creating that broken but unified connection that you described. If that would have any benefit above just simply using all the inputs together is another question though.