Огромная потеря точности после десериализации модели машинного обучения, созданной с помощью sklearn2pmml в Java - PullRequest
2 голосов
/ 07 мая 2020

Я создал модель машинного обучения на Python с помощью scikit-learn. Я использовал sklearn2pmml для сериализации, чтобы я мог использовать его в своем веб-приложении Java. Я использую библиотеку pmml4s в Java для десериализации модели.

Я использовал модель для прогнозирования тех же значений в Python и Java. Результаты Python слева, результаты Java справа. Неправильно предсказанные значения обведены синим.

enter image description here

Как вы можете видеть, модель делает только одну ошибку в Python, но делает 4 в Java.

Все, что я делаю в python, - это обучаю свою модель как обычно и вызываю этот код для ее сериализации:

sklearn2pmml(pipeline, "DecisionTree.pmml", with_repr = True)

В Java Я десериализую алгоритм, используя:

 Model model = Model.fromFile("src\\main\\resources\\DecisionTree.pmml");

Может ли кто-нибудь на основании этого объяснить потерю точности?

1 Ответ

0 голосов
/ 09 июня 2020

Если вы сомневаетесь в результатах библиотеки, вы можете открыть вопрос в github: https://github.com/autodeployai/pmml4s/issues. Сопровождающие проекта помогут вам разобраться в вашей проблеме.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...