I
- input symbol typepublic class BlueFringeMDLDFA<I> extends BlueFringeRPNIDFA<I>
BlueFringeRPNIDFA
algorithm. However, whereas the basic RPNI approach merges
the very first pair of nodes that resemble a valid merge, the MDL variant computes an additional score and only
commits to a merge, if the resulting hypothesis will yield a better score.
This passive approach to state-merging works better in scenarios where only positive training data is available. Hence, this algorithm only expect positive training data.
PassiveLearningAlgorithm.PassiveAcceptorLearner<M extends net.automatalib.automata.fsa.FiniteStateAcceptor<?,I>,I>, PassiveLearningAlgorithm.PassiveDFALearner<I>, PassiveLearningAlgorithm.PassiveMealyLearner<I,O>, PassiveLearningAlgorithm.PassiveNFALearner<I>
negative, positive
alphabet, alphabetSize, deterministic, order, parallel
Constructor and Description |
---|
BlueFringeMDLDFA(net.automatalib.words.Alphabet<I> alphabet)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
void |
addSamples(Collection<? extends DefaultQuery<I,Boolean>> samples) |
protected boolean |
decideOnValidMerge(RedBlueMerge<Boolean,Void,BlueFringePTAState<Boolean,Void>> merge)
Implementing the method allows subclasses to decide (and possible reject) valid merges.
|
initializePTA, ptaToModel
computeModel, setDeterministic, setParallel, tryMerge
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
addNegativeSample, addNegativeSamples, addNegativeSamples, addPositiveSample, addPositiveSamples, addPositiveSamples
addSample, addSample, addSamples, addSamples, addSamples, computeModel
public BlueFringeMDLDFA(net.automatalib.words.Alphabet<I> alphabet)
alphabet
- the alphabetpublic void addSamples(Collection<? extends DefaultQuery<I,Boolean>> samples)
addSamples
in interface PassiveLearningAlgorithm<net.automatalib.automata.fsa.DFA<?,I>,I,Boolean>
addSamples
in class BlueFringeRPNIDFA<I>
protected boolean decideOnValidMerge(RedBlueMerge<Boolean,Void,BlueFringePTAState<Boolean,Void>> merge)
AbstractBlueFringeRPNI
decideOnValidMerge
in class AbstractBlueFringeRPNI<I,Boolean,Boolean,Void,net.automatalib.automata.fsa.DFA<?,I>>
merge
- the prosed (valid) mergetrue
if the suggested merge should be performed, false
otherwiseCopyright © 2018. All rights reserved.