Source code for ecopann.nodeframe

# -*- coding: utf-8 -*-

[docs]def decreasingNode(node_in=1970, node_out=5, hidden_layer=3, get_allNode=True): """A network structure that the number of neurons in each hidden layer is decreased proportionally. Parameters ---------- node_in : int The number of nodes in the input layer. node_out : int The number of nodes in the output layer. hidden_layer : int The number of the hidden layers. get_allNode : bool If True, return the number of all nodes, otherwise, only return the number of nodes of hidden layers. Default: True Returns ------- list A list that contains the number of nodes in each layer. """ decreasing_factor = (node_in*1.0/node_out)**( 1.0/(hidden_layer+1) ) nodes = [] for i in range(hidden_layer): nodes.append(int(round(node_in/decreasing_factor**(i+1)))) nodes = tuple(nodes) if get_allNode: nodes = tuple([node_in])+nodes+tuple([node_out]) return list(nodes)