MATLAB Answers

It is possible to train the data set of 100x15 in ANFIS

14 views (last 30 days)
Dear all,
I am a very new user for ANFIS classifier.So, may I know it is possible to train 100x15 size of data set in .mat file. I trained this training data set ,and i occured error like " create very large rule based system" . May I know what 's the problem is? Thanks all.


Sign in to comment.

Accepted Answer

Krishna Chaitanya Duggineni
This issue is a fundamental limitation and not a bug.
The following Web site provides information about the "curse of dimensionality":
Question 5 in this page, titled "How come GENFIS1 generates a huge number of fuzzy rules? What is the 'curse of dimensionality?'" is relevant for this issue.
One way to reduce the number of rules generated for a large dataset is to use the GENFIS2 method could be like:
in = train_data(:,1:37);
out = train_data(:,38);
fismat = genfis2(in,out,0.8); % generate an initial FIS with 80 rules instead of 728
fis = anfis(train_data,fismat); % takes long time but avoids 'out of memory' error
Additionally, for large datasets, it is not recommend that we execute multiple trainings in a loop. To manage memory usage, I suggest using a separate script file for each training and executing "clear classes" at the MATLAB prompt between executing each of the scripts.

  1 Comment

Khaing Zin Htwe
Khaing Zin Htwe on 21 May 2016
Thanks a lot ,sir. I have the result of training error 0.0002 and testing error is even 1.5 unfortunately.I used 55 inputs and 1 output datasets and genfis2. May I know how to use genfis2 efficiently and how can I reduce the testing error,please. If you have some resource links ,please give me,sir. THanks.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!