# Fuzzy Rule-Based Classification System for Assessing Coronary Artery Disease

Authors: Reza Ali Mohammadpour; Seyed Mohammad Abedi; Somayeh Bagheri; Ali Ghaemian
Journal: Computational and Mathematical Methods in Medicine
 (2015)

---

## Abstract

The aim of this study was to determine the accuracy of fuzzy rule-based classification that could noninvasively predict CAD based on myocardial perfusion scan test and clinical-epidemiological variables. This was a cross-sectional study in which the characteristics, the results of myocardial perfusion scan (MPS), and coronary artery angiography of 115 patients, 62 (53.9%) males, in Mazandaran Heart Center in the north of Iran have been collected. We used membership functions for medical variables by reviewing the related literature. To improve the classification performance, we used Ishibuchi et al. and Nozaki et al. methods by adjusting the grade of certaintyCFj of each rule. This system includes 144 rules and the antecedent part of all rules has more than one part. The coronary artery disease data used in this paper contained 115 samples. The data was classified into four classes, namely, classes 1 (normal), 2 (stenosis in one single vessel), 3 (stenosis in two vessels), and 4 (stenosis in three vessels) which had 39, 35, 17, and 24 subjects, respectively. The accuracy in the fuzzy classification based on if-then rule was 92.8 percent if classification result was considered based on rule selection by expert, while it was 91.9 when classification result was obtained according to the equation. To increase the classification rate, we deleted the extra rules to reduce the fuzzy rules after introducing the membership functions.


---

## Body

## 1. Introduction

In the past years, fuzzy if-then rule-based systems were used basically to control problems, while nowadays they are mainly applied in classification tasks [1–7]. There are many methods for automatically generating and learning the fuzzy if-then rules from numerical data for pattern classification problems [2, 4, 5, 8, 9].The concepts of linguistic statement have been introduced by Zadeh [10] and it is crucial that we see each attribute as linguistic value showed by fuzzy numbers with trapezoidal membership function [11, 12].After generating the volunteer rule, a set of rules must be chosen to structure the rule based on the classifier. In this paper, we assume a number of prespecified fuzzy sets given by expert’s knowledge for each input attribute [13]. The performance of resulting classifiers can be enhanced by using rule weighting [14]. Therefore, our study can have effect on generating, weighting, and selecting rules based on expert opinions or systems outputs.Therefore, the total number of fuzzy if-then rules generated by partitioning each attribute intoK fuzzy subsets in an n-dimensional pattern classification is defined as Kn [4, 5, 15]. In this work, we adjusted the grade of certainty of fuzzy if-then rules when there was misclassification of an input pattern in an error-correction method [15].Coronary artery disease (CAD) is the most common cause of mortality in worldwide population and has a high prevalence of mortality rate in both developing and developed countries [16]. Many risk factors such as age, sex, high blood pressure, diabetes, obesity, smoking, family history of coronary artery disease, and cholesterol (LDL) have essential role in CAD [17]. Some risk factors such as sex and diabetes are crisp, whereas others are fuzzy sets.The gold standard method for the diagnosis of CAD is coronary angiography (CA). Since CA is a costly and invasive procedure needing technology and high level of technical experience, it cannot be used to screen large population [18–20]. Therefore, noninvasive alternative methods for coronary angiography are necessary. A number of noninvasive CAD diagnosis methods have been proposed in literature [21], namely, exercise stress test and Single Photon Emission Computed Tomography (SPECT) or scintigraphy and Echo. However, the diagnosis accuracy of these tests is not as high as that of coronary angiography. Some studies showed that these medical tests do not have an accurate result and fuzzy set theory can enhance their accuracy [22–25]. Moreover, the diagnosis accuracy of a combination of the results of noninvasive clinical tests and other clinical-epidemiological attributes has been improved by using fuzzy models [26]. Fuzzy systems have been proposed and used to determine the cardiovascular diseases and to assess the risk factors due to the ambiguity and uncertainty of the diagnostic process [27, 28].Fuzzy rule-based classification system is one of the fuzzy systems. In recent years, fuzzy classifier methods have been commonly used in medical diagnosis. In the literature there are a lot of studies that have worked on the classification of medical data (on cancer and cardiology) using fuzzy classifiers [29, 30]. In 2004, Vig et al. employed fuzzy set theory for the diagnosis of CAD [31]. Allahverdi et al. designed a fuzzy expert system to determine coronary heart disease risk [32] and P. Srivastava and A. Srivastava conducted similar study in India [33] and some of investigators studied improving fuzzy decision systems for CAD diagnosis.Clinical importance or relevance of features (input variables) in cardiology diagnostic tests can introduce weights for interpretable fuzzy rule selection. CAD diagnosis is a complex and important problem. Some of rules are clinically acceptable and desirable by physicians. In this paper, we added the result of MPS to other attributes for generating fuzzy rules according to physician knowledge and supervised classification with labeled data. Data set is classified using Ishibuchi et al. [34–36] weighted fuzzy rule-based classifier to diagnose CAD and 3 levels of severity of CAD.The aim of this study was to determine the accuracy of fuzzy rule-based classification that could noninvasively predict the CAD based on myocardial perfusion scan test and clinical-epidemiological variables.After Introduction in Section1 we continued, in Section 2, generating, learning, and weighting fuzzy if-then rules. Finally, in Sections 3 and 4, we showed application results and discussion.


## 2. Methods: Weighting Fuzzy Classification System

### 2.1. Fuzzy If-Then Rule

Let us suppose that our pattern classification problems arem training patterns Xp=Xp1,…,Xpn, p=1,…,m with c-class n-dimensional problem [5, 7, 30].First, all attribute values of the given training pattern are transformed in the unit interval[0,1]. Thus, the pattern space into the n-dimensional pattern classification problem uses unit hypercube [0,1]n [5, 6, 34]. For an n-dimensional, c-class problem, we apply fuzzy if-then rule of the following form:(1)RuleRj:  Ifx1isAj1and  …  andxnisAjnThen  classCjwithCFjj=1,…,N,where Rj is the label of the ith fuzzy if-then rule, N is the total number of fuzzy if-then rules, X=x1,…,xn is the pattern vector n-dimensional, Aj1 presents antecedent fuzzy sets for the ith attribute, Cj represent a consequent class (i.e., one of the c classes), and CFj is a certainty grade of the fuzzy if-then Rj [2, 5, 9, 13, 15, 34, 35].As antecedent fuzzy sets we employ trapezoidal fuzzy sets, where we display other partitions of the unit interval into fuzzy sets [2, 36].Using (1), we generate N fuzzy if-then rule that consists of two below steps. The first one is specifying membership function of antecedent fuzzy sets and the second one is determining consequent class Cj and certainty grade CFj of the fuzzy rule Rj [2, 5, 15]. The antecedent part of the fuzzy if-then rules is initialized manually [2]. For each training pattern, the concept of a weight is applied. The weight of misclassified/rejected patterns is observed as a cost of misclassification or rejection. When a training pattern is misclassified, then the adjustment of fuzzy rules arises. In this study, we can determine both consequent class Cj and the grade of certainty CFj for all rules of the following type.Step 1.
Calculate the compatibility grade of training patterns using product as T-norm:(2)μjXp=μj1xp1×⋯×μjnxpn,p=1,2,…,m,where μji· is the membership function of fuzzy sets Aji.Step 2.
For each classh can be calculated βclasshRj according to(3)βclasshRj=∑xp∈classhμjxp·wph=1,2,…,c.And wp is the weight of the training pattern.Step 3.
Find classh^ that has largest sum of βclasshRj:(4)βclassh^Rj=max⁡1≤l≤c⁡βclasslRj.Note that if two or more classes take the maximum value of (4), then the consequent class Cj of the fuzzy rule Rj cannot be individually determined, so Cj is also specified as ∅. Let the grade of certainty CFj of fuzzy rule Rj be CFj=0. If only class takes the maximum value, let Cj be class h^. The grade of certainty CFj can be assigned as follows:(5)CFj=βclassh^Rj-β-∑hβclasshRj.With(6)β-=∑h≠h^βclasshRjc-1c is the total number of classes.After generatingN fuzzy if-then rules by (1), both the consequent class and the grade of certainty can be determined for all N rules; then a new pattern X=(x1,…,xn) according to the following procedure can be classified.Step 1.
For classh(h=1,…,c), calculate αclasshX as(7)αclasshX=max⁡μjX·CFj∣Cj=h.Step 2.
Find classh∗ that has the largest sum of αclasshX:(8)αclassh∗X=max1≤k≤c⁡αclasskX.When multiple classes take the same (maximum) value in (8), then the classification of X cannot be classified (i.e., X is left as an unclassifiable pattern); otherwise, a sign X to class h∗ (i.e., X) is considered as a classifiable pattern by (8).


### 2.2. Learning Fuzzy If-Then Rules

In this section, we use a method for improving classification performance. It adjusts the grade of certaintyCFj of each rule in Nozaki et al. [37].Distributed representation of fuzzy rules is a general concept which is not restricted within the field of pattern classification [38]. The total number of the distributed fuzzy rules can be reduced by removing some unnecessary rules from (1) since such selection of fuzzy rules may require a complicated procedure.When a fuzzy rule is found, training patterns covered by these rules are removed or their weights are set to zero. Then another fuzzy rule is found and added to the rule set using the modified training set [39].After generating rules by system, each rule was evaluated by expert for decreasing the rule space dimension. Number of rules inducted by systems was 545 rules which were then reduced to 144 by using expert rule selection. We assigned weights to rules in two cases separately.When a training pattern was not successfully classified by the fuzzy if-then ruleRj, its grade of certainty was decreased as(9)CFjnew=CFjold-η·wp·CFjold.On the contrary, if the training pattern was correctly classified, we could reinforce the grade of certainty in the following manner:(10)CF∗new=CF∗old+η·wp·1-CF∗old,where η is a positive constant value. Let 0≤η≤1, and wp is the weight of the pattern [36].


### 2.3. Cost Function

This section evaluates the performance of classification systems. Under the hypothesis that a weight is determined to each training pattern, we applied the weight of training patterns as a cost of misclassification. A cost function cost(S) of a fuzzy classification system S is defined as(11)CostS=∑p=1mwp·zpS, where Zp(S) is defined as duplex variable to the classification result of the pattern xp by S: if xp is correctly classified by S, then Zp(S)=0, and if xp  is misclassified or rejected, Zp(S)=1 and m is the total number of training patterns. This cost function as good as classification rate is used [36]. We employed four types of weight which were introduced by Nakashima et al. in 2005 [36].In this paper, we randomly used training patternwp as wp=0.25, 0.5, 0.7, 0.9 and then we randomly assigned a weight to each training pattern. For example, we specified wp as wp=0.25 if the training pattern xp belonged to class 1 and wp=0.25, 0.5, 0.7, 0.9 if xp belonged to classes 2, 3, and 4 and wp as wp=0.5 if the training pattern xp belonged to class 1 and wp=0.25, 0.5, 0.7, 0.9 if xp belonged to classes 2, 3, and 4, and so forth.


## 2.1. Fuzzy If-Then Rule

Let us suppose that our pattern classification problems arem training patterns Xp=Xp1,…,Xpn, p=1,…,m with c-class n-dimensional problem [5, 7, 30].First, all attribute values of the given training pattern are transformed in the unit interval[0,1]. Thus, the pattern space into the n-dimensional pattern classification problem uses unit hypercube [0,1]n [5, 6, 34]. For an n-dimensional, c-class problem, we apply fuzzy if-then rule of the following form:(1)RuleRj:  Ifx1isAj1and  …  andxnisAjnThen  classCjwithCFjj=1,…,N,where Rj is the label of the ith fuzzy if-then rule, N is the total number of fuzzy if-then rules, X=x1,…,xn is the pattern vector n-dimensional, Aj1 presents antecedent fuzzy sets for the ith attribute, Cj represent a consequent class (i.e., one of the c classes), and CFj is a certainty grade of the fuzzy if-then Rj [2, 5, 9, 13, 15, 34, 35].As antecedent fuzzy sets we employ trapezoidal fuzzy sets, where we display other partitions of the unit interval into fuzzy sets [2, 36].Using (1), we generate N fuzzy if-then rule that consists of two below steps. The first one is specifying membership function of antecedent fuzzy sets and the second one is determining consequent class Cj and certainty grade CFj of the fuzzy rule Rj [2, 5, 15]. The antecedent part of the fuzzy if-then rules is initialized manually [2]. For each training pattern, the concept of a weight is applied. The weight of misclassified/rejected patterns is observed as a cost of misclassification or rejection. When a training pattern is misclassified, then the adjustment of fuzzy rules arises. In this study, we can determine both consequent class Cj and the grade of certainty CFj for all rules of the following type.Step 1.
Calculate the compatibility grade of training patterns using product as T-norm:(2)μjXp=μj1xp1×⋯×μjnxpn,p=1,2,…,m,where μji· is the membership function of fuzzy sets Aji.Step 2.
For each classh can be calculated βclasshRj according to(3)βclasshRj=∑xp∈classhμjxp·wph=1,2,…,c.And wp is the weight of the training pattern.Step 3.
Find classh^ that has largest sum of βclasshRj:(4)βclassh^Rj=max⁡1≤l≤c⁡βclasslRj.Note that if two or more classes take the maximum value of (4), then the consequent class Cj of the fuzzy rule Rj cannot be individually determined, so Cj is also specified as ∅. Let the grade of certainty CFj of fuzzy rule Rj be CFj=0. If only class takes the maximum value, let Cj be class h^. The grade of certainty CFj can be assigned as follows:(5)CFj=βclassh^Rj-β-∑hβclasshRj.With(6)β-=∑h≠h^βclasshRjc-1c is the total number of classes.After generatingN fuzzy if-then rules by (1), both the consequent class and the grade of certainty can be determined for all N rules; then a new pattern X=(x1,…,xn) according to the following procedure can be classified.Step 1.
For classh(h=1,…,c), calculate αclasshX as(7)αclasshX=max⁡μjX·CFj∣Cj=h.Step 2.
Find classh∗ that has the largest sum of αclasshX:(8)αclassh∗X=max1≤k≤c⁡αclasskX.When multiple classes take the same (maximum) value in (8), then the classification of X cannot be classified (i.e., X is left as an unclassifiable pattern); otherwise, a sign X to class h∗ (i.e., X) is considered as a classifiable pattern by (8).


## 2.2. Learning Fuzzy If-Then Rules

In this section, we use a method for improving classification performance. It adjusts the grade of certaintyCFj of each rule in Nozaki et al. [37].Distributed representation of fuzzy rules is a general concept which is not restricted within the field of pattern classification [38]. The total number of the distributed fuzzy rules can be reduced by removing some unnecessary rules from (1) since such selection of fuzzy rules may require a complicated procedure.When a fuzzy rule is found, training patterns covered by these rules are removed or their weights are set to zero. Then another fuzzy rule is found and added to the rule set using the modified training set [39].After generating rules by system, each rule was evaluated by expert for decreasing the rule space dimension. Number of rules inducted by systems was 545 rules which were then reduced to 144 by using expert rule selection. We assigned weights to rules in two cases separately.When a training pattern was not successfully classified by the fuzzy if-then ruleRj, its grade of certainty was decreased as(9)CFjnew=CFjold-η·wp·CFjold.On the contrary, if the training pattern was correctly classified, we could reinforce the grade of certainty in the following manner:(10)CF∗new=CF∗old+η·wp·1-CF∗old,where η is a positive constant value. Let 0≤η≤1, and wp is the weight of the pattern [36].


## 2.3. Cost Function

This section evaluates the performance of classification systems. Under the hypothesis that a weight is determined to each training pattern, we applied the weight of training patterns as a cost of misclassification. A cost function cost(S) of a fuzzy classification system S is defined as(11)CostS=∑p=1mwp·zpS, where Zp(S) is defined as duplex variable to the classification result of the pattern xp by S: if xp is correctly classified by S, then Zp(S)=0, and if xp  is misclassified or rejected, Zp(S)=1 and m is the total number of training patterns. This cost function as good as classification rate is used [36]. We employed four types of weight which were introduced by Nakashima et al. in 2005 [36].In this paper, we randomly used training patternwp as wp=0.25, 0.5, 0.7, 0.9 and then we randomly assigned a weight to each training pattern. For example, we specified wp as wp=0.25 if the training pattern xp belonged to class 1 and wp=0.25, 0.5, 0.7, 0.9 if xp belonged to classes 2, 3, and 4 and wp as wp=0.5 if the training pattern xp belonged to class 1 and wp=0.25, 0.5, 0.7, 0.9 if xp belonged to classes 2, 3, and 4, and so forth.


## 3. Application Results

### 3.1. Patients

This study was a cross-sectional study in which characteristics, results of myocardial perfusion scan (MPS), and coronary artery angiography of 115 patients, 62 (53.9% male), in Mazandaran Heart Center (Iran) have been collected. The coronary artery disease data used in this paper contained 115 samples classified into four classes, namely, classes 1 (normal), 2 (stenosis in one single vessel), 3 (stenosis in two vessels), and 4 (stenosis in three vessels) having 39, 35, 17, and 24 subjects, respectively. The dataset included ten input variables (age, sex, diabetes, cholesterol level, triglyceride level, low density lipoprotein (LDL), systolic blood pressure, summed stress score (SSS), smoking, and genetic factor) and one output. We used membership functions for medical variables according to literature review. For these variables we took 3 fuzzy sets for age (young age, middle age, and old age), 3 fuzzy sets for the cholesterol level and triglyceride level (normal, borderline, and high), 3 fuzzy sets for LDL (normal, middle, and high), 4 fuzzy sets for systolic blood pressure (low, middle, high, and very high), and 4 fuzzy sets for SSS (normal, mild, moderate, and severe).Sex had two stages (0 = male and 1 = female), smoking had two parts (0 = nonsmoking and 1 = smoking), and genetic factor diabetes had two sections (0 = no and 1 = yes).The type of membership functions for each fuzzy set applied was the trapezoidal membership function as shown in Figure1 and membership functions of input variables weredefined by form in Table1.Table 1
Membership functions for attributes of CAD.
Age
μ
young
x
=
1
x
<
30
(
40
-
x
)
10
30
≤
x
<
40
μ
Middle age
x
=
(
x
-
30
)
10
30
≤
x
<
40
1
40
≤
x
<
50
(
60
-
x
)
10
50
≤
x
<
60
μ
old
x
=
(
x
-
50
)
10
50
≤
x
<
60
1
60
≤
x
Cholesterol
μ
Normal
x
=
1
x
<
170
(
200
-
x
)
30
170
≤
x
<
200
μ
Borderline
x
=
(
x
-
170
)
30
170
≤
x
<
200
1
200
≤
x
≤
225
(
250
-
x
)
25
225
≤
x
<
250
μ
High
x
=
(
x
-
225
)
25
225
≤
x
<
250
1
x
≥
250
Triglyceride
μ
Normal
x
=
1
x
<
130
(
200
-
x
)
70
130
≤
x
<
200
μ
Borderline
x
=
(
x
-
130
)
70
130
≤
x
<
200
1
200
≤
x
≤
300
(
400
-
x
)
100
300
≤
x
<
400
μ
High
x
=
(
x
-
300
)
100
300
≤
x
<
400
1
x
≥
400
LDL
μ
normal
x
=
1
x
<
110
(
130
-
x
)
20
110
≤
x
<
130
μ
middle
x
=
(
x
-
110
)
20
110
≤
x
<
130
1
130
≤
x
<
145
(
160
-
x
)
15
145
≤
x
<
160
μ
High
x
=
(
x
-
145
)
15
145
≤
x
<
160
1
x
≥
160
Systolic blood pressure
μ
Low
x
=
1
x
<
105
(
125
-
x
)
20
105
≤
x
<
125
μ
Middle
x
=
x
-
105
20
105
≤
x
<
125
1
125
≤
x
≤
145
170
-
x
25
145
≤
x
<
170
μ
High
x
=
x
-
145
25
145
≤
x
<
170
1
170
≤
x
≤
180
210
-
x
30
180
≤
x
<
210
μ
Very high
x
=
(
x
-
180
)
30
180
≤
x
<
210
1
x
≥
210
SSS
μ
Normal
x
=
1
x
<
2
(
4
-
x
)
2
2
≤
x
<
4
μ
Mild
x
=
(
x
-
2
)
2
2
≤
x
<
4
1
4
≤
x
<
7
(
9
-
x
)
2
7
≤
x
<
9
μ
Moderate
x
=
(
x
-
7
)
2
7
≤
x
<
9
1
9
≤
x
<
13
(
16
-
x
)
3
13
≤
x
<
16
μ
Severe
x
=
(
x
-
13
)
3
13
≤
x
<
16
1
x
≥
16Figure 1
Membership function.


### 3.2. Fuzzy Rule Base

The main part in fuzzy system is the rule base and the results in a fuzzy classification system depend on the fuzzy rules. This system includes 144 rules. Antecedent part of all rules has more than one part. In this study, we used linguistic variables including middle (M), high (H), very high (VH), low (L), young (Y), old (O), moderate (Mo), mild (Mi), severe (S), normal (NR), borderline (B), middle age (M), middle (mid), yes (Y), and no (N) for input variables.The units of the used input variables were age, cholesterol (CL), triglyceride (TG), systolic blood pressure (SY), LDL, SSS, sex, diabetes (DI), genetic factor (GF), and smoking (SM).Parts of the fuzzy rules are shown in Table2. A series of 144 rules are formed.Table 2
Sample fuzzy rules.
Rule number
If
Then
Age
CL
TG
LDL
SY
SSS
Sex
DI
SM
GF
Heart disease
C
F
j
1
M
NR
NR
NR
L
Mo
F
N
Y
N
NR
1.000
2
M
B
B
Mid
L
NR
F
N
N
Y
NR
1.000
3
M
B
B
Mid
Mid
NR
F
N
Y
Y
NR
1.000
4
O
B
B
Mid
Mid
Mi
F
N
N
N
NR
0.941
5
M
B
B
NR
H
Mo
F
Y
N
Y
NR
0.955
6
M
B
B
Mid
Mid
Mo
F
N
N
Y
3.v
1.000
7
O
B
B
Mid
L
S
F
N
N
N
s.v
0.642
8
M
B
B
Mid
Mid
Mi
F
Y
Y
Y
s.v
0.989
9
M
B
NR
Mid
Mid
Mi
M
N
Y
Y
s.v
1.000
10
O
B
B
Mid
H
S
M
Y
N
N
3.v
1.000
11
M
B
NR
NR
L
S
M
N
N
N
2.v
1.000
12
M
B
B
NR
Mid
S
M
Y
Y
Y
2.v
1.000
13
O
H
B
NR
Mid
Mo
M
N
Y
Y
s.v
0.795
14
M
NR
NR
NR
H
S
M
Y
Y
N
3.V
1.000
⋮
⋮
⋮After learning fuzzy if-then rules by training patterns, we used different weights and constants values. Correct classification rates were decreased by assigning different weights to rules and the highest classification rate was forwp=0.25 for all classes. The results of correct classification rates are displayed in Table 3. After generating rules by system, classification rate was 92.4% by 545 rules which were then reduced to 144 by using expert rule selection; accuracy rate has computed 92.8%.Table 3
Results of correct classification rates with different weighting rules.
η
w
p
for all classes
Cost(S)
Classification rate
η
=
0.1
(wp=0.25 for all classes)
8.5
92.8%
η
=
0.3
(wp=0.25 for all classes)
9.8
91.2%
η
=
0.1
(xp∈ class 1 wp=0.5, xp∈ class 2 wp=0.25,xp∈ class 3 wp=0.5,xp∈ class 4 wp=0.9)
12.4
89.3%
η
=
0.3
(xp∈ class 1 wp=0.5,xp∈ class 2 wp=0.25,xp∈ class 3 wp=0.5,xp∈ class 4 wp=0.9)
19.8
83.6%
η
=
0.1
(xp∈ class 1 wp=0.7,xp∈ class 2 wp=0.7,xp∈ class 3 wp=0.5 ,xp∈ class 4 wp=0.25)
15.6
88.9%
η
=
0.3
(xp∈ class 1 wp=0.7,xp∈ class 2 wp=0.7,xp∈ class 3 wp=0.5 ,xp∈ class 4 wp=0.25)
18.9
86.4%
η
=
0.1
(xp∈ class 1 wp=0.9,xp∈ class 2 wp=0.7,xp∈ class 3 wp=0.7 ,xp∈ class 4 wp=0.5)
26.2
73.1%
η
=
0.3
(xp∈ class 1 wp=0.9, xp∈ class 2 wp=0.7,xp∈ class 3 wp=0.7 ,xp∈ class 4 wp=0.5)
30.1
71.8%Multiple logistic regression (MLR) was used for detecting the risk factors effects on CAD (presence or absence). Sensitivity and specificity of MLR were computed, 88.15% and 64.1%, respectively. Also, clinical test PMS in comparison to angiography was found to have sensitivity of 84% and specificity of 92% higher than MLR model.All patients with CAD by angiography were detected by this proposed fuzzy rule-based classification (Se = 100%) and overall accuracy was 92.8%.


## 3.1. Patients

This study was a cross-sectional study in which characteristics, results of myocardial perfusion scan (MPS), and coronary artery angiography of 115 patients, 62 (53.9% male), in Mazandaran Heart Center (Iran) have been collected. The coronary artery disease data used in this paper contained 115 samples classified into four classes, namely, classes 1 (normal), 2 (stenosis in one single vessel), 3 (stenosis in two vessels), and 4 (stenosis in three vessels) having 39, 35, 17, and 24 subjects, respectively. The dataset included ten input variables (age, sex, diabetes, cholesterol level, triglyceride level, low density lipoprotein (LDL), systolic blood pressure, summed stress score (SSS), smoking, and genetic factor) and one output. We used membership functions for medical variables according to literature review. For these variables we took 3 fuzzy sets for age (young age, middle age, and old age), 3 fuzzy sets for the cholesterol level and triglyceride level (normal, borderline, and high), 3 fuzzy sets for LDL (normal, middle, and high), 4 fuzzy sets for systolic blood pressure (low, middle, high, and very high), and 4 fuzzy sets for SSS (normal, mild, moderate, and severe).Sex had two stages (0 = male and 1 = female), smoking had two parts (0 = nonsmoking and 1 = smoking), and genetic factor diabetes had two sections (0 = no and 1 = yes).The type of membership functions for each fuzzy set applied was the trapezoidal membership function as shown in Figure1 and membership functions of input variables weredefined by form in Table1.Table 1
Membership functions for attributes of CAD.
Age
μ
young
x
=
1
x
<
30
(
40
-
x
)
10
30
≤
x
<
40
μ
Middle age
x
=
(
x
-
30
)
10
30
≤
x
<
40
1
40
≤
x
<
50
(
60
-
x
)
10
50
≤
x
<
60
μ
old
x
=
(
x
-
50
)
10
50
≤
x
<
60
1
60
≤
x
Cholesterol
μ
Normal
x
=
1
x
<
170
(
200
-
x
)
30
170
≤
x
<
200
μ
Borderline
x
=
(
x
-
170
)
30
170
≤
x
<
200
1
200
≤
x
≤
225
(
250
-
x
)
25
225
≤
x
<
250
μ
High
x
=
(
x
-
225
)
25
225
≤
x
<
250
1
x
≥
250
Triglyceride
μ
Normal
x
=
1
x
<
130
(
200
-
x
)
70
130
≤
x
<
200
μ
Borderline
x
=
(
x
-
130
)
70
130
≤
x
<
200
1
200
≤
x
≤
300
(
400
-
x
)
100
300
≤
x
<
400
μ
High
x
=
(
x
-
300
)
100
300
≤
x
<
400
1
x
≥
400
LDL
μ
normal
x
=
1
x
<
110
(
130
-
x
)
20
110
≤
x
<
130
μ
middle
x
=
(
x
-
110
)
20
110
≤
x
<
130
1
130
≤
x
<
145
(
160
-
x
)
15
145
≤
x
<
160
μ
High
x
=
(
x
-
145
)
15
145
≤
x
<
160
1
x
≥
160
Systolic blood pressure
μ
Low
x
=
1
x
<
105
(
125
-
x
)
20
105
≤
x
<
125
μ
Middle
x
=
x
-
105
20
105
≤
x
<
125
1
125
≤
x
≤
145
170
-
x
25
145
≤
x
<
170
μ
High
x
=
x
-
145
25
145
≤
x
<
170
1
170
≤
x
≤
180
210
-
x
30
180
≤
x
<
210
μ
Very high
x
=
(
x
-
180
)
30
180
≤
x
<
210
1
x
≥
210
SSS
μ
Normal
x
=
1
x
<
2
(
4
-
x
)
2
2
≤
x
<
4
μ
Mild
x
=
(
x
-
2
)
2
2
≤
x
<
4
1
4
≤
x
<
7
(
9
-
x
)
2
7
≤
x
<
9
μ
Moderate
x
=
(
x
-
7
)
2
7
≤
x
<
9
1
9
≤
x
<
13
(
16
-
x
)
3
13
≤
x
<
16
μ
Severe
x
=
(
x
-
13
)
3
13
≤
x
<
16
1
x
≥
16Figure 1
Membership function.


## 3.2. Fuzzy Rule Base

The main part in fuzzy system is the rule base and the results in a fuzzy classification system depend on the fuzzy rules. This system includes 144 rules. Antecedent part of all rules has more than one part. In this study, we used linguistic variables including middle (M), high (H), very high (VH), low (L), young (Y), old (O), moderate (Mo), mild (Mi), severe (S), normal (NR), borderline (B), middle age (M), middle (mid), yes (Y), and no (N) for input variables.The units of the used input variables were age, cholesterol (CL), triglyceride (TG), systolic blood pressure (SY), LDL, SSS, sex, diabetes (DI), genetic factor (GF), and smoking (SM).Parts of the fuzzy rules are shown in Table2. A series of 144 rules are formed.Table 2
Sample fuzzy rules.
Rule number
If
Then
Age
CL
TG
LDL
SY
SSS
Sex
DI
SM
GF
Heart disease
C
F
j
1
M
NR
NR
NR
L
Mo
F
N
Y
N
NR
1.000
2
M
B
B
Mid
L
NR
F
N
N
Y
NR
1.000
3
M
B
B
Mid
Mid
NR
F
N
Y
Y
NR
1.000
4
O
B
B
Mid
Mid
Mi
F
N
N
N
NR
0.941
5
M
B
B
NR
H
Mo
F
Y
N
Y
NR
0.955
6
M
B
B
Mid
Mid
Mo
F
N
N
Y
3.v
1.000
7
O
B
B
Mid
L
S
F
N
N
N
s.v
0.642
8
M
B
B
Mid
Mid
Mi
F
Y
Y
Y
s.v
0.989
9
M
B
NR
Mid
Mid
Mi
M
N
Y
Y
s.v
1.000
10
O
B
B
Mid
H
S
M
Y
N
N
3.v
1.000
11
M
B
NR
NR
L
S
M
N
N
N
2.v
1.000
12
M
B
B
NR
Mid
S
M
Y
Y
Y
2.v
1.000
13
O
H
B
NR
Mid
Mo
M
N
Y
Y
s.v
0.795
14
M
NR
NR
NR
H
S
M
Y
Y
N
3.V
1.000
⋮
⋮
⋮After learning fuzzy if-then rules by training patterns, we used different weights and constants values. Correct classification rates were decreased by assigning different weights to rules and the highest classification rate was forwp=0.25 for all classes. The results of correct classification rates are displayed in Table 3. After generating rules by system, classification rate was 92.4% by 545 rules which were then reduced to 144 by using expert rule selection; accuracy rate has computed 92.8%.Table 3
Results of correct classification rates with different weighting rules.
η
w
p
for all classes
Cost(S)
Classification rate
η
=
0.1
(wp=0.25 for all classes)
8.5
92.8%
η
=
0.3
(wp=0.25 for all classes)
9.8
91.2%
η
=
0.1
(xp∈ class 1 wp=0.5, xp∈ class 2 wp=0.25,xp∈ class 3 wp=0.5,xp∈ class 4 wp=0.9)
12.4
89.3%
η
=
0.3
(xp∈ class 1 wp=0.5,xp∈ class 2 wp=0.25,xp∈ class 3 wp=0.5,xp∈ class 4 wp=0.9)
19.8
83.6%
η
=
0.1
(xp∈ class 1 wp=0.7,xp∈ class 2 wp=0.7,xp∈ class 3 wp=0.5 ,xp∈ class 4 wp=0.25)
15.6
88.9%
η
=
0.3
(xp∈ class 1 wp=0.7,xp∈ class 2 wp=0.7,xp∈ class 3 wp=0.5 ,xp∈ class 4 wp=0.25)
18.9
86.4%
η
=
0.1
(xp∈ class 1 wp=0.9,xp∈ class 2 wp=0.7,xp∈ class 3 wp=0.7 ,xp∈ class 4 wp=0.5)
26.2
73.1%
η
=
0.3
(xp∈ class 1 wp=0.9, xp∈ class 2 wp=0.7,xp∈ class 3 wp=0.7 ,xp∈ class 4 wp=0.5)
30.1
71.8%Multiple logistic regression (MLR) was used for detecting the risk factors effects on CAD (presence or absence). Sensitivity and specificity of MLR were computed, 88.15% and 64.1%, respectively. Also, clinical test PMS in comparison to angiography was found to have sensitivity of 84% and specificity of 92% higher than MLR model.All patients with CAD by angiography were detected by this proposed fuzzy rule-based classification (Se = 100%) and overall accuracy was 92.8%.


## 4. Discussion and Conclusion

The most important result of this study is the classification of coronary artery disease (CAD) with a high accuracy. Correct classification rate depends on the number of input variables or characteristics, type, and combination of fuzzy rules. We used membership functions for medical variables by reviewing the related literature. These membership functions lead to a high quality of precision in many fields of medicine. We used fuzzy inference method with combination of weighted rules by expert and supervisor pattern classification. This is similar to Chen and Chang study with high accuracy rate (96.88%) in classification [40]. Chen and Fang studied a fuzzy classification method for Iris data with 96.72% accuracy classification rate [41]. They generated fuzzy weighted rules for Iris data with genetic algorithm [42]. The study conducted by Allahverdi et al. for determining the risk factors for CAD had a high corrected classification rate [32]. Vig et al. [31], P. Srivastava and A. Srivastava [33] and Kaya et al. [43] also studied fuzzy set and systems for CAD, cardiac analysis, and congenital heart disease by using fuzzy expert systems.This study showed that sensitivity and specificity of PMS compared with angiography were acceptable by MLR, but when it was combined with other clinical-epidemiological variables, fuzzy rule-based classification model improved classification rate.According to the findings of this study, interpretable fuzzy rule-based classification can determine the most important risk factors for CAD and correctly detect the patients who do not need invasive tests such as coronary artery angiography and have a high classification accuracy rate.



---

*Source: 564867-2015-09-13.xml*