def test_correlation_pso_vs_derivative(self):
        netPso = self.CLASS(3, 1)
        net = CascadeNet(3, 1)

        candidate = self._get_cascade(net)

        print("Derivative " + str(net._get_candidate_correlations([candidate], DOUBLE_XOR_INPUTS, DOUBLE_XOR_TARGETS)))
        candidate = self._get_cascade(netPso)

        print("PSO " + str(netPso._get_candidate_correlations([candidate], DOUBLE_XOR_INPUTS, DOUBLE_XOR_TARGETS)))
    def test_correlation_pso_vs_derivative(self):
        netPso = self.CLASS(3, 1)
        net = CascadeNet(3, 1)

        candidate = self._get_cascade(net)

        print("Derivative " + str(net._get_candidate_correlations([candidate], DOUBLE_XOR_INPUTS, DOUBLE_XOR_TARGETS)))
        candidate = self._get_cascade(netPso)

        print("PSO " + str(netPso._get_candidate_correlations([candidate], DOUBLE_XOR_INPUTS, DOUBLE_XOR_TARGETS)))
        def cost_func(parameters):
            candidate_activations = []
            for activation in activations:
                candidate_activations.append(self._get_output_node_activation_from_activations(parameters, activation))

            return -sum(CascadeNet._real_correlations(candidate_activations, errors)) \
                    + regularizer_coef*numpy.sum(numpy.abs(candidate_activations))
        def cost_func(parameters):
            candidate_activations = []
            for activation in activations:
                candidate_activations.append(
                    self._get_output_node_activation_from_activations(
                        parameters, activation))

            return -sum(CascadeNet._real_correlations(candidate_activations, errors)) \
                    + regularizer_coef*numpy.sum(numpy.abs(candidate_activations))