Suppose I have a set of predictors, I know some of them maybe useless, but I am not sure. So, I build multiple versions of predictor set, that each version contain/not contain some of the predictors that I am not sure about. Then, for each version, I use cross-validation (CV) to tune a same learning model. I then calculate the CV error. Can I use the predictor set with smallest CV error? Does it introduce bias or overfitting? Why? Will it help, if a separate test set is used?