Python 创建多个隐层神经网络

Python 创建多个隐层神经网络,python,machine-learning,neural-network,Python,Machine Learning,Neural Network,我正在从头开始创建一个神经网络(不能够使用任何现有的框架),我想知道它如何能够使构造函数包含可变数量的隐藏层?到目前为止,我已经创建了一个,但是我有点被困在如何将它扩展到多个隐藏层上。(在Python上完成) 编辑: 请发布您的代码。@MihaiAlexandru Ionut添加的构造函数标识已损坏。请先修复。您的问题听起来好像不知道如何将字典/列表传递给函数。 class NeuralNetwork: # Constructor def __init__(self, input

我正在从头开始创建一个神经网络(不能够使用任何现有的框架),我想知道它如何能够使构造函数包含可变数量的隐藏层?到目前为止,我已经创建了一个,但是我有点被困在如何将它扩展到多个隐藏层上。(在Python上完成)

编辑:


请发布您的代码。@MihaiAlexandru Ionut添加的构造函数标识已损坏。请先修复。您的问题听起来好像不知道如何将字典/列表传递给函数。
class NeuralNetwork:
    # Constructor
    def __init__(self, input_len, hidden_units, output_len,
                 act_func = None, loss_func=None,
                 init_weights=np.zeros, output_func=None,
                 random_seed=None):

        if random_seed:
            np.random_seed(random_seed)

        self.loss_func = loss_func
        self.output_func = output_func
        self.L = len(hidden_units) + 2  # change this later
        self.layers = []

        input_layer = Layer(np.identity(input_len),
                            np.zeros(input_len), id_f)
        self.layers.append(input_layer)

        for neurons, func in zip(hidden_units, act_func):
            prev_neurons = self.layers[-1].num_neurons
            weight_mat = init_weights((neurons,prev_neurons))
            biases = init_weights((neurons, ))
            current_layer = Layer(weight_mat, biases, func)
            self.layers.append(current_layer)