【发布时间】: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”)
为什么说“功能”不存在?
【问题讨论】:
-
也许可以尝试将
Concatenate放在SdcaLogisticRegression培训师之前,看看是否可行。