Coder Social home page Coder Social logo

dyncon_vismot's People

Contributors

schoffelen avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Forkers

matsvanes

dyncon_vismot's Issues

implement efficient multi-to-multi coherence computation with stratification

I am not altogether too happy with the somewhat narrow focus on the ROIs for now:

  • it may miss relevant structure in the data by an unlucky choice of dipole
  • it may over value potential effects given the ROIs used.

Also, we identified that the computation as of yet is not fully optimal since it uses a condition specific spatial filter (only the orientation of the dipoles is constrained by a first pass through the coherence computation function, using all conditions).

To do:
-write a function that takes in the data for >1 conditions, so that 'common filters' can be computed, while outputting single condition coherences
-include the possibility to do stratification, at least equating the number of trials, possibly also balancing the histograms of dipole specific power.
-optimize a bit for speed so that faster turnarounds can be achieved when adjusting parameters (frequency, N, nrand)

compute 'mim' (multiple interaction measure)

@matsvanes to give you an update, and a handle on stuff to work on.
I have implemented (and computed) the mim, which is the equivalent of canonical correlation, but then applied to the imaginary (out-of-phase) part of the coherency, as suggested by Ewald and Nolte. The code has been pushed to the repository vismot_mim_*

The scripts are pretty self explanatory: vismot_mim_postprocess contain some code to do basic statistics on aggregated parcel matrices, which, when averaging across frequency bins for given frequency bands, and when not correcting for multiple comparisons, gives significant results.

Perhaps you could take it from here, and verify my findings

investigate the effect of spatial whitening for power and coherence computation

in the discussion of the effect of subspace projections/regularization/prewhitening I realised that the current dataset has empty room recordings, which may serve perfectly well as 'noise' estimates.

I want to implement optional prewhitening in the existing scripts/functions. This shouldn't be too hard, if things are more or less well organised.

Yet, in working on this, I encountered the not fully finished implementation of vismot_spectral (as compared to vismot_prepost_spectral), where the latter function explicitly handles different numbers of trials (and samples within trials, as a proxy for RT).

I have now built this selection also in vismot_spectral + added the possibility for 'toi' to be 'prepost'.

Also, there is an option prewhiten in place, which uses the emptyroom data (which I have processed using vismot_emptyroom_script)

clean up the code for Granger computation

In order to be able to do a meaningful and somewhat computationally constrained GC computation the code that is currently in place needs to be cleaned up a bit, in order to use:

  • the new vismot_spectral functionality
  • parcel-based GC computation, with the possibility to constrain the labels
  • optional spatial prewhitening of the data before source reconstruction etc.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.