diff --git a/.DS_Store b/.DS_Store index 2f3a111..187ac91 100644 Binary files a/.DS_Store and b/.DS_Store differ diff --git a/labworks/.DS_Store b/labworks/.DS_Store index 16fb87a..30a9126 100644 Binary files a/labworks/.DS_Store and b/labworks/.DS_Store differ diff --git a/labworks/LW2/report_lr2_Troyanov_Chernov.md b/labworks/LW2/report_lr2_Troyanov_Chernov.md index b17d460..58e2c6e 100644 --- a/labworks/LW2/report_lr2_Troyanov_Chernov.md +++ b/labworks/LW2/report_lr2_Troyanov_Chernov.md @@ -245,8 +245,8 @@ lib.plot2in1_anomaly(data, xx, yy, Z1, Z2, data_test) **Требования к характеристикам качества обучения EDCA:** - Значение Excess должно быть как можно ближе к 0. Для AE2 получено 0.4, что является приемлемым. -- Значение Deficit должно быть как можно ближе к 0 -- Значение Coating должно быть как можно ближе к 1 +- Значение Deficit должно быть как можно ближе к 0. +- Значение Coating должно быть как можно ближе к 1. - Значение Approx должно быть как можно ближе к 1. Для AE2 получено 0.714, что соответствует требованиям. --- @@ -315,9 +315,9 @@ with patch('builtins.input', side_effect=['1', '11', '48 36 24 16 8 4 8 16 24 36 ) ``` -Архитектура: 32 100 -> 68 -> 48 -> 32 -> 24 -> 16 -> 8 -> 16 -> 24 -> 32 -> 48 -> 64 -> 100 → 32 -Количество скрытых слоёв: 17 -Нейроны в скрытых слоях: 100 -> 68 -> 48 -> 32 -> 24 -> 16 -> 8 -> 16 -> 24 -> 32 -> 48 -> 64 -> 100 +Архитектура: 32 → 100 → 68 → 48 → 32 → 24 → 16 → 8 → 16 → 24 → 32 → 48 → 64 → 100 → 32 +Количество скрытых слоёв: 11 +Нейроны в скрытых слоях: 100 → 68 → 48 → 32 → 24 → 16 → 8 → 16 → 24 → 32 → 48 → 64 → 100 ### 6) Обучение автокодировщика на нормализованных данных @@ -379,7 +379,7 @@ lib.ire_plot('test', ire_letter_test, IREth_letter, 'Letter_AE') | Dataset | Количество
скрытых слоев | Количество
нейронов в скрытых слоях | Количество
эпох обучения | Ошибка
MSE_stop | Порог ошибки
реконструкции | % обнаруженных
аномалий | |:--------|:----------------------------|:---------------------------------------|:----------------------------|:-------------------|:------------------------------|:---------------------------| -| Letter | 11 | 100 -> 68 -> 48 -> 32 -> 24 -> 16 -> 8 -> 16 -> 24 -> 32 -> 48 -> 64 -> 100 | 20000 | 0.026 | 1.62 | 100.0% | +| Letter | 11 | 100 → 68 → 48 → 32 → 24 → 16 → 8 → 16 → 24 → 32 → 48 → 64 → 100 | 20000 | 0.026 | 1.62 | 100.0% | *Примечание: Результаты получены для модели, обученной на нормализованных данных.* @@ -394,14 +394,14 @@ lib.ire_plot('test', ire_letter_test, IREth_letter, 'Letter_AE') **Требования к архитектуре автокодировщика:** - Для многомерных данных требуется более сложная архитектура с большим количеством скрытых слоёв. - Архитектура должна постепенно сужаться к бутылочному горлышку (bottleneck), а затем постепенно возвращаться к исходным выходным размерам. -- Широкая архитектура с большим количеством нейронов в начальных слоях (например, 100 -> 68 -> 48 -> 32 -> 24 -> 16 -> 8 -> 16 -> 24 -> 32 -> 48 -> 64 -> 100) позволяет лучше аппроксимировать сложные зависимости в многомерных данных. +- Широкая архитектура с большим количеством нейронов в начальных слоях (например, 100 → 68 → 48 → 32 → 24 → 16 → 8 → 16 → 24 → 32 → 48 → 64 → 100) позволяет лучше аппроксимировать сложные зависимости в многомерных данных. **Требования к количеству эпох обучения:** -- Для многомерных данных требуется значительно большее количество эпох обучения (до 10000 эпох) по сравнению с двумерными данными (1000-3000 эпох). +- Для многомерных данных требуется значительно большее количество эпох обучения по сравнению с двумерными данными (1000-3000 эпох). - Использование ранней остановки (early stopping) позволяет автоматически завершить обучение при достижении оптимальных значений. **Требования к ошибке MSE_stop:** -- Для многомерных данных оптимальная ошибка MSE-stop в районе 0.1-0.01. +- Для многомерных данных оптимальная ошибка MSE-stop в районе 0.01-0.01. - Нормализация данных может значительно улучшить качество обучения (пример: MSE снизилась с 0.340 до 0.026 при нормализации). **Требования к порогу обнаружения аномалий:** @@ -409,10 +409,10 @@ lib.ire_plot('test', ire_letter_test, IREth_letter, 'Letter_AE') - Нормализация данных позволяет получить более низкий и стабильный порог (пример: порог снизился с 11.1 до 1.62 при нормализации). **Требования к характеристикам качества обучения EDCA:** -- Значение Excess должно быть как можно ближе к 0 -- Значение Deficit должно быть как можно ближе к 0 -- Значение Coating должно быть как можно ближе к 1 -- Значение Approx должно быть как можно ближе к 1 +- Значение Excess должно быть как можно ближе к 0. +- Значение Deficit должно быть как можно ближе к 0. +- Значение Coating должно быть как можно ближе к 1. +- Значение Approx должно быть как можно ближе к 1. --- @@ -423,11 +423,11 @@ lib.ire_plot('test', ire_letter_test, IREth_letter, 'Letter_AE') **Основные выводы:** -1. **Влияние размерности данных**: Для многомерных данных требуется более сложная архитектура и большее количество эпох обучения по сравнению с двумерными данными. +1. **Влияние размерности данных**: Для многомерных данных требуется более сложная архитектура и большее количество эпох обучения по сравнению с двумерными данными. 2. **Архитектура**: Архитектура должна постепенно сужаться к бутылочному горлышку и постепенно возвращаться к исходным размерам. Симметричная структура обеспечивает лучшее качество аппроксимации. -3. **Параметры обучения**: Оптимальные значения MSE-stop и порога ошибки реконструкции различаются для данных разной размерности. Для двумерных данных MSE-stop ≈ 0.01, порог 0.4-2.5. Для многомерных данных MSE-stop ≈ 0.1-0.01, порог ≤ 1.6. +3. **Параметры обучения**: Оптимальные значения MSE-stop и порога ошибки реконструкции различаются для данных разной размерности. Для двумерных данных MSE-stop ≈ 0.01, порог 0.4-2.5. Для многомерных данных MSE-stop ≈ 0.01-0.1, порог ≤ 1.6. 4. **Метрики качества**: Характеристики EDCA (Excess, Deficit, Coating, Approx) позволяют оценить качество аппроксимации области нормальных данных и пригодность автокодировщика для обнаружения аномалий.