# Свёртка вручную ## Теория перед выполнением Прочитайте [свёртки, формы выхода и рецептивное поле](../notes/01_convolutions_and_cnn.md). ## Цель Реализовать 2D convolution NumPy и применить edge filters. ## Что сделать 1. Сформулировать ожидаемый результат до запуска эксперимента. 2. Реализовать простой baseline. 3. Реализовать основной метод самостоятельно настолько, насколько требует задание. 4. Добавить автоматические проверки ключевых вычислений. 5. Провести эксперимент, сохранить метрики и примеры ошибок. 6. Заполнить отчёт по `common/REPORT_TEMPLATE.md`. ## Результат Код, тест против PyTorch и визуализации feature maps. Решение разместите рядом в `solution/`. Не коммитьте большие данные, веса или секреты. ## Критерии приёмки - Корректно обработаны stride/padding; объяснён receptive field. - Код читаем, разбит на функции и запускается по инструкции. - Выводы подтверждаются измерениями и не выходят за пределы эксперимента. ## Вопросы для самопроверки - Почему выбран именно этот метод и какой baseline он должен превзойти? - Где здесь возможна утечка данных или некорректная оценка? - Как изменится результат при других данных или ограничениях? - Какую ошибку модели вы считаете наиболее важной и почему?