Class MultiInstanceToPropositional
- java.lang.Object
-
- weka.filters.Filter
-
- weka.filters.unsupervised.attribute.MultiInstanceToPropositional
-
- All Implemented Interfaces:
java.io.Serializable
,CapabilitiesHandler
,MultiInstanceCapabilitiesHandler
,OptionHandler
,RevisionHandler
,UnsupervisedFilter
public class MultiInstanceToPropositional extends Filter implements OptionHandler, UnsupervisedFilter, MultiInstanceCapabilitiesHandler
Converts the multi-instance dataset into single instance dataset so that the Nominalize, Standardize and other type of filters or transformation can be applied to these data for the further preprocessing.
Note: the first attribute of the converted dataset is a nominal attribute and refers to the bagId. Valid options are:-A <num> The type of weight setting for each prop. instance: 0.weight = original single bag weight /Total number of prop. instance in the corresponding bag; 1.weight = 1.0; 2.weight = 1.0/Total number of prop. instance in the corresponding bag; 3. weight = Total number of prop. instance / (Total number of bags * Total number of prop. instance in the corresponding bag). (default:0)
- Version:
- $Revision: 9141 $
- Author:
- Lin Dong (ld21@cs.waikato.ac.nz)
- See Also:
PropositionalToMultiInstance
, Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static Tag[]
TAGS_WEIGHTMETHOD
weight methodsstatic int
WEIGHTMETHOD_1
weight method: 1.0static int
WEIGHTMETHOD_INVERSE1
weight method: 1.0 / Total # of prop.static int
WEIGHTMETHOD_INVERSE2
weight method: Total # of prop.static int
WEIGHTMETHOD_ORIGINAL
weight method: keep the weight to be the same as the original value
-
Constructor Summary
Constructors Constructor Description MultiInstanceToPropositional()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
batchFinished()
Signify that this batch of input to the filter is finished.Capabilities
getCapabilities()
Returns the Capabilities of this filter.Capabilities
getMultiInstanceCapabilities()
Returns the capabilities of this multi-instance filter for the relational data (i.e., the bags).java.lang.String[]
getOptions()
Gets the current settings of the classifier.java.lang.String
getRevision()
Returns the revision string.SelectedTag
getWeightMethod()
Returns the current weighting method for instances.java.lang.String
globalInfo()
Returns a string describing this filterboolean
input(Instance instance)
Input an instance for filtering.java.util.Enumeration
listOptions()
Returns an enumeration describing the available optionsstatic void
main(java.lang.String[] args)
Main method for running this filter.boolean
setInputFormat(Instances instanceInfo)
Sets the format of the input instances.void
setOptions(java.lang.String[] options)
Parses a given list of options.void
setWeightMethod(SelectedTag method)
The new method for weighting the instances.java.lang.String
weightMethodTipText()
Returns the tip text for this property-
Methods inherited from class weka.filters.Filter
batchFilterFile, filterFile, getCapabilities, getOutputFormat, isFirstBatchDone, isNewBatch, isOutputFormatDefined, makeCopies, makeCopy, numPendingOutput, output, outputPeek, toString, useFilter, wekaStaticWrapper
-
-
-
-
Field Detail
-
WEIGHTMETHOD_ORIGINAL
public static final int WEIGHTMETHOD_ORIGINAL
weight method: keep the weight to be the same as the original value- See Also:
- Constant Field Values
-
WEIGHTMETHOD_1
public static final int WEIGHTMETHOD_1
weight method: 1.0- See Also:
- Constant Field Values
-
WEIGHTMETHOD_INVERSE1
public static final int WEIGHTMETHOD_INVERSE1
weight method: 1.0 / Total # of prop. instance in the corresp. bag- See Also:
- Constant Field Values
-
WEIGHTMETHOD_INVERSE2
public static final int WEIGHTMETHOD_INVERSE2
weight method: Total # of prop. instance / (Total # of bags * Total # of prop. instance in the corresp. bag)- See Also:
- Constant Field Values
-
TAGS_WEIGHTMETHOD
public static final Tag[] TAGS_WEIGHTMETHOD
weight methods
-
-
Method Detail
-
listOptions
public java.util.Enumeration listOptions()
Returns an enumeration describing the available options- Specified by:
listOptions
in interfaceOptionHandler
- Returns:
- an enumeration of all the available options
-
setOptions
public void setOptions(java.lang.String[] options) throws java.lang.Exception
Parses a given list of options. Valid options are:-A <num> The type of weight setting for each prop. instance: 0.weight = original single bag weight /Total number of prop. instance in the corresponding bag; 1.weight = 1.0; 2.weight = 1.0/Total number of prop. instance in the corresponding bag; 3. weight = Total number of prop. instance / (Total number of bags * Total number of prop. instance in the corresponding bag). (default:0)
- Specified by:
setOptions
in interfaceOptionHandler
- Parameters:
options
- the list of options as an array of strings- Throws:
java.lang.Exception
- if an option is not supported
-
getOptions
public java.lang.String[] getOptions()
Gets the current settings of the classifier.- Specified by:
getOptions
in interfaceOptionHandler
- Returns:
- an array of strings suitable for passing to setOptions
-
weightMethodTipText
public java.lang.String weightMethodTipText()
Returns the tip text for this property- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
setWeightMethod
public void setWeightMethod(SelectedTag method)
The new method for weighting the instances.- Parameters:
method
- the new method
-
getWeightMethod
public SelectedTag getWeightMethod()
Returns the current weighting method for instances.- Returns:
- the current weight method
-
globalInfo
public java.lang.String globalInfo()
Returns a string describing this filter- Returns:
- a description of the filter suitable for displaying in the explorer/experimenter gui
-
getCapabilities
public Capabilities getCapabilities()
Returns the Capabilities of this filter.- Specified by:
getCapabilities
in interfaceCapabilitiesHandler
- Overrides:
getCapabilities
in classFilter
- Returns:
- the capabilities of this object
- See Also:
Capabilities
-
getMultiInstanceCapabilities
public Capabilities getMultiInstanceCapabilities()
Returns the capabilities of this multi-instance filter for the relational data (i.e., the bags).- Specified by:
getMultiInstanceCapabilities
in interfaceMultiInstanceCapabilitiesHandler
- Returns:
- the capabilities of this object
- See Also:
Capabilities
-
setInputFormat
public boolean setInputFormat(Instances instanceInfo) throws java.lang.Exception
Sets the format of the input instances.- Overrides:
setInputFormat
in classFilter
- Parameters:
instanceInfo
- an Instances object containing the input instance structure (any instances contained in the object are ignored - only the structure is required).- Returns:
- true if the outputFormat may be collected immediately
- Throws:
java.lang.Exception
- if the input format can't be set successfully
-
input
public boolean input(Instance instance)
Input an instance for filtering. Filter requires all training instances be read before producing output.
-
batchFinished
public boolean batchFinished()
Signify that this batch of input to the filter is finished. If the filter requires all instances prior to filtering, output() may now be called to retrieve the filtered instances.- Overrides:
batchFinished
in classFilter
- Returns:
- true if there are instances pending output
- Throws:
java.lang.IllegalStateException
- if no input structure has been defined
-
getRevision
public java.lang.String getRevision()
Returns the revision string.- Specified by:
getRevision
in interfaceRevisionHandler
- Overrides:
getRevision
in classFilter
- Returns:
- the revision
-
main
public static void main(java.lang.String[] args)
Main method for running this filter.- Parameters:
args
- should contain arguments to the filter: use -h for help
-
-