Orthogonal nonnegative learning for sparse feature extraction and approximate combinatorial optimization