在这个简单的XOR问题中,在keras中连接输入和输出

问题描述 投票:0回答:1

我正试图在Keras中重新创建this architecture以解决XOR问题。其中有权重连接输入(2,)数组和输出(一个数字)。我知道可以使用完全连接的2,2,1架构解决XOR问题,我已经做到了,我想学习keras。

我不知道该怎么办。我阅读了文档并在SO中搜索,但我似乎听不懂。我出来了。我的主要问题是如何将隐藏层output1

连接
        input1 = keras.layers.Input(shape=(2,)) #The input
        hidden_layer = keras.layers.Dense(1, activation='tanh')(input1) #Linking the input with the hidden layer
        output1 = keras.layers.Dense(1, activation='tanh')(input1) #Linking the input with the output layer
        ###The code I'm using connecting hidden and output layer should be here I guess###
        model = keras.models.Model(inputs=input1, outputs=outpu1) 
        model.compile(...

[如果有人有更简单的方法,那就太好了。

python keras neural-network keras-layer
1个回答
0
投票

嗨,伊夫林,欢迎来到stacckoverflow。>>

我认为通过两个输入来执行此操作更有意义。

您可以如下实现:

import tensorflow as tf
from tensorflow import keras


inp1 = keras.layers.Input(shape=(1,))
inp2 = keras.layers.Input(shape=(1,))

x = keras.layers.Concatenate()([inp1, inp2])
x = keras.layers.Dense(1, activation='tanh')(x)

x = keras.layers.Concatenate()([inp1, inp2, x])
output = keras.layers.Dense(1, activation='tanh')(x)

model = keras.models.Model(inputs=[inp1, inp2], outputs=output) 
model.summary()
model([tf.ones([8, 1]), tf.zeros([8, 1])])
© www.soinside.com 2019 - 2024. All rights reserved.