@Override
	public int classify(Instance instance) {
		if (predictors.size() == 0) {
			// Default: return first class
			return 0;
		} else {
			Map<Integer, Integer> votes = new HashMap<>();
			for (Predictor predictor : predictors) {
				Classifier classifier = (Classifier) predictor;
				int cls = (int) classifier.classify(instance);
				if (!votes.containsKey(cls)) {
					votes.put(cls, 0);
				}
				votes.put(cls, votes.get(cls) + 1);
			}
			int prediction = 0;
			int maxVotes = 0;
			for (int cls : votes.keySet()) {
				int numVotes = votes.get(cls);
				if (numVotes > maxVotes) {
					maxVotes = numVotes;
					prediction = cls;
				}
			}
			return prediction;
		}
	}