class HiddenMarkov extends Classifier
The HiddenMarkov
classes provides Hidden Markov Models (HMM). An HMM model
consists of a probability vector 'pi' and probability matrices 'a' and 'b'.
The discrete-time system is characterized by a hidden 'state(t)' and an
'observed(t)' symbol at time 't'.
pi(j) = P(state(t) = j) a(i, j) = P(state(t+1) = j | state(t) = i) b(i, k) = P(observed(t) = k | state(t) = i)
model (pi, a, b)
- See also
www.cs.sjsu.edu/faculty/stamp/RUA/HMM.pdf
- Alphabetic
- By Inheritance
- HiddenMarkov
- Classifier
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
HiddenMarkov(ob: VectorI, m: Int, n: Int, pi: VectorD = null, a: MatrixD = null, b: MatrixD = null)
- ob
the observation vector
- m
the number of observation symbols
- n
the number of (hidden) states in the model
- pi
the probabilty vector for the initial state
- a
the state transition probability matrix (n-by-n)
- b
the observation probability matrix (n-by-m)
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
alp_pass(): MatrixD
The alpha-pass: a forward pass from time 't = 0' to 'tt-1' that computes alpha 'alp'.
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
bet_pass(): MatrixD
The beta-pass: a backward pass from time 't = tt-1' to 0 that computes beta 'bet'.
-
def
classify(z: VectoD): (Int, String, Double)
Given a new continuous data vector z, determine which class it belongs to, returning the best class, its name and its relative probability.
Given a new continuous data vector z, determine which class it belongs to, returning the best class, its name and its relative probability.
- z
the vector to classify
- Definition Classes
- HiddenMarkov → Classifier
-
def
classify(z: VectoI): (Int, String, Double)
Given a new discrete data vector z, determine which class it belongs to, returning the best class, its name and its relative probability.
Given a new discrete data vector z, determine which class it belongs to, returning the best class, its name and its relative probability.
- z
the vector to classify
- Definition Classes
- HiddenMarkov → Classifier
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
crossValidate(nx: Int = 10): Double
Test the accuracy of the classified results by cross-validation, returning the accuracy.
Test the accuracy of the classified results by cross-validation, returning the accuracy. The "test data" starts at 'testStart' and ends at 'testEnd', the rest of the data is "training data'.
- nx
the number of crosses and cross-validations (defaults to 5x).
- Definition Classes
- Classifier
-
def
crossValidateRand(nx: Int = 10): Double
Test the accuracy of the classified results by cross-validation, returning the accuracy.
Test the accuracy of the classified results by cross-validation, returning the accuracy. This version of cross-validation relies on "subtracting" frequencies from the previously stored global data to achieve efficiency.
- nx
number of crosses and cross-validations (defaults to 10x).
- Definition Classes
- Classifier
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
gam_pass(alp: MatrixD, bet: MatrixD): Unit
The gamma-pass: a forward pass from time 't = 0' to 'tt-2' that computes gamma 'gam'.
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
logProb(): Double
Compute the log of the probability of the observation vector 'ob' given the model 'pi, 'a' and 'b'.
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
def
reestimate(): Unit
Re-estimate the probability vector 'pi' and the probability matrices 'a' and 'b'.
-
def
reset(): Unit
Reset global variables.
Reset global variables. So far, not needed.
- Definition Classes
- HiddenMarkov → Classifier
-
def
size: Int
Return the size of the (hidden) state space.
Return the size of the (hidden) state space.
- Definition Classes
- HiddenMarkov → Classifier
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
test(testStart: Int, testEnd: Int): Double
Test the quality of the training with a test-set and return the fraction of correct classifications.
Test the quality of the training with a test-set and return the fraction of correct classifications.
- testStart
the beginning of test region (inclusive).
- testEnd
the end of test region (exclusive).
- Definition Classes
- HiddenMarkov → Classifier
-
def
test(itest: VectorI): Double
Test the quality of the training with a test-set and return the fraction of correct classifications.
Test the quality of the training with a test-set and return the fraction of correct classifications.
- itest
the indices of the instances considered test data
- Definition Classes
- Classifier
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
def
train(testStart: Int, testEnd: Int): Unit
Train the Hidden Markov Model using the observation vector 'ob' to determine the model 'pi, 'a' and 'b'.
Train the Hidden Markov Model using the observation vector 'ob' to determine the model 'pi, 'a' and 'b'.
- testStart
the beginning of test region (inclusive).
- testEnd
the end of test region (exclusive).
- Definition Classes
- HiddenMarkov → Classifier
-
def
train(): Unit
Given a set of data vectors and their classifications, build a classifier.
Given a set of data vectors and their classifications, build a classifier.
- Definition Classes
- Classifier
-
def
train(itest: IndexedSeq[Int]): Unit
Given a set of data vectors and their classifications, build a classifier.
Given a set of data vectors and their classifications, build a classifier.
- itest
the indices of the instances considered as testing data
- Definition Classes
- Classifier
-
def
train2(testStart: Int, testEnd: Int): (VectorD, MatrixD, MatrixD)
Train the Hidden Markov Model using the observation vector 'ob' to determine the model 'pi, 'a' and 'b' and return the model.
Train the Hidden Markov Model using the observation vector 'ob' to determine the model 'pi, 'a' and 'b' and return the model.
- testStart
the beginning of test region (inclusive).
- testEnd
the end of test region (exclusive).
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )