[英]System.InvalidOperationException: 'All instances skipped due to missing features.' Is the error coming from the dataset or the code?
I'm trying to learn ML.Net and C# for a school problem, tried to find similar questions but none of them solved my problem.我正在尝试为学校问题学习 ML.Net 和 C#,试图找到类似的问题,但没有一个解决了我的问题。
How can I fix this problem?我该如何解决这个问题?
Is the error coming from the dataset or the code?错误来自数据集还是代码?
class ML_BankModel
{
static readonly string _dataPath = Path.Combine(Environment.CurrentDirectory, "BankDataSet", "Churn_Modelling.csv");
static readonly string _modelPath = Path.Combine(Environment.CurrentDirectory, "BankDataSet", "Churn_Modelling.csv");
static void Main(string[] args)
{
var mlContext = new MLContext();
var trainData = mlContext.Data.LoadFromTextFile<AccountBankModel>(path: _dataPath,
separatorChar: ',',
hasHeader: true
);
var estimator = mlContext.Transforms.Conversion.ConvertType(outputColumnName: "Label", inputColumnName: "Target", DataKind.Boolean)
.Append(mlContext.Transforms.Categorical.OneHotEncoding(outputColumnName: "GeographyEncoded", inputColumnName: "Geography"))
.Append(mlContext.Transforms.Categorical.OneHotEncoding(outputColumnName: "GenderEncoded", inputColumnName: "Gender"))
.Append(mlContext.BinaryClassification.Trainers.FastTree())
.Append(mlContext.Transforms.Conversion.ConvertType(outputColumnName: "PredictedLabel", inputColumnName: "Label", DataKind.Boolean));
var dataPreview = trainData.Preview();
var transformationPreview = estimator.Preview(trainData);
}
class AccountBankModel
{
[LoadColumn(2)]
public int CustomerId { get; set; }
[LoadColumn(4)]
public float CreditScore { get; set; }
[LoadColumn(5)]
public string Geography { get; set; }
[LoadColumn(6)]
public string Gender { get; set; }
[LoadColumn(7, 12), ColumnName("Features")]
public float FeatureVector { get; set; }
[LoadColumn(13)]
public float Target { get; set; }
}
The problem was the dataset, after making an alteration and saving it everything is running fine.问题是数据集,在进行更改并保存后一切正常。 The alteration was change the 'Exited' to something else and reverting it again to 'Exited'.
更改是将“退出”更改为其他内容,然后再次将其恢复为“退出”。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.