current impl of MinMaxScaler has some small places to be optimized:
1, avoid call param getter in udf.
If I remember correctly, there was some tickets and prs about this, calling param getter in udf or map function, will significantly slow down the computation.
2, for a constant dim, the transformed value is also a constant value, which can be precomputed.
3, for a usual dim (i-th), the value is update by
values = (values - minArray) / range * scale + $(min)
here, we can precompute scale / range, so that a division can be skipped.