"Entry point 'Trainers.FastTreeRegressor' not found" 在 Microsoft.ML

"Entry point 'Trainers.FastTreeRegressor' not found" in Microsoft.ML

我正在尝试使用 Microsoft.ML 中的 FastTreeRegressor 构建 ML 模型,将代码从 Taxi Fare Prediction 教程中复制到我现有的环境中,在那里我可以交换数据和一些参数.全部构建成功,但 运行 产生错误:

System.InvalidOperationException: 'Entry point 'Trainers.FastTreeRegressor' not found'

我该如何解决这个问题?


旁注:我排除了代码示例,因为教程包含它们,并且提前知道答案(见下文),它们不会添加到解决方案中-问题的能力。

查看错误,它似乎与格式不正确的 EXE 非常相似。这让我注意到我没有在我的 EXE 项目中添加对 Microsoft.ML 的引用,只有一个 class 库。

将 Nuget 包添加到我的控制台项目引入了编译时错误,我必须为 x64 构建该错误(与 Any CPU 相比),但同时执行这两项操作解决了问题。

值得注意:配置为x64且未添加Nuget包时确实会出现该错误; 两个步骤都需要执行。


查看 Nuget 的日志,我还看到:

Generating MSBuild file [project file].csproj.nuget.g.props.
Generating MSBuild file [project file].csproj.nuget.g.targets.
Writing lock file to disk. Path: [project directory]\obj\project.assets.json

这似乎证实了这个包比一些更根深蒂固,解释了要求。不足为奇。