You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I think we need something different to represent signal events, especially signal spikes like neural firing, heart beats, etc. The reason I don't like SampleTriggerMessage is because it has a pair of floats that are optional, and it has a value payload that can be anything (incl. None), thus it is difficult / slow to convert many instances of this struct to e.g. a sparse array.
I haven't put too much thought into it, but I'm thinking something like the following:
When a graph has a source that generates events like this, the next step might be a node to accumulate a bunch of events in a given window and convert it to a sparse matrix (e.g., scipy.sparse.csr) with a given sampling rate. Then, assuming we have nodes compatible with sparse matrices, we can convolve with some kernel to get event rate.
As support for event processing develops, I think there will be some mix of making ezmsg-sigproc nodes compatible with sparse matrices, and making custom nodes.
I guess my first question for the team is where do we want to define EventMessage? Here? ezmsg-sigproc? Or a new package called ezmsg-event that will contain other utilities for dealing with events and sparse matrices?
My only objection to putting the message structure in ezmsg-event is that data source modules that can provide events (e.g., ezmsg-blackrock) shouldn't have scipy as a transient dependency.
The text was updated successfully, but these errors were encountered:
Currently ezmsg-sigproc has
SampleTriggerMessage
.I think we need something different to represent signal events, especially signal spikes like neural firing, heart beats, etc. The reason I don't like
SampleTriggerMessage
is because it has a pair of floats that are optional, and it has avalue
payload that can be anything (incl. None), thus it is difficult / slow to convert many instances of this struct to e.g. a sparse array.I haven't put too much thought into it, but I'm thinking something like the following:
When a graph has a source that generates events like this, the next step might be a node to accumulate a bunch of events in a given window and convert it to a sparse matrix (e.g., scipy.sparse.csr) with a given sampling rate. Then, assuming we have nodes compatible with sparse matrices, we can convolve with some kernel to get event rate.
As support for event processing develops, I think there will be some mix of making ezmsg-sigproc nodes compatible with sparse matrices, and making custom nodes.
I guess my first question for the team is where do we want to define
EventMessage
? Here? ezmsg-sigproc? Or a new package calledezmsg-event
that will contain other utilities for dealing with events and sparse matrices?My only objection to putting the message structure in
ezmsg-event
is that data source modules that can provide events (e.g., ezmsg-blackrock) shouldn't have scipy as a transient dependency.The text was updated successfully, but these errors were encountered: