Предоставление широты и долготы модели цены на жилье

Aug 15 2020

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

house_price_features = ['Rooms', 'Bathroom', 'Landsize', 'Latitude', 'Longitude']

Комнаты, ванные комнаты и земельный участок имеют для меня смысл, но широта и долгота? Очевидно, что существует корреляция между местоположением и ценой, но она не будет плавной кривой. Иногда подъем квартала увеличивает цены на жилье вдвое; иногда это вообще не будет иметь никакого эффекта. Интуитивно я чувствую, что все, что модель может делать с этими функциями при прогнозировании цены, - это перебор. Итак, у меня двоякий вопрос:

  1. Были ли они правы, дав этой модели широту и долготу для прогнозирования цены, или эта посторонняя информация может только навредить модели? Зачем?
  2. Если ответ на вышеуказанный вопрос - «нет», существует ли какое-либо преобразование данных широты и долготы (т. Е. В идентификаторы района), которое могло бы сделать эти данные более полезными?

Ответы

9 MichaelM Aug 15 2020 at 23:56

Ответ - да, потому что местоположение обычно является основным фактором роста цен на жилье за ​​квадратный фут. Его падение, вероятно, резко ухудшило бы характеристики модели.

Древовидные методы, основанные на широте и долготе, делят карту на прямоугольные части. Чем сильнее эффект и чем больше данных в определенной области, тем меньше кусочки. В менее плотных регионах кусочки не были бы слишком маленькими.

Вы не стали бы добавлять их как линейные эффекты в линейную регрессию. Здесь вам нужно будет рассмотреть разные подходы. Простым было бы представить каждую широту / долготу кубическим сплайном и добавить условия взаимодействия между ними.