Прогнозирование цен на квартиры с использованием двух источников цен

Вопрос или проблема

Я прошу помощи по следующей проблеме.

В наборе данных есть две подсборки – одна, где целевая переменная реальная (действительная), а другая, где она приблизительная (пока не знаю, чем они отличаются, в одной выборке реальная цена квартиры, а в другой цена из объявлений, нужно предсказать реальную, конечно). Есть идеи, что с этим делать? У меня есть две идеи – нормализовать целевую переменную из объявлений (привести ожидание и дисперсию к реальной целевой) и также модифицировать функцию потерь, чтобы она больше наказывала за ошибку на реальной целевой. Больше идей нет. Поэтому я прошу о помощи.

Обновление: Извините за скупость в деталях. Проблема заключается в прогнозировании цены квартиры, что выполняется профессиональными риэлторами. Набор данных имеет множество признаков (например, количество магазинов в некотором радиусе, расстояние до ближайшей школы и т.д.), и у нас есть две подсборки в этом наборе данных: первая – это набор данных с ценами, разработанными риэлторами, а вторая – это подсборка с ценами из объявлений. Цель состоит в том, чтобы предсказать цену так, как это делают риэлторы, но, конечно, прогнозы риэлторов дорогие, поэтому у нас недостаточно данных, и мы также используем данные из объявлений. Так что я спрашиваю, какой лучший способ обработки подсборки с целевыми значениями из объявлений.

Это обычно называется слабым контролем, шумными, ограниченными или неточными целевыми значениями.

Один из вариантов – обучить заместительную модель. Используйте цены риэлторов как истинные значения, затем обучите модель, которая “переводит” цены из объявлений, чтобы имитировать цены риэлторов.

Ответ или решение

Прогнозирование цен на квартиры с использованием двух источников цен

Ваша задача заключается в прогнозировании цен на квартиры, используя две подсистемы данных: одну с ценами, установленными профессиональными риэлторами (реальные цены), и другую с ценами, взятыми из рекламных объявлений (приближенные цены). Это распространенная проблема, связанная с «слабым обучением» и наличием шума в целевых значениях. Ниже приведены несколько стратегий, которые помогут вам более эффективно использовать имеющиеся данные.

1. Нормализация целевых значений из объявлений

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

  • Анализ корреляции: Сначала проведите анализ корреляции между ценами риэлторов и ценами из объявлений. Это поможет вам понять, как сильно они различаются и какую корректировку нужно провести.

  • Калибровка: Используйте подходы к калибровке, такие как «построение модели» для определения функции, которая преобразует цены объявлений в более реалистичные прогнозы. Например, вы можете применить линейную или полиномиальную регрессию, которая преобразует цены из объявлений в цены риэлторов.

  • Статистическая нормализация: Примените Z-преобразование или Min-Max нормализацию для приведения обоих наборов данных к сопоставимым диапазонам.

2. Модификация функции потерь

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

  • Взвешенная функция потерь: Разработайте функцию потерь, в которой ошибки для реальных цен будут иметь больший вес, чем ошибки для цен из объявлений. Например:
    [
    L = \alpha \cdot L{\text{real}} + (1 – \alpha) \cdot L{\text{ads}}
    ]
    где ( L{\text{real}} ) — функция потерь для реальных цен, ( L{\text{ads}} ) — функция потерь для цен из объявлений, а ( \alpha > 0.5 ) определяет вес ошибок реальных цен.

  • Кросс-валидация: Рассмотрите возможность использования кросс-валидации с учетом различных подмножеств данных, чтобы удостовериться в устойчивости вашей модели к шуму в данных.

3. Использование модели-суррогата

Вы также можете создать модель-суррогат, которая будет «переводить» цены из рекламных объявлений в цены риэлторов. Это может быть реализовано через несколько этапов:

  • Создание модели: Используйте данные риэлторов в качестве Ground Truth для обучения модели, которая будет направлена на прогнозирование реальных цен на основе цен из объявлений и других доступных признаков.

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

4. Применение методов машинного обучения

Независимо от выбранного подхода, обязательно протестируйте несколько алгоритмов машинного обучения, таких как:

  • Регрессия (линейная, полиномиальная)
  • Деревья решений и ансамбли (например, Random Forest или Gradient Boosting)
  • Методы глубокого обучения (например, нейронные сети)

Применение ансамблей моделей может помочь повысить точность ваших прогнозов.

Заключение

Объединение данных из двух источников — это задача, требующая тщательного подхода и настройки. Нормализация, модификация функции потерь, использование модели-суррогата и применение методов машинного обучения — все эти методы могут помочь в достижении лучшего результата. Помните, что тестирование и валидация модели на различных подвыборках данных также играют критически важную роль для создания надежных и устойчивых прогнозов цен на квартиры.

Оцените материал
Добавить комментарий

Капча загружается...