R语言加载Python训练的h5模型文件

在一个项目中同时使用了python和R语言,但如果想要在python中训练模型并保存为h5文件,那么如何在R中打开它并用它来预测数据呢?

答案是R语言keras包(原来R也有keras)

下面是过程示例

1.下载keras包

install.packages("keras")
install_keras()

2.在Python中训练并保存h5模型

随便训练一个模型

def create_model(units_list=[5,5,5],lr=0.01,init='normal'):
    # units_list is a list of number of units in each hidden layer
    model = Sequential()

    units=units_list[0]

    model.add(Dense(units=units,activation="relu",input_dim=5,kernel_initializer=init))

    for units in units_list:
        model.add(Dense(units=units,activation="relu",kernel_initializer=init))

    model.add(Dense(units=1,kernel_initializer=init))

    model.compile(loss='mean_squared_error',optimizer = optimizers.Adam(lr=lr), metrics=[])
    
    return model

from livelossplot import PlotLossesKeras
model = KerasRegressor(build_fn=create_model,epochs=5000,batch_size=16,verbose=0,lr=0.001)
plotlosses = PlotLossesKeras()
h=model.fit(X_train, Y_train,validation_data=(X_test, Y_test),callbacks=[plotlosses])

保存模型

model.model.save("models/BPNN.h5")

3.在R中加载并预测

加载模型:

 library(keras)

 model<-load_model_hdf5("models/BPNN.h5")

预测:

 pred<-model %>%predict(as.matrix(data))

解决!

Python可以调用R

R可以调用python训练出的h5模型

扫描二维码关注公众号,回复: 14857915 查看本文章

我们更自由地使用python和R!

猜你喜欢

转载自blog.csdn.net/skycol/article/details/126997685