Попытка понять массив предсказаний регрессии SKLearn - PullRequest
1 голос
/ 11 января 2020

Я очень новичок в Python программировании и еще новее в SKLearn и ML. Поэтому, пожалуйста, прости мое невежество по этим предметам.

Я начал экспериментировать с регрессионными моделями и кодом SKLearn, но столкнулся с фундаментальной проблемой понимания результатов этого экспериментального кода.

Учитывая код ниже я пытаюсь выяснить, каков результат функции предсказания () модели LinearRegression по отношению к гипотетическим ежедневным показателям продаж элемента, хранящимся в массиве sales_data.

import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression

sales_data = [3, 7, 2, 4, 6, 8, 5, 10, 9, 6, 4, 7, 11, 6, 3, 1, 4, 5, 8, 10, 7] # May be a much larger array in int's

x_train = []
y_train = []
x_test = []
y_test = []
X = sales_data
Y = sales_data

x_train, x_test, y_train, y_test = train_test_split(X, Y, test_size = 0.25, train_size = 0.75, random_state = 1)

x_train = np.array(x_train)
y_train = np.array(y_train)
x_test = np.array(x_test)
y_test = np.array(y_test)

x_train = x_train.reshape(-1, 1)
x_test = x_test.reshape(-1, 1)

lregressor = LinearRegression()
lregressor.fit(x_train, y_train)
lregressor_pred = lregressor.predict(x_test) # Trying to understand what the predicted array represents to sales_data

1 ) Представляет ли прогнозируемый массив возможные результаты продаж товара в следующие дни?

2) Упорядочен ли прогнозируемый массив от наиболее вероятного к наименее вероятному объему продаж?

Если ни один из вышеприведенное верно, пожалуйста, не могли бы вы объяснить в простых терминах, что представляет собой прогнозируемый массив и как его можно использовать для прогнозирования продаж товаров на следующие дни, или угадайте следующее целое число, которое может быть добавлено в массив sales_data.

Я также использовал похожий код с регрессией LogisticRegression и RandomForest. Ионные модели, но все еще не понимают результаты прогноза и как их использовать.

Большое спасибо

Ответы [ 2 ]

1 голос
/ 11 января 2020

1) Представляет ли прогнозируемый массив возможные результаты продаж товара в следующие дни?

Нет. Это массив прогнозов для каждой выборки в x_test.

2) Упорядочен ли прогнозируемый массив от наиболее вероятного до наименее вероятного показателя продаж?

Нет , Заказывается в том же порядке, в котором заказан x_test.

0 голосов
/ 24 января 2020

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

import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression

sales_data = [3, 7, 2, 4, 6, 8, 5, 10, 9, 6, 4, 7, 11, 6, 3, 1, 4, 5, 8, 10, 7] # May be a much larger array in int's

X = list(range(0, len(sales_data)))
Y = sales_data

x_train, x_test, y_train, y_test = train_test_split(X, Y, test_size = 0.25, train_size = 0.75, random_state = 1)

x_train = np.array(x_train).reshape(-1, 1)
y_train = np.array(y_train)
x_test = np.array(x_test).reshape(-1, 1)
y_test = np.array(y_test)

x_day = len(sales_data) + 1
x_prediction = np.array([x_day]).reshape(-1, 1)

lregressor = LinearRegression().fit(x_train, y_train)
lregressor_pred = lregressor.predict(x_prediction)
lregressor_pred_list = list(np.rint(lregressor_pred)) # The returned list contains a prediction of next day's sales
...