Faza 2: Opracowanie modelu
Podczas fazy 1 tego projektu, badaliśmy zmienne istotne w przewidywaniu zmiennej DeszczJutro. Po imputacji brakujących danych i sprawdzeniu korelacji, określiliśmy 8 zmiennych jako najbardziej znaczące predyktory: Humidity9am, Humidity3pm, Cloud9am, Cloud3pm, WindGustSpeed, Temp3pm, HumidityDiff, and TempDiff. Włączając zmienną odpowiedzi, RainTomorrow, do naszej listy, stworzyliśmy nowy zbiór danych.
Następnie podzieliliśmy zbiór danych, z 70% danych tworzących zbiór treningowy i 30% trafiających do zbioru testowego. Użyliśmy 3 różnych technik budowania modeli, aby określić, która z nich będzie najdokładniejsza: drzewa klasyfikacyjne, lasy losowe i sieci neuronowe. Zbadaliśmy również znaczenie wybranych przez nas zmiennych w modelach lasów losowych i sieci neuronowych.
Jak widzimy powyżej, wilgotność wydaje się być jednym z najsilniejszych predyktorów w naszym modelu lasów losowych. Jednak sieć neuronowa kładzie większy nacisk na różnicę temperatur, a wilgotność ma znacznie mniejsze znaczenie w modelu. W obu modelach, zachmurzenie wydaje się mieć duże znaczenie, podczas gdy prędkość porywów wiatru wydaje się być umiarkowanie niska.
Drzewo klasyfikacyjne
Nasze pierwsze drzewo klasyfikacyjne zostało zbudowane bez określania parametru złożoności w celu zbadania, która wartość może działać najlepiej. Optymalna wartość cp dla tego drzewa wyniosła około 0,221, którą następnie wykorzystaliśmy do zbudowania nowego drzewa.
Predicting RainTomorrow na zbiorze treningowym dało dokładność około 0,828. W porównaniu z dokładnością modelu naiwnego wynoszącą 0,78 i biorąc pod uwagę wartość p równą prawie 0, model ten okazał się być modelem dobrej jakości. Następnie dokonaliśmy predykcji na testowym zbiorze danych, co dało dokładność około 0,824. Z obydwoma przewidywaniami wykazującymi większą dokładność niż model naiwny, drzewo klasyfikacyjne może być opłacalne do przewidywania deszczu jutro.
Las losowy
Poprawiając metodę drzewa klasyfikacyjnego, zbudowaliśmy las losowy z 10 k-krotną walidacją krzyżową i 50 drzewami. Opracowanie przewidywań na zbiorze treningowym z naszym lasem losowym dało dokładność 0,9991, prawie 100%. Podczas gdy wartość p jest idealna na poziomie praktycznie 0, fakt, że nasz model miał prawie idealne przewidywania, budzi obawy. W prawdziwym świecie, idealnie dokładne modele nie istnieją. Następnie przetestowaliśmy przewidywanie na zestawie testowym, co dało dokładność tylko 0.84 z podobnie znaczącą wartością p-value. Wskazywało to, że nasz las losowy był zbyt dopasowany do zbioru treningowego i nie będzie silnym modelem dla przyszłych przewidywań.