예제 #1
0
 def __init__(self,
              name: str,
              observer_system: ObserverSystem,
              strip_observer_name_prefix: str = ''):
     self._strip_observer_name_prefix = strip_observer_name_prefix
     self.name = name
     self._observer_system = observer_system
     self._observables = {}
     observer_system.signals.window_closed.connect(self.on_window_closed)
     self._prop_builder = ObserverPropertiesBuilder(self)
예제 #2
0
 def __init__(self, is_buffer: bool):
     self._real_shape = []
     self._shape = []
     self._items_per_row = 1
     self._min = 0
     self._max = 1
     self._logger = logging.getLogger(
         f"{__name__}.Observer.{type(self).__name__}")
     self._is_buffer = is_buffer
     self._sum_dim = None
     self._prop_builder = ObserverPropertiesBuilder(self)
예제 #3
0
    def __init__(self, node: HierarchicalObservableNode, expert_no: int):
        super().__init__()
        self._node = node
        self._expert_no = expert_no

        self._properties = {}

        self._grouped_projections = None
        self.prop_builder = ObserverPropertiesBuilder()

        # TODO HACK - persisted values are loaded prior to the node unit initialization which determines the number
        # of groups
        # properties not initialized - create dummy properties just to fix persistence
        self._default_properties = {
            i: HierarchicalGroupProperties(i, self)
            for i in range(self._groups_max_count)
        }
예제 #4
0
    def __init__(self, tensor_provider: TensorProvider):
        self._has_temporal_pooler = tensor_provider.has_temporal_pooler()

        self._n_cluster_centers = tensor_provider.n_cluster_centers()
        self._n_sequences = tensor_provider.n_sequences()
        self._sequence_length = tensor_provider.sequence_length()

        self.cluster_centers = ClusterCentersDataBuilder(tensor_provider)
        self.fdsim = FDsimDataBuilder(tensor_provider)
        self.n_dims = 2
        self.pca = PcaDataBuilder(tensor_provider)
        self.spring_lines = SpringLinesBuilder(tensor_provider)
        self.spline_arrows = SplineArrowsBuilder(tensor_provider)
        self._prop_builder = ObserverPropertiesBuilder()
        self._sequences_builder = SequencesBuilder(tensor_provider)
        self._show_cluster_centers = True
        self._show_cluster_datapoints = True
        self._show_spring_lines = self._has_temporal_pooler
        self._show_spline_arrows = self._has_temporal_pooler
        self._projection_type = ClusterObserverProjection.PCA
예제 #5
0
    def __init__(self,
                 name: str = None,
                 inputs: TInputs = None,
                 memory_blocks: TOutputs = None,
                 outputs: TOutputs = None):
        """Initializes the node.

        Inputs, memory_blocks (== internals) and outputs should be initialized here and accessible from now on
        for connecting.
        """
        # TODO (Feat): Auto-name nodes as in BrainSimulator, or remove the default value of parameter 'name'.
        self._name = name
        self.topological_order = -1
        self._id = 0
        self._skip = False

        self.inputs = inputs if inputs is not None else EmptyInputs(self)
        self.memory_blocks = memory_blocks if memory_blocks is not None else EmptyOutputs(
            self)
        self.outputs = outputs if outputs is not None else EmptyOutputs(self)
        self._prop_builder = ObserverPropertiesBuilder(
            self, source_type=ObserverPropertiesItemSourceType.MODEL)
        self._single_step_scoped_cache = SimpleResettableCache()
예제 #6
0
 def __init__(self):
     self._prop_builder = ObserverPropertiesBuilder(self)
     self.tensor_view_projection = TensorViewProjection(is_buffer=False)
예제 #7
0
 def __init__(self, tensor_provider: 'TensorProvider'):
     self._prop_builder = ObserverPropertiesBuilder(self)
     self._tensor_provider = tensor_provider
    def __init__(self, params: GradualLearningBasicTopologyParams = GradualLearningBasicTopologyParams()):
        super().__init__('cuda')
        self._prop_builder = ObserverPropertiesBuilder(self, source_type=ObserverPropertiesItemSourceType.MODEL)

        self._params = params
        self.create_topology()
 def test_resolve_state_edit_strategy_exception(self):
     builder = ObserverPropertiesBuilder(DataIsNotInitializable())
     with raises(IllegalArgumentException,
                 match=r'Expected instance of .*Initializable.* but .*DataIsNotInitializable.* received.'):
         builder._resolve_state_strategy(ObserverPropertiesItemState.ENABLED, enable_on_runtime)
 def test_resolve_state_edit_strategy(self, initializable, state, strategy, exp_state, exp_description):
     builder = ObserverPropertiesBuilder(DataIsInitializable(initializable))
     res_state, res_description = builder._resolve_state_strategy(state, strategy)
     assert exp_state == res_state
     assert exp_description == res_description
 def test_auto_needs_instance_to_be_set(self):
     with raises(IllegalArgumentException, match=r'.*Instance not set.*'):
         builder = ObserverPropertiesBuilder()
         builder.auto("Test", Data.p_int)
 def setup_method(self):
     self.data = Data()
     self.builder = ObserverPropertiesBuilder(self.data)
예제 #13
0
 def __init__(self, params: ExpertParams, unit: 'ExpertFlockUnit'):
     self._unit = unit
     self._params = params
     self._prop_builder = ObserverPropertiesBuilder(self, source_type=ObserverPropertiesItemSourceType.MODEL)
예제 #14
0
 def __init__(self, params: SpatialPoolerParams, flock: SPFlock):
     self._flock = flock
     self._params = params
     self._prop_builder = ObserverPropertiesBuilder(self, source_type=ObserverPropertiesItemSourceType.MODEL)