| Imię i Nazwisko (inicjały) | Nick |
|---|---|
| Klim Hudzenko (KH) | klimh |
| Remigiusz Tomecki (RT) | Remko23 |
Projekt ma na celu poprawę dokładności lokalizacji UWB (Ultra-Wideband) przy użyciu zaawansowanej sieci neuronowej. System wykorzystuje dane statyczne do treningu oraz dane dynamiczne do weryfikacji skuteczności rozwiązania.
-
Warstwa wejściowa:
- Kształt: (5, 2) - sekwencje 5 próbek z 2 wymiarami (x, y)
-
Warstwy LSTM:
- LSTM(128) z return_sequences=True
- Dropout(0.2)
- LSTM(64)
-
Warstwy gęste:
- Dense(128) z aktywacją ReLU
- BatchNormalization
- Dropout(0.3)
- Dense(64) z aktywacją ReLU
- BatchNormalization
- Dropout(0.2)
-
Warstwa wyjściowa:
- Dense(2) - przewidywane koordynaty (x, y)
- ReLU (Rectified Linear Unit) w warstwach ukrytych
- Liniowa w warstwie wyjściowej
-
Preprocesssing danych:
- Wykrywanie wartości odstających (outliers) metodą z-score
- Standaryzacja danych wejściowych i wyjściowych
- Tworzenie sekwencji czasowych dla lepszego przetwarzania temporalnego
-
Regularyzacja w sieci:
- Dropout dla zapobiegania przeuczeniu
- Normalizacja wsadowa (Batch Normalization)
- Wczesne zatrzymywanie (Early Stopping)
- Adam z harmonogramem zmiennej wartości współczynnika uczenia
- Początkowy learning rate: 0.001
- Decay steps: 1000
- Decay rate: 0.9
- Mean Squared Error (MSE)
- Mean Absolute Error (MAE)
- Epochs: 200 (z Early Stopping)
- Batch size: 32
- Validation split: 0.2
Wyniki porównania dystrybuant błędu znajdują się w pliku cdf_values.xlsx oraz są wizualizowane w pliku cdf_comparison.png.
.
├── main.py # Główny skrypt
├── README.md # Dokumentacja
├── cdf_comparison.png # Wykres porównawczy CDF
├── training_history.png # Historia treningu
├── cdf_values.xlsx # Wartości dystrybuanty błędu
├── F8/ # Katalog z danymi F8
└── F10/ # Katalog z danymi F10
tensorflow
numpy
pandas
matplotlib
scikit-learn
- Upewnij się, że masz zainstalowane wszystkie wymagane biblioteki
- Umieść dane w odpowiednich katalogach (F8 i F10)
- Uruchom skrypt:
python main.py