ML для новичков: Глоссарий, без которого ты не разберёшься. Артем Демиденко. Читать онлайн. Newlib. NEWLIB.NET

Автор: Артем Демиденко
Издательство: Автор
Серия:
Жанр произведения:
Год издания: 2025
isbn:
Скачать книгу
вам в поиске закономерностей в неразмеченных данных. Давайте рассмотрим некоторые из них.

      1. K-средние: Это один из самых популярных и простых в использовании алгоритмов. Он работает по принципу разбиения данных на K групп, где в каждой группе данные имеют наименьшее значение расстояния до центроидов (средних точек групп). Пример кода для применения K-средних в Python с использованием библиотеки scikit-learn выглядит следующим образом:

      python

      from sklearn.cluster import KMeans

      import numpy as np

      # Пример данных

      data = np.array([[1, 2], [1, 4], [1, 0],

      ................ [4, 2], [4, 4], [4, 0]])

      ................

      # Создание модели K-средние

      kmeans = KMeans(n_clusters=2, random_state=0).fit(data)

      # Получение групп

      clusters = kmeans.labels_

      print(clusters)

      2. Иерархическая группировка: Этот метод позволяет создать иерархическую структуру групп, что дает возможность визуализировать отношения между ними. Алгоритм делится на два основных типа: агломеративный (снизу вверх) и дивизивный (сверху вниз). Иерархическую группировку можно реализовать с помощью функции `linkage` из библиотеки SciPy.

      python

      from scipy.cluster.hierarchy import dendrogram, linkage

      import matplotlib.pyplot as plt

      # Пример данных

      data = np.array([[1, 2], [1, 4], [1, 0],

      ................ [4, 2], [4, 4], [4, 0]])

      # Создание иерархических групп

      linked = linkage(data, 'single')

      # Построение дендрограммы

      dendrogram(linked)

      plt.show()

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

      python

      from sklearn.cluster import DBSCAN

      # Пример данных

      data = np.array([[1, 2], [1, 4], [1, 0],

      ................ [4, 2], [4, 4], [4, 0],

      ................ [100, 100]])

      # Создание модели DBSCAN

      dbscan = DBSCAN(eps=3, min_samples=2).fit(data)

      # Получение групп

      clusters = dbscan.labels_

      print(clusters)

      Применение группировки

      После того как вы отработали алгоритмы группировки на ваших данных, вам предстоит интерпретировать результаты. Это можно сделать с помощью визуализации данных, чтобы наглядно продемонстрировать группы, которые были обнаружены. Используйте такие инструменты, как Matplotlib или Seaborn, чтобы построить графики и оценить разницу между группами.

      Кроме того, полезно рассмотреть, какие характеристики данных определяют наличие групп. Например, в случае покупки товаров это могут быть такие параметры, как стоимость покупок, частота покупок и категория товаров. Это даст вам больше информации для изучения поведения клиентов и разработки стратегий.

      Практические советы по эффективному поиску закономерностей

      1. Подбор методов: Начните с простых алгоритмов, а затем переходите к более сложным, чтобы увидеть, какие методы работают лучше всего для ваших данных. Каждый алгоритм имеет свои сильные и слабые стороны,