Automatic Generation of Fuzzy Models By using Iteration through Training Data

Similar documents
FUZZY EXPERT. Dr. Kasim M. Al-Aubidy. Philadelphia University. Computer Eng. Dept February 2002 University of Damascus-Syria

Module 12. Machine Learning. Version 2 CSE IIT, Kharagpur

Learning Methods for Fuzzy Systems

Evolutive Neural Net Fuzzy Filtering: Basic Description

A student diagnosing and evaluation system for laboratory-based academic exercises

AGS THE GREAT REVIEW GAME FOR PRE-ALGEBRA (CD) CORRELATED TO CALIFORNIA CONTENT STANDARDS

OPTIMIZATINON OF TRAINING SETS FOR HEBBIAN-LEARNING- BASED CLASSIFIERS

Mathematics subject curriculum

Australian Journal of Basic and Applied Sciences

Modeling user preferences and norms in context-aware systems

DIDACTIC MODEL BRIDGING A CONCEPT WITH PHENOMENA

Applying Fuzzy Rule-Based System on FMEA to Assess the Risks on Project-Based Software Engineering Education

Rule Learning With Negation: Issues Regarding Effectiveness

Knowledge-Based - Systems

Artificial Neural Networks written examination

CS Machine Learning

Cal s Dinner Card Deals

ScienceDirect. A Framework for Clustering Cardiac Patient s Records Using Unsupervised Learning Techniques

LEGO MINDSTORMS Education EV3 Coding Activities

An Introduction to Simio for Beginners

Probabilistic Latent Semantic Analysis

AP Statistics Summer Assignment 17-18

Testing A Moving Target: How Do We Test Machine Learning Systems? Peter Varhol Technology Strategy Research, USA

System Implementation for SemEval-2017 Task 4 Subtask A Based on Interpolated Deep Neural Networks

ECE-492 SENIOR ADVANCED DESIGN PROJECT

Human Emotion Recognition From Speech

AUTOMATED TROUBLESHOOTING OF MOBILE NETWORKS USING BAYESIAN NETWORKS

Lecture 1: Machine Learning Basics

Unit 3: Lesson 1 Decimals as Equal Divisions

Functional Skills Mathematics Level 2 assessment

The Good Judgment Project: A large scale test of different methods of combining expert predictions

Grade 6: Correlated to AGS Basic Math Skills

SARDNET: A Self-Organizing Feature Map for Sequences

The Use of Statistical, Computational and Modelling Tools in Higher Learning Institutions: A Case Study of the University of Dodoma

The Method of Immersion the Problem of Comparing Technical Objects in an Expert Shell in the Class of Artificial Intelligence Algorithms

Laboratorio di Intelligenza Artificiale e Robotica

The 9 th International Scientific Conference elearning and software for Education Bucharest, April 25-26, / X

Rule Learning with Negation: Issues Regarding Effectiveness

Dublin City Schools Mathematics Graded Course of Study GRADE 4

MYCIN. The MYCIN Task

Rule discovery in Web-based educational systems using Grammar-Based Genetic Programming

learning collegiate assessment]

Axiom 2013 Team Description Paper

A study of speaker adaptation for DNN-based speech synthesis

Physics 270: Experimental Physics

Analysis of Hybrid Soft and Hard Computing Techniques for Forex Monitoring Systems

Statewide Framework Document for:

OCR for Arabic using SIFT Descriptors With Online Failure Prediction

(Sub)Gradient Descent

Reduce the Failure Rate of the Screwing Process with Six Sigma Approach

Rule-based Expert Systems

Speech Emotion Recognition Using Support Vector Machine

1 st Quarter (September, October, November) August/September Strand Topic Standard Notes Reading for Literature

Word Segmentation of Off-line Handwritten Documents

Seminar - Organic Computing

Disambiguation of Thai Personal Name from Online News Articles

South Carolina College- and Career-Ready Standards for Mathematics. Standards Unpacking Documents Grade 5

Decision Analysis. Decision-Making Problem. Decision Analysis. Part 1 Decision Analysis and Decision Tables. Decision Analysis, Part 1

Strategy for teaching communication skills in dentistry

First Grade Standards

Edexcel GCSE. Statistics 1389 Paper 1H. June Mark Scheme. Statistics Edexcel GCSE

STA 225: Introductory Statistics (CT)

Probability and Statistics Curriculum Pacing Guide

Radius STEM Readiness TM

Computerized Adaptive Psychological Testing A Personalisation Perspective

Speech Recognition at ICSI: Broadcast News and beyond

Level 1 Mathematics and Statistics, 2015

Reinforcement Learning by Comparing Immediate Reward

ADVANCED MACHINE LEARNING WITH PYTHON BY JOHN HEARTY DOWNLOAD EBOOK : ADVANCED MACHINE LEARNING WITH PYTHON BY JOHN HEARTY PDF

Rover Races Grades: 3-5 Prep Time: ~45 Minutes Lesson Time: ~105 minutes

EDCI 699 Statistics: Content, Process, Application COURSE SYLLABUS: SPRING 2016

Generative models and adversarial training

CSL465/603 - Machine Learning

Introduction to Simulation

Laboratorio di Intelligenza Artificiale e Robotica

Reducing Features to Improve Bug Prediction

EDEXCEL FUNCTIONAL SKILLS PILOT TEACHER S NOTES. Maths Level 2. Chapter 4. Working with measures

Fuzzy rule-based system applied to risk estimation of cardiovascular patients

Objectives. Chapter 2: The Representation of Knowledge. Expert Systems: Principles and Programming, Fourth Edition

Mathematics process categories

Time series prediction

SINGLE DOCUMENT AUTOMATIC TEXT SUMMARIZATION USING TERM FREQUENCY-INVERSE DOCUMENT FREQUENCY (TF-IDF)

An empirical study of learning speed in backpropagation

Generating Test Cases From Use Cases

On the Combined Behavior of Autonomous Resource Management Agents

Math 098 Intermediate Algebra Spring 2018

Arizona s College and Career Ready Standards Mathematics

Mining Association Rules in Student s Assessment Data

Diagnostic Test. Middle School Mathematics

On Human Computer Interaction, HCI. Dr. Saif al Zahir Electrical and Computer Engineering Department UBC

Applications of data mining algorithms to analysis of medical data

Office Hours: Mon & Fri 10:00-12:00. Course Description

A SURVEY OF FUZZY COGNITIVE MAP LEARNING METHODS

Algebra 1, Quarter 3, Unit 3.1. Line of Best Fit. Overview

SURVIVING ON MARS WITH GEOGEBRA

STT 231 Test 1. Fill in the Letter of Your Choice to Each Question in the Scantron. Each question is worth 2 point.

Lecture 10: Reinforcement Learning

Executive Guide to Simulation for Health

Impact of Cluster Validity Measures on Performance of Hybrid Models Based on K-means and Decision Trees

Transcription:

Automatic Generation of Fuzzy Models By using Iteration through Training Data Abdulrazaq Alsuhail Almutairi Information & Computer Center The Public Authority for Applied Education and Training The Ministry of Education The State of Kuwait Abstract The fuzzy logic technique has been widely employed in different applications.it has the capability of mimicking the human mind to adequately apply modes of reasoning, which are approximate rather than exact. In this paper, one of the fuzzy logic challenges, related to learning capabilities, is handled by proposing an approach that auto generates fuzzy models using previous observations. This approach involves generating membership functions and fuzzy rules. In other words, this paper shows how to use fuzzy logic as a machine learning algorithm, based on a training dataset. The approach is based on iteration. In each iteration, some parameters are changed to generate fuzzy rules. The iteration process will stop once the error goes below a specified value. Results show that the fuzzy system, based on rules generated using the proposed approach, has achieved a high level of accuracy. 1. Introduction The classical models that depend on complex mathematical equations, and ignore qualitative and subjective information, are not suitable or practically complex enough to apply to many problems [1]. Recently, models based on fuzzy logic have been widely employed in different fields such as engineering, economics, and biotechnology. Fuzzy logic is considered as a data mining technique that translates defined rules to mathematical equivalents for performing the input-output mapping. It has the capability for handling vagueness and incompleteness of information [2]. Fuzzy logic is very effective in cases where the available information is not accurate enough to justify the use of numbers, as there is a tolerance for imprecision. In addition, it is able to describe non-linear relationships. Moreover, models based on fuzzy logic are transparent as relationships between inputs and outputs are expressible [3]. In other words, it is not a black box like some of the machine learning algorithms. Although the advantages of fuzzy logic are mentioned, it is usually based on a subjective estimation that is highly dependent on human understanding for modelling problems. This means that one of the fuzzy logic shortfalls is the absence of learning capability as in machine learning algorithms. The main challenge of fuzzy modelling is the extraction of fuzzy rules that suit the data and with a high level of extent. In the past few years, many approaches were proposed to adjust fuzzy membership functions and generate fuzzy rules by analysing previous observations (training data). Some of those approaches focus only on adjusting fuzzy membership functions, while others look at fuzzy rules extraction. Most of those approaches are based on data clustering techniques, such as genetic algorithms that target grouping data into clusters based on similarity measurements. The issue with fuzzy models based on those approaches is a lack of harmony between membership functions and fuzzy rules as they generate only one of them, not both of them. In other words, they do not achieve the maximum level of fitness between membership functions and fuzzy rules. As a result of that issue, poor results are obtained in some scenarios. In this paper, an approach is proposed to auto-generate fuzzy models based on previous observations (training data set). The approach generates both membership functions and fuzzy rules rather than focusing on one side, to increase the level of fitness between data and fuzzy rules. In addition, the proposed approach gives users control over speed and accuracy by specifying some parameters in training that will be explained later in section 3. The paper is divided as follows: an overview of fuzzy logic and its different components is provided in section 2. The proposed approach is presented in section 3. Section 4 and 5 go through results obtained by applying the proposed approach to some classification problems. Section 5 presents related work. Section 6 provides a conclusion and future work plan. 2. Brief Background 2.1 Fuzzy logic overview Fuzzy logic systems consist of four main components; fuzzifier, fuzzy rules, inference engine, and defuzzifier. The mechanism of fuzzy logic is shown in Figure 1. The First step is known as fuzzification which converts crisp input values to a fuzzy set by using fuzzy linguistic variables and membership functions. The inference engine then applies fuzzy set obtained from the fuzzifier to specified rules (fuzzy rules) to produce a fuzzy output. The final step is mapping the fuzzy output to a crisp value through the defuzzifier. Copyright 2016, Infonomics Society 748

Figure 2: Membership functions 2.4 Fuzzy Rules Figure 1: Fuzzy Logic Systems Architecture 2.2 Linguistic Variables Linguistic variables represent input or output variables of a system in terms of natural language rather than numerical values [1]. A linguistic variable generally involves using a set of linguistic terms. For example, Let velocity (v) is the linguistic variable which represents the velocity of a vehicle. To qualify the speed, terms such as high and slow are used in real life. These are the linguistic values of the velocity. Therefore, V(v) = {too-high, high, slow, hot, tooslow} is the set of decompositions for the linguistic variable speed. 2.3 Membership functions Membership functions are employed in both the fuzzification and defuzzification processes to convert the crisp input values to fuzzy set and vice versa. In other words, membership functions are used to quantify a linguistic term. A crisp value can be fuzzified using multiple membership functions but with different levels of membership. Membership functions can be presented in different forms such as triangular, trapezoidal, or Gaussian as shown in figure 2. A fuzzy rule is an IF-THEN rule that includes conditions (AND, OR, NOT operations between linguistic variables) and a conclusion. The evaluation of a fuzzy rule to deduce an output is carried out through fuzzy set operations. The OR operation is mapped to the max, while AND is mapped to min. The NOT operation is mapped to (1- membership value) [1]. 3. The Proposed Approach The idea of the approach in this paper is inspired by neural network training, being similar in generating a model then checking the error to find out whether it is acceptable or not. The iteration continues to adjust the model until hitting a max number of iterations or obtaining an error below a specified value. Figure 3 shows how the approach works to generate fuzzy systems, as follows: 1- The first step is reading design parameters which include: max root mean square (RMS) error; max number of epochs; membership functions to be used; min number of linguistic terms used in membership functions. Table 1 explains each of those parameters. 2- The second step is selecting the most relevant attributes from the training data set and excluding attributes that do not have an impact on specifying the output, using a Correlation Feature Selection algorithm (CFS). Copyright 2016, Infonomics Society 749

membership functions will be used with attributes that have discrete values. 5- Fuzzy rules are then generated by going through each record in the training dataset and mapping each numeric value into a description, based on the number of linguistic terms used in the iteration as follow: 0 attribute value < A 1 A 1 A i-1 attribute value < A i A i Where: A n-1 attribute value 1 A n n is a number of linguistic terms. A i = i /n, i n 1- The next step is to calculate the output for each training record through the generated fuzzy model, then to calculate the error. 2- The root mean square error is then calculated and compared with the max value specified in the first step. The iteration will stop in cases where the calculated error is less than the max value. 3- If the max number of epochs is not hit, the number of linguistic terms can be increased by one, then proceed again from step 4. The idea behind increasing the linguistic terms in each iteration is to generate rules that cover more scenarios than previous epochs. Table 1: Design Parameters Parameter Max RMS Error Max Number of Epochs Description Max value accepted for differences between values produced by the generated model and those actually observed. Max number of iterations to generate a fuzzy model in the training phase. Figure 3: The Proposed Approach 3- Thirdly is normalising the selected attributes so all attributes will be in the range of zero to one. This step will simplify the generation of membership functions, as all attributes will be in the same range, so the design of membership functions for all inputs will be similar. 4- Next is to generate input and output membership functions, based on the number of linguistic terms. Note that singleton Min Number of Linguistic Terms The min value that will be used to construct membership and fuzzy rules Copyright 2016, Infonomics Society 750

4. Experiment 1 4.1 Overview In this experiment, we are trying to create a decision model that evaluates a car from different perspectives, then decides whether the car passes the evaluation or not. The training dataset [4] contains 1200 labelled samples, with a class indicating whether it passed the evaluation or not. Each sample consists of six attributes described as follows: Buying: Buying Price. It is rated in a range of zero to four, where four means a very high price and zero means a very low price. Maintenance: Maintenance price. It is rated in a range of zero to four, where four means a very high price and zero means a very low price. Doors: Number of doors. It takes one of the following values (2, 3, 4, 5 or more). Persons: Capacity in terms of the number of individuals. It takes one of the following values (2, 3, or more). Lug Boot: The size of the luggage boot. It is rated in a range of 0 to 3, where 3 means big. Safety: Safety level. It is rated in a range of 0 to 3, where 3 means a high degree of safety. The class can be either one or zero, where one indicates passing the evaluation and zero refer to failure. 4.2 Training The training has been run by setting max RMS error to 0.2, the max number of epochs to 10, the min number of linguistic terms to 4, and triangle membership functions. The training stopped at the fourth epoch achieving 0.09 RMS. Table 3 shows the number of linguistic terms, the number of fuzzy rules generated, and RMS error in each epoch. Table 2: Experiment 1 Training Results Epoch Linguistic Terms Fuzzy Rules RMS Error 1 5 128 0.51 2 6 297 0.33 3 7 468 0.29 4 8 864 0.09 4.3 Evaluation The evaluation process was carried out using a dataset consisting of 1730 samples. The process evaluated the performance of the generated model in terms of true positive, true negative, false positive, and false negative. Table 3 presents the performance evaluation of the generated model; it shows that the generated model achieved a high true positive at 0.96. Table 3: Performance Evaluation for Experiment 1 True Positive True Negative 0.96 0.99 False Positive 5. Experiment 2 5.1 Overview False Negative.01.04 In this experiment, we are trying to create a model that finds out the presence of heart disease in a patient. The training dataset [5] contains 200 labelled samples with a class indicating the presence or absence of heart disease in a patient. Each sample consists of thirteen attributes described as follows: Age: Age of the patient in years. Sex: Sex of the patient (1 for male; 0 for female). CPT: Chest Pain Type (1 for typical; 2 for atypical; 3 for non-angina; 4 for asymptomatic) trestbps: Resting blood pressure in mm Hg. Chol: Cholesterol level in mg/dl. fbs: A flag that indicates whether fasting blood pressure is greater than 120 mg/dl (0 for false; 1 for true). restecg: Resting electrocardiographic results (0: normal; 1: having ST-T wave abnormality, 2: showing probable or definite left ventricular hypertrophy). thalach: Maximum heart rate measured. Copyright 2016, Infonomics Society 751

exang: A flag that indicates whether exerciseinduced angina (0 for false; 1 for true). Table 5: Performance Evaluation for Experiment 2 oldpeak: ST depression generated by exercise, compared to rest. slope: The slope of the peak exercise ST segment (1 for upsloping; 2 for flat; 3 for downsloping). ca: Number of major vessels thal: (3 for normal; 6 for fixed defect; 7 for reversible defect). The class can be either one or zero, where one indicates the presence of heart disease and zero refers to absence. 5.2 Training The training was run by setting max RMS error to 0.2, the max number of epochs to 10, the min number of linguistic terms to 4, and triangle membership functions. The training stopped at the fifth epoch achieving 0.2134 RMS. Table 3 shows the number of linguistic terms, the number of fuzzy rules generated, and RMS error in each epoch. Epoch Table 4: Experiment 2 Training Results Linguistic Terms Fuzzy Rules RMS Error 1 3 167 0.33 2 4 212 0.25 3 5 244 0.66 4 6 251 0.22 5 7 268.14 5.3 Evaluation The evaluation process was carried out using a dataset consisting of 350 samples. The process evaluated the performance of the generated model in terms of true positive, true negative, false positive, and false negative. Table 5 presents the performance evaluation of the generated model; it shows that the generated model achieved a high true positive at.9604 and a low false positive a 0.006. True Positive True Negative 0.9604 0.9940 False Positive 6. Related Work False Negative 0.006 0.0396 There have been some attempts by researchers to autogenerate fuzzy rules; one of those researchers [6] proposed an approach to generate classification rules using granulationbased adaptive clustering. The approach carries out data clustering without the need to define any parameters as the number of clusters. Data clustering is performed at different levels of granulation and the best clustering to generate fuzzy rules is then selected. The average accuracy achieved by that approach was around 78.64%. Another attempt [7] aimed at auto-generating a fuzzy classification system using hyper-cone membership functions, based on genetic algorithms. In this approach, rules are added gradually until the best performance is achieved. The average accuracy obtained by that approach was around 73.23%. In [8], researchers tried to generate fuzzy rules based on subtractive clustering and genetic algorithms. The proposed method searches for the fuzzy interference system structure and the number of rules that achieve the best performance. The average accuracy achieved was 74.50% 7. Conclusion and Future Work It was found that the proposed approach can be effectively used to auto-generate a fuzzy-based classification system. The experiments carried out to test the proposed approach showed that the generated classification systems achieved a higher accuracy compared to approaches proposed in the related work section. The approach increases the number of linguistics in each epoch to cover more scenarios and reduce error. However, it has been found that increasing the number of linguistic terms in each epoch leads to increasing the number of rules. As a result of this growth, the generated system becomes more complex and slower. The future work plan will focus on improving the approach by decreasing the number of rules generated, by using a rules reduction technique. It will also involve using a min and max number of linguistic terms for each linguistic variable, rather than using the same number of linguistic terms for all variables (inputs), to reduce the complexity of generated systems. Copyright 2016, Infonomics Society 752

8. References [1] L. Zadeh, Fuzzy sets, Inf. Control, 1965, vol.353, pp.338-353. [2] K. Pulo, Fuzzy Logic vs. Machine Learning, [Online] Available from http://www.kev.pulo.com.au [Accessed: 20th April 2015]. [3] A. Oscar, Historical review of evolutionary learning methods for Mamdani-type fuzzy rule-based systems: Designing interpretable genetic fuzzy systems, International Journal of Approximate Reasoning, 2011, v.52 n.6, p.894-913. [4] M. Bohanec And B. Zupan, "Car Evaluation Dataset", [Online] Available from: http://archive.ics.uci.ed [Accessed: 19th April 2016]. [5] R. Detrano, "Heart Disease Dataset", [Online] Available from: http://archive.ics.uci.ed [Accessed: 19th April 2016]. [6] M. Al-Shammaa And M. Abbod, "Automatic Generation of Fuzzy Classification", International Conference on Neural Networks-Fuzzy Systems, 2014, pp.74-79. [7] L. HNG, "Automatic Generation of Fuzzy Classification Systems Using Hyper-Cone Membership Functions", Computational Intelligence in Robotics and Automation, 2003, pp.658-663. [8] M. Al-Shammaa and M. Abbod, "Automatic generation of fuzzy classification rules using granulation-based adaptive clustering", Systems Conference, 2015, pp.653 659. Copyright 2016, Infonomics Society 753