TargetEncoder (Spark 4.2.0 JavaDoc)
- All Implemented Interfaces:
Serializable,org.apache.spark.internal.Logging,TargetEncoderBase,Params,HasHandleInvalid,HasInputCol,HasInputCols,HasLabelCol,HasOutputCol,HasOutputCols,DefaultParamsWritable,Identifiable,MLWritable
Target Encoding maps a column of categorical indices into a numerical feature derived from the target.
When handleInvalid is configured to 'keep', previously unseen values of a feature
are mapped to the dataset overall statistics.
When 'targetType' is configured to 'binary', categories are encoded as the conditional probability of the target given that category (bin counting). When 'targetType' is configured to 'continuous', categories are encoded as the average of the target given that category (mean encoding)
Parameter 'smoothing' controls how in-category stats and overall stats are weighted.
- See Also:
-
StringIndexerfor converting categorical values into category indices- Serialized Form
- Note:
- When encoding multi-column by using
inputColsandoutputColsparams, input/output cols come in pairs, specified by the order in the arrays, and each pair is treated independently.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.spark.internal.Logging
org.apache.spark.internal.Logging.LogStringContext, org.apache.spark.internal.Logging.SparkShellLoggingFilter -
Constructor Summary
Constructors
-
Method Summary
Creates a copy of this instance with the same UID and some extra params.
Fits a model to the input data.
Param for how to handle invalid data during transform().
inputCol()Param for input column name.
Param for input column names.
labelCol()Param for label column name.
Param for output column name.
Param for output column names.
read()setSmoothing(double value) Check transform validity and derive the output schema from the input schema.
uid()An immutable unique ID for the object and its derivatives.
Methods inherited from interface org.apache.spark.internal.Logging
initializeForcefully, initializeLogIfNecessary, initializeLogIfNecessary, initializeLogIfNecessary$default$2, isTraceEnabled, log, logBasedOnLevel, logDebug, logDebug, logDebug, logDebug, logError, logError, logError, logError, logInfo, logInfo, logInfo, logInfo, logName, LogStringContext, logTrace, logTrace, logTrace, logTrace, logWarning, logWarning, logWarning, logWarning, MDC, org$apache$spark$internal$Logging$$log_, org$apache$spark$internal$Logging$$log__$eq, withLogContextMethods inherited from interface org.apache.spark.ml.util.MLWritable
Methods inherited from interface org.apache.spark.ml.param.Params
clear, copyValues, defaultCopy, defaultParamMap, estimateMatadataSize, explainParam, explainParams, extractParamMap, extractParamMap, get, getDefault, getOrDefault, getParam, hasDefault, hasParam, isDefined, isSet, onParamChange, paramMap, params, set, set, set, setDefault, setDefault, shouldOwn
-
Constructor Details
-
TargetEncoder
public TargetEncoder
(String uid) -
TargetEncoder
public TargetEncoder()
-
-
Method Details
-
load
-
read
-
handleInvalid
Param for how to handle invalid data during transform(). Options are 'keep' (invalid data presented as an extra categorical feature) or 'error' (throw an error). Note that this Param is only used during transform; during fitting, invalid data will result in an error. Default: "error"
- Specified by:
handleInvalidin interfaceHasHandleInvalid- Specified by:
handleInvalidin interfaceTargetEncoderBase- Returns:
- (undocumented)
-
targetType
- Specified by:
targetTypein interfaceTargetEncoderBase
-
smoothing
- Specified by:
smoothingin interfaceTargetEncoderBase
-
outputCols
Param for output column names.
- Specified by:
outputColsin interfaceHasOutputCols- Returns:
- (undocumented)
-
outputCol
Param for output column name.
- Specified by:
outputColin interfaceHasOutputCol- Returns:
- (undocumented)
-
inputCols
Param for input column names.
- Specified by:
inputColsin interfaceHasInputCols- Returns:
- (undocumented)
-
inputCol
Description copied from interface:
HasInputColParam for input column name.
- Specified by:
inputColin interfaceHasInputCol- Returns:
- (undocumented)
-
labelCol
Description copied from interface:
HasLabelColParam for label column name.
- Specified by:
labelColin interfaceHasLabelCol- Returns:
- (undocumented)
-
uid
An immutable unique ID for the object and its derivatives.
- Specified by:
uidin interfaceIdentifiable- Returns:
- (undocumented)
-
setLabelCol
-
setInputCol
-
setOutputCol
-
setInputCols
-
setOutputCols
-
setHandleInvalid
-
setTargetType
-
setSmoothing
-
transformSchema
Check transform validity and derive the output schema from the input schema.
We check validity for interactions between parameters during
transformSchemaand raise an exception if any parameter value is invalid. Parameter value checks which do not depend on other parameters are handled byParam.validate().Typical implementation should first conduct verification on schema change and parameter validity, including complex parameter interaction checks.
- Specified by:
transformSchemain classPipelineStage- Parameters:
schema- (undocumented)- Returns:
- (undocumented)
-
fit
Description copied from class:
EstimatorFits a model to the input data.
- Specified by:
fitin classEstimator<TargetEncoderModel>- Parameters:
dataset- (undocumented)- Returns:
- (undocumented)
-
copy
Description copied from interface:
ParamsCreates a copy of this instance with the same UID and some extra params. Subclasses should implement this method and set the return type properly. See
defaultCopy().- Specified by:
copyin interfaceParams- Specified by:
copyin classEstimator<TargetEncoderModel>- Parameters:
extra- (undocumented)- Returns:
- (undocumented)
-