Share via


GlobalContrastNormalizingEstimator Class

Definition

Normalizes (scales) vectors in the input column applying the global contrast normalization.

public sealed class GlobalContrastNormalizingEstimator : Microsoft.ML.Transforms.LpNormNormalizingEstimatorBase
type GlobalContrastNormalizingEstimator = class
    inherit LpNormNormalizingEstimatorBase
Public NotInheritable Class GlobalContrastNormalizingEstimator
Inherits LpNormNormalizingEstimatorBase
Inheritance

Remarks

Estimator Characteristics

Does this estimator need to look at the data to train its parameters? No
Input column data type Vector of Single
Output column data type Vector of Single
Exportable to ONNX Yes

The resulting LpNormNormalizingTransformer normalizes vectors in the input column individually, rescaling them by applying global contrast normalization. The transform performs the following operation on each input vector $x$: $y = \frac{s * x - \mu(x)}{L(x)}$. Where $s$ is a user provided scaling factor, $\mu(x)$ is the mean of the elements of vector $x$, and $L(x)$ is the $L_2$ norm or the standard deviation of the elements of vector $x$. These settings can be specified by the user when the GlobalContrastNormalizingEstimator is initialized.

Check the See Also section for links to usage examples.

Methods

Fit(IDataView) (Inherited from TrivialEstimator<TTransformer>)
GetOutputSchema(SchemaShape)

Returns the SchemaShape of the schema which will be produced by the transformer. Used for schema propagation and verification in a pipeline.

(Inherited from LpNormNormalizingEstimatorBase)

Extension Methods

AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment)

Append a 'caching checkpoint' to the estimator chain. This will ensure that the downstream estimators will be trained against cached data. It is helpful to have a caching checkpoint before trainers that take multiple data passes.

WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>)

Given an estimator, return a wrapping object that will call a delegate once Fit(IDataView) is called. It is often important for an estimator to return information about what was fit, which is why the Fit(IDataView) method returns a specifically typed object, rather than just a general ITransformer. However, at the same time, IEstimator<TTransformer> are often formed into pipelines with many objects, so we may need to build a chain of estimators via EstimatorChain<TLastTransformer> where the estimator for which we want to get the transformer is buried somewhere in this chain. For that scenario, we can through this method attach a delegate that will be called once fit is called.

Applies to

See also