Say I have 4 features (x1,x2,x3,x4) and 3 classes (n1,n2,n3) and I know the following:
n1 only depends on x1,x2 and x3,
n2 only depends on x2,x3 and x4,
n3 only depends on x1 and x2.
What is the best way to use this information when training a patternnet?
After training, the network will estimate the class probabilities [p1 p2 p3] given a sample [x1 x2 x3 x4]. In this example I want the value of p3 to be independent of x3 and x4. What is the best way of achieving this?
I would prefer if the solution scales well to larger problems.
Some of my ideas:
- Separate network for each class with only the relevant features in each net. I'm not sure how you optimize multiple networks.
- Configure a custom network with manual connections by using net.inputConnect etc. This seems rather complicated for me and I'm not sure this is the right way to take.
- Set initial values of corresponding weights to 0 to remove dependency of irrelevant features. This gets ignored once training begins. Is it possible to force some weight to 0?