I am trying to determine how to set up a neural net to use in a recommendation engine I am building to recommend a cheese to the user. I have a clear understanding of what the output layer represents (the probability of whether it should recommend cheese 1, 2, 3, etc) but it would be very useful to me if I could also define what the layer before it represents as the weights of each of the features of each cheese (feature 1: creaminess (scale of 0 to 1), feature 2: saltiness (scale of 0 to 1), etc). Being able to extract this layer and have the values signify what I want them to would help me build another part of my project I'm working on. I should mention that the input to the neural net comes from a dataset of what cheeses the user has previously rated and what rating out of 5 they gave it.

I understand that you can define how many layers make up the hidden layers and how many nodes are in each layer, but if I have 20 cheese features and I set the last hidden layer to have 20 nodes, I assume that definitely does not guarantee that each node represents a feature.

Any help would be much appreciated. Thanks

  • 1
    $\begingroup$ If you want that sort of interpretation, you're better off using some different method. The biggest criticism of Neural Nets is that they are more or less a black box and difficult to interpret (especially in pre-defined ways like you've stated). Additionally, it doesn't sound like the data contain any of the information you want (e.g. texture, salinity, etc) so why should the net know about this? $\endgroup$ Commented Mar 15, 2021 at 17:52
  • $\begingroup$ Thanks for that and I sort of assumed that. In terms of your point about the input data doesn't contain the information I want, I should have been more clear. I also have this data as well about each of the cheeses so that could also be input into the neural net. I assume that doesn't change your answer but just wanted to know your thoughts. Thanks $\endgroup$ Commented Mar 15, 2021 at 19:02


Browse other questions tagged or ask your own question.