# Network parameters w_self = 1.0 w_next = -1 w_rest = -3.0 w_diff = g_w_ampa * (w_self - w_next) # Build the network nn = BCPNNPerfect(hypercolumns, minicolumns, g_w_ampa=g_w_ampa, g_w=g_w, g_a=g_a, tau_a=tau_a, sigma=sigma, G=G, tau_z_pre_ampa=tau_z_pre_ampa, tau_z_post_ampa=tau_z_post_ampa, tau_p=tau_p, g_I=g_I, z_transfer=z_transfer, diagonal_zero=False, strict_maximum=strict_maximum, perfect=perfect, k_perfect=k_perfect, always_learning=always_learning) nn.g_beta = 0.0 # Build the manager manager = NetworkManager(nn=nn, dt=dt, values_to_save=values_to_save) w = simple_bcpnn_matrix(minicolumns, w_self, w_next, w_rest) nn.w_ampa = w
values_to_save = ['o', 's', 'i_ampa', 'a'] # Protocol training_time = 0.100 inter_sequence_interval = 0.0 # Recall T_cue = 0.020 T_recall = 1.0 + T_cue n = 1 # Neural Network nn = BCPNNPerfect(hypercolumns, minicolumns, g_w_ampa=g_w_ampa, g_w=g_w, g_a=g_a, tau_a=tau_a, tau_m=tau_m, sigma=sigma, G=G, tau_z_pre_ampa=tau_z_pre_ampa, tau_z_post_ampa=tau_z_post_ampa, tau_p=tau_p, z_transfer=z_transfer, diagonal_zero=diagonal_zero, strict_maximum=strict_maximum, perfect=perfect, k_perfect=k_perfect, always_learning=always_learning, normalized_currents=normalized_currents) # Build the manager manager = NetworkManager(nn=nn, dt=dt, values_to_save=values_to_save) # Protocol matrix = create_orthogonal_canonical_representation(minicolumns, hypercolumns) seq = np.copy(matrix) seq[4] = matrix[2] seq[5:] = matrix[4:-1] nr = build_network_representation(seq, minicolumns, hypercolumns) n_connections = len(seq) - 1 value = 1.0
w_rest_vector_tau_z = np.zeros_like(tau_z_vector) successes = np.zeros_like(tau_z_vector) for index, tau_z_pre_ampa_ in enumerate(tau_z_vector): # Build the network nn = BCPNNPerfect(hypercolumns, minicolumns, g_w_ampa=g_w_ampa, g_w=g_w, g_a=g_a, tau_a=tau_a, tau_m=tau_m, sigma=sigma, G=G, tau_z_pre_ampa=tau_z_pre_ampa_, tau_z_post_ampa=tau_z_pre_ampa_, tau_p=tau_p, z_transfer=z_transfer, diagonal_zero=diagonal_zero, strict_maximum=strict_maximum, perfect=perfect, k_perfect=k_perfect, always_learning=always_learning) # Build the manager manager = NetworkManager(nn=nn, dt=dt, values_to_save=values_to_save) # Build the protocol for training protocol = Protocol() patterns_indexes = [i for i in range(n_patterns)]
values_to_save = ['o', 's', 'z_pre', 'z_post', 'a', 'i_ampa', 'i_nmda'] # Protocol training_time = 0.100 inter_sequence_interval = 0 inter_pulse_interval = 0.0 epochs = 1 # Build the network nn = BCPNNPerfect(hypercolumns, minicolumns, g_w_ampa=g_w_ampa, g_w=g_w, g_a=g_a, tau_a=tau_a, sigma=sigma, G=G, tau_z_pre=tau_z_pre, z_transfer=False, diagonal_zero=False, strict_maximum=True, perfect=True) # Build the manager manager = NetworkManager(nn=nn, dt=dt, values_to_save=values_to_save) nn.z_pre = np.zeros(nn.n_units) # Build the protocol for training protocol = Protocol() patterns_indexes = [i for i in range(n_patterns)] protocol.simple_protocol(patterns_indexes, training_time=training_time,
# Patterns parameters hypercolumns = 1 minicolumns = 10 n_patterns = 10 # Manager properties dt = 0.001 values_to_save = ['o', 's', 'a', 'i_ampa'] nn = BCPNNPerfect(hypercolumns, minicolumns, g_w_ampa=g_w_ampa, g_w=g_w, g_a=g_a, tau_a=tau_a, sigma=sigma, G=G, z_transfer=False, diagonal_zero=False, strict_maximum=strict_maximum, perfect=perfect) # Build the manager manager = NetworkManager(nn=nn, dt=dt, values_to_save=values_to_save) w = simple_bcpnn_matrix(minicolumns, w_self, w_next, w_rest) nn.w_ampa = w # Recall T_recall = 2.2 T_cue = 0.080 sequences = [[i for i in range(n_patterns)]]