public class BisectingKMeans extends Estimator<BisectingKMeansModel> implements BisectingKMeansParams, DefaultParamsWritable
k
leaf clusters in total or no leaf clusters are divisible.
The bisecting steps of clusters on the same level are grouped together to increase parallelism.
If bisecting all divisible clusters on the bottom level would result more than k
leaf clusters,
larger clusters get higher priority.
Constructor and Description |
---|
BisectingKMeans() |
BisectingKMeans(String uid) |
Modifier and Type | Method and Description |
---|---|
BisectingKMeans |
copy(ParamMap extra)
Creates a copy of this instance with the same UID and some extra params.
|
Param<String> |
distanceMeasure()
Param for The distance measure.
|
Param<String> |
featuresCol()
Param for features column name.
|
BisectingKMeansModel |
fit(Dataset<?> dataset)
Fits a model to the input data.
|
IntParam |
k()
The desired number of leaf clusters.
|
static BisectingKMeans |
load(String path) |
IntParam |
maxIter()
Param for maximum number of iterations (>= 0).
|
DoubleParam |
minDivisibleClusterSize()
The minimum number of points (if greater than or equal to 1.0) or the minimum proportion
of points (if less than 1.0) of a divisible cluster (default: 1.0).
|
Param<String> |
predictionCol()
Param for prediction column name.
|
static MLReader<T> |
read() |
LongParam |
seed()
Param for random seed.
|
BisectingKMeans |
setDistanceMeasure(String value) |
BisectingKMeans |
setFeaturesCol(String value) |
BisectingKMeans |
setK(int value) |
BisectingKMeans |
setMaxIter(int value) |
BisectingKMeans |
setMinDivisibleClusterSize(double value) |
BisectingKMeans |
setPredictionCol(String value) |
BisectingKMeans |
setSeed(long value) |
BisectingKMeans |
setWeightCol(String value)
Sets the value of param
weightCol . |
StructType |
transformSchema(StructType schema)
Check transform validity and derive the output schema from the input schema.
|
String |
uid()
An immutable unique ID for the object and its derivatives.
|
Param<String> |
weightCol()
Param for weight column name.
|
params
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getK, getMinDivisibleClusterSize, validateAndTransformSchema
getMaxIter
getFeaturesCol
getPredictionCol
getDistanceMeasure
getWeightCol
clear, copyValues, defaultCopy, defaultParamMap, explainParam, explainParams, extractParamMap, extractParamMap, get, getDefault, getOrDefault, getParam, hasDefault, hasParam, isDefined, isSet, onParamChange, paramMap, params, set, set, set, setDefault, setDefault, shouldOwn
toString
write
save
$init$, initializeForcefully, initializeLogIfNecessary, initializeLogIfNecessary, initializeLogIfNecessary$default$2, initLock, isTraceEnabled, log, logDebug, logDebug, logError, logError, logInfo, logInfo, logName, logTrace, logTrace, logWarning, logWarning, org$apache$spark$internal$Logging$$log__$eq, org$apache$spark$internal$Logging$$log_, uninitialize
public BisectingKMeans(String uid)
public BisectingKMeans()
public static BisectingKMeans load(String path)
public static MLReader<T> read()
public final IntParam k()
BisectingKMeansParams
k
in interface BisectingKMeansParams
public final DoubleParam minDivisibleClusterSize()
BisectingKMeansParams
minDivisibleClusterSize
in interface BisectingKMeansParams
public final Param<String> weightCol()
HasWeightCol
weightCol
in interface HasWeightCol
public final Param<String> distanceMeasure()
HasDistanceMeasure
distanceMeasure
in interface HasDistanceMeasure
public final Param<String> predictionCol()
HasPredictionCol
predictionCol
in interface HasPredictionCol
public final LongParam seed()
HasSeed
public final Param<String> featuresCol()
HasFeaturesCol
featuresCol
in interface HasFeaturesCol
public final IntParam maxIter()
HasMaxIter
maxIter
in interface HasMaxIter
public String uid()
Identifiable
uid
in interface Identifiable
public BisectingKMeans copy(ParamMap extra)
Params
defaultCopy()
.copy
in interface Params
copy
in class Estimator<BisectingKMeansModel>
extra
- (undocumented)public BisectingKMeans setFeaturesCol(String value)
public BisectingKMeans setPredictionCol(String value)
public BisectingKMeans setK(int value)
public BisectingKMeans setMaxIter(int value)
public BisectingKMeans setSeed(long value)
public BisectingKMeans setMinDivisibleClusterSize(double value)
public BisectingKMeans setDistanceMeasure(String value)
public BisectingKMeans setWeightCol(String value)
weightCol
.
If this is not set or empty, we treat all instance weights as 1.0.
Default is not set, so all instances have weight one.
value
- (undocumented)public BisectingKMeansModel fit(Dataset<?> dataset)
Estimator
fit
in class Estimator<BisectingKMeansModel>
dataset
- (undocumented)public StructType transformSchema(StructType schema)
PipelineStage
We check validity for interactions between parameters during transformSchema
and
raise an exception if any parameter value is invalid. Parameter value checks which
do not depend on other parameters are handled by Param.validate()
.
Typical implementation should first conduct verification on schema change and parameter validity, including complex parameter interaction checks.
transformSchema
in class PipelineStage
schema
- (undocumented)