Package weka.gui.boundaryvisualizer
Class KDDataGenerator
java.lang.Object
weka.gui.boundaryvisualizer.KDDataGenerator
- All Implemented Interfaces:
Serializable
,DataGenerator
KDDataGenerator. Class that uses kernels to generate new random instances
based on a supplied set of instances.
- Since:
- 1.0
- Version:
- $Revision: 10222 $
- Author:
- Mark Hall
- See Also:
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
buildGenerator
(Instances inputInstances) Initialize the generator using the supplied instancesdouble[][]
generateInstances
(int[] indices) Generates a new instance using one kernel estimator.int
Get the kernel bandwidthint
Return the number of kernels (there is one per training instance)double[]
Get weightsvoid
setKernelBandwidth
(int kb) Set the kernel bandwidth (number of nearest neighbours to cover)void
setSeed
(int seed) Initializes a new random number generator using the supplied seed.void
setWeightingDimensions
(boolean[] dims) Set which dimensions to use when computing a weight for the next instance to generatevoid
setWeightingValues
(double[] vals) Set the values for the weighting dimensions to be used when computing the weight for the next instance to be generated
-
Constructor Details
-
KDDataGenerator
public KDDataGenerator()
-
-
Method Details
-
buildGenerator
Initialize the generator using the supplied instances- Specified by:
buildGenerator
in interfaceDataGenerator
- Parameters:
inputInstances
- the instances to use as the basis of the kernels- Throws:
Exception
- if an error occurs
-
getWeights
public double[] getWeights()Description copied from interface:DataGenerator
Get weights- Specified by:
getWeights
in interfaceDataGenerator
-
generateInstances
Generates a new instance using one kernel estimator. Each successive call to this method incremets the index of the kernel to use.- Specified by:
generateInstances
in interfaceDataGenerator
- Returns:
- the new random instance
- Throws:
Exception
- if an error occurs
-
setWeightingDimensions
public void setWeightingDimensions(boolean[] dims) Set which dimensions to use when computing a weight for the next instance to generate- Specified by:
setWeightingDimensions
in interfaceDataGenerator
- Parameters:
dims
- an array of booleans indicating which dimensions to use
-
setWeightingValues
public void setWeightingValues(double[] vals) Set the values for the weighting dimensions to be used when computing the weight for the next instance to be generated- Specified by:
setWeightingValues
in interfaceDataGenerator
- Parameters:
vals
- an array of doubles containing the values of the weighting dimensions (corresponding to the entries that are set to true throw setWeightingDimensions)
-
getNumGeneratingModels
public int getNumGeneratingModels()Return the number of kernels (there is one per training instance)- Specified by:
getNumGeneratingModels
in interfaceDataGenerator
- Returns:
- the number of kernels
-
setKernelBandwidth
public void setKernelBandwidth(int kb) Set the kernel bandwidth (number of nearest neighbours to cover)- Parameters:
kb
- anint
value
-
getKernelBandwidth
public int getKernelBandwidth()Get the kernel bandwidth- Returns:
- an
int
value
-
setSeed
public void setSeed(int seed) Initializes a new random number generator using the supplied seed.- Specified by:
setSeed
in interfaceDataGenerator
- Parameters:
seed
- anint
value
-