cap prediction values into [min, max]

cap prediction values into [min, max], or the prediction RMSE can be very large..

This can also be solved by post-processing `output.X_of_Y`. I'm not sure what is the original design intention. If it is to intentionally output the raw inner product, we may need to update docs for this minor problem. Or, we can add another option there to determine whether cap or not. I suggest to cap by default in that case.