What type of algorithm (or at least what general class of algorithm) is generating the model? I'm just curious because I'm wondering if the input data has to be linearly separable or if it has a limited number of classes(I think that the iris dataset is only linearly separable in one case)?