public class MIOptimalBall extends Classifier implements OptionHandler, WeightedInstancesHandler, MultiInstanceCapabilitiesHandler, TechnicalInformationHandler
@inproceedings{Auer2004, author = {Peter Auer and Ronald Ortner}, booktitle = {15th European Conference on Machine Learning}, note = {LNAI 3201}, pages = {63-74}, publisher = {Springer}, title = {A Boosting Approach to Multiple Instance Learning}, year = {2004} }Valid options are:
-N <num> Whether to 0=normalize/1=standardize/2=neither. (default 0=normalize)
Modifier and Type | Field and Description |
---|---|
static int |
FILTER_NONE
No normalization/standardization
|
static int |
FILTER_NORMALIZE
Normalize training data
|
static int |
FILTER_STANDARDIZE
Standardize training data
|
static Tag[] |
TAGS_FILTER
The filter to apply to the training data
|
Constructor and Description |
---|
MIOptimalBall() |
Modifier and Type | Method and Description |
---|---|
void |
buildClassifier(Instances data)
Builds the classifier
|
void |
calculateDistance(Instances train)
calculate the distances from each instance in a positive bag to each bag.
|
double[] |
distributionForInstance(Instance newBag)
Computes the distribution for a given multiple instance
|
java.lang.String |
filterTypeTipText()
Returns the tip text for this property
|
void |
findRadius(Instances train)
Find the maximum radius for the optimal ball.
|
Capabilities |
getCapabilities()
Returns default capabilities of the classifier.
|
SelectedTag |
getFilterType()
Gets how the training data will be transformed.
|
Capabilities |
getMultiInstanceCapabilities()
Returns the capabilities of this multi-instance classifier for the
relational data.
|
java.lang.String[] |
getOptions()
Gets the current settings of the classifier.
|
java.lang.String |
getRevision()
Returns the revision string.
|
TechnicalInformation |
getTechnicalInformation()
Returns an instance of a TechnicalInformation object, containing
detailed information about the technical background of this class,
e.g., paper reference or book this class is based on.
|
java.lang.String |
globalInfo()
Returns a string describing this filter
|
java.util.Enumeration |
listOptions()
Returns an enumeration describing the available options.
|
static void |
main(java.lang.String[] argv)
Main method for testing this class.
|
double |
minBagDistance(Instance center,
Instance bag)
Calculate the distance from one data point to a bag
|
void |
setFilterType(SelectedTag newType)
Sets how the training data will be transformed.
|
void |
setOptions(java.lang.String[] options)
Parses a given list of options.
|
double[] |
sortArray(double[] distance)
Sort the array.
|
classifyInstance, debugTipText, forName, getDebug, makeCopies, makeCopy, setDebug
public static final int FILTER_NORMALIZE
public static final int FILTER_STANDARDIZE
public static final int FILTER_NONE
public static final Tag[] TAGS_FILTER
public java.lang.String globalInfo()
public TechnicalInformation getTechnicalInformation()
getTechnicalInformation
in interface TechnicalInformationHandler
public Capabilities getCapabilities()
getCapabilities
in interface CapabilitiesHandler
getCapabilities
in class Classifier
Capabilities
public Capabilities getMultiInstanceCapabilities()
getMultiInstanceCapabilities
in interface MultiInstanceCapabilitiesHandler
Capabilities
public void buildClassifier(Instances data) throws java.lang.Exception
buildClassifier
in class Classifier
data
- the training data to be used for generating the
boosted classifier.java.lang.Exception
- if the classifier could not be built successfullypublic void calculateDistance(Instances train)
train
- the multi-instance dataset (with relational attribute)public double minBagDistance(Instance center, Instance bag)
center
- the data point in instance spacebag
- the bagpublic void findRadius(Instances train)
train
- the multi-instance datapublic double[] sortArray(double[] distance)
distance
- the array need to be sortedpublic double[] distributionForInstance(Instance newBag) throws java.lang.Exception
distributionForInstance
in class Classifier
newBag
- the instance for which distribution is computedjava.lang.Exception
- if the distribution can't be computed successfullypublic java.util.Enumeration listOptions()
listOptions
in interface OptionHandler
listOptions
in class Classifier
public java.lang.String[] getOptions()
getOptions
in interface OptionHandler
getOptions
in class Classifier
public void setOptions(java.lang.String[] options) throws java.lang.Exception
-N <num> Whether to 0=normalize/1=standardize/2=neither. (default 0=normalize)
setOptions
in interface OptionHandler
setOptions
in class Classifier
options
- the list of options as an array of stringsjava.lang.Exception
- if an option is not supportedpublic java.lang.String filterTypeTipText()
public void setFilterType(SelectedTag newType)
newType
- the new filtering modepublic SelectedTag getFilterType()
public java.lang.String getRevision()
getRevision
in interface RevisionHandler
getRevision
in class Classifier
public static void main(java.lang.String[] argv)
argv
- should contain the command line arguments to the
scheme (see Evaluation)