labeling implemented with learning