您当前的位置: 首页 >  网络

段智华

暂无认证

  • 0浏览

    0关注

    1232博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

第一节课(系列六):从零起步编码实现多层次神经网络

段智华 发布时间:2019-03-09 07:05:28 ,浏览量:0

 

    接下来创建输出层Output layer。

    将之前创建Node节点的代码复制过来进行修改,作为输出层,给神经元节点命名的时候命名为Output,输出层的节点是结果,显然不是Bias,因此设置输出层的node的_is_bias_unit为False值。

    这样我们初步创建了神经元网络节点。 以下是本节已经编写的创建神经元网络节点的代码版本(NetworkStructure.py(v1)),代码中创建了输入层的Bias节点、隐藏层所有的Bias节点、隐藏层的所有神经元节点、输出层的节点,但这里还没有创建输入层的节点,后续我们将进行迭代完善,加上这部分代码。

 Create_AI_Framework_In5Classes(Class1)版本的NetworkStructure.py(v1):

 # -*- coding: utf-8 -*-#导入要使用的Node类from entity.Node import Node class NetworkStructure:        #创建整个神经网络的所有节点    def create_nodes(num_of_features, hidden_layers):        nodes = []                nodeIndex = 0 #Neuron的ID                #Input layer                #Bias Unit                node = Node()                node.set_index(nodeIndex)        node.set_label("+1")        node.set_is_bias_unit(True)        nodes.append(node)        nodeIndex = nodeIndex + 1                print(node.get_label(), "\t", end = '')                      print("")                #Hidden layer        for i in range(len(hidden_layers)):            print("Hidden layer creation: ", end = ' ')                        #Bias Unit                    node = Node()                        node.set_index(nodeIndex)                        node.set_label("+1")            node.set_is_bias_unit(True)            nodes.append(node)            nodeIndex = nodeIndex + 1                        print(node.get_label(), "\t", end = '')                        #创建该layer的Neurons            for j in range(hidden_layers[i]):                #创建该layer内部的Neuron                node = Node()                 node.set_index(nodeIndex)                node.set_label("+1")                node.set_is_bias_unit(False)                nodes.append(node)                nodeIndex = nodeIndex + 1                                print(node.get_label(), "\t", end = '')                            print("")                #Output layer        node = Node()                 node.set_index(nodeIndex)        node.set_label("Output")        node.set_is_bias_unit(False)        nodes.append(node)        nodeIndex = nodeIndex + 1        print("Output layer: ", node.get_label())                return nodes

关注
打赏
1659361485
查看更多评论
立即登录/注册

微信扫码登录

0.0983s