fitHMM {STAN} | R Documentation

## Fit a Hidden Markov Model

### Description

The function is used to fit (bidirectional) Hidden Markov Models, given one or more observation sequence.

### Usage

    fitHMM(obs=list(), hmm, convergence=1e-6, maxIters=1000, dirFlags=list(), emissionProbs=list(), effectiveZero=0, verbose=FALSE, nCores=1, incrementalEM=FALSE, updateTransMat=TRUE, sizeFactors=matrix(1, nrow=length(obs), ncol=ncol(obs[[1]])), clustering = FALSE)

### Arguments

`obs` | The observations. A list of one or more entries containing the observation matrix (`numeric`) for the samples (e.g. chromosomes).
`hmm` | The initial Hidden Markov Model. This is a `HMM`.
`convergence` | Convergence cutoff for EM-algorithm (default: 1e-6).
`maxIters` | Maximum number of iterations.
`dirFlags` | The flag sequence is needed when a bdHMM is fitted on undirected data (e.g.) ChIP only. It is a `list` of `character` vectors indication for each position its knwon directionality. U allows all states. F allows undirected states and states in forward direction. R allows undirected states and states in reverse direction.
`emissionProbs` | List of precalculated emission probabilities of emission function is of type 'null'.
`effectiveZero` | Transitions below this cutoff are analytically set to 0 to speed up comptuations.
`verbose` | `logical` for printing algorithm status or not.
`nCores` | Number of cores to use for computations.
`incrementalEM` | When TRUE, the incremental EM is used to fit the model, where parameters are updated after each iteration over a single observation sequence.
`updateTransMat` | Wether transitions should be updated during model learning, default: TRUE.
`sizeFactors` | Library size factors for Emissions PoissonLogNormal or NegativeBinomial as a length(obs) x ncol(obs[[1]]) matrix.
`clustering` | Boolean variable to specify wether it should be fit as an HMM or or bdClustering. Please, use function bdClust when bdClust is prefered.

### Value

A list containing the trace of the log-likelihood during EM learning and the fitted HMM model.

### See Also

`HMM`

### Examples

    data(example)
    hmm_ex = initHMM(observations, nStates=3, method="Gaussian")
    hmm_fitted = fitHMM(observations, hmm_ex)

[Package STAN version 2.20.0 Index]