В одном из предыдущих постов я описал, как использовать функцию make_blob в sklearn для создания больших двоичных объектов, а затем делать на них прогнозы с помощью одного из многочисленных оценщиков в библиотеке, что является формой обучения с учителем. Ссылку на мою предыдущую публикацию о том, как создавать капли с помощью функции make_blob в sklearn, можно найти здесь: - https://medium.com/mlearning-ai/how-to-create-a-dataset-of-blobs-and- затем-сделай-предсказания-на-нем-2d787da53a32

Изучая машинное обучение, я научился создавать кластеры из набора данных, что является разновидностью обучения без учителя. По сути, метка снимается с набора данных, и KMeans sklearn используется для создания кластеров из переменных в наборе данных. Размещение кластеров можно сравнить с ранее удаленными метками, и можно проверить точность прогнозов.

Кластеризация или кластерный анализ - это метод обучения без учителя, который часто используется в качестве метода анализа данных для обнаружения интересных закономерностей в данных.

KMeans - очень популярный алгоритм кластеризации, который включает присвоение примеров кластерам, чтобы минимизировать дисперсию внутри каждого кластера.

Чтобы проиллюстрировать, как кластеры могут использоваться для прогнозирования, я добавил код кластеризации в программу, касающуюся больших двоичных объектов, которую я ранее написал.

Этот код был написан в Google Colab, бесплатном онлайн-блокноте Jupyter. Отличительной чертой Google Colab является то, что написанные программы могут храниться на Google Диске пользователя и легко извлекаться из них. Недостатком Google Colab является то, что он не имеет функции отмены, поэтому необходимо соблюдать осторожность, чтобы не перезаписать и не удалить какой-либо ценный код.

Создав программу, я импортировал библиотеки, которые потребуются мне для запуска программы. Изначально я импортировал библиотеки pandas, numpy, sklearn, matplotlib и seaborn. Pandas создает фреймы данных и управляет ими, numpy выполняет алгебраические вычисления над скалярами, векторами и матрицами, sklearn содержит множество функций, используемых в машинном обучении, а matplotlib и seaborn используются для графического изображения точек данных.

После того, как я импортировал библиотеки, которые мне понадобились для запуска программы, я использовал функцию make_blobs sklearn, чтобы создать три больших двоичных объекта, которые будут использоваться в программе:

Затем я создал график, изображающий три капли, которые я создал с помощью функции make_flob в sklearn: -

Фрейм данных, созданный с помощью функции make_blob, показан ниже: -

Я определил переменные X и y, которые были столбцами X и y фрейма данных соответственно. Цель - это метка набора данных, которая становится y. Метка удаляется из фрейма данных, а оставшаяся часть фрейма данных становится y.

Затем я использовал функцию KMeans в sklearn, чтобы создать кластеры по переменной X: -

Как только я создал кластеры на основе переменной X, я спрогнозировал X и создал apred_df, чтобы сравнить фактические значения y с предсказанными:

Я вставил код, чтобы определить точность прогноза, и в этом случае я достиг 100% точности: -

Я хотел включить снимок экрана кластеров с центроидами в центре каждого кластера, и он показан ниже. Обратите внимание, что это не исходный кластер, но я включил код и графику, чтобы проиллюстрировать, как это будет выглядеть: