|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES All Classes | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectde.jstacs.sequenceScores.statisticalModels.trainable.AbstractTrainableStatisticalModel
de.jstacs.sequenceScores.statisticalModels.trainable.UniformTrainSM
public class UniformTrainSM
This class represents a uniform model. Sometimes it's also called uninformed model. It can be used if nothing is known about a statistical process.
Field Summary |
---|
Fields inherited from class de.jstacs.sequenceScores.statisticalModels.trainable.AbstractTrainableStatisticalModel |
---|
alphabets, length |
Constructor Summary | |
---|---|
UniformTrainSM(AlphabetContainer alphabet)
Creates a new UniformTrainSM using a given AlphabetContainer . |
|
UniformTrainSM(StringBuffer stringBuff)
The standard constructor for the interface Storable . |
Method Summary | |
---|---|
UniformTrainSM |
clone()
Follows the conventions of Object 's clone() -method. |
DataSet |
emitDataSet(int n,
int... lengths)
This method returns a DataSet object containing artificial
sequence(s). |
void |
fromXML(StringBuffer representation)
This method should only be used by the constructor that works on a StringBuffer . |
String |
getInstanceName()
Should return a short instance name such as iMM(0), BN(2), ... |
double |
getLogPriorTerm()
Returns a value that is proportional to the log of the prior. |
double |
getLogProbFor(Sequence sequence,
int startpos,
int endpos)
Returns the logarithm of the probability of (a part of) the given sequence given the model. |
byte |
getMaximalMarkovOrder()
This method returns the maximal used Markov order, if possible. |
NumericalResultSet |
getNumericalCharacteristics()
Returns the subset of numerical values that are also returned by SequenceScore.getCharacteristics() . |
boolean |
isInitialized()
Returns true if the model is trained, false otherwise. |
String |
toString()
Returns the String "". |
StringBuffer |
toXML()
This method returns an XML representation as StringBuffer of an
instance of the implementing class. |
void |
train(DataSet data,
double[] weights)
Deprecated. |
Methods inherited from class de.jstacs.sequenceScores.statisticalModels.trainable.AbstractTrainableStatisticalModel |
---|
check, getAlphabetContainer, getCharacteristics, getLength, getLogProbFor, getLogProbFor, getLogScoreFor, getLogScoreFor, getLogScoreFor, getLogScoreFor, getLogScoreFor, train |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public UniformTrainSM(AlphabetContainer alphabet)
UniformTrainSM
using a given AlphabetContainer
.
alphabet
- the alphabets used in the modelpublic UniformTrainSM(StringBuffer stringBuff) throws NonParsableException
Storable
.
Creates a new UniformTrainSM
out of a StringBuffer
.
stringBuff
- the StringBuffer
to be parsed
NonParsableException
- if the StringBuffer
is not parsableMethod Detail |
---|
public UniformTrainSM clone() throws CloneNotSupportedException
AbstractTrainableStatisticalModel
Object
's clone()
-method.
clone
in interface SequenceScore
clone
in interface TrainableStatisticalModel
clone
in class AbstractTrainableStatisticalModel
AbstractTrainableStatisticalModel
(the member-AlphabetContainer
isn't deeply cloned since
it is assumed to be immutable). The type of the returned object
is defined by the class X
directly inherited from
AbstractTrainableStatisticalModel
. Hence X
's
clone()
-method should work as:Object o = (X)super.clone();
o
defined by
X
that are not of simple data-types like
int
, double
, ... have to be deeply
copied return o
CloneNotSupportedException
- if something went wrong while cloningpublic double getLogProbFor(Sequence sequence, int startpos, int endpos) throws IllegalArgumentException, WrongAlphabetException
StatisticalModel
StatisticalModel.getLogProbFor(Sequence, int)
by the fact, that the model could be
e.g. homogeneous and therefore the length of the sequences, whose
probability should be returned, is not fixed. Additionally, the end
position of the part of the given sequence is given and the probability
of the part from position startpos
to endpos
(inclusive) should be returned.
length
and the alphabets
define the type of
data that can be modeled and therefore both has to be checked.
sequence
- the given sequencestartpos
- the start position within the given sequenceendpos
- the last position to be taken into account
IllegalArgumentException
WrongAlphabetException
public boolean isInitialized()
true
if the model is trained, false
otherwise.
true
if the model is trained, false
otherwisepublic void fromXML(StringBuffer representation) throws NonParsableException
AbstractTrainableStatisticalModel
StringBuffer
. It is the counter part of Storable.toXML()
.
fromXML
in class AbstractTrainableStatisticalModel
representation
- the XML representation of the model
NonParsableException
- if the StringBuffer
is not parsable or the
representation is conflictingAbstractTrainableStatisticalModel.AbstractTrainableStatisticalModel(StringBuffer)
public StringBuffer toXML()
Storable
StringBuffer
of an
instance of the implementing class.
public String toString()
toString
in interface TrainableStatisticalModel
toString
in class Object
String
@Deprecated public void train(DataSet data, double[] weights) throws IOException
TrainableStatisticalModel
TrainableStatisticalModel
object given the data as DataSet
using
the specified weights. The weight at position i belongs to the element at
position i. So the array weight
should have the number of
sequences in the sample as dimension. (Optionally it is possible to use
weight == null
if all weights have the value one.)train(data1)
; train(data2)
should be a fully trained model over data2
and not over
data1+data2
. All parameters of the model were given by the
call of the constructor.
data
- the given sequences as DataSet
weights
- the weights of the elements, each weight should be
non-negative
IOException
DataSet.getElementAt(int)
,
DataSet.ElementEnumerator
public DataSet emitDataSet(int n, int... lengths) throws Exception
StatisticalModel
DataSet
object containing artificial
sequence(s).
emitDataSet( int n, int l )
should return a data set with
n
sequences of length l
.
emitDataSet( int n, int[] l )
should return a data set with
n
sequences which have a sequence length corresponding to
the entry in the given array l
.
emitDataSet( int n )
and
emitDataSet( int n, null )
should return a sample with
n
sequences of length of the model (
SequenceScore.getLength()
).
Exception
.
emitDataSet
in interface StatisticalModel
emitDataSet
in class AbstractTrainableStatisticalModel
n
- the number of sequences that should be contained in the
returned samplelengths
- the length of the sequences for a homogeneous model; for an
inhomogeneous model this parameter should be null
or an array of size 0.
DataSet
containing the artificial sequence(s)
Exception
- if the emission did not succeed
NotTrainedException
- if the model is not trained yetDataSet
public double getLogPriorTerm() throws Exception
StatisticalModel
Exception
- if something went wrongpublic byte getMaximalMarkovOrder() throws UnsupportedOperationException
StatisticalModel
getMaximalMarkovOrder
in interface StatisticalModel
getMaximalMarkovOrder
in class AbstractTrainableStatisticalModel
UnsupportedOperationException
- if the model can't give a proper answerpublic NumericalResultSet getNumericalCharacteristics() throws Exception
SequenceScore
SequenceScore.getCharacteristics()
.
Exception
- if some of the characteristics could not be definedpublic String getInstanceName()
SequenceScore
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES All Classes | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |