Data-Driven Projection for Reducing Dimensionality of Linear Programs: Generalization Bound and Learning Methods