Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 在使用ApacheSpark和Mxnet的分布式环境中使用现有的keras模型(体系结构和权重)_Amazon Web Services_Tensorflow_Keras_Pyspark_Mxnet - Fatal编程技术网

Amazon web services 在使用ApacheSpark和Mxnet的分布式环境中使用现有的keras模型(体系结构和权重)

Amazon web services 在使用ApacheSpark和Mxnet的分布式环境中使用现有的keras模型(体系结构和权重),amazon-web-services,tensorflow,keras,pyspark,mxnet,Amazon Web Services,Tensorflow,Keras,Pyspark,Mxnet,我使用pandas和keras(使用TensorFlow后端)训练了一个模型,现在需要将其迁移到分布式环境(AWS EMR) 我试图使用apachespark(用于读取创建的输入)和Mxnet作为Keras的后端。我能够加载模型架构和权重,但当我调用model.predict(输入)时 AttributeError:'DataFrame'对象没有属性“值” 这里是代码示例 from keras.models import model_from_json, load_model from pysp

我使用pandas和keras(使用TensorFlow后端)训练了一个模型,现在需要将其迁移到分布式环境(AWS EMR)

我试图使用apachespark(用于读取创建的输入)和Mxnet作为Keras的后端。我能够加载模型架构和权重,但当我调用model.predict(输入)时

AttributeError:'DataFrame'对象没有属性“值”

这里是代码示例

from keras.models import model_from_json, load_model
from pyspark.sql import SparkSession
import mxnet as mx

spark = SparkSession.builder.appName(app_name).getOrCreate()
data = spark.read.csv(input_file, sep="|", header=True)

print('Loading model...')
with open(model_architecture, 'r') as f:
    model = model_from_json(f.read())
model.load_weights(model_weights)

predictions = model.predict(data)

我有没有遗漏什么,或者有没有其他方法可以让这项工作正常进行

您使用的是spark dataframe,它没有.values属性(基本上将df转换为numpy数组)。因此,使用model.predict(data.toPandas())也许您可以尝试使用pandas udf,在udf内部,您可以使用pandas dataframe使用模型进行预测。@venkatakrishnan谢谢,这很有效。你知道有没有更好的方法来替代我的工作吗?预测似乎不是以分布式方式进行的。谢谢,@Bitswazsky将尝试使用spark数据帧,它没有.values属性(基本上将df转换为numpy数组)。因此,使用model.predict(data.toPandas())也许您可以尝试使用pandas udf,在udf内部,您可以使用pandas dataframe使用模型进行预测。@venkatakrishnan谢谢,这很有效。你知道有没有更好的方法来替代我的工作吗?这个预测似乎不是以分布式的方式发生的。谢谢,@Bitswazsky也会尝试这样做