单输出感知机及其梯度

单层的感知机结构可写成以下公式:

y=XW+b(y = Σxi*wi+b)

这里单层感知机的激活函数改成使用现代化的sigmoid激活函数

# 定义网络结构
x=tf.random.normal([1,3])
w=tf.ones([3,1])
b=tf.ones([1])
y = tf.constant([1])


with tf.GradientTape() as tape:

    tape.watch([w, b])
    logits = tf.sigmoid(x@w+b) 
    loss = tf.reduce_mean(tf.losses.MSE(y, logits))

grads = tape.gradient(loss, [w, b])
print('w grad:', grads[0])

print('b grad:', grads[1])

原文地址:https://www.cnblogs.com/zdm-code/p/12239217.html