ML.NET прогнозирует количество заказов клиентов - PullRequest
0 голосов
/ 31 мая 2019

Мне нужно предсказать количество заказов каждого данного клиента.

У меня есть данные в приведенной ниже схеме. Эти данные в основном являются заказами клиентов с середины 2018 года. В нем более 2000 строк (не так много данных, но это то, что я получил)


Схема и объяснение полей :

CustomerId: идентификатор клиента из БД

ProductId: идентификатор продукта из DB

ProductTypeId: идентификатор подтипа продукта. например, если вода является продуктом, подтипом может быть газированная, минеральная и т. д.

Quantity: заказанное количество. Это должно быть предсказано

CDate: это дата создания заказа.


Что мне нужно, это , я должен быть в состоянии предоставить ProductId, ProductTypeId, ClientId и CDate (это будет в будущем), и я должен вернуть то, что Quantity данный клиент мог заказать.


До сих пор я пытался сделать это, используя данные регрессионные образцы с сайта ML.NET. Они не работают, так как количество всегда предсказывается равным нулю.

При дальнейших исследованиях я обнаружил, что это из-за поля CDate. Таким образом, после преобразования этого категориального поля в число с использованием OneHotEncoding, прогноз больше не был нулевым, но он также не был точным. Тестовые данные и прогнозные значения были далеко.

Оказывается, это неправильный метод для обработки дат.

Я пытался найти ресурсы, в которых прогноз основан на дате и других функциях, но не смог их найти. У такси-прогноза нет даты. Другие образцы не связаны с тем, что мне нужно.


Какое решение я могу использовать? Временные ряды? Как мне тренироваться, если я хочу предсказать покупку по клиенту / по продукту / по типу продукта и по дате?

Я новичок в машинном обучении. Любые указатели помогут. Ненавижу спрашивать, но рабочее решение в ML.NET помогло бы мне долгий путь.

Если это невозможно в ML.NET, тогда я открыт для использования Python (новичок в этом тоже!) И готов учиться.

Спасибо.


Файл данных можно скачать здесь .

...