I used a script in R language that uses nnet library to predict promoter bacteria and i would like to know how to extract rules from this neural network results.As my input of the neural network i have n positive examples of promoter and n false examples. I use as input these examples and the FASTA file with the genome of the bacteria. As a result, i have a value of 0 to 1 for each network tested corresponding to its learning. I want to discover roles that can improve my network in future experiments in the same bacteria.Which algorithms or softwares could i use?
Rule Extraction from nnet results
r;fasta;machine learning
Short answer: you can't.Neural networks use positive and negative examples to add weights to the neural network architecture that is provided to it. Trying to deconvolve the meaning behind the weights is nigh-on impossible except for the simplest perceptron.This is common to many machine learning algorithms: they work very much like black boxes. One exception is decision trees. They will report what features are used to classify the positive vs negative datasets.However, as with all ML methods, you need to be very careful of your training datasets. This is especially true of motif searching and especially for negative datasets. It's quite easy to find a negative dataset which is completely inappropriate for learning and give you misleading accuracies.Like @user172818, I would try traditional methods as they can work well, again, if given appropriate data. The MEME-suite would be a good start.