问题标签 [ml.net]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1123 浏览

c# - ML.NET MakePredictionFunction 动态类型?

我能够从string[]列名中动态训练和创建我的回归模型。但是,当我尝试传入具有与 Dictionary Key Pair 属性相同的参数名称的动态对象时,它会引发错误:

System.ArgumentOutOfRangeException: 'Could not find input column '<MyColumn>''<MyColumn>模型要查找的第一个参数在哪里。

我怀疑这是因为动态对象不包含[Column]我通常会传入的标准类对象所具有的属性。

但是,我最终将拥有数百个通过转置 SQL 查询自动生成的列,因此手动键入每一列对于未来来说不是一种可行的方法。

有什么办法可以在运行时应用该属性吗?或者任何其他方式我可以一般地处理这种情况?谢谢!

0 投票
1 回答
312 浏览

.net - ML .net 读取制表符分隔的数据集

这是我第一次使用 ML.net 0.8,我在数据集中加载时遇到了麻烦。

数据预览看起来不错,但是当它尝试拟合以执行拟合操作时,我收到以下错误:

System.InvalidOperationException:'列'Streat'的值是R4,这与之前观察到的文本类型不同。'

我检查了数据,数据文件中没有文本元素,除了产品列。

样本数据集

任何建议都非常受欢迎。

0 投票
1 回答
136 浏览

c# - 将控制台应用程序转换为 UWP 应用程序错误 ML.NET

我正在尝试将 ML.NET 应用程序从 win 控制台转换为 UWP,并且我没有将文件加载到我的 ML 管道中。我收到“找不到文件”错误。

这是我的代码:

这是获取文件的代码:

这是我的对象。

我在以下行收到错误:

var model = pipeline.Train();

0 投票
1 回答
308 浏览

ml.net - CrossValidate 抛出错误 System.ArgumentOutOfRangeException: 'Score column 'Score' not found Parameter name: name'

我正在关注 GitHubLabeler 结果引发异常:System.ArgumentOutOfRangeException: 'Score column 'Score' not found Parameter name: name' 调用时发生错误

我知道它要求它,但是 GitHubLabeler 没有提供它。
在此处输入图像描述

我已经调整了代码以从 List 加载,其中 T 是具有数百个浮点值的 ViewModel,我的实现如下:

0 投票
2 回答
1334 浏览

machine-learning - 在 ML.NET 中更新经过训练的模型

这个例子展示了如何使用矩阵分解来构建推荐系统。这个例子特别适用于只有两个相关 id 的数据集,比如相应用户购买的用户 id 和产品 id。

基于此示例,我准备了如下所示的输入数据。

并更改列名,使TextLoader.

它工作得很好。它推荐目标用户可以购买的产品列表,并带有个人分数。但是,它不适用于初始输入数据中不存在的新客户数据,例如,它会根据预测UserId 1给出分数。NaN

重新训练模型可能是一个显而易见的答案,但每次有新数据进入时重新训练模型似乎是徒劳的。我认为肯定有一种方法可以更新现有模型,但我无法在任何地方找到相关文档、API 或示例。我最终在 ML.NET 的官方 github 上留下了一个问题,但到目前为止我还没有得到任何答案。

问题很简单,简而言之,如何在 ML.NET 中更新经过训练的模型?链接相关的信息来源也将不胜感激。

0 投票
2 回答
188 浏览

c# - 如何将动态类传递给泛型函数?

我想制作一个用于 Web 应用程序的机器学习 api,字段名称将与其数据类型一起传递给 api。

目前我正在使用此答案中提供的代码在运行时创建一个类:https ://stackoverflow.com/a/3862241

当我需要调用 ML.NET PredictionFunction 时出现问题,我无法传入泛型函数的类型,因为它们是在运行时生成的。我尝试使用反射来调用它,但它似乎无法找到该函数。

注意:现在 ML.NET 的文档正在更新为 0.9.0,因此它不可用。

我试过的是这个(最小):

完整(修订和修剪)源(更多上下文):Program.cs

0 投票
1 回答
776 浏览

c# - 在 ML.NET 中训练模型而不标记特征

我想训练一个具有大量特征的模型,这些特征是特定关键字是否出现在页面上。功能列表是如此之大,以至于我无法像此处的 ML.NET 教程中建议的那样标记所有这些功能。

相反,我希望能够给它一个未命名的特征列表,就像你可以在 sklearn 中使用 python 做的那样,只需给它一个特征数组[[0,0,1],[0,1,0]]和一个标签数组["ShoppingSite", "SocialNetwork"]

0 投票
2 回答
1834 浏览

c# - 如何修复“列的类型值与先前观察到的类型不同”

我正在创建一个机器学习模型,我想从文本文件中读取不同的值并使用CustomMapping. System.InvalidOperationException程序在运行时抛出CustomMapping.

我已经缩小了CustomMapping函数的原因,我正在读取的文本文件没有任何空值。我已经仔细检查了所有变量声明,并确保它们都使用正确的类型。我的预感是自定义映射将 1 和 0 解释为布尔值而不是浮点数,尽管我认为没有理由这样做。

为大量转储道歉,但问题是关于类型问题,所以我认为展示所有内容很重要。

我的管道:

我的自定义映射:

配置文件输入:

简介过程:

运行时pipeline.fit()出现以下异常:

System.InvalidOperationException:“列 'profileVisibility' 的值为 R4,这与之前观察到的 Bool 类型不同。”

我希望它能够成功完成代码而不会引发错误,实际输出将是一个 TransformerChain 模型——我知道管道还没有训练器,所以这个模型现在是无用的。

0 投票
1 回答
294 浏览

c# - MlContext 不了解我的温度类型

我是 ML.NET 的初学者,我的数据有点问题。当我将它们放入 mlContext.Fit(...); 这是我收到的错误:

这是我的代码:

因此,当我在文本文件中获取数据时,我对字符串 Column 进行编码,然后尝试训练模型,但此时我收到了错误。我的数据是:

Charleroi-Sud,Mons,Thursday,BE.NMBS.IC3831,部分晴天,-2,0,False,,1044,0 Charleroi-Sud,Mons,Thursday,BE.NMBS.IC932,大部分多云,-2,0, False,,1112,0 Charleroi-Sud,Mons,Thursday,BE.NMBS.IC3832,大部分多云,-1,0,False,,1144,0 Charleroi-Sud,Mons,Thursday,BE.NMBS.IC933,多云, -1,0,False,,1212,0 Charleroi-Sud,Mons,Thursday,BE.NMBS.IC3842,多云,-1,0,False,,2144,0 Charleroi-Sud,Mons,Thursday,BE.NMBS .IC943,多云,-1,0,False,,2212,0 Charleroi-Sud,Mons,Thursday,BE.NMBS.IC3843,多云,-1,0,False,,2247,0 Charleroi-Sud,Mons ,Friday,BE.NMBS.IC3825,部分多云,-1,0,False,,0444,0 Charleroi-Sud,Mons,Friday,BE.NMBS.IC3826,大部分多云,-1,0,False,,0544, 0 Charleroi-Sud,Mons,Friday,BE.NMBS.IC927,多云,-1,0,False,,0612,0

如您所见,数据之间有每个“,”,温度是一个整数。在 TrainData 内部,是这样完成的:

0 投票
1 回答
421 浏览

c# - 为什么 ReadFromEnumerable 方法不起作用?机器学习网络

我正在尝试重新创建以下示例https://github.com/dotnet/machinelearning/blob/master/docs/samples/Microsoft.ML.Samples/Dynamic/SsaSpikeDetectorTransform.cs 但我不断收到 DataOperations 没有的错误t 包含 ReadFromEnumerable 方法的定义。我还收到 CreateEnumerable 方法不存在的错误,但我怀疑它与 ReadFromEnumerable 错误有关。

我已经复制了整个命名空间和代码,以防我可能遗漏了什么,但错误仍然存​​在。

从 Enumerable 方法中读取

CreateEnumerable 方法