pmml4s model.predict () возвращает массив вместо одного значения - PullRequest
0 голосов
/ 07 мая 2020

Я использовал sklearn2pmml для сериализации моего классификатора дерева решений в файл pmml. Я использовал pmml4s в java, чтобы десериализовать модель и использовать ее для прогнозирования.

Я использую приведенный ниже код, чтобы сделать прогноз по одному входящему значению. Это должно вернуть либо 0/1/2/3/4/5 / 6.

Object[] result = model.predict(new String[]{"220"});

Массив результатов после прогноза выглядит следующим образом:

enter image description here

Кто-нибудь знает, почему это происходит? Я неправильно ввел прогнозируемое значение или что-то не так с сериализацией / десериализацией?

1 Ответ

1 голос
/ 07 мая 2020

Это определенность модели для каждого класса. В вашем случае это означает, что это 4 с вероятностью 94,5% или 5 с вероятностью 5,5%. В простом случае, если вы хотите получить значение, вы должны выбрать индекс для максимального значения.

Однако вы можете использовать эти вероятности к дополнительному контролю logi c, например, пороговому значению при неоднозначном решении (два значения с вероятностью ~ 0,4, et c.)

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