Replies: 9 comments 11 replies
-
Probably want to remove |
Beta Was this translation helpful? Give feedback.
-
PV is FF, SST is FBCardin18 does not state this key point, but it is pretty clear from El-BoustaniSur14:
This fits very well with the behavior of the current FFFB code in axon, where FF is fast and based on Ge, while FB is slow and based on Act:
|
Beta Was this translation helpful? Give feedback.
-
Converging on good params.. that largely match OG values..It is remarkable that despite using a purely spike-based computation with very different equations for computing the inhibition, and after flailing around in parameter space for a couple of days with almost everything I tried really not working very well at all, I ended up converging on parameters that actually work on ra25 and objrec (still a bit more to go there on objrec), which end up producing values that closely match the inhibition computed by the original Gi values from FFFB (OGi in the figures)! This is the cycle-by-cycle plot of the new spiking inhibitory conductance (SGi) and the OGi for the Layer 1, which gets bottom-up and top-down: Layer 2, which gets from Layer 1 and projects back to it: The lessons I take from this are:
|
Beta Was this translation helpful? Give feedback.
-
Parameter updates for new FS-FFFB
|
Beta Was this translation helpful? Give feedback.
-
Differential contributions of FF (PV) and SS to Vm (soma) vs. VmDend -- not usefulJust tested this idea in ra25 and it doesn't work at all even with small deviations in soma vs dend. Also, neurons are reasonably strongly electrically coupled across dendrite and soma levels involved, so even though there may be temporary differences, they are likely to homogenize over time. Here's the impl in case want to come back to it: 361d659 It is more likely important that SST+ population can be selectively targeted by VIP cells, and perhaps this has a transient effect on toggling NMDA maintenance in dendrites, but this is something we need to capture separately rather than baking this into the core Vm updates. |
Beta Was this translation helpful? Give feedback.
-
NMDA gets stronger over course of learning, needs some kind of negative feedbackAs the weights get stronger and more specifically tuned, the VmDend and NMDA gets stronger. This also leads to a positive feedback loop because the NMDA builds slowly over the theta cycle and tends to drive a positive delta (later more active than earlier) if not otherwise checked. In prior FFFB, NMDA was included in Ge and thus it auto-compensated. The most logical mechanism is the SST directly affecting VmDend as FB activity gets stronger -- but unlike the prior attempt above, the idea here would be to only add a tiny bit of extra SS inhib to VmDend, with a threshold.. |
Beta Was this translation helpful? Give feedback.
-
Oh this is great! If I understand correctly, this fixes the problem where
weights are unlearned in ra25?
I'm not sure what these parameters do exactly. Could you give a quick
explanation of why the unlearning was happening and why this change fixes
it?
Andrew
…On Tue, Nov 29, 2022 at 10:13 PM rcoreilly ***@***.***> wrote:
With zero-sum (SubMean = 1) on the DWts (Prjn.Learn.Trace.SubMean = 1)
there is now no further deterioration -- instead it continues to learn
slowly over time, as shown in the figure:
[image: fig_v1 6 10_500epc_sm1_ssgidend3_vs_prvbest]
<https://user-images.githubusercontent.com/9605819/204720221-07c05422-b288-473c-a73e-f8718a21ba69.png>
This is comparing against previous best runs, with 861 in black being with
the old FFFB inhibition, showing some deterioration back then as well, and
1061 was without the SSGi or any form of zero-sum SubMean. The final
performance is about .075 PctErr for the latest best model (1140) with SSGi
= 3 and SubMean = 1 throughout, vs about .1 best case for the others, so
this does actually represent roughly a 25% reduction in error in the end.
Interestingly, starting out with SubMean = 0 and then turning it to 1 as
early as epoch = 10 results in faster initial learning but significantly
*worse* final performance -- the initial "corruption" of the weights
happens quickly and has lasting effects:
[image: fig_v1 6 11_500epc_sm1_ssgidend3_vs_sm1_at_epc10]
<https://user-images.githubusercontent.com/9605819/204721329-d17715e4-4067-4183-b299-71c3ca10baf3.png>
—
Reply to this email directly, view it on GitHub
<#64 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AC6ND3CK27OCG6VXIPTJV5LWK3WADANCNFSM6AAAAAARDAHVSU>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
There is now a pretty solid consensus about the differences between three major classes of inhibitory interneurons, and their functional properties, e.g., Cardin18.
PV: fast-spiking basket cells that target the cell bodies of excitatory neurons and coexpress the calcium-binding protein parvalbumin (PV). These are the "first responders", and are also rapidly depressing -- they provide quick control of activity, responding to FF new input and FB drive, allowing the first spiking pyramidal neurons to quickly shut off other competitors.
SST: low-threshold spiking cells that target the distal dendrites of excitatory neurons and coexpress the peptide somatostatin (SST). These require repetitive, facilitating, afferent input to be activated, and may regulate the dendritic integration of synaptic inputs over a longer timescale. The current dependence of FB inhib on the slower integrated Act variable, which only comes on after the first spike (in order to compute the ISI), may reflect the SST dynamics.
VIP: sparse dendrite-targeting cells that synapse onto SST interneurons and the dendrites of pyramidal neurons, and coexpress vasoactive intestinal peptide (VIP). VIP interneurons are a subset of the larger 5HT3aR-expressing interneuron class. These can provide disinhibition of SST inhibition.
So the current FFFB inhibition dynamics capture some of these dynamics, but it would be good to revisit this space again and explore more explicit implementation of these PV / SST dynamics. Using
Act
is not a good idea -- that is really just for display purposes. Much better to use spiking directly.Beta Was this translation helpful? Give feedback.
All reactions