在数据预处理中,为了降低不同列的数据量级和范围大小带来的影响,需要将各列数据进行归一化操作。归一化之后,不同列的数据都会被限定到同一个数据范围内。
使用限制
支持的计算引擎为MaxCompute和Flink。
算法简介
将数据转换到minValue和maxValue之间,value最终结果为 (value - min) / (max - min) * (maxValue - minValue) + minValue,最终结果的范围为[minValue, maxValue]。
minValue和maxValue由用户指定,默认为0和1。
生成的最大值最小值归一化模型在归一化预处理组件中使用。
可视化配置参数
【输入桩配置】
输入桩(从左到右) | 限制数据类型 | 建议上游组件 | 是否必选 |
数据 | 数值类型 | 无 | 是 |
【右侧参数表单】
页签 | 参数 | 描述 |
字段设置 | 选择的列名 | 需要处理的列名列表,只能选择数值类型。 |
参数设置 | 归一化的上界 | 类型为DOUBLE,默认值为1.0。 |
归一化的下界 | 类型为DOUBLE,默认值为0.0。 | |
执行调优 | 节点个数 | 与单个节点内存大小参数配对使用。取值为[1, 9999]的正整数。 |
单个节点内存大小,单位M | 取值范围为1024 MB~64*1024 MB。 |
【输出桩说明】
输出桩(从左到右) | 存储位置 | 下游建议组件 | 模型类型 |
模型 | 不需要配置 | 无 |
具体示例
您可以将以下代码复制到PyAlink脚本组件中,使PyAlink脚本组件实现与该组件相同的功能。
from pyalink.alink import *
def main(sources, sinks, parameter):
data = sources[0]
selectedColNames = ["col2", "col3"]
trainOp = MinMaxScalerTrainBatchOp()\
.setSelectedCols(selectedColNames)
result = trainOp.linkFrom(data)
result.link(sinks[0])
BatchOperator.execute()
文档内容是否对您有帮助?