The traditional approach to building knowledge-based systems is to use rules articulated by experts and to build an expert system. If only this approach is used, some problems arise:
One alternative to the standard approach is to build automatic learning machines which learn explicit rules from data, if enough data are available. Rules extracted from data can be subsequently used for the purpose of reasoning, explanation, understanding problems, and trying alternative techniques for solving problems, for example, fuzzy inference machines and AI rule-based techniques.
Neural networks are appropriate candidates for the task of knowledge acquisition from data because of the following:
There are different methods that can be applied for rules extraction from neural network architectures. They can be classified in two major groups:
(1) Destructive learning, that is, learning by pruning the neural network architecture during training.
(2) Nondestructive learning of rules.
Learned (or articulated) initial set of rules can be used to "prewire" a neural network before consecutive training with real data for the purpose of better generalization. Two ways of achieving this task are (1) setting only selected connections in a fuzzy neural network, and (2) weights initialization of a fully connected neural network before training. The above groups of methods are presented in the following subsections.
Extracting rules from data may subsequently mean loss of information. The way knowledge is extracted restricts aspects of that knowledge and directs and biases the knowledge acquisition process. A data set may contain much more than is extracted from it, for example, many more interdependencies between attributes, many more relations, and many more inference paths. Neural networks are only one technique. Other techniques may be used alternatively or additionally, for example, genetic algorithms.