11.感知机

1:单一输出单层感知机

(1)单一输出单层感知机的优化过程(损失函数对权重的微分过程)

 [注]

x的上标表示第几层,下标表示第几号节点。

W的上标表示第几层(也即是第几层输出层)。W的第一下标表示输入层的第几号节点,下标表示加权求和层(输出层)的第几号节点。

O输出的上标表示第几层,下标表示第几号节点。

σ为激活函数sigmoid

E为loss函数

t为目标值

φE/φWj0表示对相应的节点进行求导

[注]在上图求导过程中省略步骤的解释:φσ(x0)/φWj0用链式求导法则=(φσ(x0)/φx0)*(φx0/φWj0)

而φσ(x0)/φx0为激活函数sigmoid函数的求导,然而φx0/φWj0为对加权求和∑的求导。

(2):单层感知机在pytorch中的使用(通过反复的运算的优化,可以得到最优的w权值)

 [注]x@w.t()为x*w的转置

 2:多输出单层感知机

 (1)多输出单层感知机的优化过程(损失函数对权重的微分过程)

 

[注]上图中有一错误需要改正:σ下面的两个∑改成σ。

(2)多输出单层感知机在pytorch中的使用

 

 [注]59行中mse_loss()的第一参数最好与o的shape保持一致。如图之所以能够运行成功是因为满足broadcasting机制。

原文地址:https://www.cnblogs.com/jiafeng1996/p/15058478.html