Linear Probing
Узнай, как линейное зондирование оценивает замороженные представления ИИ с помощью логистической регрессии, извлечения признаков и эмбеддингов Ultralytics YOLO26 для трансферного обучения.
Линейное зондирование — это метод оценки и адаптации, который позволяет определить полезность выученных моделью представлений путем обучения простого линейного предиктора поверх замороженных признаков. Предобученный энкодер остается неизменным, а на размеченных данных обучается только линейный слой — часто логистическая регрессия для классификации. Высокая эффективность зондирования указывает на то, что эмбеддинги энкодера уже организуют релевантные концепции так, что их можно разделить простыми границами решений.
В машинном обучении этот термин не связан с линейным зондированием в хеш-таблицах, где после коллизии проверяются соседние ячейки хранения. В ИИ и глубоком обучении он означает именно исследование представления с помощью линейной модели.
Как работает линейное зондирование#
Типичная нейронная сеть содержит энкодер или бэкбон, который преобразует исходные входные данные в вектор признаков, за которым следует специализированная для задачи голова предсказания. Линейное зондирование состоит из четырех шагов:
- Предобучить или загрузить энкодер.
- Заморозить его параметры, чтобы обучение не могло их обновить.
- Выполнить извлечение признаков для размеченных примеров.
- Обучить линейный классификатор с использованием этих фиксированных признаков.
Для многоклассовой классификации зонд обычно представляет собой один полносвязный слой с выходом softmax или классификатор логистической регрессии scikit-learn. Хотя логистическая регрессия включает нелинейное преобразование вероятности, ее оценки классов и границы решений являются линейными функциями входных признаков.
Линейное зондирование особенно распространено в самосупервизируемом обучении, где энкодер обучается на неразмеченных данных. Пример NNCLR в Keras демонстрирует это, обучая полносвязный классификатор на признаках замороженного энкодера. Поскольку зонд обладает ограниченной емкостью, он не может легко компенсировать слабые представления, обучаясь сложным нелинейным преобразованиям.
Что показывает эффективность линейного зонда#
Линейный зонд проверяет, присутствует ли информация в представлении и насколько легко ее извлечь. Если изображения кошек и собак образуют разделимые группы в пространстве эмбеддингов, линейный классификатор может различать их с небольшим числом обучаемых параметров. Если информация закодирована более сложным образом, нелинейный классификатор может добиться успеха даже при низкой эффективности линейного зонда.
Поэтому точность зонда следует рассматривать как диагностический показатель, а не как полную оценку качества модели. На нее могут влиять:
- Выбранный слой энкодера и размерность эмбеддинга.
- Разрешение входных данных и предварительная обработка.
- Объем и сбалансированность размеченных обучающих данных.
- Регуляризация, применяемая к линейной модели.
- Утечка данных между обучающей и оценочной выборками.
Используй отложенный валидационный датасет, желательно созданный с помощью воспроизводимой стратифицированной процедуры, например утилиты разделения данных на обучающую и тестовую выборки в scikit-learn. Помимо точности, отчет о метриках классификации может выявить классы, которые представление разделяет непоследовательно.
Линейное зондирование и связанные методы#
Линейное зондирование относится к более широкому семейству методов переноса и оценки представлений, однако важны несколько различий:
- Линейное зондирование и дообучение: При зондировании обновляется только линейная голова. При дообучении обновляются некоторые или все веса энкодера, что дает модели больше гибкости, но требует дополнительных вычислений и повышает риск переобучения. В руководстве TensorFlow по переносу обучения описывается заморозка базовой модели с возможностью последующей разморозки для дообучения.
- Линейное зондирование и извлечение признаков: Извлечение признаков создает эмбеддинги, а линейное зондирование обучает и оценивает предиктор на этих эмбеддингах.
- Линейное зондирование и линейная регрессия: Линейная регрессия предсказывает непрерывные значения. Зонды для классификации обычно предсказывают дискретные классы с помощью логистической регрессии или слоя softmax.
- Линейное зондирование и оценка методом ближайших соседей: Линейный зонд обучается границам классов. Методы ближайших соседей классифицируют образцы по близости к сохраненным эмбеддингам, не обучая такие границы. В руководстве PyTorch по переносу обучения тесно связанный рабочий процесс с замороженным энкодером называется экстрактором фиксированных признаков.
Линейное зондирование с Ultralytics YOLO#
Предобученная модель классификации Ultralytics YOLO26 может создавать эмбеддинги изображений через документированный API model.embed(). В следующем примере энкодер неявно замораживается путем предварительного вычисления признаков, после чего линейный зонд обучается различать кошек и собак из CIFAR-10:
import numpy as np
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score
from sklearn.model_selection import train_test_split
from torchvision.datasets import CIFAR10
from ultralytics import YOLO
dataset = CIFAR10(root="data", train=False, download=True)
samples = [(image, label) for image, label in dataset if label in (3, 5)][:400]
images, labels = zip(*samples, strict=True)
encoder = YOLO("yolo26n-cls.pt")
embeddings = encoder.embed(list(images), verbose=False)
features = np.stack([embedding.cpu().numpy() for embedding in embeddings])
x_train, x_test, y_train, y_test = train_test_split(features, labels, test_size=0.25, random_state=42, stratify=labels)
probe = LogisticRegression(max_iter=1000)
probe.fit(x_train, y_train)
predictions = probe.predict(x_test)
print(accuracy_score(y_test, predictions))Только модель логистической регрессии обучается на метках кошек и собак; веса энкодера YOLO26 остаются фиксированными. Это позволяет оценить полезность визуального представления, а не способность модели адаптироваться в процессе сквозного обучения.
Применение в реальных условиях и практические рекомендации#
-
Оценка предобучения на неразмеченных данных: Команда робототехники может предобучить энкодер на больших объемах неразмеченных видеозаписей со склада, а затем исследовать его признаки с помощью небольшого размеченного датасета, содержащего погрузчики, работников и палеты. Высокая точность зонда указывает на то, что представление может поддерживать последующую классификацию изображений или обнаружение объектов при ограниченной разметке.
-
Сравнение пригодности для предметной области: Команда медицинской визуализации может заморозить несколько подходящих энкодеров и обучить одинаковые линейные зонды для категорий тканей. Если один энкодер показывает значительно лучшие результаты при одинаковом разбиении и предварительной обработке, его представление является более сильной отправной точкой для последующего дообучения.
Для корректного сравнения сохраняй неизменными разбиение датасета, слой признаков, предварительную обработку, классификатор и параметры оптимизации. По возможности оценивай и линейное зондирование, и полное дообучение: зонд измеряет доступную информацию в фиксированных признаках, а дообучение — насколько эффективно вся модель может адаптироваться.









