Lohnt es sich für eine Baufirma an einem bestimmten Ort neue Wohnungen zu bauen? Sind die Mietpreise einer Immobilienverwaltung marktüblich? Wie wirkt sich eine neue Autobahnausfahrt, ein neuer Bahnanschluss auf die Mietpreise aus? Solche Fragen wollen wir anhand von Wohnungsinseraten und dem Machine-Learning-Algorithmus Random Forest beantworten.

In diesem Blogbeitrag zeigen wir, wie sich Mietpreise mit dem ArcGIS Pro Werkzeug Forest-based Classification and Regression vorhersagen lassen.

Datengrundlage

Als Datengrundlage verwenden wir rund 13‘300 Wohnungsinserate im Kanton Schaffhausen, welche Informationen zum Mietpreis (Preis pro m2 pro Jahr), Anzahl Zimmer, Fläche, Etage und Wohnungstyp beinhalten.

Abbildung 1: Wohnungsinserate im Kanton Schaffhausen

Die folgende Abbildung zeigt uns den Mittelwert der Mietpreise in jedem Hektarraster der bewohnten Gebiete. Grün steht für die tiefsten, gelb für mittlere und rot für die höchsten Preise. Eine visuelle Beurteilung ist schwierig, man sieht höchstens, dass die Preise in der Stadt Schaffhausen grundsätzlich etwas höher sind als im Rest des Kantons. Außerdem haben viele Hektarraster keine Daten, da in den entsprechenden Gebieten im Untersuchungszeitraum keine Wohnungsinserate vorliegen.

Abbildung 2: Mittelwerte von Mietpreisen basierend auf den Wohnungsinseraten pro Hektar

Anhand einer simplen Berechnung des Mittelwerts aller Mietpreise von Wohnungsinseraten in einem Hektarraster kann keine sinnvolle Aussage getroffen werden. Wir machen uns also auf die Suche nach möglichen Variablen, welche den Mietpreis beeinflussen und wollen mit diesen ein Modell trainieren.

Mit Hilfe von Spatial Joins und Enrichment erweitern wir die Wohnungsinserate um soziodemographische Variablen wie Kaufkraft, Bevölkerungs- und Haushaltszahlen, Steuerbelastung, Leerwohnungsstand und viele mehr.

Modell trainieren – Resultate interpretieren

Für das Trainieren des Modells verwenden wir das Werkzeug „Forest-based Classification and Regression“, in welches der Random Forest Algorithmus von Leo Breiman integriert ist. Dieser Algorithmus trainiert ein Modell anhand erklärender Variablen, welches anschließend eine Vorhersage der abhängigen Variable erlaubt. Der Begriff Vorhersage umfasst in diesem Sinne:

  • die Prognose zukünftiger Werte bei einer Änderung einer oder mehrerer erklärenden Variablen (z.B. Mietpreisänderung beim Bau einer neuen Bahnhaltestelle)
  • das Auffüllen fehlender Werte (z.B. flächendeckende Werte für Mietpreise)
  • ein Downscaling (z.B. wenn ein Phänomen nur auf Stufe Kanton bekannt ist, aber Werte auf Gemeindeebene erforderlich sind)

Ein großer Vorteil dieses Werkzeugs gegenüber der Regressionsanalyse ist, dass auch kategorische Daten berücksichtigt werden können.

Wir übergeben dem Werkzeug die, um die soziodemographischen Daten erweiterten, Wohnungsinserate und selektieren die erklärenden Variablen. In diesem Fall haben wir die entscheidenden Variablen bereits in einem iterativen Prozess vorevaluiert. Zusätzlich fügen wir erklärende Distanz-Features, wie etwa Schulen, Einkaufsmöglichkeiten, Haltestellen des öffentlichen Verkehrs sowie erklärende Rasterdaten hinzu. Bei den Rasterdaten handelt es sich um Informationen zur Lärmbelastung und Topografie.

Die Gefahr einer Überanpassung (Overfitting) wird übrigens minimiert, indem beim Trainieren des Modells standardmäßig nur 90% der Daten verwendet werden. 10% der Daten werden für die Validierung zurückgehalten. Außerdem wird jeder Entscheidungsbaum nur auf der Basis von 2/3 der Features und der Attribute trainiert. Diese und weitere zusätzliche Parameter können im Werkzeug angepasst werden.

Abbildung 3: Trainieren des Modells

Als Resultat erhalten wir zahlreiche Informationen zum trainierten Modell. Im Bereich „Top Variable Importance“ sind diejenigen Variablen aufgelistet, welche bei der Vorhersage des Mietpreises den größten Einfluss haben. Nach Fläche, Zimmer und Kaufkraft kommen bereits Distanz-Attribute wie die Nähe zu einem Park, einem Restaurant oder zu Einkaufsmöglichkeiten.

Der Bereich „Validation Data: Regression Diagnostics“ zeigt auf, wie gut unser Modell die, für die Validierung zurückgehaltenen 10% der Daten, vorhergesagt hat. Hier sind R-Squared-Werte von 0 bis 1 möglich. Unser Model hat einen Wert von 0.820, was ein gutes Resultat ist. Dieser Wert ist aber nur aussagekräftig, wenn der Validation Share jeder erklärenden Variable möglichst nahe bei 1 liegt (siehe Bereich „Explanatory Variable Range Diagnostics“). Außerdem kann er bei jedem Durchlauf aufgrund der Zufälligkeit (also dem random im random forest) leicht variieren. Indem man einen Wert in der Umgebungseinstellung „Random Number Generator“ setzt, ändert das Modell nicht bei jeder Ausführung. Die Zufälligkeit im Modell bleibt, sie ist jedoch konsistent in jedem Durchlauf.

Abbildung 4: Ausgabe des Werkzeugs „Forest-based Classification and Regression“

Die Funktionsweise des Werkzeugs und die Interpretation der Resultate sind in der Tool-Dokumentation ausführlich beschrieben. Es lohnt sich auf jeden Fall, sich diese vor der Verwendung des Werkzeugs zu Gemüte zu führen.

Mietpreise vorhersagen

Nachdem wir nun ein gutes Modell trainiert haben, ändern wir den Prediction Type auf „Predict to features“ und übergeben dem Werkzeug neben den Trainingsdaten einen flächendeckenden Punktdatensatz auf Hektarbasis. Dieser Datensatz enthält dieselben erklärenden Variablen wie der Trainingsdatensatz. Die Variablen Fläche, Zimmer und Wohnungstyp haben die Werte einer Durchschnittswohnung basierend auf den ausgewerteten Wohnungsinseraten (3,5 Zimmer, 85m2, Wohnung, 1. Etage).

Als Resultat erhalten wir pro Hektarrasterpunkt eine Vorhersage für den Mietpreis (pro m2 pro Jahr) dieser Durchschnittswohnung. Daraus erstellen wir mit dem Werkzeug „Point To Raster“ einen Rasterdatensatz.

Abbildung 5: Mietpreise im Kanton Schaffhausen von tief (grün) bis hoch (rot)

Mit diesem Ergebnis können wir nun die Fragen beantworten, ob es sich für eine Baufirma lohnt, an einem bestimmten Ort neue Wohnungen zu bauen oder ob die Mietpreise einer Immobilienverwaltung marktüblich sind. Wir können die erklärenden Variablen nach Bedarf anpassen, indem wir beispielsweise eine Autobahnausfahrt oder einen Bahnanschluss hinzufügen und Mietpreise für diese neue Situation ableiten.

Schlussfolgerung

Wie so oft in der räumlichen Datenanalyse ist die Datenbeschaffung und -bereinigung ein explorativer und iterativer Prozess, der sehr zeitaufwändig ist. Es gibt auch keine Garantie für ein gutes Modell, denn vielleicht erklären die vermeintlich erklärenden Variablen das gesuchte Phänomen gar nicht. Gut möglich, dass die Daten gar nicht oder nur in einer aggregierten Form verfügbar sind. Oder sie sind von ungenügender Qualität (Stichwort garbage in – garbage out).

Tatsache ist aber auch, dass das Werkzeug mit diesem großartigen Algorithmus reibungslos funktioniert und die Resultate übersichtlich und hilfreich präsentiert werden. Works like a charm!

Lizenzierung

Das Werkzeug ist in der Spatial Statistics Toolbox integriert.

Für die Verwendung von Trainings-Entfernungs-Features, ist eine Advanced-Lizenz erforderlich.

Für die Verwendung von erklärenden Trainings-Rasterdaten ist eine Spatial Analyst-Extension erforderlich.

Weitere Ressourcen

Funktionsweise des Werkzeugs „Forest-basierte Klassifizierung und Regression“

Wenn Sie Fragen zum Thema haben, nehmen Sie gerne mit uns Kontakt auf: m.oberholzer@esri.ch