1
0
This commit is contained in:
andrzej 2020-05-11 13:18:47 +02:00
parent 4d7d8630b3
commit 4f815266d4

View File

@ -29,7 +29,7 @@ W świecie projektu różny rodzaj towarów ma różne "progi", od których moż
na przykład kładąc paczkę z lakierem/benzyną na regale lepiej mieć trochę większą pewność, że towar nie nagrzeje się nadmiernie, aniżeli
kładąc książkę - że nie zniszczeje od wilgoci. W związku z tym zamiast prostej odpowiedzi Tak/Nie na pytanie
czy dany obiekt można położyć na danym regale potrzebna była przewidywana wartość prawdopodobieństwa że w danym miejscu
zachowa się on w dobrym stanie. Wszystkie te progi wynoszą odpowiednio: \
zachowa się on w dobrym stanie. Wszystkie te progi wynoszą odpowiednio:
``
PACKAGE_PLACE_TRESHOLD = {
"normal": 0.8,
@ -38,7 +38,7 @@ zachowa się on w dobrym stanie. Wszystkie te progi wynoszą odpowiednio: \
"flammable": 0.9,
"keep_dry": 0.8
}
``\
``
Zdecydowałem się więc na wybór drzewa regresyjnego.
Biblioteką której użyłem w celu implementacji drzewa jest scikit-learn.
Najważniejszym problemem oprócz dokładności oszacowań dokonanych przy pomocy drzewa było uniknięcie overfittingu(przepasowania),
@ -47,7 +47,7 @@ z danymi spoza tego zbioru poradzi sobie już dużo gorzej. Oprócz błędnej oc
jest zbyt duża jego głębokość drzewa (odległość od korzenia do najdalszego liścia), oraz liście zawierające tylko 1 rekord.
W celu uniknięcia overfittingu zdecydowałem się na ograniczenie maksymalnej głębokości drzewa, oraz na ustawienie minimalnej
ilości rekordów w liściu. Drzewo wraz z odpowiednimi ograniczeniami zdefiniowane jest w następujący sposób \
``clf = DecisionTreeRegressor(ccp_alpha=0.02, min_samples_leaf=5, max_depth=5)``\
``clf = DecisionTreeRegressor(ccp_alpha=0.02, min_samples_leaf=5, max_depth=5)``
gdzie argumenty min_samples_leaf, oraz max_depth oznaczają odpowiednio minimalną ilość rekordów(przykładów ze zbioru uczącego) w liściu, oraz maksymalną głębokość drzewa.
Kryterium według którego mierzona jest "jakość" rozgałęzienia jest tzw. MSE(Mean Squared Error), czyli kwadrat odchylenia standardowego wartości przewidywanej wobec faktycznej.
Dobierając te parametry wyszedłem z założenia że jeżeli 5 rekordów będzie w jednym liściu, to znaczy że najprawdopodbniej zachodzi