class_docstr: Class for event segmentation of continuous fMRI data
  
  Parameters
  ----------
  n_events: int
      Number of segments to learn
  
  step_var: Callable[[int], float] : default 4 * (0.98 ** (step - 1))
      The Gaussian variance to use during fitting, as a function of the
      number of steps. Should decrease slowly over time.
  
  n_iter: int, default: 500
      Maximum number of steps to run during fitting
  
  event_chains: ndarray with length = n_events
      Array with unique value for each separate chain of events, each linked
      in the order they appear in the array
  
  split_merge: bool, default: False
      Determines whether merge/split proposals are used during fitting with
      fit(). This can improve fitting performance when events are highly
      uneven in size, but requires additional time
  
  split_merge_proposals: int, default: 1
      Number of merges and splits to consider at each step. Computation time
      scales as O(proposals^2) so this should usually be a small value
  
  Attributes
  ----------
  p_start, p_end: length n_events+1 ndarray
      initial and final prior distributions over events
  
  P: n_events+1 by n_events+1 ndarray
      HMM transition matrix
  
  ll_ : ndarray with length = number of training datasets
      Log-likelihood for training datasets over the course of training
  
  segments_:  list of (time by event) ndarrays
      Learned (soft) segmentation for training datasets
  
  event_var_ : float
      Gaussian variance at the end of learning
  
  event_pat_ : voxel by event ndarray
      Learned mean patterns for each event
class_docstr_tok: ["Class","for","event","segmentation","of","continuous","fMRI","data","Parameters","--","--","--","--","--","n_events",":","int","Number","of","segments","to","learn","step_var",":","Callable","[","[","int","]",",","float","]",":","default","4","*","(","0.98","*","*","(","step","-","1",")",")","The","Gaussian","variance","to","use","during","fitting",",","as","a","function","of","the","number","of","steps",".","Should","decrease","slowly","over","time",".","n_iter",":","int",",","default",":","500","Maximum","number","of","steps","to","run","during","fitting","event_chains",":","ndarray","with","length","=","n_events","Array","with","unique","value","for","each","separate","chain","of","events",",","each","linked","in","the","order","they","appear","in","the","array","split_merge",":","bool",",","default",":","False","Determines","whether","merge\/split","proposals","are","used","during","fitting","with","fit","(",")",".","This","can","improve","fitting","performance","when","events","are","highly","uneven","in","size",",","but","requires","additional","time","split_merge_proposals",":","int",",","default",":","1","Number","of","merges","and","splits","to","consider","at","each","step",".","Computation","time","scales","as","O","(","proposals^2",")","so","this","should","usually","be","a","small","value","Attributes","--","--","--","--","--","p_start",",","p_end",":","length","n_events+1","ndarray","initial","and","final","prior","distributions","over","events","P",":","n_events+1","by","n_events+1","ndarray","HMM","transition","matrix","ll_",":","ndarray","with","length","=","number","of","training","datasets","Log-likelihood","for","training","datasets","over","the","course","of","training","segments_",":","list","of","(","time","by","event",")","ndarrays","Learned","(","soft",")","segmentation","for","training","datasets","event_var_",":","float","Gaussian","variance","at","the","end","of","learning","event_pat_",":","voxel","by","event","ndarray","Learned","mean","patterns","for","each","event"]
docstr: Returns the prior probability of the HMM
  
  Runs forward-backward without any data, showing the prior distribution
  of the model (for comparison with a posterior).
  
  Parameters
  ----------
  t: int
      Number of timepoints
  
  Returns
  -------
  segments : time by event ndarray
      segments[t,e] = prior probability that timepoint t is in event e
  
  test_ll : float
      Log-likelihood of model (data-independent term)
docstr_tok: ["Returns","the","prior","probability","of","the","HMM","Runs","forward-backward","without","any","data",",","showing","the","prior","distribution","of","the","model","(","for","comparison","with","a","posterior",")",".","Parameters","--","--","--","--","--","t",":","int","Number","of","timepoints","Returns","--","--","--","-","segments",":","time","by","event","ndarray","segments","[","t",",","e","]","=","prior","probability","that","timepoint","t","is","in","event","e","test_ll",":","float","Log-likelihood","of","model","(","data-independent","term",")"]
code: def model_prior(self, t):
      """Returns the prior probability of the HMM
  
      Runs forward-backward without any data, showing the prior distribution
      of the model (for comparison with a posterior).
  
      Parameters
      ----------
      t: int
          Number of timepoints
  
      Returns
      -------
      segments : time by event ndarray
          segments[t,e] = prior probability that timepoint t is in event e
  
      test_ll : float
          Log-likelihood of model (data-independent term)"""
  
      lg, test_ll = self._forward_backward(np.zeros((t, self.n_events)))
      segments = np.exp(lg)
  
      return segments, test_ll
  
imports: import numpy
  from scipy import stats
  import logging
  import copy
  from sklearn.base import BaseEstimator
  from sklearn.utils.validation import check_is_fitted, check_array
  from sklearn.exceptions import NotFittedError
  import itertools
  from .None import _utils
label_desc: Use image node_id 12 for calling the EventSegment obj's underlying member method code with example usage: obj.model_prior(t) and returns: segments,  test_ll