class BayesClfML extends Classifier
The BayesClfML
class implements an Integer-Based Naive Bayes Multi-Label Classifier,
which is a commonly used such classifier for discrete input data. The
classifier is trained using a data matrix 'x' and a classification matrix 'y'.
Each data vector in the matrix is classified into one of 'k' classes numbered
0, ..., k-1. Prior probabilities are calculated based on the population of
each class in the training-set. Relative posterior probabilities are computed
by multiplying these by values computed using conditional probabilities. The
classifier is naive, because it assumes feature independence and therefore
simply multiplies the conditional probabilities.
- See also
www.aia-i.com/ijai/sample/vol3/no2/173-188.pdf -----------------------------------------------------------------------------
- Alphabetic
- By Inheritance
- BayesClfML
- Classifier
- Model
- Error
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new BayesClfML(bayesBuilder: (Int) => BayesClassifier, nLabels: Int, nFeatures: Int)
- bayesBuilder
the function mapping an integer to a regular Bayes classifier
- nLabels
the number of labels/class variables
- nFeatures
the number of feature variables
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
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def buildModel(testStart: Int, testEnd: Int): (Array[Boolean], DAG)
Build a model.
Build a model.
- testStart
starting index of test region (inclusive) used in cross-validation
- testEnd
ending index of test region (exclusive) used in cross-validation
- def classify(z: VectoD): (Int, String, Double)
Given a new continuous data vector 'z', determine which class it fits into, returning the best class, its name and its relative probability.
Given a new continuous data vector 'z', determine which class it fits into, returning the best class, its name and its relative probability.
- z
the real vector to classify
- Definition Classes
- BayesClfML → Classifier
- def classify(z: VectoI): (Int, String, Double)
Given a discrete data vector 'z', classify it returning the class number (0, ..., k-1) with the highest relative posterior probability, returning the class, its name and its relative probability.
Given a discrete data vector 'z', classify it returning the class number (0, ..., k-1) with the highest relative posterior probability, returning the class, its name and its relative probability.
- z
the data vector to classify
- Definition Classes
- BayesClfML → Classifier
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- def crossValidate(nx: Int = 10, show: Boolean = false): Array[Statistic]
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 10x).
- show
the show flag (show result from each iteration)
- Definition Classes
- BayesClfML → Classifier
- def crossValidateRand(nx: Int = 10, show: Boolean = false): Array[Statistic]
Test the accuracy of the classified results by cross-validation, returning the Quality of Fit (QoF) measures such as accuracy.
Test the accuracy of the classified results by cross-validation, returning the Quality of Fit (QoF) measures such as accuracy. This method randomizes the instances/rows selected for the test dataset.
- nx
number of crosses and cross-validations (defaults to 10x).
- show
the show flag (show result from each iteration)
- Definition Classes
- BayesClfML → Classifier
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def eval(xx: MatriD, yy: VectoD): BayesClfML
Evaluate the model's Quality of Fit (QoF) as well as the importance of its parameters (e.g., if 0 is in a parameter's confidence interval, it is a candidate for removal from the model).
Evaluate the model's Quality of Fit (QoF) as well as the importance of its parameters (e.g., if 0 is in a parameter's confidence interval, it is a candidate for removal from the model). Extending traits and classess should implement various diagnostics for the test and full (training + test) datasets.
- Definition Classes
- BayesClfML → Model
- final def flaw(method: String, message: String): Unit
- Definition Classes
- Error
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hparameter: HyperParameter
Return the model hyper-parameters (if none, return null).
Return the model hyper-parameters (if none, return null). Hyper-parameters may be used to regularize parameters or tune the optimizer.
- Definition Classes
- BayesClfML → Model
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- val modelConcept: URI
An optional reference to an ontological concept
An optional reference to an ontological concept
- Definition Classes
- Model
- def modelName: String
An optional name for the model (or modeling technique)
An optional name for the model (or modeling technique)
- Definition Classes
- Model
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def parameter: VectoD
Return the vector of model parameter/coefficient values.
Return the vector of model parameter/coefficient values.
- Definition Classes
- BayesClfML → Model
- def report: String
Return a basic report on the trained model.
Return a basic report on the trained model.
- Definition Classes
- BayesClfML → Model
- See also
'summary' method for more details
- def reset(): Unit
Reset or re-initialize all the population and probability vectors and hypermatrices to 0.
Reset or re-initialize all the population and probability vectors and hypermatrices to 0.
- Definition Classes
- BayesClfML → Classifier
- def setStream(str: Int = 0): Unit
Set the random number 'stream' to 'str'.
Set the random number 'stream' to 'str'. This is useful for testing purposes, since a fixed stream will follow the same sequence each time.
- str
the new fixed random number stream
- Definition Classes
- Classifier
- def size: Int
Return the number of data vectors in training/test-set (# rows).
Return the number of data vectors in training/test-set (# rows).
- Definition Classes
- BayesClfML → Classifier
- val stream: Int
the random number stream {0, 1, ..., 999} to be used
the random number stream {0, 1, ..., 999} to be used
- Attributes
- protected
- Definition Classes
- Classifier
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- 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 test data
- Definition Classes
- BayesClfML → Classifier
- def test(testStart: Int, testEnd: Int): Double
Test the quality of the training with a test dataset and return the fraction of correct classifications.
Test the quality of the training with a test dataset and return the fraction of correct classifications. Can be used when the dataset is randomized so that the testing/training part of a dataset corresponds to simple slices of vectors and matrices.
- testStart
the beginning of test region (inclusive).
- testEnd
the end of test region (exclusive).
- Definition Classes
- Classifier
- def toString(): String
- Definition Classes
- AnyRef → Any
- def train(itrain: VectorI): BayesClfML
Train the classifier by computing the probabilities for C, and the conditional probabilities for X_j.
Train the classifier by computing the probabilities for C, and the conditional probabilities for X_j.
- itrain
indices of the instances considered train data
- Definition Classes
- BayesClfML → Classifier
- def train(xx: MatriD = null, yy: VectoD = null): Classifier
Train the classifier by computing the probabilities from a training dataset of data vectors and their classifications.
Train the classifier by computing the probabilities from a training dataset of data vectors and their classifications. Must be implemented in any extending class. Can be used when the whole dataset is used for training.
- xx
the data/input matrix (impl. classes should ignore or default xx to x)
- yy
the response/classification vector (impl. classes should ignore or default yy to y)
- Definition Classes
- Classifier → Model
- def train(testStart: Int, testEnd: Int): Classifier
Train the classifier by computing the probabilities from a training dataset of data vectors and their classifications.
Train the classifier by computing the probabilities from a training dataset of data vectors and their classifications. Must be implemented in any extending class. Can be used when the dataset is randomized so that the training part of a dataset corresponds to simple slices of vectors and matrices.
- testStart
starting index of test region (inclusive) used in cross-validation
- testEnd
ending index of test region (exclusive) used in cross-validation
- Definition Classes
- Classifier
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated