I'm new to data mining using WEKA.

I was trying out datasets with a large dataset (2000+ attributes with 90 instances) and left the default parameters as it is.

Why is Multilayer Perceptron running long on a dataset with 2000+ attributes? K-Nearest Neighbour does a better job in terms of speed given the same dataset.

How does the hiddenLayer in MLP affect the speed and accuracy of the training set?

What is the most recommended way in running such large dataset, or is there none?


1 Answer 1


That is a lot of attributes. Moreover, WEKA's default MLP size of the hidden layer is "a", where the following preset sizes are given:

  • a = (features + classes) / 2
  • i = features
  • o = classes
  • t = features + classes.

It is expected that the MLP will take longer. Some things you can try:

  • use dimensionality reduction such as PCA to reduce the number of features
  • reduce the number of folds if you are using k-fold cross validation
  • reduce hidden layer size (which will probably negatively affect accuracy)
  • use another model such as a SVM, which would be a lot faster

I recommend going through this high level introduction to neural networks. It is important to gain some intuition about the models you are using and the options you have available before tackling your problem.


Not the answer you're looking for? Browse other questions tagged or ask your own question.