Изучите неконтролируемое обучение, чтобы обнаружить скрытые закономерности в немаркированных данных. Узнайте о кластеризации, обнаружении аномалий и о том, как это способствует развитию современных решений в области искусственного интеллекта.
Неконтролируемое обучение — это тип машинного обучения, при котором алгоритм изучает закономерности на основе немеченых данных без вмешательства человека. В отличие от контролируемого обучения, которое опирается на меченые пары вход-выход для обучения модели, неконтролируемое обучение работает с данными, не имеющими исторических меток. По сути, система пытается научить себя путем обнаружения скрытых структур, паттернов или взаимосвязей в входных данных. Этот подход особенно ценен, поскольку подавляющее большинство данных, генерируемых сегодня — изображения, видео, текст и журналы датчиков — неструктурированы и немечены.
В сценариях без контроля алгоритм самостоятельно обнаруживает интересные структуры в данных. Часто цель состоит в том, чтобы смоделировать базовое распределение данных или узнать больше о самих данных. Поскольку во время обучения не предоставляется «правильных ответов», модель не может быть оценена по точности в традиционном смысле. Вместо этого производительность часто измеряется по тому, насколько хорошо модель уменьшает размерность или группирует подобные точки данных.
Эта методология отражает то, как люди часто усваивают новые концепции. Например, ребенок может различать собак и кошек, наблюдая за их разными формами и поведением, не обязательно зная сначала названия «собака» и «кошка». Аналогичным образом, алгоритмы без контроля группируют информацию на основе внутренних сходств. Эта возможность имеет основополагающее значение для развития искусственного общего интеллекта (AGI), поскольку позволяет системам адаптироваться к новым средам без постоянного контроля со стороны человека.
Неконтролируемое обучение включает в себя несколько различных методов, каждый из которых подходит для решения различных типов задач анализа данных :
Важно различать неконтролируемое обучение и контролируемое обучение. Основное различие заключается в используемых данных. Контролируемое обучение требует меченый набор данных, то есть каждый учебный пример сопоставляется с правильным результатом (например, изображение кошки с меткой «кошка»). Модель учится сопоставлять входы с выходами, чтобы минимизировать ошибки.
В отличие от этого, неконтролируемое обучение использует данные без меток. Здесь отсутствует цикл обратной связи, который сообщает модели, правильный ли ее результат . Существует промежуточный вариант, называемый полуконтролируемым обучением, который сочетает небольшой объем данных с метками с большим объемом данных без меток для повышения точности обучения. Он часто используется, когда маркировка данных является дорогостоящей или трудоемкой.
Неконтролируемое обучение лежит в основе многих технологий, с которыми мы сталкиваемся ежедневно. Вот два конкретных примера:
В то время как Ultralytics YOLO26 является в первую очередь средой для контролируемого обнаружения объектов,
на этапах предварительной обработки часто используются неконтролируемые методы, такие как анализ распределения анкорных рамок
или кластеризация характеристик набора данных. Ниже приведен простой пример использования sklearn для выполнения K-Means
кластеризации, фундаментальной неконтролируемой техники.
import numpy as np
from sklearn.cluster import KMeans
# Generate synthetic data: 10 points with 2 features each
X = np.array([[1, 2], [1, 4], [1, 0], [10, 2], [10, 4], [10, 0]])
# Initialize KMeans with 2 clusters (k=2)
kmeans = KMeans(n_clusters=2, random_state=0, n_init="auto")
# Fit the model to the data (no labels provided!)
kmeans.fit(X)
# Predict which cluster each point belongs to
print(f"Labels: {kmeans.labels_}")
# Output will group the first 3 points together (0) and the last 3 together (1)
Современное глубокое обучение (DL) все чаще интегрирует принципы неконтролируемого обучения. Такие методы, как самоконтролируемое обучение (SSL), позволяют моделям генерировать собственные контрольные сигналы на основе данных. Например, в обработке естественного языка (NLP) такие модели, как GPT-4, предварительно обучаются на огромных объемах текста, чтобы предсказывать следующее слово в предложении, эффективно изучая структуру языка без явных меток.
Аналогичным образом, в компьютерном зрении (CV) автокодировщики используются для обучения эффективным кодировкам данных. Эти нейронные сети сжимают изображения до представления с меньшим количеством измерений , а затем восстанавливают их. Этот процесс обучает сеть наиболее заметным особенностям визуальных данных, что полезно для таких задач, как удаление шума из изображений и генеративное моделирование.
Для тех, кто хочет управлять наборами данных для обучения, Ultralytics предлагает инструменты для визуализации распределения данных, которые могут помочь выявить кластеры или аномалии до начала процесса обучения с контролем. Понимание структуры ваших данных посредством неконтролируемого исследования часто является первым шагом на пути к созданию надежных решений в области искусственного интеллекта.