NormalizationCatalog.NormalizeLpNorm Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Erstellen Sie eine LpNormNormalizingEstimator, die Vektoren (Skalen) in der Eingabespalte in der Einheitsnorm normalisiert.
Der Typ der Norm, die verwendet wird, wird durch norm
definiert. Die Einstellung ensureZeroMean
auf true
, wendet einen Vorverarbeitungsschritt an, um den Mittelwert der angegebenen Spalte als Nullvektor zu gestalten.
public static Microsoft.ML.Transforms.LpNormNormalizingEstimator NormalizeLpNorm (this Microsoft.ML.TransformsCatalog catalog, string outputColumnName, string inputColumnName = default, Microsoft.ML.Transforms.LpNormNormalizingEstimatorBase.NormFunction norm = Microsoft.ML.Transforms.LpNormNormalizingEstimatorBase+NormFunction.L2, bool ensureZeroMean = false);
static member NormalizeLpNorm : Microsoft.ML.TransformsCatalog * string * string * Microsoft.ML.Transforms.LpNormNormalizingEstimatorBase.NormFunction * bool -> Microsoft.ML.Transforms.LpNormNormalizingEstimator
<Extension()>
Public Function NormalizeLpNorm (catalog As TransformsCatalog, outputColumnName As String, Optional inputColumnName As String = Nothing, Optional norm As LpNormNormalizingEstimatorBase.NormFunction = Microsoft.ML.Transforms.LpNormNormalizingEstimatorBase+NormFunction.L2, Optional ensureZeroMean As Boolean = false) As LpNormNormalizingEstimator
Parameter
- catalog
- TransformsCatalog
Der Katalog der Transformation.
- outputColumnName
- String
Name der Spalte, die aus der Transformation von inputColumnName
.
Der Datentyp dieser Spalte entspricht dem Datentyp der Eingabespalte.
- inputColumnName
- String
Name der Spalte, die normalisiert werden soll.
null
Wenn festgelegt auf , wird der Wert des outputColumnName
Werts als Quelle verwendet.
Diese Schätzung wird über bekannte Vektoren von Single.
Art der Norm, die verwendet werden soll, um jedes Beispiel zu normalisieren. Die angegebene Norm des resultierenden Vektors wird auf eine normalisiert.
- ensureZeroMean
- Boolean
Wenn true
, subtrahieren Sie den Mittelwert von jedem Wert, bevor Sie normalisieren und andernfalls die rohe Eingabe verwenden.
Gibt zurück
Beispiele
using System;
using System.Collections.Generic;
using System.Linq;
using Microsoft.ML;
using Microsoft.ML.Data;
using Microsoft.ML.Transforms;
namespace Samples.Dynamic
{
class NormalizeLpNorm
{
public static void Example()
{
// Create a new ML context, for ML.NET operations. It can be used for
// exception tracking and logging, as well as the source of randomness.
var mlContext = new MLContext();
var samples = new List<DataPoint>()
{
new DataPoint(){ Features = new float[4] { 1, 1, 0, 0} },
new DataPoint(){ Features = new float[4] { 2, 2, 0, 0} },
new DataPoint(){ Features = new float[4] { 1, 0, 1, 0} },
new DataPoint(){ Features = new float[4] { 0, 1, 0, 1} }
};
// Convert training data to IDataView, the general data type used in
// ML.NET.
var data = mlContext.Data.LoadFromEnumerable(samples);
var approximation = mlContext.Transforms.NormalizeLpNorm("Features",
norm: LpNormNormalizingEstimatorBase.NormFunction.L1,
ensureZeroMean: true);
// Now we can transform the data and look at the output to confirm the
// behavior of the estimator. This operation doesn't actually evaluate
// data until we read the data below.
var tansformer = approximation.Fit(data);
var transformedData = tansformer.Transform(data);
var column = transformedData.GetColumn<float[]>("Features").ToArray();
foreach (var row in column)
Console.WriteLine(string.Join(", ", row.Select(x => x.ToString(
"f4"))));
// Expected output:
// 0.2500, 0.2500, -0.2500, -0.2500
// 0.2500, 0.2500, -0.2500, -0.2500
// 0.2500, -0.2500, 0.2500, -0.2500
// -0.2500, 0.2500, -0.2500, 0.2500
}
private class DataPoint
{
[VectorType(4)]
public float[] Features { get; set; }
}
}
}