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
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
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 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 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
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[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] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
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
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
-
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
beginning of test region (inclusive)
- testEnd
end of test region (exclusive)
- Definition Classes
- BayesClfML → 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(itrain: IndexedSeq[Int]): Unit
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(testStart: Int, testEnd: Int): Unit
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.
- testStart
starting index of test region (inclusive) used in cross-validation.
- testEnd
ending index of test region (exclusive) used in cross-validation.
- Definition Classes
- BayesClfML → 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
-
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( ... )