def change_input_dims(self, new_input_dims): Layer.change_input_dims(self, new_input_dims) if new_input_dims < self.kernel_size: self.kernel_size = new_input_dims self.__create_kernel() Layer.change_output_dims(self, self.input_dims - self.kernel_size + 1) self.create_weight_matrix_from_kernel()
def change_output_dims(self, new_output_dims): new_kernel_size = new_output_dims - self.input_dims - 1 if new_kernel_size <= 0: self.kernel_size = 1 self.change_input_dims(new_output_dims) return self.kernel_size = new_kernel_size self.__create_kernel() Layer.change_output_dims(self, self.input_dims - self.kernel_size + 1) self.create_weight_matrix_from_kernel()
def change_output_dims(self, new_output_dims): Layer.change_output_dims(self, new_output_dims) self.bias_vector = np.random.rand(self.output_dims) * 2 - 1 self.__init_weight_matrix()