Прогнозирование цены с использованием модели данных регрессии - PullRequest
0 голосов
/ 24 февраля 2020

Я построил модель данных регрессии, чтобы предсказать цену дома по нескольким независимым переменным. И я получил уравнение регрессии с коэффициентом. Я использовал StandardScaler (), чтобы масштабировать мои переменные перед разделением набора данных. И теперь я хочу предсказать цену дома, когда мне будут даны новые значения для независимых переменных, используя мою модель регрессии для этой вещи, могу ли я напрямую использовать значения для независимых переменных и рассчитать цену? или перед включением значений для независимых переменных я должен передать значения через метод StandardScaler () ??

Ответы [ 2 ]

1 голос
/ 24 февраля 2020

Чтобы ответить на ваш вопрос, да, вы также должны обработать свой тестовый ввод, но примите во внимание следующее объяснение.

StandardScaler () стандартизирует функции путем удаления среднего значения и масштабирования до дисперсии единиц

Если вы устанавливаете масштабатор на весь набор данных, а затем разделяете его, Scaler учитывает все значения при вычислении среднего значения и дисперсии.

В идеале тестовый набор не должен предварительно обрабатываться с данными обучения. Это обеспечит отсутствие «заглядывания вперед». Данные поезда должны быть предварительно обработаны отдельно, и после создания модели мы можем применить те же параметры предварительной обработки, которые использовались для набора поездов, к набору тестов, как если бы набор тестов ранее не существовал.

1 голос
/ 24 февраля 2020

Да, вам необходимо предварительно обработать новые значения. Если вы масштабировали свои тренировочные данные и подгоняли модель к этим масштабированным данным, тогда любые новые данные, введенные в модель, должны проходить в go эквивалентной предварительной обработке. также. Это стандартная практика, поскольку она гарантирует, что в качестве входных данных модели всегда предоставляется набор данных согласованной формы. Предостережение заключается в том, что вы должны использовать transform вместо fit_transform.

. Процесс может выглядеть следующим образом:

scaler = StandardScaler()
X_train = scaler.fit_transform(X_train)
new_data = scaler.transform(new_data)

. Подробная информация по этой теме c на другой ветке , которая может вас заинтересовать.

...