apache-spark - 属性错误:管道对象没有属性转换
问题描述
我已经使用 spark ml 管道构建了一个逻辑回归模型并保存了它。我正在尝试将管道应用于新记录集并收到错误。我的管道中有向量汇编器、标准缩放器和逻辑回归模型。
我尝试pipeline.transform
并收到以下错误
AttributeError:“管道”对象没有属性“转换”
下面是代码
from pyspark.ml import Pipeline
pipelineModel = Pipeline.load("/user/userid/lr_pipe")
scored_temp = pipelineModel.transform(combined_data_imputed_final)
这是我保存管道的方法
from pyspark.ml.classification import LogisticRegression
vector = VectorAssembler(inputCols=final_features, outputCol="final_features")
scaler = StandardScaler(inputCol="final_features", outputCol="final_scaled_features")
lr = LogisticRegression(labelCol="label", featuresCol="final_scaled_features", maxIter=30)
stages = [vector,scaler,lr]
pipe = Pipeline(stages=stages)
lrModel = pipe.fit(train_transformed_data_1).transform(train_transformed_data_1)
pipe.save("lr_pipe")
我期待它完成所有管道步骤并为记录评分。
解决方案
我遇到了同样的问题,在查看源代码后,我发现有一个 PipelineModel 模块我们应该加载到其中。一旦我改变了它,它就可以工作了:D
from pyspark.ml import Pipeline, PipelineModel
pipelineModel = PipelineModel.load("/user/userid/lr_pipe")
scored_temp = pipelineModel.transform(combined_data_imputed_final)
推荐阅读
- elasticsearch - 升级 Elasticsearch 主要版本
- c# - 使用 IDBconnection 执行常规 SQL
- sql - 插入表中截断第一个字符(SQL Server)
- c# - 如何在 C# 中将现有数据库添加到 Web-Api
- flutter - Flutter:如何从 Sharedpreference 数据中设置文本?
- java - 在参数化查询中使用 CONVERT
- excel - 4 个 Excel 公式为 1
- sql - 如何通过 SQL 中特定用户的其他列最大值获取值
- postgresql - 服务器是否在主机“localhost”上运行?
- integromat - 基于我的 Integromat 应用程序的连接参数的输入字段帮助消息