All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.alibaba.alink.params.clustering.BaseKMeansTrainParams Maven / Gradle / Ivy

package com.alibaba.alink.params.clustering;

import org.apache.flink.ml.api.misc.param.ParamInfo;
import org.apache.flink.ml.api.misc.param.ParamInfoFactory;

import org.apache.flink.ml.api.misc.param.WithParams;
import com.alibaba.alink.params.shared.clustering.HasEpsilonDv00001;
import com.alibaba.alink.params.shared.clustering.HasKDefaultAs2;

/**
 * Common params for KMeans.
 */
public interface BaseKMeansTrainParams extends WithParams,
	HasKDefaultAs2,
	HasEpsilonDv00001  {

	ParamInfo  MAX_ITER = ParamInfoFactory
		.createParamInfo("maxIter", Integer.class)
		.setDescription("Maximum iterations, the default value is 20")
		.setHasDefaultValue(20)
		.setAlias(new String[] {"numIter"})
		.build();
	ParamInfo  INIT_MODE = ParamInfoFactory
		.createParamInfo("initMode", String.class)
		.setDescription("Methods to get initial centers, support K_MEANS_PARALLEL and RANDOM!")
		.setHasDefaultValue("K_MEANS_PARALLEL")
		.build();
	ParamInfo  INIT_STEPS = ParamInfoFactory
		.createParamInfo("initSteps", Integer.class)
		.setDescription("When initMode is K_MEANS_PARALLEL, it defines the steps of iteration. The default value is 2.")
		.setHasDefaultValue(2)
		.build();

	default Integer getMaxIter() {return get(MAX_ITER);}

	default T setMaxIter(Integer value) {return set(MAX_ITER, value);}

	default String getInitMode() {
		return get(INIT_MODE);
	}

	default T setInitMode(String value) {
		return set(INIT_MODE, value);
	}

	default Integer getInitSteps() {
		return get(INIT_STEPS);
	}

	default T setInitSteps(Integer value) {
		return set(INIT_STEPS, value);
	}
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy