gpt4 book ai didi

c# - Unity 中的 ML.NET

转载 作者:太空宇宙 更新时间:2023-11-03 22:38:12 24 4
gpt4 key购买 nike

我不知道如何在 Unity 中使用 ML.NET。

我做了什么:将我的项目转换为与框架 4.x 兼容。将 api 兼容性级别转换为框架 4.x。创建 assets/plugins/ml 文件夹并放入具有相应 xml 的 Microsoft.ML api。将所有 ml.dlls 平台设置标记为仅 86_64 兼容(这是多余的)。

我现在可以:调用ML api,创建MlContext、TextLoader,进行模型训练。训练模型后,我还可以评估训练后的模型,但是...

我不能:尝试从模型中获取预测时出现错误: github comment on issue from 28.12.18 (那里还有一个完整的项目,你可以在那里看到代码)相同的代码适用于 visual studio 解决方案。

 public float TestSinglePrediction(List<double> signal, MLContext mlContext, string modelPath)
{
ITransformer loadedModel;
using (var stream = new FileStream(modelPath, FileMode.Open, FileAccess.Read, FileShare.Read))
{
loadedModel = mlContext.Model.Load(stream);
}
var predictionFunction = loadedModel.MakePredictionFunction<AbstractSignal, PredictedRfd>(mlContext);
var abstractSignal = new AbstractSignal()
{
Sig1 = (float)signal[0],
Sig2 = (float)signal[1],
Sig3 = (float)signal[2],
Sig4 = (float)signal[3],
Sig5 = (float)signal[4],
Sig6 = (float)signal[5],
Sig7 = (float)signal[6],
Sig8 = (float)signal[7],
Sig9 = (float)signal[8],
Sig10 = (float)signal[9],
Sig11 = (float)signal[10],
Sig12 = (float)signal[11],
Sig13 = (float)signal[12],
Sig14 = (float)signal[13],
Sig15 = (float)signal[14],
Sig16 = (float)signal[15],
Sig17 = (float)signal[16],
Sig18 = (float)signal[17],
Sig19 = (float)signal[18],
Sig20 = (float)signal[19],
RfdX = 0

};
var prediction = predictionFunction.Predict(abstractSignal);
return prediction.RfdX;
}

这是返回错误行的方法: var predictionFunction = loadedModel.MakePredictionFunction<AbstractSignal, PredictedRfd>(mlContext);

最佳答案

从 Unity 2018.1 开始,unity 可以面向 .net 4.x。因此,您需要将 .net 版本设置为 .NET 4.x Equivalent 或 .net standard 2.0 ( https://blogs.unity3d.com/2018/03/28/updated-scripting-runtime-in-unity-2018-1-what-does-the-future-hold/ ),并确保将 dll 添加到项目中作为 visual studio 中的引用。如果你不添加它作为引用,那么 visual sudio 就不知道它。

关于c# - Unity 中的 ML.NET,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53781312/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com