FeatureSelectionCatalog.SelectFeaturesBasedOnCount Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Sobrecargas
| SelectFeaturesBasedOnCount(TransformsCatalog+FeatureSelectionTransforms, InputOutputColumnPair[], Int64) |
Cree un CountFeatureSelectingEstimator, que seleccione las ranuras para las que el recuento de valores no predeterminados es mayor o igual que un umbral. |
| SelectFeaturesBasedOnCount(TransformsCatalog+FeatureSelectionTransforms, String, String, Int64) |
Cree un CountFeatureSelectingEstimator, que seleccione las ranuras para las que el recuento de valores no predeterminados es mayor o igual que un umbral. |
SelectFeaturesBasedOnCount(TransformsCatalog+FeatureSelectionTransforms, InputOutputColumnPair[], Int64)
- Source:
- FeatureSelectionCatalog.cs
- Source:
- FeatureSelectionCatalog.cs
- Source:
- FeatureSelectionCatalog.cs
Cree un CountFeatureSelectingEstimator, que seleccione las ranuras para las que el recuento de valores no predeterminados es mayor o igual que un umbral.
public static Microsoft.ML.Transforms.CountFeatureSelectingEstimator SelectFeaturesBasedOnCount(this Microsoft.ML.TransformsCatalog.FeatureSelectionTransforms catalog, Microsoft.ML.InputOutputColumnPair[] columns, long count = 1);
static member SelectFeaturesBasedOnCount : Microsoft.ML.TransformsCatalog.FeatureSelectionTransforms * Microsoft.ML.InputOutputColumnPair[] * int64 -> Microsoft.ML.Transforms.CountFeatureSelectingEstimator
<Extension()>
Public Function SelectFeaturesBasedOnCount (catalog As TransformsCatalog.FeatureSelectionTransforms, columns As InputOutputColumnPair(), Optional count As Long = 1) As CountFeatureSelectingEstimator
Parámetros
Catálogo de la transformación.
- columns
- InputOutputColumnPair[]
Especifica los nombres de las columnas en las que se va a aplicar la transformación. Este estimador opera sobre el vector o escalar de tipos de datos numéricos, de texto o de claves. Los tipos de datos de las columnas de salida serán los mismos que los tipos de datos de las columnas de entrada.
- count
- Int64
Si el recuento de valores no predeterminados para una ranura es mayor o igual que este umbral en los datos de entrenamiento, se conserva la ranura.
Devoluciones
Ejemplos
using System;
using System.Collections.Generic;
using Microsoft.ML;
using Microsoft.ML.Data;
namespace Samples.Dynamic
{
public static class SelectFeaturesBasedOnCountMultiColumn
{
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();
// Get a small dataset as an IEnumerable and convert it to an IDataView.
var rawData = GetData();
// Printing the columns of the input data.
Console.WriteLine($"NumericVector StringVector");
foreach (var item in rawData)
Console.WriteLine("{0,-25} {1,-25}", string.Join(",", item.
NumericVector), string.Join(",", item.StringVector));
// NumericVector StringVector
// 4,NaN,6 A,WA,Male
// 4,5,6 A,,Female
// 4,5,6 A,NY,
// 4,NaN,NaN A,,Male
var data = mlContext.Data.LoadFromEnumerable(rawData);
// We will use the SelectFeaturesBasedOnCount transform estimator, to
// retain only those slots which have at least 'count' non-default
// values per slot.
// Multi column example. This pipeline transform two columns using the
// provided parameters.
var pipeline = mlContext.Transforms.FeatureSelection
.SelectFeaturesBasedOnCount(new InputOutputColumnPair[] { new
InputOutputColumnPair("NumericVector"), new InputOutputColumnPair(
"StringVector") }, count: 3);
var transformedData = pipeline.Fit(data).Transform(data);
var convertedData = mlContext.Data.CreateEnumerable<TransformedData>(
transformedData, true);
// Printing the columns of the transformed data.
Console.WriteLine($"NumericVector StringVector");
foreach (var item in convertedData)
Console.WriteLine("{0,-25} {1,-25}", string.Join(",", item
.NumericVector), string.Join(",", item.StringVector));
// NumericVector StringVector
// 4,6 A,Male
// 4,6 A,Female
// 4,6 A,
// 4,NaN A,Male
}
private class TransformedData
{
public float[] NumericVector { get; set; }
public string[] StringVector { get; set; }
}
public class InputData
{
[VectorType(3)]
public float[] NumericVector { get; set; }
[VectorType(3)]
public string[] StringVector { get; set; }
}
/// <summary>
/// Returns a few rows of data.
/// </summary>
public static IEnumerable<InputData> GetData()
{
var data = new List<InputData>
{
new InputData
{
NumericVector = new float[] { 4, float.NaN, 6 },
StringVector = new string[] { "A", "WA", "Male"}
},
new InputData
{
NumericVector = new float[] { 4, 5, 6 },
StringVector = new string[] { "A", "", "Female"}
},
new InputData
{
NumericVector = new float[] { 4, 5, 6 },
StringVector = new string[] { "A", "NY", null}
},
new InputData
{
NumericVector = new float[] { 4, float.NaN, float.NaN },
StringVector = new string[] { "A", null, "Male"}
}
};
return data;
}
}
}
Se aplica a
SelectFeaturesBasedOnCount(TransformsCatalog+FeatureSelectionTransforms, String, String, Int64)
- Source:
- FeatureSelectionCatalog.cs
- Source:
- FeatureSelectionCatalog.cs
- Source:
- FeatureSelectionCatalog.cs
Cree un CountFeatureSelectingEstimator, que seleccione las ranuras para las que el recuento de valores no predeterminados es mayor o igual que un umbral.
public static Microsoft.ML.Transforms.CountFeatureSelectingEstimator SelectFeaturesBasedOnCount(this Microsoft.ML.TransformsCatalog.FeatureSelectionTransforms catalog, string outputColumnName, string inputColumnName = default, long count = 1);
static member SelectFeaturesBasedOnCount : Microsoft.ML.TransformsCatalog.FeatureSelectionTransforms * string * string * int64 -> Microsoft.ML.Transforms.CountFeatureSelectingEstimator
<Extension()>
Public Function SelectFeaturesBasedOnCount (catalog As TransformsCatalog.FeatureSelectionTransforms, outputColumnName As String, Optional inputColumnName As String = Nothing, Optional count As Long = 1) As CountFeatureSelectingEstimator
Parámetros
Catálogo de la transformación.
- outputColumnName
- String
Nombre de la columna resultante de la transformación de inputColumnName.
El tipo de datos de esta columna será el mismo que el tipo de datos de la columna de entrada.
- inputColumnName
- String
Nombre de la columna que se va a transformar. Si se establece nullen , el valor de outputColumnName se usará como origen.
Este estimador opera sobre el vector o escalar de tipos de datos numéricos, de texto o de claves.
- count
- Int64
Si el recuento de valores no predeterminados para una ranura es mayor o igual que este umbral en los datos de entrenamiento, se conserva la ranura.
Devoluciones
Ejemplos
using System;
using System.Collections.Generic;
using Microsoft.ML;
using Microsoft.ML.Data;
namespace Samples.Dynamic
{
public static class SelectFeaturesBasedOnCount
{
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();
// Get a small dataset as an IEnumerable and convert it to an IDataView.
var rawData = GetData();
// Printing the columns of the input data.
Console.WriteLine($"NumericVector StringVector");
foreach (var item in rawData)
Console.WriteLine("{0,-25} {1,-25}", string.Join(",", item
.NumericVector), string.Join(",", item.StringVector));
// NumericVector StringVector
// 4,NaN,6 A,WA,Male
// 4,5,6 A,,Female
// 4,5,6 A,NY,
// 4,0,NaN A,,Male
var data = mlContext.Data.LoadFromEnumerable(rawData);
// We will use the SelectFeaturesBasedOnCount to retain only those slots
// which have at least 'count' non-default and non-missing values per
// slot.
var pipeline =
mlContext.Transforms.FeatureSelection.SelectFeaturesBasedOnCount(
outputColumnName: "NumericVector", count: 3) // Usage on numeric
// column.
.Append(mlContext.Transforms.FeatureSelection
.SelectFeaturesBasedOnCount(outputColumnName: "StringVector",
count: 3)); // Usage on text column.
var transformedData = pipeline.Fit(data).Transform(data);
var convertedData = mlContext.Data.CreateEnumerable<TransformedData>(
transformedData, true);
// Printing the columns of the transformed data.
Console.WriteLine($"NumericVector StringVector");
foreach (var item in convertedData)
Console.WriteLine("{0,-25} {1,-25}", string.Join(",", item.
NumericVector), string.Join(",", item.StringVector));
// NumericVector StringVector
// 4,6 A,Male
// 4,6 A,Female
// 4,6 A,
// 4,NaN A,Male
}
public class TransformedData
{
public float[] NumericVector { get; set; }
public string[] StringVector { get; set; }
}
public class InputData
{
[VectorType(3)]
public float[] NumericVector { get; set; }
[VectorType(3)]
public string[] StringVector { get; set; }
}
/// <summary>
/// Return a few rows of data.
/// </summary>
public static IEnumerable<InputData> GetData()
{
var data = new List<InputData>
{
new InputData
{
NumericVector = new float[] { 4, float.NaN, 6 },
StringVector = new string[] { "A", "WA", "Male"}
},
new InputData
{
NumericVector = new float[] { 4, 5, 6 },
StringVector = new string[] { "A", string.Empty, "Female"}
},
new InputData
{
NumericVector = new float[] { 4, 5, 6 },
StringVector = new string[] { "A", "NY", null}
},
new InputData
{
NumericVector = new float[] { 4, 0, float.NaN },
StringVector = new string[] { "A", null, "Male"}
}
};
return data;
}
}
}