Ну видимо Layer() что-то возвращает, а frist_layer принимает то что вернулось от Layer() как аргумент для конструктора хз Больше б кода
Все что там было
могу часть условия скинуть: Базовый класс Layer имеет локальный атрибут next_layer, который ссылается на следующий объект слоя нейронной сети (объект класса Layer или любого объекта дочерних классов). У последнего слоя значение next_layer = None. Создавать последовательность слоев предполагается командами: first_layer = Layer() next_layer = first_layer(Layer()) next_layer = next_layer(Layer()) ... То есть, сначала создается объект first_layer класса Layer, а затем он вызывается как функция для образования связки со следующим слоем. При этом возвращается ссылка на следующий слой и переменная next_layer ссылается уже на этот следующий слой нейронной сети. И так можно создавать столько слоев, сколько необходимо.
магический метод __call__
Ну конечно, какой же я тупой
Обсуждают сегодня