This paper presents the role of neuro-fuzzy logic in real world problems. An Artificial Neural network will process the data set using different algorithms like Perceptron, Adaline, and back propagation algorithms such that the weight should be trained for better performance. To do this, different types of activation functions are required to meet the optimum result of the data set. Due to adaptable characteristic of neural network; it can adjust their weights for new data set predictors through learning phase. With respect from fuzzy logic, which produces uncertain values that can be mapped from zero to one along with all the intermediate values that lies in-between them through fuzzy sets. So, neural network can work on maximum implementation with learning and training while fuzzy logic deals with imprecise information. But Neural Networks when combined with Fuzzy Logic generate intelligent systems that can resolve a number of complex problems in no time with less mean error. We can apply fuzzy rules with neural data set that can integrate to resolve specific problems. The concept of Adaptive Neuro Fuzzy Inference System was introduced under the concept of adaptability of bias and weight values of the neuron with the processing power of fuzzy inference system. Various types of real world problems and new directions might be achieved for neuro-fuzzy with multiple applications. The goal of this paper is to explain the role of neuro-fuzzy systems; and to implement one of the sample instances of weather prediction by using WEKA Tool. This tool clearly represents that multilayer perceptron algorithm that is common in neural networks when related with fuzzy logic would produce better results as prescribed in data set.
There are number of studies that can be taken out to resolve complex problems of neuro-fuzzy technique. In this paper, the author presents a neuro fuzzy system that can be considered as intelligent machine with adaptable nature. The algorithms like ZeroR and multi-layer perceptron will produce approximate values according to the datasets of the given application. The implementation of these algorithms will be explained at the final phase of this paper using WEKA tool [ 11]. Both fuzzy logic and neural networks are complement of each other. Neural Network will be trained such that it can work in a same manner as brain works [ 4]. We can generate artificial neurons that can simulate the human brain structure as it can be trained according to their experience. Whereas Fuzzy logic has different properties compared to neural networks. We can work on uncompleted data with fuzzifier as fuzzification and produce its output as defuzzification [ 3]. We can generate fuzzy rules which will be helpful for making decisions. So, the disadvantage of both these systems that when combined with each other, it would lead to Neuro-Fuzzy systems that are intelligent enough to solve a complex instance.
Neural network connection actually resembles the concept of biological neuron. The Biological neuron receives the information from the dendrites in which neurons are transferred through synapse. The connection between one neuron to another will be connected with respect to axon. The signal of the neuron will be differentiated among each other according to multi neuron approach. Human Brain consists of approximately 1012 neurons that can communicate with each other through electrical signals in the form of spikes [ 4], [ 7]. Neurons receive signals through cell body form other neurons which will be integrate them together to transfer that signal via axon. An Artificial Neural Network consists of multi-processing elements with suitable bias and weight values which can learn with respect to time and it should be trained for better performance. Synapses are simulated through weights of the neuron which should be combined together with bias value. We must apply activation function to compute the final output. So, we can say that an Artificial Neural Network has a similar working of human brain [ 4]. The processing of these neurons will be worked in the form of each and every weight of the neuron that will be trained or updated as new input occurs. We can apply different types of activation functions as per as the requirement of the data set. Various types of sigmoid functions, transfer functions are available to compute the output in the form of radial basis function, especially for the multi-layer perceptron model which can reduce the error at each and every iteration or epoch. The output might differ according to the number of hidden layers used in that algorithm along with various types of parameters like training set samples, learning rate, activation functions, etc [ 9]. Figure 1 depicts that how neuron can transfer the data from one end to another through axon with respect to dendrites.
Figure 1. Neural Network Internal Structure
If we want to reduce the number of hidden layers, we must work on training samples and apply suitable bias and weight valued to reach the global minimum value. So, we can say that output accuracy will be the biggest hurdle in the field of artificial neural approach.
Fuzzy Logic represents multi value structure that resides between the two end points of the same set. Grint (1997) simplifies a method to handle uncertainties that occur in fuzzy sets whether it is true or false. He also represents a way to tackle the degree to which the value is true or not. The concept of fuzzy sets was given by Zadeh in 1965 to manipulate data that was uncertain. Through fuzzy sets one can scale from zero to one along with all intermediate values that lies in-between them [ 9]. We can apply any type of fuzzy operations like intersection, union, production, and complement with respect to fuzzy rules which should be helpful in decision making [ 1].
Figure 2 produces the output according to the data instance by generating fuzzy rules. So, we can say that fuzzy logic works in a similar manner as the human reasoning with knowledge capabilities. If we are having incomplete information in the data set or instance, still we can predict the output with better accuracy. Initially before the concept of fuzzy logic, the only representation was the probability which describes the output in the form of 0 and 1. But with the expandable structure of probability, we can generalize multi value output that resides in-between 0 and 1. So, the development of fuzzy logic resolves the problem of uncertainty.
Figure 2. Fuzzification Process
To handle the uncertainties; regarding thinking and reasoning, the concept of neuro-fuzzy systems was introduced. Due to adaptive nature of neural network; it can automatically adjust their weights for new data set predictors. If the control of the neuron varies, it still works and performs the output with accuracy [3]. Real world problems can easily be resolved by using both these approaches to generate an intelligent machine with neuro-fuzzy. So, in other words, neural network deals with learning and training while fuzzy logic deals with imprecise information [ 1]. The problem in individual Artificial Neural Network is that learning process is too slow and it is difficult to train an exact network with less error. But with the help of fuzzy logic, we can apply fuzzy rules with neural data set that can integrate to resolve specific problem. The concept of Adaptive Neuro Fuzzy Inference System was introduced under the concept of adaptability of bias and weight values of the neuron with the processing power of fuzzy inference system [6]. Various types of real world problem and new directions might be achieved for neuro-fuzzy with multiple applications. Different types of structures designed for neuro fuzzy systems were developed. The feed forward fuzzy neural network was commonly used with learning algorithm according to the application. These types of systems can be commonly used in pattern recognition, data set predictors, transaction systems, control systems, modeling systems, etc. Due to undefined data sets or the number of inputs, it is very difficult to achieve good results only with respect to fuzzy logic. So to overcome the problem of reasoning, neural networks are expanded to generate fuzzy rules for specific data set. Takagi and Hayashi implemented the concept of membership functions that can identify the inference rules with respect to neural networks. It can be represented in the below structure (Figure 3).
Figure 3. Neural Network Fuzzy Classification
The working of neuro-fuzzy system is that when we input any type of pattern to the system, the given network initially fuzzifies the input pattern and computes the similar characteristics according to all learned patterns as in the below figure [8]. It will produce the output with similar and dissimilar characteristics of the pattern. These types of systems should be trained as the new inputs will be given for better accuracy. So, various fuzzy reasoning methods can be used for more effective results. This can be done by using various fuzzy operators to generate systems with better approximation level. The system can learn by using fuzzy if then rules for better learning with the help of different learning algorithms as compared to multi-layer perceptron algorithm [ 13].
There are different types of tools available in latest era, but some tools can be used for evaluating one of the aspects of artificial neural approach. WEKA Tool is one of the common examples among other alternatives. This tool consists of various types of applications in the form of Explorer, Experimenter with Knowledge Flow for representing correct and incorrect instances [2], [11]. In Explorer View, we can explore our instances by using attributes according to our application. To classify explorer view, firstly we have to select a file that we want to associate with the tool and apply the classifier to produce the data output. There are explicitly different types of data classifiers available which can produce correct and incorrect instances of that data set. In this paper, if ZeroR rule is used for that instance of data set, it will produce mean error among the data, root squared error, and absolute error with number of instances. It will be classified with ROC area for future improvable of the data set [12]. We can apply with various test conditions like training set, supplied set, cross validation set and percentage set and produce classifier output. In Experiment Environment View, we must select and appropriate file that we want to analyze the data. To do this, we must apply paired testing among multiple classifiers to perform the task concurrently for combined approach as neuro-fuzzy does. We must concentrate on Cross-Validation to check the constraint according to its fold for its regression [ 5]. We can still control the number of iterations according to data set as well as different algorithms. By using Analysis approach, we can perform the test and predict datasets and result sets for its evaluation. In Knowledge Flow Environment, Initially we require Arff Loader to upload the data into the tool for classification. After that, we require class assigner to assign the data set and apply any cross validation to fold the iterations. After initializing, we can train the data set by using suitable algorithm and apply classifier to classify using text viewer or graph representation.
Suppose in order for one predicts the weather conditions and checks whether the play is possible or not. To do this, firstly we can generate a suitable data set with various attributes along with their instances [ 2], [ 11]. This structure consists of five attributes: outlook that represents various types of inputs like sunny, overcast and rainy; another aspect about temperature with hot, mild and cool whereas humidity represents high and normal values [ 12]. The last two attributes having major contribution to data set in the form of windy as True or false and the last parameter shows the possibility of play in the form of Yes and No. Figure 4 summarizes the various parameters with multiple conditions.
When the author classifies by using different classifier algorithms like “ZeroR”, the results will be displayed according to 10 cross validation folds which represents 9 correctly classified instances, 5 incorrectly classified instances with mean error of 0.476 with ROC area of 0.178. The representation of ZeroR algorithm based upon root mean squared error 0.4934. The conclusion of ZeroR parameter is not up to mark due to very less ROC value, which must be nearly equal to 1 for better solutions as in Figure 5 [ 2].
Figure 5. ZeroR Algorithm with Cross Validation
Similarly, if it is classified by using Multilayer Perceptron technique with same number of cross validations as per as previous algorithm with similar data sets, this approach produces 10 correctly classified instances and 4 incorrectly classified instances with mean error 0.287 along with ROC value 0.778. By using this Multilayer approach, root mean squared error reduces to 60.2616% as compared to 100% with ZeroR approach [ 2], [ 11]. But this approach still leads to confusion matrix at the end as 7:2 and 2:3 for the attributes a and b, respectively.
The conclusion of Multi layer perceptron is up to mark due to high ROC value in Figure 6. It is very clear from the above two representations with different algorithm with similar instances that multilayer perceptron in Artificial Neural Network provides us better output in the ROC area value as in Table 1 [ 12].
Figure 6. Multi-Layer Perceptron with Cross Validation
Table 1. Comparison between Two Approaches
The table clearly describes that the given input data instance have better output according to correctly classified values with low error rate using multilayer technique. Perceptron algorithm must have greater impact as compared to other algorithms due to adaptable nature of the algorithm [ 4]. Mean absolute error still need to be reduced if we can update our instances which will definite by produce more accuracy in correctly classified instances.
The main aim of this paper is to generate a neuro fuzzy structure that can solve real world problems in quick time. The implementation of Neuro-Fuzzy with WEKA Tool was presented. Different types of neuro fuzzy structures can be designed for better solutions for ROC area. The implementation clearly represents that we must apply better instances to improve the correctly classified instances which will definitely reduce the mean absolute error among the data. Still, in future, we can try with different algorithms for better accuracy. We must train the neurons by classifying with new inputs patterns by different classifier functions. The author has found that Multilayer perceptron produces better classified outputs as compared to non-fuzzy attributes. He simulated the instances through WEKA tool, but in future the same instances would be compared by using MATLAB tool and the ROC value would be checked for better accuracy of the instance. The described algorithm can produce better predictions with limited error rates. According to the application, the control system can be made more energetic with maximum threshold value with minimum error. There are number of carrying directions in this field for super intelligent systems. The major disadvantages of such types of systems are that it produces the output only according to the given data set. These types of systems should be trained enough to detect any type of error in the instance at any epoch. This paper concludes how neurofuzzy logic would be used for better decision makers. The proposed model will be useful for predicting the new instances for more complex problems.