"Точка входа" Trainers.FastTreeRegressor "не найдена" в Microsoft.ML

Я пытаюсь построить модель ML с помощью FastTreeRegressor в Microsoft.ML, копируя код из учебника по прогнозированию тарифов такси в мою существующую среду, где я могу поменять местами данные и некоторые параметры. Все успешно строится, но при запуске выдает ошибку:

System.InvalidOperationException: 'Точка входа'Trainers.FastTreeRegressor'не найдена'

Как я могу это исправить?


Примечание: я исключил примеры кода, потому что учебник включает их, и зная ответ заранее (см. Ниже), они не добавят к решению вопроса.

1 ответ

Решение

Глядя на ошибку, она выглядела довольно похоже на неправильно отформатированный EXE. Это заставило меня заметить, что я не добавил ссылку на Microsoft.ML в свой проект EXE, только библиотеку классов.

Добавление пакета Nuget в мой консольный проект привело к ошибке времени компиляции, которую я должен был собрать для x64 (по сравнению с любым процессором), но выполнение обеих этих проблем решило проблему.

Стоит отметить: ошибка возникает, когда конфигурация x64, а пакет Nuget не был добавлен; оба шага должны быть выполнены.


Глядя на логи от Nuget, я также вижу:

Создание файла MSBuild [файл проекта].csproj.nuget.g.props.
Создание файла MSBuild [файл проекта].csproj.nuget.g.targets.
Запись файла блокировки на диск. Путь: [каталог проекта]\ obj \ project.assets.json

Которые, кажется, подтверждают, что пакет немного более глубоко укоренился, чем некоторые, объясняя требование. Неудивительно.

Другие вопросы по тегам