public class sIB extends RandomizableClusterer implements TechnicalInformationHandler
@inproceedings{Slonim2002, author = {Noam Slonim and Nir Friedman and Naftali Tishby}, booktitle = {Proceedings of the 25th International ACM SIGIR Conference on Research and Development in Information Retrieval}, pages = {129-136}, title = {Unsupervised document classification using sequential information maximization}, year = {2002} }Valid options are:
-I <num> maximum number of iterations (default 100).
-M <num> minimum number of changes in a single iteration (default 0).
-N <num> number of clusters. (default 2).
-R <num> number of restarts. (default 5).
-U set not to normalize the data (default true).
-V set to output debug info (default false).
-S <num> Random number seed. (default 1)
Constructor and Description |
---|
sIB() |
Modifier and Type | Method and Description |
---|---|
void |
buildClusterer(Instances data)
Generates a clusterer.
|
int |
clusterInstance(Instance instance)
Cluster a given instance, this is the method defined in Clusterer
interface do nothing but just return the cluster assigned to it
|
java.lang.String |
debugTipText()
Returns the tip text for this property
|
Capabilities |
getCapabilities()
Returns default capabilities of the clusterer.
|
boolean |
getDebug()
Get debug mode
|
int |
getMaxIterations()
Get the max number of iterations
|
int |
getMinChange()
get the minimum number of changes
|
boolean |
getNotUnifyNorm()
Get whether to normalize instances to unify prior probability
before building the clusterer
|
int |
getNumClusters()
Get the number of clusters
|
int |
getNumRestarts()
Get the number of restarts
|
java.lang.String[] |
getOptions()
Gets the current settings.
|
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 clusterer
|
java.util.Enumeration |
listOptions()
Returns an enumeration describing the available options.
|
static void |
main(java.lang.String[] argv) |
java.lang.String |
maxIterationsTipText()
Returns the tip text for this property.
|
java.lang.String |
minChangeTipText()
Returns the tip text for this property.
|
java.lang.String |
notUnifyNormTipText()
Returns the tip text for this property.
|
int |
numberOfClusters()
Get the number of clusters
|
java.lang.String |
numClustersTipText()
Returns the tip text for this property.
|
java.lang.String |
numRestartsTipText()
Returns the tip text for this property.
|
void |
setDebug(boolean v)
Set debug mode - verbose output
|
void |
setMaxIterations(int i)
Set the max number of iterations
|
void |
setMinChange(int m)
set the minimum number of changes
|
void |
setNotUnifyNorm(boolean b)
Set whether to normalize instances to unify prior probability
before building the clusterer
|
void |
setNumClusters(int n)
Set the number of clusters
|
void |
setNumRestarts(int i)
Set the number of restarts
|
void |
setOptions(java.lang.String[] options)
Parses a given list of options.
|
java.lang.String |
toString() |
getSeed, seedTipText, setSeed
distributionForInstance, forName, makeCopies, makeCopy
public void buildClusterer(Instances data) throws java.lang.Exception
buildClusterer
in interface Clusterer
buildClusterer
in class AbstractClusterer
data
- the training instancesjava.lang.Exception
- if something goes wrongpublic int clusterInstance(Instance instance) throws java.lang.Exception
clusterInstance
in interface Clusterer
clusterInstance
in class AbstractClusterer
instance
- the instance to be assigned to a clusterjava.lang.Exception
- if instance could not be clustered
successfullypublic void setOptions(java.lang.String[] options) throws java.lang.Exception
-I <num> maximum number of iterations (default 100).
-M <num> minimum number of changes in a single iteration (default 0).
-N <num> number of clusters. (default 2).
-R <num> number of restarts. (default 5).
-U set not to normalize the data (default true).
-V set to output debug info (default false).
-S <num> Random number seed. (default 1)
setOptions
in interface OptionHandler
setOptions
in class RandomizableClusterer
options
- the list of options as an array of stringsjava.lang.Exception
- if an option is not supportedpublic java.util.Enumeration listOptions()
listOptions
in interface OptionHandler
listOptions
in class RandomizableClusterer
public java.lang.String[] getOptions()
getOptions
in interface OptionHandler
getOptions
in class RandomizableClusterer
public java.lang.String debugTipText()
public void setDebug(boolean v)
v
- true for verbose outputpublic boolean getDebug()
public java.lang.String maxIterationsTipText()
public void setMaxIterations(int i)
i
- max number of iterationspublic int getMaxIterations()
public java.lang.String minChangeTipText()
public void setMinChange(int m)
m
- the minimum number of changespublic int getMinChange()
public java.lang.String numClustersTipText()
public void setNumClusters(int n)
n
- number of clusterspublic int getNumClusters()
public int numberOfClusters()
numberOfClusters
in interface Clusterer
numberOfClusters
in class AbstractClusterer
public java.lang.String numRestartsTipText()
public void setNumRestarts(int i)
i
- number of restartspublic int getNumRestarts()
public java.lang.String notUnifyNormTipText()
public void setNotUnifyNorm(boolean b)
b
- true to normalize, otherwise falsepublic boolean getNotUnifyNorm()
public java.lang.String globalInfo()
public TechnicalInformation getTechnicalInformation()
getTechnicalInformation
in interface TechnicalInformationHandler
public Capabilities getCapabilities()
getCapabilities
in interface Clusterer
getCapabilities
in interface CapabilitiesHandler
getCapabilities
in class AbstractClusterer
Capabilities
public java.lang.String toString()
toString
in class java.lang.Object
public java.lang.String getRevision()
getRevision
in interface RevisionHandler
getRevision
in class AbstractClusterer
public static void main(java.lang.String[] argv)