public List<Feature> transform(List<Feature> features) {
List<Feature> results = Lists.newArrayList();
if (this.isTrained) {
results.addAll(Collections2.filter(features, this));
} else {
results.add(new TransformableFeature(this.name, features));
}
return results;
}