Suppose a neural network with its inputs. But some of this inputs have correlation. And has a cause effect relation. Is there any way to find these inputs?
Principal component analysis (PCA) transforms the input data so that the elements of the input vector set will be uncorrelated. In the situations that the dimension of the input vector is large, but the components of the vectors are highly correlated (redundant). It is useful in this situation to reduce the dimension of the input vectors.
An effective procedure for performing this operation is principal component analysis. This technique has three effects:
it orthogonalizes the components of the input vectors (so that they are uncorrelated with each other),
it orders the resulting orthogonal components (principal components) so that those with the largest variation come first, and
it eliminates those components that contribute the least to the variation in the data set.
processpca command in matlab process columns of matrix with principal component analysis
I suggest you to use V-WSP algorithm in any purpose of finding the correlated variables. Its results are awesome as variable reduction tool. More details about how to perform it and further explanations can be found in the following article:
Be aware that PCA will project your original set on space which combine linearly your original features. If you which to still keep you original features, you need to apply features selection method and not dimensionality reduction. For that you can check the statistical test (t-test, etc.) or something like minimum redundancy maximum relevance (mRMR). Thus, you will select the features the most discriminative before to feed the ANN.
I agree with Guillaume: you should choose input variables according to its influence for modelling your objective task using the trained neural network models.