Apache Spark算法开发指导-特征转换RobustScaler

数据标准化是使用统计学的手段对数据样本执行一定范围的缩放,使数据元素保持在一定的范围之内,标准化的数据集合在数据分析以及图表绘制中,更加容易地体现出数据的固有特性。

算法RobustScaler的计算公式:(数据元素-中位数)/(第三分数位-第一分数位),例如,给定排序后的数据集合[1,3,6,8,9,13],集合的大小为6,先计算中位数(第二分数位),集合的大小为奇数,中位数是中间位置的数据元素,集合的大小为偶数,则中位数是中间两个数据元素的均值,则中位数(6+8)/2等于7,计算第一分数位的位置(1+6)/4等于1.75,即在第1与第2个数之间的位置,则第一分数位(1+0.75*(3-1))等于2.5,计算第三分数位的位置((1+6)*3)/4等于5.25,即在第5与第6个数之间的位置,即第三分数位(9+0.25*(13-9))等于10,则使用算法RobustScaler的计算公式对数据集合实现缩放的输出数据集合[-0.8,-0.53...,-0.13...,0.13...,0.26...,0.8]。

Java代码示例

创建算法RobustScaler测试类,初始化spark实例:

加载数据分类libsvm的标准测试数据集合:

数据分类libsvm的标准测试数据集合的部分数据样本,其中,第一列是标签,用于标识数据的分类,其他列是特征数据(特征值对应的索引号:特征值):

创建算法RobustScaler实例,设置输入输出数据列的名称,设置分数位参数:

创建算法RobustScaler模型实例,用于对向量数据集合执行特征转换:

使用算法RobustScaler模型实例执行特征转换,输出标准化的向量数据集合:

特征转换输出的部分数据样本,其中,第一列是标签,692是特征值的总数,特征值对应的索引号集合,特征转换的标准缩放的数据集合:

Scala代码示例

与Java代码示例的功能逻辑相同:

启动spark-shell的Scala本地运行环境:

运行RobustScaler算法代码:

特征转换输出的数据集合:

相关推荐
weixin_553654482 天前
如何看待 2026 年 Google I/O 大会发布的 Gemini Spark?
大数据·人工智能·分布式·spark
您^_^3 天前
专家(二):Claude Code 数据工程实战:dbt + Airflow + Spark 全流程,$0.22 搭完电商分析管道
大数据·分布式·spark·claudecode·claude code全栈
zhojiew4 天前
在EMR集群中使用Spark MCP服务构建Strands Agent进行故障排查的实践
大数据·spark
大江东去浪淘尽千古风流人物5 天前
【SANA-WM】分钟级世界模型:混合线性扩散Transformer与双分支相机控制深度解析
人工智能·深度学习·架构·spark·机器人·transformer·wm
蓝眸少年CY5 天前
Spark - Code 核心教程
大数据·分布式·spark
随缘而动,随遇而安7 天前
第九十八篇 工程落地视角:Session/Cookie/Token 原理辨析与大数据实战
大数据·spark·token·cookie·session
霑潇雨8 天前
Spark学习基础转换算子案例(单词计数(WordCount))
java·大数据·分布式·学习·spark·maven
zhojiew8 天前
使用 Spark Connect 在 Amazon EMR on EC2 上实现远程 Spark开发
大数据·分布式·spark
大江东去浪淘尽千古风流人物8 天前
【Kimera】MIT SPARK 实时度量-语义 SLAM 全栈解析:VIO + 鲁棒 PGO + 语义网格四模块架构与 EuRoC 实测深度剖析
大数据·架构·spark
大江东去浪淘尽千古风流人物8 天前
【Kimera-VIO】MIT SPARK 实时度量-语义 VIO/SLAM:六模块并行架构与智能因子图优化深度解析
大数据·架构·spark