r语言 - 如何在 h2o.deeplearning 中初始化权重?



我使用h2o.deeplearning函数在R中执行DNN。

我想初始化深度神经网络迭代和性能改进的权重。

我知道称重初始化应该是 -1 到 +1 之间的小值,而不是一个大值。

那么,初始化权重的h2o.deeplearning中的参数代码是什么????以及如何使用它在 -1 和 +1 之间初始化??

请帮助我..!

如果我们检查?h2o.deeplearning的文档

initial_weights 用于初始化权重的 H2OFrame ID 列表 该模型的矩阵。

下面是设置权重的示例

library(h2o)
h2o.init()
iris.hex <- as.h2o(iris)
iris.dl <- h2o.deeplearning(x = 1:4, y = 5, training_frame = iris.hex,
hidden=c(10,10),export_weights_and_biases = TRUE
)
w1 <- h2o.weights(iris.dl,1)
w2 <- h2o.weights(iris.dl,2)
w3 <- h2o.weights(iris.dl,3)
b1 <- h2o.biases(iris.dl,1)
b2 <- h2o.biases(iris.dl,2)
b3 <- h2o.biases(iris.dl,3)
dl <- h2o.deeplearning(1:4,5,iris.hex,hidden=c(10,10),initial_weights=c(w1,w2,w3),
initial_biases=c(b1,b2,b3))
p1 <- h2o.predict(dl, iris.hex)
p1
#  predict    setosa   versicolor    virginica
#1  setosa 0.9967546 0.0032424531 2.946375e-06
#2  setosa 0.9943469 0.0056346023 1.845851e-05
#3  setosa 0.9990881 0.0009072309 4.663780e-06
#4  setosa 0.9990550 0.0009393998 5.593951e-06
#5  setosa 0.9985592 0.0014391955 1.568052e-06
#6  setosa 0.9966511 0.0033477623 1.121636e-06
#[150 rows x 4 columns] 

关于规范化,将由h2o完成。 也在这里检查

最新更新