predictive analysis of health records using matlab

24
PREDICTIVE ANALYSIS OF HEALTH RECORDS Umang Shukla Pranay Sharma Krishnan Iyer Monica

Upload: umang-shukla

Post on 18-Jul-2015

271 views

Category:

Data & Analytics


2 download

TRANSCRIPT

Page 1: Predictive Analysis of Health Records using MATLAB

PREDICTIVE ANALYSIS OF HEALTH RECORDS

Umang ShuklaPranay SharmaKrishnan IyerMonica

Page 2: Predictive Analysis of Health Records using MATLAB

➜ About dataset➜ What is fuzzy logic➜ Basics of fuzzy➜ Work done➜ Observations

OVERVIEW

Page 3: Predictive Analysis of Health Records using MATLAB

ABOUT THE DATASET

Pima Indians Diabetes Database

Sources : UCI Machine Learning RepositoryOwners : National Institute of Diabetes and Digestive and Kidney DiseasesDonor : Vincent SigillitoDate Received : 9th May 1990Patients are females of age greater than 21 years of Pima Indian Heritage.Number of Instances: 768Number of Attributes: 8These attributes are :

1. Number of times pregnant 2. Plasma glucose concentration a 2 hours in an oral glucose tolerance test 3. Diastolic blood pressure (mm Hg) 4. Triceps skin fold thickness (mm) 5. 2-Hour serum insulin (mu U/ml) 6. Body mass index (weight in kg/(height in m)^2) 7. Diabetes pedigree function 8. Age (years) 9. Class variable (0 or 1)

Page 4: Predictive Analysis of Health Records using MATLAB

What is Fuzzy Logic ?

Fuzzy logic is an approach to computing based on "degrees of truth" rather than the usual "true or false" boolean logic

It was first advanced by Dr. Lotfi Zadeh of the University of California

He said any logical system could be fuzzified.

Page 5: Predictive Analysis of Health Records using MATLAB

LET’S REVIEW SOME CONCEPTS

Fuzzy Sets

Let X be a non empty set, A fuzzy set A in X is characterized by its membership function µA: X -> [0,1], where µA(x) is

the degree of membership of element x in fuzzy set A for each x ∈ X .

Operations

UnionIntersectionComplementComtainment

Membership Function

They map elements of a fuzzy set to real numbered values in the interval 0

to 1. Example:- Triangular, Trapezoidal, S-

shaped, Sigmoid, Pi-function

Fuzzification

The process of transforming crisp

(bivalued) input values into linguistic values is called

fuzzification

Defuzzification

Defuzzification converts the fuzzy values into crisp (bivalued) value.

Types :- Max-membership method Centroid method Weighted average method

Page 6: Predictive Analysis of Health Records using MATLAB

WORKDONE

Page 7: Predictive Analysis of Health Records using MATLAB

1.DATA CLEANING

Page 8: Predictive Analysis of Health Records using MATLAB

2.SPLITTING OF

DATASET

Page 9: Predictive Analysis of Health Records using MATLAB

3.BINNING OF

TRAINING SET

Page 10: Predictive Analysis of Health Records using MATLAB

4.RULE GENERATION

USING J48

Page 11: Predictive Analysis of Health Records using MATLAB

Classification tree by J48

Page 12: Predictive Analysis of Health Records using MATLAB

5.FUZZIFICATION OF

BINNED INPUT AND OUTPUT

Page 13: Predictive Analysis of Health Records using MATLAB

Fuzzy Inference System

Page 14: Predictive Analysis of Health Records using MATLAB

6.DEFINING FUZZY

RULE

Page 15: Predictive Analysis of Health Records using MATLAB

Fuzzified Rules

Page 16: Predictive Analysis of Health Records using MATLAB

7.TEST SET

EVALUATION

Page 17: Predictive Analysis of Health Records using MATLAB

EVALUATION TECHNIQUES

INTERACTIVE

Page 18: Predictive Analysis of Health Records using MATLAB

This can be done by evalfis function on matlab

output= evalfis(input,fismat)

Evalfis() has the following arguments:➜ input: a number or a matrix specifying input values. ➜ fismat: an FIS structure to be evaluated.

ON MATLAB TERMINALEVALUATION TECHNIQUES

Page 19: Predictive Analysis of Health Records using MATLAB

RESULTS AND OBSERVATION

Page 20: Predictive Analysis of Health Records using MATLAB

Before understanding the results we need to know about the trapezoidal shaped member function which we used to define input variable.tramf = f(x,a,b,c,d)

OBSERVATIONS

Page 21: Predictive Analysis of Health Records using MATLAB

In our test dataset we had 332 instances.

We evaluated our FIS model for 5%, 10%, 15% and 20% variance of the a, b, c, d point for each input member.

Next we took 0.65 as our membership value for output variable to classify predictions as “yes” or “no”.

However, It was observed that none of these changes in input variable boundary affected the accuracy of the predictions with exception to changes done in the member “plasma”.

On digging deeper we found out the reason for such a behaviour, we observed that even though accuracy was not changing these variance indeed affect the membership value of output but none of were big enough to cross the 6.5 barrier which we had set for output classification.

OBSERVATIONS

Page 22: Predictive Analysis of Health Records using MATLAB

OBSERVATIONS

MODEL ACCURACY

J48 74.14%

DEFAULT(all with 5% variance) 80.722%

10% variance in plasma 81.024%

15% variance in plasma 81.626%

20% variance in plasma 81.626%

Page 23: Predictive Analysis of Health Records using MATLAB

OBSERVATIONS

We observed that fuzzy system performs better than our J48 for same classification model as J48 uses crisp data values.

As only plasma was affecting the accuracy we found that it was so because of plasma was involved in all the rules defined above.

As we increased the input variance of plasma the accuracy showed an increase but only upto a particular level.

Page 24: Predictive Analysis of Health Records using MATLAB

Thanks!Any questions?