Apache Spark机器学习.1.7 机器学习工作流示例

简介:

1.7 机器学习工作流示例


为了进一步了解学习机器学习的工作流,在这里让我们学习一些例子。

本书后续章节会研究风险建模、欺诈检测、客户视图、流失预测和产品推荐。对于诸如此类的项目,目标往往是确定某些问题的原因,或者建立一个因果模型。下面是使用工作流建立一个因果模型的一个例子。

1.检查数据结构,以确保更好地理解数据:

数据是横截面数据吗?是隐含着时间信息的合并数据吗?

是否使用了分类变量?

2.检查缺失值:

不知道或者忘记了一个答案可能会被记录为一个中立或特殊的类别

一些变量可能有很多缺失值

根据需要重新记录一些变量

3.进行一些描述性研究,开始讲故事:

使用比较方法和交叉列表

检查一些关键变量的变异性(标准差和方差)

4.ind变量(外生变量)的选择组:

作为问题原因的候选

5.基本描述性统计:

所有变量的均值、标准差和频率

6.测量工作:

研究一些测量值的规模(efa探索性因子分析在这里可能是有用的)

形成测量模型

7.本地模型:

从全局中找出部分以探索其中关系

使用交叉列表

图表展示

使用逻辑回归

使用线性回归

8.开展一些偏相关分析,以帮助模型设定。

9.使用(8)的结果,提出结构方程模型:

确定主结构和次结构

将测量和结构模型进行关联

10.初次拟合:

运用SPSS为lisrel或Mplus创建数据集

使用lisrel或Mplus编程

11.模型修正:

使用SEM结果(主要模型拟合指数)来指导

再次分析偏相关性

12.诊断:

分布

残差

曲线

13.到这里我们应该可以开展最终模型估计了:

如果不能,请重复步骤13和14

14.模型解释(识别和量化因果效应)

可参考 Spark Pipelines: http://www.researchmethods.org/step-by-step1.pdf。

Apache Spark团队认识到了机器学习工作流的重要性,因此,他们开发了Spark pipeline来高效处理工作流问题。

Spark 机器学习代表一个可以作为pipeline的机器学习工作流,它由一系列以特定顺序运行的PipelineStages组成。

PipelineStages包括:Spark转换、Spark估计和Spark评估。

机器学习的工作流可以是非常复杂的,因此创建和调整它们非常耗时。研发Spark 机器学习Pipeline,使得机器学习工作流的构造和调整更为容易,尤其可以表示以下主要阶段:

1.数据加载

2.特征提取

3.模型估计

4.模型评价

5.模型解释

对于以上任务,可以使用Spark转换器进行特征提取。Spark估计器用来训练和估计模型,Spark评估器用来评价模型。

从技术上看,Spark中的pipeline作为一系列处理过程的有序组合,每个过程可以是转换,或者是估计,或者是评估。这些过程按照顺序执行,输入的数据集遵循各过程顺序进行修改。在转换过程中,调用transform() 方法进行数据集处理。在估计过程中,调用fit()方法生成一个转换器(转换器将成为pipeline Model或拟合pipeline的一部分),并且在数据集上调用转换器的transform()方法。

上面给出的技术说明都是针对线性pipeline模型。一旦数据流图形成有向无环图(Directed Acyclic Graph,DAG),Spark也可能生产非线性pipeline模型。

更多关于Spark pipeline的信息,请访问如下链接:http://spark.apache.org/docs/latest/ml-guide.html#pipeline。

相关文章
|
8月前
|
存储 机器学习/深度学习 Apache
如何将Apache Hudi应用于机器学习
如何将Apache Hudi应用于机器学习
73 0
|
2月前
|
消息中间件 监控 数据可视化
Apache Airflow 开源最顶级的分布式工作流平台
Apache Airflow 是一个用于创作、调度和监控工作流的平台,通过将工作流定义为代码,实现更好的可维护性和协作性。Airflow 使用有向无环图(DAG)定义任务,支持动态生成、扩展和优雅的管道设计。其丰富的命令行工具和用户界面使得任务管理和监控更加便捷。适用于静态和缓慢变化的工作流,常用于数据处理。
Apache Airflow 开源最顶级的分布式工作流平台
|
7月前
|
监控 数据处理 调度
使用Apache Airflow进行工作流编排:技术详解与实践
【6月更文挑战第5天】Apache Airflow是开源的工作流编排平台,用Python定义复杂数据处理管道,提供直观DAGs、强大调度、丰富插件、易扩展性和实时监控。本文深入介绍Airflow基本概念、特性,阐述安装配置、工作流定义、调度监控的步骤,并通过实践案例展示如何构建数据获取、处理到存储的工作流。Airflow简化了复杂数据任务管理,适应不断发展的数据技术需求。
1455 3
|
8月前
|
机器学习/深度学习 数据采集 分布式计算
【机器学习】Spark ML 对数据进行规范化预处理 StandardScaler 与向量拆分
标准化Scaler是数据预处理技术,用于将特征值映射到均值0、方差1的标准正态分布,以消除不同尺度特征的影响,提升模型稳定性和精度。Spark ML中的StandardScaler实现此功能,通过`.setInputCol`、`.setOutputCol`等方法配置并应用到DataFrame数据。示例展示了如何在Spark中使用StandardScaler进行数据规范化,包括创建SparkSession,构建DataFrame,使用VectorAssembler和StandardScaler,以及将向量拆分为列。规范化有助于降低特征重要性,提高模型训练速度和计算效率。
177 6
|
8月前
|
机器学习/深度学习 分布式计算 算法
【机器学习】Spark ML 对数据特征进行 One-Hot 编码
One-Hot 编码是机器学习中将离散特征转换为数值表示的方法,每个取值映射为一个二进制向量,常用于避免特征间大小关系影响模型。Spark ML 提供 OneHotEncoder 进行编码,输入输出列可通过 `inputCol` 和 `outputCol` 参数设置。在示例中,先用 StringIndexer 对类别特征编码,再用 OneHotEncoder 转换,最后展示编码结果。注意 One-Hot 编码可能导致高维问题,可结合实际情况选择编码方式。
135 6
|
7月前
|
机器学习/深度学习 分布式计算 API
技术好文:Spark机器学习笔记一
技术好文:Spark机器学习笔记一
52 0
|
8月前
|
机器学习/深度学习 分布式计算 算法
使用Spark进行机器学习
【5月更文挑战第2天】使用Spark进行机器学习
100 2
|
8月前
|
存储 机器学习/深度学习 Apache
Apache Hudi与机器学习特征存储
Apache Hudi与机器学习特征存储
98 0
|
机器学习/深度学习 分布式计算 大数据

推荐镜像

更多