JasperLS / UFC_Fight_Predictions

This repo contains various tools for scraping, feature engineering and modelling of UFC fights
MIT License
1 stars 0 forks source link

Add Validation Set + Hyperparamenter + Rolling Cross Validation #18

Open MattisPHartwig opened 3 years ago

MattisPHartwig commented 3 years ago

Hier ist ein gutes Paper dazu, das wir zitieren können für unseren Ansatz: https://www.researchgate.net/profile/Len-Tashman/publication/247087596_Out-of_sample_tests_of_forecasting_accuracy_an_analysis_and_review/links/5745ceec08ae9f741b430de3/Out-of-sample-tests-of-forecasting-accuracy-an-analysis-and-review.pdf

Aus meiner Sicht sind am vielversprechensten wäre folgende vorgehensweise:

Zeitlich muss trainset in in der Vergangenheit liegen, dann validationset dann testset.

Wir können immer einen (oder aus Effizienzgründen ein paar Kämpfe vorhersagen) und dann die Vergangenheitsdaten in Ein split in Train und Val machen. 90 - 10% zum beispiel.

Als zusätzliche Option können wir die Train window längen gleihc halten. Also immer nur die letzten X Kämpfe betrachten, um Daten die zu weit in der Vergangenheit lagen nicht zu berücksichtigen.

Ich werde so ein Training mal für eins der Standard modelle aufsetzen, dann können wir gemeinsam draufschauen.

MattisPHartwig commented 3 years ago

So ich habe mal eine erste Version von Hyper Parameter Tuning für RF aufgesetzt. Ergebnis wird nicht besser, aber immerhin ist es sauberer.

Logik: TimeseriesSpliter für train vs validation: https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.TimeSeriesSplit.html

GridSearch: https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.GridSearchCV.html Die GridSearch ist noch etwas wenig parametrisiert. Da kann man über Nacht nochmal mehr durchlaufen lassen.