after messing around with LinearSVC inside sklearn, I'm sticking with the exponentially weighted nearest neighbor algorithm