コード例 #1
0
def generate_and_validate_sequence(node: RandomNumberNode) -> bool:
    results = []
    for i in range(STEPS):
        node.step()
        output_id = RandomNumberNodeAccessor.get_output_id(node)
        results.append(output_id)

    for i in range(STEPS):
        if results[i] != SEQUENCE[i]:
            return False

    return True
コード例 #2
0
def test_rnd_node_accessor_return_type(device):

    lower_bound = 50
    upper_bound = 100

    node = RandomNumberNode(lower_bound=lower_bound, upper_bound=upper_bound)
    node.allocate_memory_blocks(AllocatingCreator(device=device))
    node._step()

    random_number = RandomNumberNodeAccessor.get_output_id(node)

    assert type(random_number) is int
    assert lower_bound <= random_number < upper_bound
コード例 #3
0
 def get_baseline_output_id_for(self, layer_id: int) -> int:
     return RandomNumberNodeAccessor.get_output_id(
         self._baselines[layer_id])
コード例 #4
0
 def get_random_baseline_output_id_for_labels(self) -> int:
     """Returns index of 1 in the one-hot vector generated by the baseline which predicts the class labels."""
     return RandomNumberNodeAccessor.get_output_id(
         self._random_label_baseline)
コード例 #5
0
 def clone_random_baseline_output_tensor_for_labels(self) -> torch.Tensor:
     return RandomNumberNodeAccessor.get_output_tensor(
         self._random_label_baseline).clone()
コード例 #6
0
 def get_output_id(self):
     return RandomNumberNodeAccessor.get_output_id(self._node)
コード例 #7
0
 def get_baseline_output_id(self) -> int:
     return RandomNumberNodeAccessor.get_output_id(self._baseline)