【问题标题】:ML.net - Bad value at line 1 in column labelML.net - 列标签中第 1 行的错误值
【发布时间】:2018-05-09 01:27:08
【问题描述】:

我正在关注 ML.Net 的 Iris tutorial,我输入了说明而不是复制/粘贴它们,以便更好地学习 API,但现在我遇到了一些错误。

当我从教程中运行这一行时,会抛出 System.Reflection.TargetInvocationException

var model = pipeline.Train<IrisData, IrisPrediction>();

我在运行时遇到的控制台错误是:

  Bad value at line 2 in column Label
  ...
  Bad value at line 8 in column Label
  Suppressing further bad value messages
  ...
Processed 150 rows with 150 bad values and 0 format errors
Warning: Term map for output column 'Label' contains no entries.
Automatically adding a MinMax normalization transform, use 'norm=Warn' or 'norm=No' to turn this behavior off.
Using 2 threads to train.
Automatically choosing a check frequency of 2.
  Bad value at line 1 in column Label
  ...
  Suppressing further bad value messages
Processed 150 rows with 150 bad values and 0 format errors
Warning: Skipped 150 instances with missing features/label during training

这是我的IrisData 课程:

namespace Ronald.A.Fisher
{
    public class IrisData
    {
        [Column("0")]
        public float SepalLength;
        [Column("1")]
        public float SepalWidth;
        [Column("2")]
        public float PetalLength;
        [Column("3")]
        public float PetalWidth;
        [Column("4")]
        [ColumnName("Label")]
        public float Label;
    }

【问题讨论】:

    标签: c# machine-learning ml.net


    【解决方案1】:

    看了一会儿后,我意识到我的一个列的数据类型不正确。

    在用于加载学习数据的类IrisData中,我为Label使用了不正确的数据类型。因此控制台消息:Bad value at line 1 in column Label

    为了解决这个问题,我将Label 字段的数据类型从float 更改为string

    public class IrisData
    {
        ...
        [ColumnName("Label")]
        public string Label;
    }
    

    【讨论】:

      猜你喜欢
      • 2020-09-18
      • 2020-04-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-02
      • 2018-08-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多