gpt4 book ai didi

python - Tensorflow 的多输出神经网络

转载 作者:行者123 更新时间:2023-11-30 09:07:47 26 4
gpt4 key购买 nike

我的输入数据包括 48 或 52(这个数字是 4 的倍数)和 3 个输出。 输入类似如下:1.34772 1.35783 1.35937 1.35158 1.33009输出-1,108,128第一个输出始终为 -1 或 1,第二个、第三个输出始终为 80,140 之间的整数。我喜欢训练神经网络模型,根据输入和输出计算所有权重、偏差……。 Sample Input and output dataAX、AY 和 AZ 是我的输出。是否可以使用 Tensorflow 同时训练这些数据以获得 3 个输出?问候,

最佳答案

您可以尝试的最简单方法是从深度学习模型输出 3 个值。我在下面给出了示例代码,并在必要时添加了注释。

import tensorflow as tf

N_OUTPUTS = 3
N_INPUTS = 48
N_HIDDEN_UNITS = # Define here
N_EPOCHS = # define here

input = tf.placeholder(tf.float32, shape=[None, N_INPUTS], name='input') # input here

outputs = tf.placeholder(tf.float32, shape=[None, N_OUTPUTS], name='output') # one sample is something like[Ax,Ay,Az]

# one hidden layer with 3 outputs
W = {
'hidden': tf.Variable(tf.random_normal([N_INPUTS, N_HIDDEN_UNITS])),
'output': tf.Variable(tf.random_normal([N_HIDDEN_UNITS, N_OUTPUTS]))
}
biases = {
'hidden': tf.Variable(tf.random_normal([N_HIDDEN_UNITS], mean=1.0)),
'output': tf.Variable(tf.random_normal([N_OUTPUTS]), mean=1.0)
}

hidden = tf.matmul(input, W['hidden']) + biases['hidden'] # hidden layer
output_ = tf.matmul(hidden, W['output']) + biases['output'] # outputs

cost = tf.reduce_mean(tf.square(output_ - outputs)) # calculates the cost
optimizer = tf.train.GradientDescentOptimizer(0.001).minimize(cost) # optimazer

with tf.Session() as session:
session.run(tf.global_variables_initializer())
for epoch in range(N_EPOCHS):

# _ = session.run([optimizer],feed_dict={input: , outputs : }) should feed input and output as [Ax,Ay,Az]

在上面,我创建了一个只有一个隐藏层的神经网络模型,然后输出 3 个值 ([Ax, Ay, Az])。

但是,如果您的[Ax, Ay, Az]是相互依赖的(具有相关性),您可以尝试类似上述模型的方法。否则,只需为三个输出构建 3 个独立模型并分别训练它们。

希望这有帮助。

关于python - Tensorflow 的多输出神经网络,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47370218/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com