TextCatalog.NormalizeText Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Crée un TextNormalizingEstimatortexte entrant, qui normalise le texte entrant en inputColumnName
modifiant éventuellement la casse, en supprimant des marques diacritiques, des signes de ponctuation, des nombres et en extrayant le nouveau texte en tant que outputColumnName
.
public static Microsoft.ML.Transforms.Text.TextNormalizingEstimator NormalizeText (this Microsoft.ML.TransformsCatalog.TextTransforms catalog, string outputColumnName, string inputColumnName = default, Microsoft.ML.Transforms.Text.TextNormalizingEstimator.CaseMode caseMode = Microsoft.ML.Transforms.Text.TextNormalizingEstimator+CaseMode.Lower, bool keepDiacritics = false, bool keepPunctuations = true, bool keepNumbers = true);
static member NormalizeText : Microsoft.ML.TransformsCatalog.TextTransforms * string * string * Microsoft.ML.Transforms.Text.TextNormalizingEstimator.CaseMode * bool * bool * bool -> Microsoft.ML.Transforms.Text.TextNormalizingEstimator
<Extension()>
Public Function NormalizeText (catalog As TransformsCatalog.TextTransforms, outputColumnName As String, Optional inputColumnName As String = Nothing, Optional caseMode As TextNormalizingEstimator.CaseMode = Microsoft.ML.Transforms.Text.TextNormalizingEstimator+CaseMode.Lower, Optional keepDiacritics As Boolean = false, Optional keepPunctuations As Boolean = true, Optional keepNumbers As Boolean = true) As TextNormalizingEstimator
Paramètres
- catalog
- TransformsCatalog.TextTransforms
Catalogue de transformation liée au texte.
- outputColumnName
- String
Nom de la colonne résultant de la transformation de inputColumnName
.
Le type de données de cette colonne est un scalaire ou un vecteur de texte en fonction du type de données de colonne d’entrée.
- inputColumnName
- String
Nom de la colonne à transformer. Si la valeur est définie null
, la valeur du outputColumnName
fichier sera utilisée comme source.
Cet estimateur fonctionne sur le texte ou le vecteur des types de données texte.
- caseMode
- TextNormalizingEstimator.CaseMode
Casse du texte à l’aide des règles de la culture indifférente.
- keepDiacritics
- Boolean
Indique s’il faut conserver des marques diacritiques ou les supprimer.
- keepPunctuations
- Boolean
Indique s’il faut conserver les marques de ponctuation ou les supprimer.
- keepNumbers
- Boolean
Indique s’il faut conserver des nombres ou les supprimer.
Retours
Exemples
using System;
using System.Collections.Generic;
using Microsoft.ML;
using Microsoft.ML.Transforms.Text;
namespace Samples.Dynamic
{
public static class NormalizeText
{
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();
// Create an empty list as the dataset. The 'NormalizeText' API does not
// require training data as the estimator ('TextNormalizingEstimator')
// created by 'NormalizeText' API is not a trainable estimator. The
// empty list is only needed to pass input schema to the pipeline.
var emptySamples = new List<TextData>();
// Convert sample list to an empty IDataView.
var emptyDataView = mlContext.Data.LoadFromEnumerable(emptySamples);
// A pipeline for normalizing text.
var normTextPipeline = mlContext.Transforms.Text.NormalizeText(
"NormalizedText", "Text", TextNormalizingEstimator.CaseMode.Lower,
keepDiacritics: false,
keepPunctuations: false,
keepNumbers: false);
// Fit to data.
var normTextTransformer = normTextPipeline.Fit(emptyDataView);
// Create the prediction engine to get the normalized text from the
// input text/string.
var predictionEngine = mlContext.Model.CreatePredictionEngine<TextData,
TransformedTextData>(normTextTransformer);
// Call the prediction API.
var data = new TextData()
{
Text = "ML.NET's NormalizeText API " +
"changes the case of the TEXT and removes/keeps diâcrîtîcs, " +
"punctuations, and/or numbers (123)."
};
var prediction = predictionEngine.Predict(data);
// Print the normalized text.
Console.WriteLine($"Normalized Text: {prediction.NormalizedText}");
// Expected output:
// Normalized Text: mlnets normalizetext api changes the case of the text and removeskeeps diacritics punctuations andor numbers
}
private class TextData
{
public string Text { get; set; }
}
private class TransformedTextData : TextData
{
public string NormalizedText { get; set; }
}
}
}