-
Notifications
You must be signed in to change notification settings - Fork 220
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add monitor to estimate rates of each neuron in group #1368
Comments
This would indeed be a nice feature. If anyone wants to work on this, please let us know – I think this is a great issue for external contributors, since it does not touch on anything related to code-generation (which is code that is quite hard to read).
|
Hello! I am interested in working on this since I submitted the comment on the forum about it. I'm a graduate student not a software developer but am keen to try and learn. Let me know how I can get involved. My email is [email protected]. |
Hi @MunozatABI Apologies for the very late reply! It would be great if you could work on it. The first step would be to fork the repository and start working on it in the way I outlined earlier. As soon as you have something that is worth discussing (can be quite an early state), you can open a pull request. I'd prefer to have discussions here (or in the new pull request) instead over email. Please let us know if things about the general development process, the code itself, or anything related to the issue are unclear, or if you run into any unexpected issues. |
Thanks @mstimberg. I forked the repository and found the SpikeMonitor and PopulationRateMonitor modules. I was just wondering what is a good way of testing it? I saw the test folder and test_monitor.py file but it does not run. Apologies if I am missing something obvious in this process. |
Hi. You should be able to run |
Hi @MunozatABI , sorry for the late reply, I somehow overlooked your comment. From the stack trace, it seems that you are running tests in Brian's checked out repo ( |
Hi @MunozatABI. Just as a follow-up: would you still be interested in working on this? |
Hello, yes I would be interested in giving it a go but also don’t mind if there is someone else who can do it faster/better as I’m also currently writing my thesis. Was there a date you wanted it done by? |
There's no rush and there is no specific date. I was just curious since this is one of the few open issues that could be very useful for users which can be implemented by someone outside the "core" developer team. Either way, if you or anyone else starts to work on this, please let us know here in this issue. |
Hi, I can run the
What do these do?
Anyways, that's where I'm at! I may be out of my depth here. |
Hi @MunozatABI, here a few comments/suggestions:
This is because
This is happening in generated code (Python, Cython, or C++ code). The code generation machinery is quite complex, but you do not need to worry about it here.
Yes, we'd like to have a new
See my comment above, we don't need an My initially suggested approach was mostly a "note to self" (or a note to someone that knows Brian internals well). Let me suggest a more step-wise approach:
then
and
i.e. the firing rate for each neuron in each of the time bins. If you get that far (or at any earlier time when you need specific feedback on your code), please open a draft pull request with the changes. |
Thanks for the step by step. How do I test my binned function? I added a function to
The test function does work if I do the Also, in regards to your 3rd step:
Does the bin_size have to be a multiple of |
Hi @MunozatABI
the error indicates that it is running things in an installed version of Brian, which does not have the changes you applied. If you installed
Yes and yes :) Checking whether a certain window is a multiple of |
Hi @MunozatABI just a ping to see whether you are still interested in working on this and to see whether you encountered any issues you need help with? |
So sorry! Been a bit busy with writing my thesis and getting COVID... Think I'm a bit over committed right now so this isn't a priority at the moment but I'll have more time next year after I submit? Totally happy for someone else to take this on if I am being more of a hinderance than a help. |
No worries, @MunozatABI. If someone else wants to pick this up, please let me know. If not, happy to work with you on this task when you have more available time. |
@lysea-haggie It's a bit of a shot in the dark, but please let me know if you are still interested in working on this and have the bandwidth for it. |
Hello! I do have some bandwidth these days now that I've submitted my
thesis. I'll have a look over the next few days =)
…On Thu, Nov 30, 2023 at 2:12 AM Marcel Stimberg ***@***.***> wrote:
@lysea-haggie <https://github.com/lysea-haggie> It's a bit of a shot in
the dark, but please let me know if you are still interested in working on
this and have the bandwidth for it.
—
Reply to this email directly, view it on GitHub
<#1368 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AMK6HOGC3XLYFO6T67SF5ALYG4YCLAVCNFSM5HMNFMYKU5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TCOBTGE4DOMJUGE2Q>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
It's often useful to estimate a smoothed estimate of firing rate for each neuron in a group.
However, the current options are:
PopulationRateMonitor
which has asmooth_rate()
method, but averages across the populationSpikeMonitor
which can return an array ofspike_trains()
one for each neuron in a group, but doesn't have a built-insmooth_rate()
methodit would be great to extend
SpikeMonitor
to be able to callsmooth_rate()
for each neuron.as a bonus, it would be nice for an option of returning a vector of spike counts binned at a certain interval (this could be thought of as
smooth_rate(window='flat', width=dt, stride=dt)
but may also be clearer as it's own function)The text was updated successfully, but these errors were encountered: