Steering Vectors
Узнай, как векторы управления позволяют в реальном времени контролировать нейронные сети без переобучения. Изучи активационное проектирование с помощью Ultralytics YOLO26.
Steering vectors представляют собой значимые математические направления в пространстве скрытых активаций нейронной сети, которые соответствуют концепциям высокого уровня, таким как «вежливость», «правдивость» или конкретные визуальные признаки. Искусственно добавляя или вычитая эти векторы из внутренних состояний модели во время прямого прохода, ты можешь предсказуемо контролировать и изменять поведение модели, не обновляя базовые веса. Этот метод, основанный на Activation Engineering, обеспечивает бесплатный контроль над системами глубинного обучения во время вывода, начиная от больших языковых моделей и заканчивая архитектурами компьютерного зрения.
Link to this sectionКак работают Steering Vectors#
Чтобы создать steering vector, исследователи обычно используют метод, называемый Contrastive Activation Addition (CAA). Он включает пропуск набора контрастных пар данных — например, промпт с просьбой к модели быть «полезной» против промпта с просьбой быть «вредной» — через сеть. Разница в выходах функции активации между этими парами усредняется по нескольким образцам, чтобы выделить конкретное геометрическое направление, представляющее эту концепцию в тензорном пространстве.
Во время real-time inference этот вектор добавляется или вычитается из скрытых состояний на определенных слоях с использованием простого сложения тензоров PyTorch. Масштабирование силы вектора позволяет тебе точно настраивать интенсивность привнесенного поведения.
Link to this sectionОтличие Steering Vectors от смежных концепций#
Чтобы понять, как steering vectors вписываются в более широкий ландшафт машинного обучения, нужно отличать их от схожих методологий:
- Task Vectors: В то время как task vectors работают в пространстве весов, изменяя фактические веса модели после обучения для объединения возможностей, steering vectors работают исключительно в пространстве активаций во время выполнения, оставляя исходные веса полностью нетронутыми.
- Representation Engineering (RepE): RepE — это общая методологическая база для чтения и контроля внутренних когнитивных состояний, активно исследуемая такими организациями, как Center for AI Safety. Steering vectors — это конкретные математические инструменты, используемые на этапе контроля в RepE.
- Prompt Engineering: Промптинг пытается направлять поведение путем изменения входного текста или изображения пользователя. Steering vectors обходят этот «узкий канал» ввода, напрямую манипулируя внутренней когнитивной обработкой модели.
- Fine-Tuning: Традиционные методы согласования, такие как Reinforcement Learning from Human Feedback (RLHF), необратимо изменяют модель посредством градиентного спуска, требуя больших вычислительных мощностей, которые часто управляются через облачные инструменты, такие как Ultralytics Platform. Steering vectors полностью исключают эти вычислительные накладные расходы.
Link to this sectionРеальные применения в ИИ#
Способность динамически управлять моделями открыла значительные достижения в современных пайплайнах искусственного интеллекта:
- Повышение безопасности ИИ: Выделяя steering vector, связанный с «отказом» или «безвредностью», инженеры могут заставить модели отвергать вредоносные инструкции. При поддержке исследований по согласованию OpenAI и исследований интерпретируемости Anthropic, управление специфическими характеристиками может радикально изменить манеру общения ИИ и обеспечить строгие гарантии безопасности.
- Контроль моделей рассуждения: Недавние исследования продвинутых архитектур мышления показывают, что steering vectors могут модулировать внутренние цепочки рассуждений. Ты можешь повысить склонность модели выражать неуверенность или исправлять ошибки в процессе сложного решения задач.
- Снижение предвзятости ИИ: Извлекая вектор, представляющий определенную социальную предвзятость, разработчики могут вычитать это направление во время генерации. Это эффективно нейтрализует предвзятость и повышает объективность без переобучения, одновременно снижая вероятность галлюцинаций в LLM.
- Управление системами компьютерного зрения: В моделях зрения steering vectors могут применяться к картам признаков для искусственного повышения чувствительности сети к критически важным целям. Например, модель детекции объектов можно настроить на приоритетный поиск пешеходов в сложных погодных условиях.
Link to this sectionПрименение Steering Vectors с PyTorch#
Ниже приведен исполняемый пример применения вмешательства путем управления активацией для модели Ultralytics YOLO26 во время прямого прохода. Используя PyTorch forward hooks, ты можешь внедрять пользовательские векторы прямо в скрытые слои.
import torch
from ultralytics import YOLO
# Load the recommended Ultralytics YOLO26 model for state-of-the-art vision tasks
model = YOLO("yolo26n.pt")
# Define a hook function to steer the internal activations
def steer_activations_hook(module, input, output):
# Create a steering vector matching the output shape (for demonstration purposes)
# In practice, this vector is pre-computed via Contrastive Activation Addition (CAA)
steering_vector = torch.ones_like(output) * 0.1
# Add the steering vector to the model's hidden states to alter behavior at inference
return output + steering_vector
# Attach the hook to a middle layer (e.g., layer index 5) to inject the vector
handle = model.model.model[5].register_forward_hook(steer_activations_hook)
# Run inference on an image with the dynamically steered activations
results = model("https://ultralytics.com/images/bus.jpg")
# Remove the hook to restore the model to its original unsteered state
handle.remove()





