From 8d025266a9e7f1c78b841052cf78d6354d89689f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9C=D0=B0=D1=80=D0=BA=D0=BE=D0=B2=20=D0=98=D0=BB=D1=8C?= =?UTF-8?q?=D1=8F=20=D0=90=D0=BD=D0=B4=D1=80=D0=B5=D0=B5=D0=B2=D0=B8=D1=87?= Date: Fri, 16 May 2025 13:08:42 +0300 Subject: [PATCH] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B8=D0=B5.ver3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- week4_scikit_learn.ipynb | 44 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 43 insertions(+), 1 deletion(-) diff --git a/week4_scikit_learn.ipynb b/week4_scikit_learn.ipynb index 96dd644..42dea3a 100644 --- a/week4_scikit_learn.ipynb +++ b/week4_scikit_learn.ipynb @@ -347,6 +347,48 @@ "plt.show()" ] }, + { + "cell_type": "markdown", + "id": "6cab488a-9fbe-4f16-889e-69baa006626d", + "metadata": {}, + "source": [ + "### Вывод по текущим результатам:" + ] + }, + { + "cell_type": "markdown", + "id": "44e5fb28-45ae-4bd5-996b-4fdc29c26329", + "metadata": {}, + "source": [ + "## 1. Количество кластеров \n", + "Алгоритм успешно определил **3 кластера**, что соответствует заданным центрам [[1,1], [-1,-1], [1,-1]]. \n", + "**Ключевые факторы успеха:**\n", + "- Корректный подбор bandwidth через estimate_bandwidth с параметром quantile=0.2.\n", + "- Использование bin_seeding=True для ускорения вычислений без потери точности.\n", + "\n", + "## 2. Визуализация\n", + "- **Компактность кластеров:** Точки внутри кластеров не пересекаются благодаря низкому уровню шума (cluster_std=0.6).\n", + "- **Расположение центров:** Черные крестики соответствуют зонам максимальной плотности, что подтверждает логику работы MeanShift.\n", + "\n", + "## 3. Масштабирование данных\n", + "- Применение StandardScaler обеспечило равный вклад признаков в расчет расстояний, что критично для корректной кластеризации.\n", + "\n", + "## 4. Параметры алгоритма\n", + "- quantile=0.2 и n_samples=500 — баланс между устойчивостью к шуму и точностью.\n", + "- Автоматический подбор bandwidth выполнен корректно: кластеры не перекрываются.\n", + "\n", + "## 5. Рекомендации для экспериментов\n", + "- **Увеличить cluster_std** (например, до 1.0) — проверить устойчивость к перекрывающимся кластерам.\n", + "- **Изменить quantile** (например, до 0.3) — оценить влияние на чувствительность к шуму.\n", + "- **Добавить больше кластеров** — проверить масштабируемость алгоритма.\n", + "\n", + "## Итог\n", + "MeanShift показал высокую эффективность на синтетических данных:\n", + "- Четкое разделение кластеров.\n", + "- Центры совпадают с ожидаемыми позициями.\n", + "- Все этапы (генерация данных, масштабирование, визуализация) выполнены корректно." + ] + }, { "cell_type": "markdown", "id": "d0295bff-217e-420f-9d83-be684525a73e", @@ -638,7 +680,7 @@ { "cell_type": "code", "execution_count": null, - "id": "b2b3004f-f25d-4ae3-80ef-13cb0f98dec1", + "id": "20a82c82-74bf-443f-9295-910d403cf3ee", "metadata": {}, "outputs": [], "source": []