Skip to content
/ SGCV Public
forked from biaslab/SGCV

Switching Gaussian Controlled Variance

Notifications You must be signed in to change notification settings

mkpappu/SGCV

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

73 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The Switching Hierarchical Gaussian Filter (i.e. Switching Gaussian Controlled Variance)

The purpose of the switching HGF is to track a non-stationary (volatile) signal. The HGF has been used to model behavior within a changing environment, and the SHGF is an extension of this model that considers behavioral outcomes over a set period of time as resulting from dynamics of several systems, rather than a single system. For our purposes, we are interested in the Probabilistic Reversal Learning task and have previously used the HGF to track inferred beliefs of individuals who experience psychosis.

The motivation for extending the HGF model is that we think the reward_tally, or the total number of points at each of 160 trials, might be a signal that submits to regime-switching dynamics.

Getting Started (+Overview) and where did we get these scripts?

We use the scripts and packages from the BIAS Lab.

After cloning this repository to your local machine, open the project in VS Code (or any preferred IDE that can work with Julia code and Jupyter notebooks). You will need to download Julia - any version after 1.3, although the most current version is recommended. After downloading Julia, type julia into the terminal. You will need to install the following packages:

*ProgressMeter *CSV *DataFrames *Plots *SparseArrays *HCubature *FastGaussQuadrature *ForwardDiff *StatsPlots *Distributions *JLD *PGFPlotsX *LaTeXStrings *[email protected]

Do this by typing [ in the terminal, followed by: add ProgressMeter CSV DataFrames Plots SparseArrays HCubature FastGaussQuadrature ForwardDiff StatsPlots Distributions JLD PGFPlotsX LaTeXStrings [email protected]. Note that ForneyLab version must be 0.11.3 which is stable and compatible with Julia v1.3+.

Implementation (and key functions)

To find regime switching, you will use the Jupyter notebook titled validation-part3.ipynb

Inference (how do we know the number of regimes?)

What do results and figures mean?

About

Switching Gaussian Controlled Variance

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 86.7%
  • TeX 9.6%
  • Julia 3.7%