DNN—–Deep Neural Networks——深度神经网络 init()方法中定义了四个hidden层,正如其中文索要表达的意思一样,这代表四个“隐藏层” 最初级的神经网络是感知机—-若干个出入和一个输出 随着处理事务的逐渐复杂和计算能力的增大,神经网络逐渐发展为如下模型 图二 最左侧位输入层,最右侧位输出层,而夹在输入层和输出层的所有层次结构被称为——隐藏层 上述图二神经网络有几层? 两层,输入层不计算在内 接上述“隐藏层”之后,我们继续讲述 “ Linear(100,65,act=‘relu’) ” 中的参数问题 100代表输入到本隐藏层的节点数,————上一层的输出应该是100 65代表本层输出的节点数————————下一层的输入应该是65 act代表激活函数 在神经元中,经过input(或上一层隐藏层)加权、求和 后被应用于的一个函数, 如果不使用激活函数,每一层的输出知识承接了上一层输入函数的线性变换, So,无论神经网络有多少层,输出都是输入的线性组合,但是这不是我们想要的结果,如果只是线性组合,那么便失去了神经网络的优势 So,使用激活函数,可以给神经元以非线性的因素,使得神经网络可以逼近任何非线性的函数, 这样神经网络便可以应用到非线性模型中 def relu(x): return x if x >0 else 0 其他函数,请点击查看 最后我们使用forward()方法将四层结构连接起来(input是输入层), 最后我们可以看见,第四层的输入是3x100x100,但是第三层的输出是100,不能对应上, 所以在forward()中便定义了,改变形状的函数。 最后,如果有什么不懂得可以随时私信,询问我,共同努力,共同进步,老子爱你们! 了,改变形状的函数。 如果想了解图像识别实战的全过程,请务必点击博主名字,进入主页查看全部。 最后,如果有什么不懂得可以随时私信,询问我,共同努力,共同进步,老子爱你们!
图像识别实战(三)—-DNN讲解及代码实现
代码实现
class MyDNN(fluid.dygraph.Layer): def __init__(self): super(MyDNN,self).__init__() self.hidden1 = Linear(100,65,act='relu') self.hidden2 = Linear(65,65,act='relu') self.hidden3 = Linear(65,100,act = 'relu') self.hidden4 = Linear(3*100*100,10,act='softmax') def forward(self,input): x = self.hidden1(input) # print(x) x = self.hidden2(x) x = self.hidden3(x) # print('n',x) x = fluid.layers.reshape(x, shape=[-1,3*100*100]) y = self.hidden4(x) return y
def __init__() 方法定义了神经网络每一层的架构架构, def forwaid() 将每一层连接起来
隐藏层
Q
A
100 65
act = “relu”
激活函数(Activation Function)
why激活函数
各类激活函数
relu函数
Forward
x = fluid.layers.reshape(x, shape=[-1,3*100*100])
x = fluid.layers.reshape(x, shape=[-1,3*100*100])
别忘了留下,你的、评论和关注偶~
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算