【问题标题】:ML_Net It says 'Features' is there but it doesn't existML_Net 它说“功能”存在但不存在
【发布时间】:2021-11-22 02:56:35
【问题描述】:
 public class TextData
{
    [LoadColumn(0)]
    public string Subject { get; set; }

    [LoadColumn(1), ColumnName("Valid")]
    public bool Valid { get; set; }

    [LoadColumn(2)]
    public string Text { get; set; }
}

public class Prediction_Subejct : TextData
{
    [ColumnName("PredictedLabel")]
    public bool Prediction { get; set; }

    public float Probability { get; set; }

    public float Score;

    [ColumnName("PredictedSub")]
    public string SubFeatures { get; set; }
}

上面的代码是我创建的类。

static IEstimator<ITransformer> Subject_ProcessData()
    {
        var subjectModel = _mlContext.Transforms.Conversion.MapValueToKey(inputColumnName: "Subject", outputColumnName: "Labels")
           .Append(_mlContext.Transforms.Text.FeaturizeText(inputColumnName: "Text", outputColumnName: "TextFeaturized"))
           .Append(_mlContext.BinaryClassification.Trainers.SdcaLogisticRegression(labelColumnName: "Valid", featureColumnName: "Features"))
           // Features 에 데이터를 연결
           .Append(_mlContext.Transforms.Concatenate("Features", "TextFeaturized"))
           
           // DataView 캐쉬
           .AppendCacheCheckpoint(_mlContext);

        return subjectModel;
    }

上面的代码是我创建的管道。

 var Pipeline = pipeline.Append(_mlContext.MulticlassClassification.Trainers.SdcaMaximumEntropy("Label", "Features"))
        .Append(_mlContext.Transforms.Conversion.MapKeyToValue("PredictedLabel"));

        var model = Pipeline.Fit(_trainingDataView);

运行 Fit() 出错。

未处理的异常。 System.ArgumentOutOfRangeException:找不到功能列“Features”(参数“inputSchema”)

为什么说“功能”不存在?

【问题讨论】:

标签: c# ml.net


【解决方案1】:

"Features" 在 Concatenate 方法中是保留的,它后面需要一个特征数组。因此,您需要更改此名称。

执行以下操作:

var subjectModel=_mlContext.Transforms.Conversion.MapValueToKey(inputColumnName: "Subject", outputColumnName: "Labels")
   .Append(_mlContext.Transforms.Text.FeaturizeText(inputColumnName: "Text", outputColumnName: "TextFeaturized"))
.Append(_mlContext.Concatenate("Features", new[] {"TextFeaturized"})

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-01-13
    • 2012-01-24
    • 1970-01-01
    • 1970-01-01
    • 2015-06-16
    • 1970-01-01
    • 1970-01-01
    • 2020-10-31
    相关资源
    最近更新 更多