MATLAB Answers

Single element of Input vector in classifying patterns with a Shallow Neural Network

2 views (last 30 days)
Daniel Strahnen
Daniel Strahnen on 23 Mar 2020
Commented: Mahesh Taparia on 26 Mar 2020
Dear MatLab-Community,
I have a question regarding the tutorial "Classify Patterns with a Shallow Neural Network".
Let's take the breast cancer example with a 9x699 input matrix.
Is it possible to calculate an error for each of the 9 input elements separately?
I.e. would be one of them sufficient to predict benignitiy or malignancy?
Best Regards
Daniel

  0 Comments

Sign in to comment.

Answers (1)

Mahesh Taparia
Mahesh Taparia on 26 Mar 2020
Hi
As per your question, you have a 9 dimensional dataset with a classification of benignitiy or malignancy of breast cancer. So there will be a classification loss with respect to class prediction , i.e output.
Coming to your second question, it seems you want to check if you can use classifier with less number of input. For this you can try dimensional reduction techniques like PCA to find independent principle components and used the output of the PCA as input to your network. For more information on PCA, you can refer to the documentation of PCA.

  2 Comments

Daniel Strahnen
Daniel Strahnen on 26 Mar 2020
Thank you for your answer!
Actually, my goal was to find out the statistical significance of the the predictors, i.e. can one predictor signficiantly predict the output or not. Do you know if there is a statistical test for this? Maybe to obtain an array of p-values for each of the predictors or a selected combination of predictors?
In general I am more interested in the predictors and their contribution to the output than the output itself.
Mahesh Taparia
Mahesh Taparia on 26 Mar 2020
Hi
In that case, you can check with different combination of inputs and check the performance, but it will be time consuming.
You can try with clustering of each dimension of data and check if you are getting a good boundary for the classification.
One approach could be to apply the pca, for example:
[coeff,score,latent]=pca(input_data,'NumComponents',9);
summary=latent/sum(latent);
contribution=cumsum(summary);
The variable latent contains the variance of a dimension, contribution will contains the percentage of maximum variance contributed by the different dimension (in the range of 0-1). Select the appropriate number of components with respect to contribution vector and train the network.

Sign in to comment.

Sign in to answer this question.


Translated by