# Векторизация расстояний ## Теория перед выполнением Перед началом прочитайте: - [`02_numpy_arrays.md`](../notes/02_numpy_arrays.md) - [`03_vectorization_testing.md`](../notes/03_vectorization_testing.md) ## Цель Реализовать попарные евклидовы расстояния сначала циклами, затем NumPy без циклов. ## Что сделать 1. Сформулировать ожидаемый результат до запуска эксперимента. 2. Реализовать простой baseline. 3. Реализовать основной метод самостоятельно настолько, насколько требует задание. 4. Добавить автоматические проверки ключевых вычислений. 5. Провести эксперимент, сохранить метрики и примеры ошибок. 6. Заполнить отчёт по `common/REPORT_TEMPLATE.md`. ## Результат Обе реализации, тесты равенства и измерение времени. Решение разместите рядом в `solution/`. Не коммитьте большие данные, веса или секреты. ## Критерии приёмки - Результаты совпадают с допуском; векторная версия быстрее на большой матрице. - Код читаем, разбит на функции и запускается по инструкции. - Выводы подтверждаются измерениями и не выходят за пределы эксперимента. ## Вопросы для самопроверки - Почему выбран именно этот метод и какой baseline он должен превзойти? - Где здесь возможна утечка данных или некорректная оценка? - Как изменится результат при других данных или ограничениях? - Какую ошибку модели вы считаете наиболее важной и почему?