Początek raportu
This commit is contained in:
parent
8c66ac657c
commit
b9e8c6bce7
47
Andrzej_Preibisz.md
Normal file
47
Andrzej_Preibisz.md
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
#### Opis problemu
|
||||||
|
Metodą uczenia, którą postanowiłem zaimplementować w projekcie były
|
||||||
|
drzewa decyzyjne. Pola reprezentujące regały, lub chłodziarki
|
||||||
|
różnią się między sobą temperaturą, oraz wilgotnością powietrza w danym miejscu.
|
||||||
|
Paczki z kolei mogą zawierać towary następujących rodzajów:
|
||||||
|
- towar zwykły(normal)
|
||||||
|
- mrożony(freezed)
|
||||||
|
- kruchy(fragile)
|
||||||
|
- łatwo niszczejący pod wpływem wilgoci (keep_dry)
|
||||||
|
- łatwopalne(flammable)
|
||||||
|
|
||||||
|
Paczki zawierające określony rodzaj towarów mają pewne parametry
|
||||||
|
środowiskowe, w których zdecydowanie nie powinno się danego typu towaru
|
||||||
|
przechowywać. Jako przykład może posłużyć mrożone jedzenie, którego
|
||||||
|
stosunkowo szybko ulegnie pogorszeniu w temperaturze dodatniej, lub lakier,
|
||||||
|
który zdecydowanie nie powinien znaleźć się w części magazynu, gdzie panuje temperatura 30 stopni.
|
||||||
|
|
||||||
|
Celem drzewa decyzyjnego jest w tym wypadku przewidzenie prawdopodobnej szansy na to, że towar po przechowywaniu
|
||||||
|
na danym regale przez dłuższy czas będzie w dobrym stanie.
|
||||||
|
|
||||||
|
##### Zastosowane drzewo
|
||||||
|
Drzewa decyzyjne dzielą się ogólnie na dwa rodzaje - drzew klasyfikujących, lub drzew regresyjnych.
|
||||||
|
Drzewo klasyfikujące pozwala podzielić zmienna przewidywaną na kategorie, na przykład Tak i Nie.
|
||||||
|
|
||||||
|
Drzewo regresyjne z kolei dostarczy nam informacji o średniej wartości zmiennej estymowanej przy
|
||||||
|
danej wartości atrybutów.
|
||||||
|
|
||||||
|
W świecie projektu różny rodzaj towarów ma różne "progi", od których można go kłaść na regale X,
|
||||||
|
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:
|
||||||
|
``
|
||||||
|
PACKAGE_PLACE_TRESHOLD = {
|
||||||
|
"normal": 0.8,
|
||||||
|
"freezed": 0.85,
|
||||||
|
"fragile": 0.85,
|
||||||
|
"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),
|
||||||
|
czyli sytuacji, w której drzewo perfekcyjnie dopasuje się do danych ze zbioru uczącego, jednak
|
||||||
|
z danymi spoza tego zbioru poradzi sobie już dużo gorzej. Oprócz błędnej oceny danych innych niż ze zbioru uczącego sygnałem wskazującym na overfitting drzewa
|
||||||
|
jest zbyt duża jego głębokość drzewa (odległość od korzenia do najdalszego liścia), oraz liście zawierające tylko 1 rekord.
|
Loading…
Reference in New Issue
Block a user