def get_weight_variance(self, weights):
     """ Get the variance of the weights.
     """
     if get_simulator().is_a_pynn_random(weights):
         return utility_calls.get_variance(weights)
     elif numpy.isscalar(weights):
         return 0.0
     elif hasattr(weights, "__getitem__"):
         return numpy.var(weights)
     raise Exception("Unrecognised weight format")
 def get_weight_variance(self, weights):
     """ Get the variance of the weights.
     """
     if get_simulator().is_a_pynn_random(weights):
         return utility_calls.get_variance(weights)
     elif numpy.isscalar(weights):
         return 0.0
     elif hasattr(weights, "__getitem__"):
         return numpy.var(weights)
     raise Exception("Unrecognised weight format")
 def get_delay_variance(self, delays):
     """ Get the variance of the delays.
     """
     if get_simulator().is_a_pynn_random(delays):
         return utility_calls.get_variance(delays)
     elif numpy.isscalar(delays):
         return 0.0
     elif hasattr(delays, "__getitem__"):
         return numpy.var(delays)
     raise Exception("Unrecognised delay format")
 def get_delay_variance(self, delays):
     """ Get the variance of the delays.
     """
     if get_simulator().is_a_pynn_random(delays):
         return utility_calls.get_variance(delays)
     elif numpy.isscalar(delays):
         return 0.0
     elif hasattr(delays, "__getitem__"):
         return numpy.var(delays)
     raise Exception("Unrecognised delay format")
 def _get_delay_variance(delays, connection_slices):
     """ Get the variance of the delays
     """
     if isinstance(delays, RandomDistribution):
         return utility_calls.get_variance(delays)
     elif numpy.isscalar(delays):
         return 0.0
     elif hasattr(delays, "__getitem__"):
         return numpy.var([
             delays[connection_slice]
             for connection_slice in connection_slices])
     raise Exception("Unrecognised delay format")
 def _get_weight_variance(weights, connection_slices):
     """ Get the variance of the weights
     """
     if isinstance(weights, RandomDistribution):
         return utility_calls.get_variance(weights)
     elif numpy.isscalar(weights):
         return 0.0
     elif hasattr(weights, "__getitem__"):
         return numpy.var([
             numpy.abs(weights[connection_slice])
             for connection_slice in connection_slices])
     raise Exception("Unrecognised weight format")
 def _get_weight_variance(weights, connection_slices):
     """ Get the variance of the weights
     """
     if get_simulator().is_a_pynn_random(weights):
         return utility_calls.get_variance(weights)
     elif numpy.isscalar(weights):
         return 0.0
     elif hasattr(weights, "__getitem__"):
         return numpy.var([
             numpy.abs(weights[connection_slice])
             for connection_slice in connection_slices])
     raise Exception("Unrecognised weight format")
 def _get_delay_variance(delays, connection_slices):
     """ Get the variance of the delays
     """
     if get_simulator().is_a_pynn_random(delays):
         return utility_calls.get_variance(delays)
     elif numpy.isscalar(delays):
         return 0.0
     elif hasattr(delays, "__getitem__"):
         return numpy.var([
             delays[connection_slice]
             for connection_slice in connection_slices])
     raise Exception("Unrecognised delay format")
 def _get_weight_variance(weights, connection_slices):
     """ Get the variance of the weights
     """
     if isinstance(weights, RandomDistribution):
         return utility_calls.get_variance(weights)
     elif numpy.isscalar(weights):
         return 0.0
     elif hasattr(weights, "__getitem__"):
         return numpy.var([
             weights[connection_slice]
             for connection_slice in connection_slices
         ])
     raise Exception("Unrecognised weight format")
Exemple #10
0
    def get_weight_variance(self, weights):
        """ Get the variance of the weights.

        :param weights:
        :type weights: ~numpy.ndarray or ~pyNN.random.NumpyRNG or int or float
            or list(int) or list(float)
        :rtype: float
        """
        if isinstance(weights, RandomDistribution):
            return utility_calls.get_variance(weights)
        elif numpy.isscalar(weights):
            return 0.0
        elif hasattr(weights, "__getitem__"):
            return numpy.var(weights)
        raise Exception("Unrecognised weight format")
    def get_weight_variance(self, weights, synapse_info):
        """ Get the variance of the weights.

        :param weights:
        :type weights: ~numpy.ndarray or ~pyNN.random.NumpyRNG or int or float
            or list(int) or list(float)
        :rtype: float
        """
        if isinstance(weights, RandomDistribution):
            return utility_calls.get_variance(weights)
        elif isinstance(weights, str):
            d = self._get_distances(weights, synapse_info)
            return numpy.var(_expr_context.eval(weights, d=d))
        elif numpy.isscalar(weights):
            return 0.0
        elif hasattr(weights, "__getitem__"):
            return numpy.var(weights)
        raise SpynnakerException("Unrecognised weight format")