Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/300.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在.NET Framework 4.6.1应用程序中预测/评分XGBoost或LightGBM_C#_Xgboost_Lightgbm_Ml.net_Onnx - Fatal编程技术网

C# 如何在.NET Framework 4.6.1应用程序中预测/评分XGBoost或LightGBM

C# 如何在.NET Framework 4.6.1应用程序中预测/评分XGBoost或LightGBM,c#,xgboost,lightgbm,ml.net,onnx,C#,Xgboost,Lightgbm,Ml.net,Onnx,我有一个机器学习问题,我使用LightGBM和XGBoost在训练/测试数据上都获得了很好的结果。下一步是将这些模型中的一个模型的预测结果输入到现有的C#应用程序(.NET Framework 4.6.1)是否有任何库可以帮助我这样做?到目前为止,我所尝试的: :应适用于LigthGBM,但由于它仅适用于.NET Core :这应该能够预测ONNX模型,我设法从我的XGBoost模型创建了一个ONNX模型。但Windows.ML似乎只适用于UWP应用程序,至少所有示例都是UWP :此库具有指向

我有一个机器学习问题,我使用
LightGBM
XGBoost
在训练/测试数据上都获得了很好的结果。下一步是将这些模型中的一个模型的预测结果输入到现有的C#应用程序(.NET Framework 4.6.1)是否有任何库可以帮助我这样做?到目前为止,我所尝试的:

  • :应适用于
    LigthGBM
    ,但由于它仅适用于.NET Core
  • :这应该能够预测ONNX模型,我设法从我的
    XGBoost
    模型创建了一个ONNX模型。但Windows.ML似乎只适用于UWP应用程序,至少所有示例都是UWP
  • :此库具有指向
    XGBoost
    的接口。不幸的是,它不支持我所依赖的样本权重
  • CNTK:尝试加载ONNX文件(类似于),但get:错误:CNTK中不支持ONNX(TreeEnsembleClassifier)

有什么建议吗,或者我必须等待ML.NET来修复这个错误吗?

我能够在
net461
控制台应用程序中使用LightGBM。只有在使用
packages.config
管理NuGet软件包时,才会出现上述错误。为了解决LightGBM nuget包中列出的bug,您可以采取以下方法之一:

  • 使用新的“SDK样式”.csproj,但将TargetFramework设置为
    net461
  • 
    Exe
    net461
    win-x64
    总是
    
    我能够在
    net461
    控制台应用程序中使用LightGBM。只有在使用
    packages.config
    管理NuGet软件包时,才会出现上述错误。为了解决LightGBM nuget包中列出的bug,您可以采取以下方法之一:

  • 使用新的“SDK样式”.csproj,但将TargetFramework设置为
    net461
  • 
    Exe
    net461
    win-x64
    总是
    
    由于您有一个ONNX模型,您可以使用C#中的CNTK来阅读和预测它。我承认,做这件事并不是件小事。本文档可能会有所帮助-谢谢你的建议@Jon。我在我的ONNX文件中尝试了这一点,当尝试加载文件时,我得到:错误:CNTK不支持ONNX(TreeEnsembleClassifier)。现在,我已经在上面的“我迄今为止所做的尝试”中添加了这一点,因为您有一个ONNX模型,您可以使用C#中的CNTK来阅读和预测它。我承认,做这件事并不是件小事。本文档可能会有所帮助-谢谢你的建议@Jon。我在我的ONNX文件中尝试了这一点,当尝试加载文件时,我得到:错误:CNTK不支持ONNX(TreeEnsembleClassifier)。现在,我已将此添加到上面的“到目前为止我已经尝试过的内容”中