Expert Systems with Applications 37 (2010) 6157–6164
Contents lists available at ScienceDirect
Expert Systems with Applications journal homepage: www.elsevier.com/locate/eswa
Diagnosis of liver disease by using CMAC neural network approach _ Ihsan Ömür Bucak *, Semra Baki Computer Engineering Department, Engineering Faculty, Fatih University, 34500 Istanbul, Turkey
a r t i c l e
i n f o
Keywords: Liver disease Liver cirrhosis Child’s classification Liver enzymes CMAC neural networks Medical diagnosis Clinical laboratory values
a b s t r a c t Liver performs several numbers of metabolic functions that are essential to human life. These functions make the liver one of the most important organs in the human body. There are diseases that occur in the liver in short time (acute) and long time (chronic). These diseases could occur because of medications, alcohol, viruses, or excessive fat accumulation or deposit in the liver. Some of these diseases are the inflammation of the liver, insufficient liver performance, Hepatitis A, B, C, D, and liver cirrhosis. If the liver malfunctions in anyway, people know that they are putting their life at risk. For this reason, diagnosing any disease in the liver is important and sometimes difficult. It is also important to notice the diagnosis of the patient at an early stage as the symptoms arise so that the patient might be able to carry on a normal life. The objective of this article is to diagnose the liver disease using an application of the CMAC (Cerebellar Model Articulation Controller) neural network so that it can shorten the medical diagnostic process and help the physician in the complex cases which are otherwise difficult to perceive. Ó 2010 Elsevier Ltd. All rights reserved.
1. Introduction Today, early diagnosis and correct assessment of many diseases tend to have great importance in disease treatment. Therefore, diagnostic and classification process of a disease to be made by using today’s technology and medical data would present many uses. In this paper, we have considered the diagnosis of liver diseases which are Hepatitis B, Hepatitis C, Cirrhosis and the cirrhotic phases. Liver is a vital part of our body (Hopkins, 2008). If the liver does not perform any of its vital missions such as production of bile, regulation of blood levels of amino acids, and production of certain proteins for blood plasma, human being would face a serious health consequences (Darwin, 2008). Therefore, early diagnosis of the liver disease is very important. Diagnosing the liver disease can be a difficult task, because symptoms do not often appear until the later stages of most liver diseases and conditions. By then the liver may have suffered serious or permanent damage (DuPage, 2007). When diagnosing the liver disease, the physician looks at the patient0 s symptoms first such as irregular sleep, jaundice, and portal hypertension, and conducts a physical examination. In addition, the physician may request a liver biopsy, liver function tests (AST, ALT, biluribin), an ultrasound, or a computerized tomography (CT) scan (Darwin, 2008). Liver function tests can diagnose viral hepatitis and autoimmune liver diseases. An ultrasound scan will show blockage of the bile duct, fatty liver, cirrhosis, and liver tumors (Babe, 2007).
* Corresponding author. Tel.: +90 212 8663300x5530; fax: +90 212 8663412. _ E-mail addresses:
[email protected] (I.Ö. Bucak),
[email protected] (S. Baki). 0957-4174/$ - see front matter Ó 2010 Elsevier Ltd. All rights reserved. doi:10.1016/j.eswa.2010.02.112
The physician may spend very long time for the assessment of the enzyme values during normal diagnostic period while making a decision based on those enzymes. This paper provides a contribution to the medical diagnosis process by shortening the time through the use of an intelligent model and helps the physician to diagnose complex cases which are otherwise difficult to perceive. Physicians make a decision according to enzyme values in normal diagnosis stage of this method. Artificial neural networks (ANNs) can be used as one of the most popular methods for medical diagnostic processes. ANNs have already proven its effectiveness and popularity for the medical diagnostic processes with different existing applications worldwide (Chen, Lin, Wu, & McCallum, 1995; Jabbar & Mehrotra, 2008; Mobley, Schechter, Moore, McKee, & Eichner, 2000; Piecha, 2001; Prahadan, Sadasivan, & Arunodaya, 1996; Scott, 1993; Smith, Graham, & Taylor, 1996). In this paper, CMAC neural network approach using human liver test data consisted mainly of liver enzymes has been used to diagnose the liver disease in four classes. Enzymes used to identify the classes were AST, ALT, AST/ALT, Albumin, Protein, Platelet (a count test to measure how many blood cells), and Prothrombin time (PT) (a measure of blood clotting). The remaining of the paper is arranged as follows. Section 2 briefly explains the basics of the CMAC neural network and its significant properties. Section 3 describes the CMAC-based liver diagnosis system including description of liver disease, subjects, pattern collection, training mode, diagnosis/test mode, and presents the steps of the diagnosis algorithm. Section 4 discusses the simulation results. Finally, conclusions are drawn in Section 5.
6158
_ I.Ö. Bucak, S. Baki / Expert Systems with Applications 37 (2010) 6157–6164
2. Cerebellar Model Articulation Controller (CMAC)
L-4 The CMAC was firstly proposed during 1970s by James Albus whose idea was based on a model of cerebellum which is a part of the brain responsible for learning process (Burgin, 1992). The CMAC can generally be described as a transformation device that transforms given input vectors into associated output vectors (Burgin, 1992). The CMAC is an algorithm that quantizes and generalizes input, produces active memory addresses, and produces an output by summing all the weights in the active memory addresses (Kim, 1993). This process of finding the output has several steps. Fig. 1 shows a CMAC functional diagram that has two inputs and one output. In a two-input typical CMAC, each variable in the input state vector is fed to a series of input sensors with overlapping receptive fields. The total collection of receptive fields is divided into C subsets, referred to as layers, which represent parallel N-dimensional hyperspaces for a network with N inputs. The receptive fields in each of the layers have rectangular boundaries and are organized so as to span the input space without overlap. Fig. 2 shows an organization of CMAC neural network receptive fields for one dimensional case (Baotic, Petrovic, & Peric, 2001). Any input vector excites one receptive field from each layer, for a total of C excited receptive fields for any input. In Fig. 2, the total number of excited receptive fields is 4 (i.e. C = 4) where the hatched regions show the active or excited fields. Each of the layers of receptive fields is identical in organization, but each layer is offset relative to the others in the input hyperspace (Miller & Glanz, 1996). The width of the receptive field of each sensor produces input generalization, while the offset of the adjacent fields produces input quantization. Each input variable excites exactly C input sensors, where C is the ratio of generalization width to quantization width. Each input sensor produces a binary output which is ON if the input falls within its receptive field and is OFF otherwise. The binary outputs of the input sensors are combined in a series of threshold logic units (called state-space detectors) with thresholds adjusted to produce logical AND functions (the output is ON only if all inputs are ON). Each of these units receives one input from the group of sensors for each input variable, and thus its input receptive field is the interior of a hypercube in the input hyperspace (Miller, Glanz, & Craft, 1990). The leftmost step in Fig. 1 presents the physical input state space. It may contain one or more input vectors (Fig. 1 shows two). These vectors are composed of discrete points. These discrete points are connected to the second step of the CMAC known as state-space detectors. The state-space detectors are often called the CMAC’s virtual memory (Burgin, 1992). This transformation
L-3 L-2 L-1
Fig. 2. Receptive field organization.
contains quantization process and input generalization with generalization factor (width) (Burgin, 1992). Input sensors overlap and cover width number of inputs. Therefore, width is used to indicate the number of inputs covered by overlapped input sensors (Kim, 1993). Input values are quantized into one of quant values and hence width can vary between 1 and quant. Low numbers usually work best (Kim, 1993). A vector of quantized input values specifies a discrete state and is used to generate addresses for retrieving information from memory for this state. Each state variable is quantized into discrete regions, called blocks. It is noted that the width of blocks affects the generalization capability of the CMAC. The number of blocks in CMAC is usually greater than two (Lin & Chiang, 1997). The output generalization capability of CMAC is controlled mainly by the width of the blocks. If two inputs are far apart in the input space, there will be no overlap and as the result, no generalization (Lin & Chen, 2008). Quantization has been used due to the fact that the minimum variations in the input values do not affect the output values. Quantization levels affect the values of the input vector. The stability of inputs depends on the level of quantization. If the quantization level increases, the stability of inputs increases. The resolution of the quantization depends on the expected maximum and minimum input values (see Fig. 3 for input quantization) (Handelman, Lane, & Gelfland, 1990; Kim, 1993). The quantization and mapping between input space and virtual memory give the CMAC the ability to the input generalization (Handelman et al., 1990; Kim, 1993) which means that the CMAC has the property that any two input vectors that are similar or close in the input space will select a highly overlapping subset of locations in the state space during mapping between input state and state-space detectors. Thus, the output response of the CMAC to similar input vectors will tend to be similar because of many memory locations that are in common. Hence, the CMAC tends to local generalization. The amount of generalization depends on the number of overlapping memory locations in the state-space detectors (Albus, 1975b).
Input quantization level qi 8 7 6 5 4 3 2 1
qimax (ximax-ximin)/qimax
ximin
ximax Input value xi
Fig. 1. A block diagram of CMAC.
Fig. 3. CMAC input quantization.
_ I.Ö. Bucak, S. Baki / Expert Systems with Applications 37 (2010) 6157–6164
The next step is mapping from the state-space detectors into the physical memory. This mapping process may be realized into two different ways. First one is one-to-one mapping and the other one is many-to-one mapping or random mapping. Since the physical memory is assumed to be smaller than the number of statespace detectors, this random mapping is a many-to-one mapping, and sometimes causes collisions (Burgin, 1992). The general rule of thumb to map from virtual memory to physical memory indicates that if the state-space detectors are not small enough for one-to-one mapping with physical memory, then random mapping should be used. In other words, if the state-space detectors are small enough for one-to-one mapping with physical memory, we should use one-to-one mapping. The last step includes summing all the weights in the physical memory to produce the output vectors. During training, if the output vectors of the CMAC do not match a desired output for a given input state, the weights pointed to by the physical addresses are updated using the following least mean square (LMS) rule (also called the delta rule), which results in the steepest descent to the error minimum (a.k.a. steepest descent update rule) (Handelman et al., 1990):
wjðnewÞ
wjðoldÞ þ b
ðyd yÞ g
ð1Þ
This is a supervised learning equation whose convergence can be guaranteed (Hung & Yang, 2007; Lin, Hung, & Wang, 2002). The objective is to find the weights which minimize the error defined as the difference between desired and realized outputs. In Eq. (1), wj is the weight, yd is the desired output of the CMAC system, y is the actual output of system, g is the number of associated memory cells (a.k.a. amount of network generalization), and b is the learning rate or the learning coefficient. For a specific input quantization mapping, an increase in g means an increase in the amount of shared weights between neighboring input/output pairs. An increase in the number of quantization levels, qimax , results in higher input resolution (Fig. 3), but concurrently increases the size of the virtual address space, and hence slowing speed (Handelman et al., 1990). Constant learning rate b scaled between 0 < b 6 1 can produce unstable learning behavior in certain situations if values of b is too close to 1 (Rumelhart & McClelland, 1986). Specifically, the learning speed will improve for a large b but there will be error due to gradient noise. A smaller learning rate will result in smaller adjustments to the look up table and thus slow training. The CMAC has several potential advantages over other neural network structures. Specifically the CMAC neural network has been preferred over the multilayer neural network; because the multilayer network requires many iterations and a large number of computations per iteration to converge an output so that the algorithm runs slowly (Miller et al., 1990). However, the CMAC presents many attractive features and advantages, and is useful for real time applications. The CMAC has been used to solve various robotic problems, and applied in the field of controls, medical science, pattern recognition, signal processing and image processing (Albus, 1975a; Albus, 1975b; Miller et al., 1990).
3. Liver disease diagnosis system by CMAC neural network 3.1. Description of liver disease The liver is one of the most important organs in the human body that lies below the diaphragm (Hopkins, 2008). The liver has both largest gland and largest internal organ in the human body (Petska, 2007). It performs several numbers of metabolic functions that are essential to human life.
6159
There are diseases that occur in liver in short time (acute) and long time (chronic) period. These diseases could occur because of medications, alcohol, viruses or fat. Some of these diseases are the inflammation of the liver, insufficient liver performance, hepatitis, and liver cirrhosis. Hepatitis is the inflammation of the liver, resulting in liver cell damage and destruction (Adams, 2008). Hepatitis diseases are caused by hepatitis viruses. Hepatitis viruses have six main types (Adams, 2008). The viruses identified until now have been named as A, B, C, D, E, and G, from which A and E are contagious (Dimitriou, 2008). Hepatitis A virus (HAV) is heat stable and will survive for up to a month at ambient temperatures in the environment (Gott, 2008). Hepatitis B virus (HBV) can cause lifelong infection, cirrhosis (scarring) of the liver, liver cancer, liver failure, and death. Hepatitis B vaccine is available for all age groups to prevent Hepatitis B virus infection (Gott, 2008). Hepatitis C virus (HCV) is spread by contact with the blood of an infected person. The progression of Hepatitis C is typically silent until it is late in the course of disease. When symptoms are present, often liver cirrhosis (scarring) has been occurred. The progression to liver cirrhosis only occurs in 20% of those with Hepatitis C and liver failure develops in about 5%. From the time of acquisition of the virus it can take up to 50 years to develop cirrhosis. Most people with Hepatitis C are unaware that they have it (Gott, 2008). Hepatitis D can only occur in the presence of Hepatitis B. If an individual has Hepatitis B and does not show symptoms, or shows very mild symptoms, infection with Hepatitis D can put that person at risk for full-blown liver failure that progresses rapidly. Hepatitis D can occur at the same time as the initial infection with B, or it may show up much later. Transmission of Hepatitis D occurs the same way as Hepatitis B, except that the transmission from mother to baby is less common (Adams, 2008). Hepatitis E is similar to Hepatitis A. Transmission occurs through fecal-oral contamination. It is less common than Hepatitis A. Hepatitis E is the most common in poorly developed nations. There is no vaccine for Hepatitis E at this time (Adams, 2008). Hepatitis G is the newest strain of hepatitis and very little is known about it. Transmission is believed to occur through blood and is most commonly seen in drug users, individuals with clotting disorders such as hemophilia, and individuals who require hemodialysis for renal failure (Adams, 2008). Fatty liver is excessive accumulation of fat inside the liver cells. Fatty liver is the most common alcohol-induced liver disorder. The liver is enlarged, causing upper abdominal discomfort on the right side (Darwin, 2008). Cirrhosis is a chronic disease that is characterized anatomically by widespread nodules in the liver combined with fibrosis (Rudolph et al., 1997). The fibrosis and nodule formation damage normal liver cells and replace those with scar tissue. There are usually no symptoms while liver cirrhosis is developing. It takes several years to develop. Symptoms usually appear when liver cirrhosis is fully developed. The symptoms will depend on how severe liver cirrhosis is (Gott, 2008). Cirrhosis can be diagnosed in many ways. Standard blood tests of liver enzymes or bilirubin may show a sign of elevation and alert the physician for the possibility of liver dysfunction. Some frequently used diagnostic techniques are based on medical image processing such as computed tomography (CT) scan, doppler ultrasound, and magnetic resonance imaging (MRI). Liver biopsy is often done to provide clues to the cause of liver disease and assess both its degree of fibrosis and grade (Matthew, 1995; Rudolph et al., 1997). Diagnosing the cirrhosis disease is a difficult task for a physician as it depends on so many factors. A physician usually makes his decision by evaluating the current test results and referring to the previous decisions he/she made on other patients with the
_ I.Ö. Bucak, S. Baki / Expert Systems with Applications 37 (2010) 6157–6164
6160
same conditions. Current test results require a direct knowledge of the physician whereas the previous test results require the physician’s experience to make a comparison between his/her current patient and his/her earlier patients. This task is not an easy one considering the number of factors he/she has to evaluate. In this critical step, he may need a precise tool that lists his previous decisions on the patient having same (or close to same) factors (Kara, Icer, Akdemir, & Polat, 2007).
called training data and the output vectors can be called Hepatitis B, Hepatitis C, Cirrhosis A, Cirrhosis B and C, and other types. The class that we call other types can either be any unclassified disease associated with the liver or the liver data with no liver disease. Fig. 5 shows the CMAC artificial neural network with 24 inputs and 5 outputs.
3.2. Subjects
In the training mode, the normalized enzyme data are used to train the CMAC ANN. These data perform the mapping process first between quantization and memory locations to start with the network training after being loaded into the CMAC ANN. Later the output vector is formed by summing the weights in the physical addresses so that the training process gets done. The recognition is decided upon the similarity process which seeks similarity between the output vector of the test data and the training data after the test data has been gone through the similar process as the training data. Training is essentially the weight update process in which the actual output with the desired output is compared, and then the weights of the active neurons, if a difference exists between the actual and desired outputs, are updated with the predetermined learning rate according to the LMS rule (Eq. (1)). This is basically no different from updating the weights of the active neurons.
The study included 24 patients with liver disease as for the training data; (15 men and 9 women with an age range of 18– 79, mean: 50 years). Grading of severity of chronic liver disease was assessed according to the Child-Pugh classification scoring table (simply Child-Pugh score). The Child-Pugh score (sometimes the Child-Turcotte-Pugh score) is used to assess the prognosis of chronic liver disease, mainly cirrhosis. Although it was originally used to predict mortality during surgery, it is now used to determine the prognosis, as well as the required strength of treatment and the necessity of liver transplantation (Child & Turcotte, 1964; Pugh, Murray-Lyon, Dawson, Pietroni, & Williams, 1973). In our study, patients were selected from different child classes. 3.3. Pattern collection The CMAC neural network model is based on a supervised learning algorithm in which sampled inputs and desired outputs related with the problem are provided to the system to train the network. In this study, we have used the data of the published article carried out by Yavuz Pehlivan and his collaborators (Pehlivan, Koruk, Gülsßen, Savasß, & Kadayıfçı, 2008). In this study, the samples have been collected from twenty eight patients. Each data representing one patient consists of eight different attributes. Twentyfour of those data have been used for training, and four of them for testing. We have determined four different classes in the liver disease as Hepatitis B (HBV), Hepatitis C (HCV), Cirrhosis A, and Cirrhosis B and C. Although the three classes of cirrhosis and their scores have distinctive marks, we have assumed that Child’s class A patients differ significantly from Child’s class B or Child’s class C patients, and the difference between Child’s class B and C patients does not reach statistical significance. For each disease, there are six different data collection occurrence. One of the most significant problems of medical diagnosis is the subjectivity of the specialist and the data. Hematological, radiological, serological, and biochemical examinations have been conducted on the patients with the risk of having hemorrhage, and additional liver biopsy has also been done on the patients with no risk of having hemorrhage, all of whom were included in this study (Baki, 2009). Table 1 shows the clinical data used in this study in which seven distinct enzyme values have been used for diagnosing the liver disease. Enzymes used to identify the classes were AST, ALT, AST/ALT, Albumin, Protein, Platelet, and PT. Each data set has been normalized according to Eq. (2):
Normalized v alue ¼ ðcurrent
v alue ðmin v alue v alue min v alueÞ þ 2Þ
1ÞÞ=ððmax
ð2Þ
According to Eq. (2), the entire range of the liver data is normalized to vary between 0 and 1, and thereafter the normalized data is used to train and test the CMAC artificial neural network. Fig. 4 shows how the normalization process is performed to find the normalized equivalents of the original data for the AST enzyme in this particular example. In this study, the CMAC neural network with 24-input vector and 5-output vector has been used. The input vectors can be
3.4. Training mode
3.5. Diagnosis/Test mode The CMAC ANN should be able to classify correctly the input vectors which were never seen before. For this reason, the totally different data from the data of the training, which goes through the same normalization process and is called test data, is inputted to the network for the recognition process. The operations of the CMAC ANN will be the same as the training mode when the test data is inputted to the diagnostic system. In this mode, the weights of the same excited memory addresses of each memory layer are summed up and each layer has one output value. If the input signals are the same as the training patterns, they will excite the same memory addresses (Hung & Yang, 2007). Hence, the output of CMAC ANN can be HBV, HCV, Cirrhosis A, Cirrhosis B and C; otherwise, the output of the CMAC ANN will be called other types in the program. 3.6. The algorithm The CMAC algorithm based on the configuration in Fig. 3 is described as follows: Step 1: Build configuration of the CMAC liver disease diagnosis system. It includes 24 input and 5 output nodes. Step 2: Normalize, load and input the training data, through quantization, memory addressing, and the weights of the summation of excited memory addresses to produce the output nodes. Step 3: Calculate the difference between actual output and desired output to find the weights, which minimize the error as based on the LMS rule (Eq. (1)). Step 4: Training is done! Save the memory weights. Step 5: Normalize, load and input the testing data, through quantization, memory addressing, and the weights of the summation of excited memory addresses to produce the output nodes. (If the input signals are the same as the training patterns, they will excite the same memory addresses.) Step 6: Output the testing result.
_ I.Ö. Bucak, S. Baki / Expert Systems with Applications 37 (2010) 6157–6164
6161
Table 1 The clinical data for liver enzymes. Gender
Age
PT
AST
ALT
AST/ALT
Type
Albumin
Protein
Platelet
F M F F F M M M F M M M M F F M F M F M M M M M
52 47 34 34 24 24 18 50 47 67 49 62 45 60 60 55 60 70 33 55 55 60 65 79
12.2 13 13 12.8 12.6 12.6 11.6 14.6 12.3 12.3 15.4 23.3 16.2 17.2 18 15.9 16 16 19 25 19.4 17.4 29 18
43 74 97 48 83 74 60 71 28 32 116 116 26 41 37 59 146 68 60 86 57 295 70 56
155 60 209 69 172 174 112 163 31 36 174 134 53 15 49 85 87 56 32 51 43 154 31 18
0.27 1.23 0.46 0.69 0.48 0.42 0.53 0.43 0.90 0.88 0.66 0.86 0.49 2.73 0.75 0.69 1.67 1.21 1.88 1.69 1.30 1.90 2.26 3.11
1 1 1 1 1 1 2 2 2 2 2 2 3 3 3 3 3 3 4 4 4 4 4 4
3.6 4.5 4.4 3.4 3.7 4.3 4.7 4.3 3.3 4.3 3.5 4.3 3.5 2.2 3.2 3.4 2.8 3.5 2.1 1.3 2.6 2.1 1.5 2.3
6.7 8.5 7.9 7.6 7.1 8.3 8.6 8.4
154,000 221,000 244,000 195,000 217,000 208,000 251,000 117,000 216,000 262,000 93,000 190,000 46,000 57,000 120,000 75,000 103,000 64,000 70,000 132,000 101,000 177,000 71,000 79,000
8 8.5 7.4 7.5 6.1 5.8 8 5.6 6 5.2 5.5 6.8 5.1 3.6 5.6
4. Simulation results
Fig. 4. An example of normalization process using Eq. (2).
To demonstrate the effectiveness of the proposed algorithm, we have sieved to seven sets of data for each liver disease type. Six sets are utilized as the training pattern and the last one is the test data. All the data are listed in Table 2 and the bold-typed rows at the bottom of the table represent the test data. Fig. 6 gives us the results of the CMAC ANN program which we have formed with a predetermined quantization, width, learning rate, and the desired error values. Table 3 shows the obtained results to evaluate the performance when we give various values to the variables. Specifically, the
Fig. 5. The CMAC ANN model used to diagnose the liver disease.
_ I.Ö. Bucak, S. Baki / Expert Systems with Applications 37 (2010) 6157–6164
6162 Table 2 The liver training and test data. Patient no.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
Normalized data
Disease type
Age
ALT
AST
ALT/ALT
Albumin
Protein
Platelet
PT
0.56 0.48 0.27 0.27 0.11 0.11 0.02 0.52 0.48 0.79 0.51 0.71 0.44 0.68 0.68 0.6 0.68 0.84 0.25 0.6 0.6 0.68 0.76 0.98 0.12 0.51 0.68 0.6
0.05 0.1 0.1 0.09 0.07 0.07 0.02 0.18 0.06 0.06 0.22 0.64 0.27 0.32 0.36 0.25 0.26 0.26 0.41 0.73 0.44 0.33 0.95 0.36 0.07 0.22 0.36 0.43
0.07 0.18 0.27 0.08 0.21 0.18 0.13 0.17 0.01 0.03 0.34 0.34 0 0.06 0.04 0.13 0.45 0.16 0.13 0.23 0.12 1 0.17 0.11 0.2 0.34 0.04 0.11
0.72 0.22 0.99 0.27 0.8 0.81 0.49 0.76 0.07 0.1 0.81 0.61 0.19 0.01 0.17 0.35 0.36 0.2 0.08 0.18 0.13 0.71 0.07 0.01 0.8 0.81 0.17 0.13
0.21 0.4 0.25 0.29 0.25 0.24 0.26 0.24 0.34 0.33 0.29 0.33 0.25 0.72 0.3 0.29 0.5 0.4 0.54 0.5 0.42 0.54 0.62 0.79 0.25 0.29 0.3 0.42
0.61 0.78 0.76 0.57 0.63 0.74 0.81 0.74 0.56 0.74 0.59 0.74 0.59 0.35 0.54 0.57 0.46 0.59 0.33 0.19 0.43 0.33 0.22 0.37 0.62 0.59 0.54 0.43
0.59 0.86 0.77 0.72 0.65 0.83 0.87 0.84 0.78 0.78 0.86 0.7 0.71 0.51 0.46 0.78 0.43 0.49 0.38 0.42 0.61 0.36 0.14 0.43 0.65 0.86 0.46 0.61
0.42 0.68 0.77 0.58 0.66 0.63 0.8 0.28 0.66 0.84 0.18 0.56 0 0.04 0.29 0.11 0.22 0.07 0.09 0.33 0.21 0.51 0.1 0.13 0.65 0.18 0.29 0.21
HBV HBV HBV HBV HBV HBV HCV HCV HCV HCV HCV HCV Child-A Child-A Child-A Child-A Child-A Child-A Child-BC Child-BC Child-BC Child- BC Child-BC Child-BC HBV HCV Child-A Child-BC
Fig. 6. Output of the CMAC computer program (Matlab, 2008).
variables of quantization = 4, width = 2, learning rate = 0.5 have shown us that the program runs with the best performance overall.
Fig. 7 shows that, as the learning rate b is decreased, it takes shorter steps for the algorithm to classify the input states
Table 3 Performance values of the CMAC program. Q
W
b
Desired error
Initial time (s)
Learning time (s)
Test time (s)
Step
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
0.3 0.3 0.3 0.3 0.3 0.3 0.4 0.4 0.4 0.4 0.4 0.4 0.5 0.5 0.5 0.5 0.5 0.5 0.6 0.6 0.6 0.6 0.6 0.6 0.8 0.8 0.8 0.8 0.8 0.8
0.1 0.01 0.001 0.0001 0.00001 0.000001 0.1 0.01 0.001 0.0001 0.00001 0.000001 0.1 0.01 0.001 0.0001 0.00001 0.000001 0.1 0.01 0.001 0.0001 0.00001 0.000001 0.1 0.01 0.001 0.0001 0.00001 0.000001
1.329 1.344 1.359 1.359 1.343 1.375 1.375 1.344 1.390 1.391 1.359 1.359 1.500 1.344 1.344 1.344 1.359 1.359 3.015 2.984 3.016 3.032 3.016 2.985 1.375 1.375 1.375 1.375 1.344 1.375
0.484 0.938 1.25 1.641 2.047 2.329 0.469 0.656 0.891 1.187 1.407 1.657 0.406 0.593 0.719 0.969 1.250 1.360 0.719 1.063 1.532 1.875 2.265 2.750 0.766 1.328 2.156 2.532 3.0 3.609
0.016 0.031 0.031 0.031 0.031 0.015 0.016 0.031 0.031 0.031 0.031 0.031 0.157 0.016 0.015 0.031 0.015 0.031 0.031 0.047 0.046 0.046 0.031 0.047 0.031 0.015 0.031 0.031 0.015 0.016
11 14 18 24 29 34 6 9 13 17 20 24 5 8 11 14 17 20 6 9 13 16 19 23 11 19 27 36 44 53
Learning Steps
60
Beta=0.6 Beta=0.5 Beta=0.8
50 40 30 20 10 0 0.1
0.001
0.00001
Error Fig. 7. Learning step vs. desired error for quant = 4 and width = 2.
accurately. The learning rate 0.5 can be chosen to work the best of all the three considered in the figure. Fig. 8 indicates that the learning steps for the algorithm that learns to classify the data correctly will increase linearly for all the desired errors.
Learning Steps
25 20 15
1.6 1.4 1.2 1 0.8 0.6 0.4 0.2 0
0.1
0.01
6163
0.001
0.0001
0.00001 0.000001
Desired Error Fig. 9. Learning time vs. desired error for quant = 4 and b ¼ 0:5.
Fig. 9 shows the relationship between the desired error and the learning time when the input quantization is 4, and the learning rate is 0.5. According to the figure, there is no any recordable variation in the learning time until the desired error becomes 0.0001. Nonetheless, the learning time increases sharply as the desired error becomes smaller than 0.0001 as seen in the figure.
5. Conclusion In this paper, we provide an alternative way to medical diagnosis. The physician may spend very long time for the assessment of the enzyme values during normal diagnostic period while making a decision based on those enzymes. This study provides a contribution to the medical diagnosis process by shortening time through the use of an intelligent model and helps the physician to diagnose complex cases which are otherwise difficult to perceive. Physicians make a decision according to enzyme values in normal diagnosis stage of this method. In this study, we developed an expert diagnostic system for the interpretation of the liver data consisted of the liver enzymes using CMAC ANN approach. The three-stage CMAC ANN architecture that we built has given very promising results in classifying the healthy (liver data with no liver disease), hepatitis, and cirrhosis. Hundred percent success rate of classification was accomplished with the design of CMAC ANN architecture for diagnosing the liver disease. The end results were classified as HBV, HCV, Cirrhosis A, Cirrhosis B & C. Otherwise, the output of the CMAC ANN was called other types. A system to recognize all types or phases of the liver disease in the future can be developed by using the data and the method in this study. The future research may present many advantages in the recognition of the process and the performance of the algorithm by increasing both the number of training and the testing data. Other enzymes not used in this study and/or more classes can also be included to refine and diversify the current results. A comparison can be made between the current algorithm and a future extraction method to be used with the liver data in this data. Additionally, a fuzzy neural network application can serve to explain and illustrate the unknown transitional period between the phases of the liver disease. Acknowledgement
10
The authors gratefully acknowledge help provided by Mr. Yavuz Pehlivan in having clinical laboratory data.
5 0
Learning time (s)
_ I.Ö. Bucak, S. Baki / Expert Systems with Applications 37 (2010) 6157–6164
0.1
0.01
0.001
0.0001
0.00001 0.000001
Desired Error Fig. 8. Learning steps vs. desired error for quant = 4 and b ¼ 0:5.
References Adams, B. (2008). Liver, biliary, & pancreatic disorders.
.
6164
_ I.Ö. Bucak, S. Baki / Expert Systems with Applications 37 (2010) 6157–6164
Albus, J. S. (1975a). A new approach to manipulator control: The Cerebellar Model Articulation Controller (CMAC). Journal of Dynamic Systems, Measurement, and Control, Transaction of the ASME, 220–227. Albus, J. S. (1975b). A new approach to manipulator control: The Cerebellar Model Articulation Controller (CMAC). NIST-National Institute of Standards and Technology, 237–240. Babe, T. (2007). The liver and its diseases. . Baotic, M., Petrovic, I., & Peric, N. (2001). Convex optimization in training of CMAC neural networks. AUTOMATIKA: Journal for Control, Measurement, Electronics, Computing, and Communications, 42(3–4), 151–157. Baki, S. (2009). Liver illness diagnosis based on neural network approach. MSc. Thesis, Fatih University, Istanbul, Turkey. Burgin, G. (1992). Using cerebellar arithmetic computers. AI Expert, 32–41. Chen, J. D. Z., Lin, Z., Wu, Q., & McCallum, R. W. (1995). Noninvasive identification of gastric contractions from surface electrogastogram using backpropagation neural networks. Medical Engineering and Physics, 17(3), 219–225. Child, C. G., & Turcotte, J. G. (1964). Surgery and portal hypertension. In The liver and portal hypertension (pp. 50–64). Philadelphia: Saunders. Darwin, P. (2008). Liver disease. . Dimitriou, D. (2008). What is Hepatitis? . DuPage, K. (2007). Liver disease symptoms. . Gott, P. H. (2008). Liver cirrhosis. . Handelman, D. A., Lane, S. H., & Gelfland, J. J. (1990). Integrating neural networks and knowledge-based systems for intelligent robotic control. IEEE Control Systems Magazine, 10(3), 77–87. Hopkins, J. (2008). Liver. . Hung, C., & Yang, S. (2007). Melancholia diagnosis based on CMAC neural network approach. In Proceedings of the eigth conference on eighth WSEAS international conference on neural networks (pp. 25–30). Jabbar, N. I., & Mehrotra, M. (2008). Application of fuzzy neural network for image tumor description. Proceedings of World Academy of Science Engineering and Technology, 34, 575–577. Kara, S., Icer, S., Akdemir, B., & Polat, K. (2007). Intelligent detection system to diagnose of cirrhosis disease: Combining generalized discriminant analysis and artificial immune recognition system. In DCDIS Proceedings of the international conference on life system modeling and simulation (LSMS 2007) (pp. 28–32). Kim, H. (1993). .
Lin, C., & Chen, C. (2008). CMAC-based supervisory control for nonlinear chaotic systems. Chaos, Solitons and Fractals, 35, 40–58. Lin, C., & Chiang, C. (1997). Learning convergence of CMAC technique. IEEE Transactions on Neural Networks, 8(6), 1281–1292. Lin, W., Hung, C., & Wang, M. (2002). CMAC based fault diagnosis of Power transformers. In Proceedings of IJCNN conference (Vol. 1, pp. 986–991). Matlab. (1984–2008). The MathWorks Inc., R2008b, 1984–2008. Matthew, C. (1995). Handbook of diagnostic tests. Springhouse Corporation. Miller, W. T., & Glanz, F. H. (1996). The University of New Hampshire implementation of the cerebellar model arithmetic computer – CMAC. UNH_CMAC Version 2.1. Miller, W. T., Glanz, F. H., & Craft, L. G. (1990). CMAC: An associative neural network alternative to backpropagation. Proceedings of the IEEE, 78(10), 1561–1567. Mobley, B. A., Schechter, E., Moore, W. E., McKee, P. A., & Eichner, J. E. (2000). Predictions of coronary artery stenosis by artificial neural network. Artificial Intelligence in Medicine, 18, 187–203. Pehlivan, Y., Koruk, M., Gülsßen, M. T., Savasß, C., & Kadayıfçı, A. (2008). The relation between AST, ALT ratio and stage of the disease in chronic viral hepatitis – Importance of AST/ALT in chronic hepatitis. Gaziantep University Medicine Magazine, 14, 28–31. Petska, J. (2007). What is the largest gland in the body? . Piecha, J. (2001). The neural network selection for a medical diagnostic system using an artificial data set. Journal of Computing and Information Technology, 9(2), 123–132. Prahadan, N., Sadasivan, P. K., & Arunodaya, G. R. (1996). Detection of seizure activity in EEG by an artificial neural network: A preliminary study. Computers and Biomedical Research, 29(4), 303–313. Pugh, R. N., Murray-Lyon, I. M., Dawson, J. L., Pietroni, M. C., & Williams, R. (1973). Transaction of the oesophagus for bleeding oesophageal varices. British Journal of Surgery, 60(8), 646–649. Rudolph, R. E., & Kowdley, K. V. (1997). Cirrhosis of the liver. In R. B. Conn et al. (Eds.). Current diagnosis (Vol. 9). Philadelphia: Saunders Company. Rumelhart, D., & McClelland, J. (Eds.). (1986). Parallel distributed processing: Explorations in the microstructure of cognition (volume 1): foundations. Cambridge, MA: MIT Press. Scott, R. (1993). Artificial intelligence: Its use in medical diagnosis. The Journal of Nuclear Medicine, 34(3), 510–514. Smith, J. H., Graham, J., & Taylor, R. J. (1996). The application of an artificial neural network to Doppler ultrasound waveforms for the classification of arterial disease. International Journal of Clinical Monitoring and Computing, 13, 85–91.