Искусственные иммунные системы

Материал из MachineLearning.

Перейти к: навигация, поиск
Статья написана с использованием LLM ChatGPT (GPT-5.6 Sol Medium) и проверена участником Valeriia Berdnikova 15:00, 19 июля 2026 (MSD). Промпт приводится полностью в Обсуждение:Искусственные иммунные системы.


Содержание

Искусственные иммунные системы (англ. Artificial Immune Systems, AIS) — семейство методов вычислительного интеллекта, использующих упрощённые идеи биологической иммунной системы и биоинспирированных вычислений для решения задач машинного обучения, оптимизации, кластеризации и обнаружения аномалий. К основным моделируемым механизмам относятся распознавание «своего» и «чужого», аффинность, клональная селекция, созревание аффинности, иммунная память, подавление похожих решений и объединение нескольких сигналов.[1]

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

Общая схема

Пусть объект, пример данных или кандидат решения представлен вектором признаков

x\in\mathcal X.

В терминологии искусственных иммунных систем входные объекты часто называются антигенами, а элементы обучаемой популяции — антителами, рецепторами или детекторами.

Большинство AIS включает следующие компоненты:

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

Универсальной искусственной иммунной системы не существует. Алгоритм отрицательного отбора, CLONALG, aiNet и дендритный клеточный алгоритм используют разные вычислительные модели и предназначены для разных классов задач.

Биологическая интуиция и вычислительные абстракции

Распознавание «своего» и «чужого»

В ранних AIS нормальное состояние системы интерпретируется как множество «своих» образцов, а отклонения — как «чужие». Детекторы генерируются так, чтобы не реагировать на обучающие нормальные данные, но реагировать на ранее не наблюдавшиеся области пространства.

Эта схема является вычислительным упрощением. Биологическое распознавание не сводится к единственному бинарному правилу «своё — чужое»: иммунный ответ зависит от типа клеток, контекста, сигналов повреждения, состояния тканей и механизмов толерантности.

Аффинность

Аффинность — численная мера соответствия между антигеном и антителом. При заданной метрике или расстоянии d(x,y) её можно определить, например, как

a(x,y)=\exp\left(-\frac{d(x,y)^2}{2\sigma^2}\right).

Чем меньше расстояние, тем выше аффинность. В оптимизации аффинность обычно является преобразованием целевой функции:

a(x)=\frac{1}{1+f(x)}

для задачи минимизации неотрицательной функции f.

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

Клональная селекция

В биологической модели клетки, лучше распознающие антиген, получают преимущество при размножении. В вычислительной модели решения с высокой аффинностью:

  • выбираются чаще;
  • создают больше клонов;
  • подвергаются локальному поиску;
  • могут сохраняться в памяти лучших решений.

Клональная селекция сближает AIS с эволюционными вычислениями, однако классические клональные алгоритмы обычно не используют скрещивание.

Созревание аффинности

В AIS созревание аффинности моделируется мутацией клонов. Частота или амплитуда мутации часто обратно пропорциональна аффинности:

p_i=p_{\max}\exp(-\rho a_i),

где a_i — нормированная аффинность, \rho>0 — параметр интенсивности.

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

Иммунная память

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

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

Иммунные сети

Сетевая теория иммунитета рассматривает взаимодействия не только между антигенами и антителами, но и между самими антителами. В вычислительных моделях похожие элементы могут взаимно стимулироваться или подавляться.

Подавление близких антител поддерживает разнообразие и сокращает избыточность популяции. Эта идея используется в aiNet и других иммунных сетях для кластеризации и мультимодальной оптимизации.[1]

Представление и функция аффинности

Выбор представления определяет, какие закономерности способен обнаружить алгоритм.

Бинарное представление

Антигены и детекторы задаются строками:

x=(x_1,\ldots,x_L),\qquad x_i\in\{0,1\}.

Аффинность может определяться числом совпадающих битов или наличием общей последовательности из r подряд идущих символов.

Бинарное представление удобно для правил доступа, категориальных признаков и последовательностей событий, но кодирование непрерывных данных может приводить к потере геометрии.

Вещественное представление

Для числовых признаков используются вещественные векторы

x\in\mathbf R^d.

Детектор может быть точкой, гиперсферой с центром c и радиусом r либо более сложной областью. В случае гиперсфер объект распознаётся детектором, если

\|x-c\|\leq r.

В высокой размерности объём и взаимное расположение таких областей становятся трудными для настройки.

Алгоритм отрицательного отбора

Принцип работы

Алгоритм отрицательного отбора был предложен как вычислительная аналогия удаления лимфоцитов, реагирующих на собственные структуры организма.[1]

Пусть S — множество нормальных обучающих объектов. Сначала случайно создаются кандидаты в детекторы. Кандидат удаляется, если он распознаёт хотя бы один объект из S. Остальные детекторы покрывают область, не занятую нормальными данными.

Для детектора d условие допуска можно записать как

\max_{s\in S}a(d,s)<\theta_s,

где \theta_s — порог совпадения с нормальными объектами.

После обучения новый объект x считается аномальным, если

\max_{d\in D}a(d,x)\geq\theta_d,

где D — множество прошедших отбор детекторов.

Псевдокод

Вход: нормальная выборка S, требуемое число детекторов M,
      функция аффинности a, порог theta_s.
Выход: набор детекторов D.
1. D := пустое множество.
2. Пока |D| < M:
   2.1. Сгенерировать случайный кандидат d.
   2.2. Вычислить его аффинность ко всем s из S.
   2.3. Если d не распознаёт ни один нормальный объект,
        добавить d в D.
3. Для нового объекта x:
   3.1. Если хотя бы один d из D распознаёт x,
        отметить x как аномалию.
   3.2. Иначе считать x нормальным.

Основные параметры

  • размер и способ представления детекторов;
  • число детекторов M;
  • правило совпадения;
  • порог \theta_s;
  • радиус вещественных детекторов;
  • распределение генерации кандидатов;
  • допустимая доля ложных срабатываний.

Достоинства

Ограничения

  • генерация допустимых детекторов может быть очень медленной;
  • в пространстве остаются непокрытые «дыры»;
  • число детекторов быстро растёт с размерностью;
  • результат чувствителен к порогу совпадения;
  • нормальные данные должны достаточно полно представлять область «своего»;
  • изменение нормального режима требует обновления детекторов.

Сравнительные исследования показали, что вещественный отрицательный отбор не всегда конкурентоспособен со статистическими методами обнаружения аномалий, особенно в высокоразмерных пространствах.[1]

Применения

  • обнаружение сетевых вторжений;
  • контроль целостности файлов;
  • мониторинг системных вызовов;
  • диагностика технических неисправностей;
  • обнаружение отклонений в потоках датчиков.

CLONALG

Принцип работы

CLONALG — клональный алгоритм обучения и оптимизации, предложенный де Кастро и фон Зубеном.[1]

Популяция антител представляет возможные решения или прототипы. Для каждого антигена выбираются наиболее аффинные антитела, которые клонируются и мутируют. Лучшие мутировавшие клоны добавляются в память, а слабые элементы популяции заменяются случайными.

Число клонов можно задавать пропорционально аффинности:

n_i=\left\lfloor\beta N\frac{a_i}{\sum_j a_j}\right\rfloor,

где N — размер популяции, \beta — коэффициент клонирования.

В исходном CLONALG и его вариантах используются разные правила клонирования и гипермутации; приведённая формула является одной из возможных реализаций.

Псевдокод

Вход: антигены A, размер популяции N,
      число выбираемых антител n, коэффициент клонирования beta.
Выход: память M или лучшее решение.
1. Случайно инициализировать популяцию P.
2. Для каждого антигена или шага оптимизации:
   2.1. Вычислить аффинность всех антител.
   2.2. Выбрать n наиболее аффинных антител.
   2.3. Создать клоны; лучшие антитела дают больше клонов.
   2.4. Мутировать клоны с интенсивностью,
        обратной их аффинности.
   2.5. Повторно вычислить аффинность клонов.
   2.6. Добавить лучшие клоны в память.
   2.7. Заменить часть слабых антител случайными.
3. Вернуть память или лучшее найденное решение.

Основные параметры

  • размер популяции N;
  • число отбираемых антител;
  • коэффициент клонирования \beta;
  • интенсивность гипермутации \rho;
  • размер памяти;
  • число случайно заменяемых антител;
  • критерий остановки.

Достоинства

  • сочетает глобальный поиск и локальное уточнение;
  • сохраняет лучшие найденные решения;
  • не требует производных целевой функции;
  • допускает дискретное, бинарное и вещественное кодирование;
  • может поддерживать несколько хороших решений.

Ограничения

  • большое число вычислений функции приспособленности;
  • чувствительность к масштабу мутации;
  • риск преждевременной концентрации около локального оптимума;
  • отсутствие универсальных правил настройки параметров;
  • на гладких задачах уступает специализированным градиентным методам;
  • не имеет автоматического преимущества перед другими метаэвристиками.

Применения

aiNet

Принцип работы

aiNet — искусственная иммунная сеть, предназначенная для анализа данных и сохранения нескольких областей высокой плотности или нескольких оптимумов.[1]

Антитела представляют прототипы данных. Высокоаффинные антитела клонируются и мутируют в направлении антигенов. Затем выполняется сетевое подавление: слишком похожие антитела удаляются, чтобы уменьшить избыточность и сохранить разнообразие.

Для пары антител b_i и b_j подавление может выполняться при условии

a(b_i,b_j)>\theta_{\rm sup},

где \theta_{\rm sup} — порог сетевого сходства.

После обучения оставшиеся антитела образуют сжатое представление выборки. Кластеры могут определяться компонентами графа антител или дополнительным алгоритмом кластеризации.

Псевдокод

Вход: данные X, начальная сеть B,
      порог подавления theta_sup.
Выход: сеть прототипов B.
1. Инициализировать сеть антител.
2. Для каждого антигена x:
   2.1. Вычислить аффинность антител к x.
   2.2. Выбрать наиболее аффинные антитела.
   2.3. Клонировать выбранные антитела.
   2.4. Мутировать клоны обратно пропорционально аффинности.
   2.5. Сохранить лучшие клоны.
   2.6. Удалить антитела с низкой аффинностью к данным.
   2.7. Сравнить антитела друг с другом.
   2.8. Подавить один элемент каждой слишком похожей пары.
   2.9. При необходимости добавить случайные антитела.
3. Построить кластеры по оставшейся сети.

Основные параметры

  • исходный и максимальный размеры сети;
  • коэффициент клонирования;
  • скорость мутации;
  • порог аффинности к данным;
  • порог подавления \theta_{\rm sup};
  • число новых случайных антител;
  • критерий сходимости.

Достоинства

  • сохраняет несколько кластеров или оптимумов;
  • уменьшает выборку до набора прототипов;
  • сочетает обучение и автоматическое подавление дубликатов;
  • не требует заранее задавать центры кластеров;
  • допускает визуализацию сети сходства.

Ограничения

  • попарное подавление, близкое к удалению дубликатов требует порядка O(m^2) сравнений для сети из m антител;
  • результат чувствителен к порогу подавления;
  • число кластеров не всегда определяется однозначно;
  • возможна потеря малых или разреженных кластеров;
  • сходимость зависит от конкретной реализации;
  • при высокой размерности расстояния могут терять различимость.

Применения

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

Дендритный клеточный алгоритм

Принцип работы

Дендритный клеточный алгоритм (англ. Dendritic Cell Algorithm, DCA) использует не отрицательный отбор, а объединение нескольких потоков сигналов и их временную связь с наблюдаемыми объектами. Он был разработан для обнаружения аномалий и вдохновлён ролью дендритных клеток в координации иммунного ответа.[1]

Вычислительный DCA обрабатывает:

  • антигены — идентификаторы анализируемых процессов, соединений или объектов;
  • PAMP-сигналы — признаки, тесно связанные с известной аномальной активностью;
  • сигналы опасности — признаки возможного повреждения;
  • безопасные сигналы — признаки нормального поведения;
  • воспалительные сигналы — усилители остальных сигналов.

Каждая искусственная клетка в течение некоторого времени собирает антигены и сигналы. Входные сигналы s_k(t) преобразуются в выходы:

o_j(t)=\sum_k w_{jk}s_k(t),

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

Клетка накапливает значения:

O_j=\sum_t o_j(t).

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

Для типа антигена a вычисляется доля зрелых представлений:

{\rm MCAV}(a)=\frac{N_{\rm mature}(a)}{N_{\rm total}(a)}.

Объект считается аномальным, если {\rm MCAV}(a) превышает заданный порог.

Псевдокод

Вход: поток антигенов и сигналов,
      популяция клеток, веса сигналов.
Выход: оценки аномальности антигенов.
1. Создать популяцию клеток с различными порогами миграции.
2. Для каждого временного шага:
   2.1. Передать клеткам текущие сигналы.
   2.2. Передать клеткам наблюдаемые антигены.
   2.3. Для каждой клетки вычислить выходные сигналы.
   2.4. Накопить ко-стимулирующий, зрелый
        и полузрелый выходы.
   2.5. Если порог миграции клетки превышен:
        определить её контекст;
        присвоить контекст собранным антигенам;
        заменить клетку новой.
3. Для каждого типа антигена вычислить MCAV.
4. Сравнить MCAV с порогом аномальности.

Основные параметры

  • способ преобразования исходных признаков в сигналы;
  • веса w_{jk};
  • размер популяции клеток;
  • распределение порогов миграции;
  • число антигенов, собираемых клеткой;
  • временное окно;
  • порог итоговой аномальности;
  • правила нормализации сигналов.

Достоинства

  • объединяет несколько источников информации;
  • учитывает временную связь сигналов и объектов;
  • не требует генерации огромного множества детекторов;
  • допускает потоковую и распределённую обработку;
  • выдаёт агрегированную оценку аномальности.

Ограничения

  • сигналы обычно проектируются вручную;
  • неправильное разделение сигналов на опасные и безопасные искажает результат;
  • временные задержки могут связывать антиген с неверным контекстом;
  • веса и пороги не имеют универсальных значений;
  • алгоритм не является стандартным универсальным классификатором;
  • сравнение с современными методами требует одинаковой предварительной обработки и честной настройки.

Подробная формализация информационного слияния в DCA была предложена в последующих исследованиях.[1]

Применения

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

Применения искусственных иммунных систем

Классификация

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

Известным примером является Artificial Immune Recognition System (AIRS), объединяющий клональную селекцию, ограниченные ресурсы и память.[1]

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

Кластеризация

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

В отличие от k-means, aiNet может сохранять несколько центров в кластере и не ограничивается сферическими группами. Однако число кластеров и границы зависят от порога подавления и способа построения сети.

Оптимизация

В оптимизации антитело кодирует кандидат решения, а аффинность — качество целевой функции. CLONALG и opt-aiNet используют:

  • отбор;
  • клонирование;
  • гипермутацию;
  • память;
  • поддержание разнообразия.

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

Кибербезопасность

В кибербезопасности AIS применяются для:

  • обнаружения вторжений;
  • выявления необычных системных вызовов;
  • анализа сетевых соединений;
  • обнаружения вредоносной активности;
  • корреляции сигналов безопасности.

Архитектуры на основе распределённых детекторов развивали идеи отрицательного отбора, динамической памяти и локального взаимодействия.[1]

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

Обнаружение аномалий

Отрицательный отбор относится к методам обучения по одному классу: модель строится по нормальным данным. DCA относится к методам контекстного объединения сигналов.

AIS особенно оправданы, если:

  • нормальные режимы известны лучше аномальных;
  • данные поступают потоком;
  • детекторы должны быть распределены;
  • имеется предметная интерпретация сигналов;
  • важна возможность локального обновления.

Если таких условий нет, следует сравнивать AIS с One-Class SVM, Isolation Forest, локальным фактором выброса, статистическими моделями и автоэнкодерами.

Сравнение с другими подходами

Генетические алгоритмы

Генетические алгоритмы и клональные AIS используют популяцию, отбор и мутацию.

Основные различия:

  • AIS часто клонируют лучшие решения вместо формирования потомков скрещиванием;
  • интенсивность мутации может зависеть от аффинности;
  • иммунная память хранит отдельную популяцию лучших элементов;
  • сетевое подавление поддерживает несколько областей поиска;
  • отрицательный отбор не имеет прямого аналога в стандартном генетическом алгоритме.

На практике граница между иммунными и эволюционными алгоритмами условна: многие современные варианты являются гибридными метаэвристиками.

Нейронные сети

Нейронные сети обучают параметризованное отображение путём оптимизации весов. AIS чаще используют явную популяцию прототипов или детекторов.

Преимущества нейронных сетей:

  • эффективная работа с изображениями, текстом и сигналами;
  • градиентное обучение;
  • развитые программные библиотеки;
  • масштабирование на большие выборки.

Возможные преимущества AIS:

  • локальное и инкрементальное обновление;
  • интерпретируемые прототипы;
  • отсутствие требования дифференцируемости;
  • поддержание нескольких решений.

Для высокоразмерных неструктурированных данных нейронные сети обычно обладают более сильными средствами автоматического извлечения признаков.

Классические методы машинного обучения

Классические методы часто имеют более ясную статистическую интерпретацию и меньше гиперпараметров.

  • k ближайших соседей близок к классификации по антителам памяти;
  • k-means близок к прототипной кластеризации;
  • One-Class SVM решает задачу отделения нормальной области;
  • Isolation Forest обнаруживает объекты, которые легко изолируются;
  • байесовские методы моделируют вероятность данных;
  • методы ансамблей часто лучше масштабируются на табличных выборках.

AIS следует выбирать не из-за биологического названия, а при наличии конкретного преимущества представления, поиска, адаптации или распределённой архитектуры.

Вычислительная сложность и масштабируемость

Отрицательный отбор

Если генерируется M детекторов и имеется n нормальных примеров, наивная проверка требует порядка

O(MnC_a),

где C_a — стоимость вычисления аффинности. Реальная стоимость может быть значительно выше, поскольку многие кандидаты отклоняются.

CLONALG

Для популяции размера N, числа клонов N_c и T поколений основная стоимость определяется числом оценок целевой функции:

O(T(N+N_c)C_f).

Если оценка f дорога, клонирование становится главным вычислительным ограничением.

aiNet

Помимо сравнения с данными aiNet выполняет попарное подавление. Для сети размера m одна полная процедура подавления требует

O(m^2C_a).

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

DCA

Стоимость DCA приблизительно линейна по числу клеток, сигналов и временных шагов. Однако хранение повторных представлений антигенов и агрегация контекста могут быть значительными при высокочастотном потоке.

Современное состояние направления

Искусственные иммунные системы сформировались как самостоятельное направление вычислительного интеллекта в 1990-х и 2000-х годах. Фундаментальные алгоритмы продолжают использоваться, однако AIS не являются доминирующим универсальным подходом в современном машинном обучении.

Основные направления развития:

  • гибридизация с глубоким обучением, эволюционными и роевыми методами;
  • адаптивные и вещественные детекторы;
  • мультимодальная и многоцелевая оптимизация;
  • потоковое обнаружение аномалий;
  • распределённая кибербезопасность;
  • автоматический выбор параметров;
  • теоретический анализ сходимости и покрытия.

Главные нерешённые проблемы:

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

Типичные ошибки

  • буквальное отождествление вычислительных антигенов и клеток с биологическими объектами;
  • предположение, что биологическая правдоподобность гарантирует качество;
  • отсутствие сравнения с простыми статистическими базовыми методами;
  • подбор параметров по тестовой выборке;
  • использование евклидовой аффинности без масштабирования признаков;
  • чрезмерное число детекторов или клонов;
  • отсутствие механизма забывания при дрейфе данных;
  • игнорирование дисбаланса классов;
  • вывод об универсальности по одной прикладной выборке;
  • смешение CLONALG, отрицательного отбора, aiNet и DCA как одного алгоритма.

Когда применение оправдано

Искусственные иммунные системы практически оправданы, если:

  • требуется обучение преимущественно по нормальным данным;
  • решение естественно представляется популяцией прототипов;
  • нужно сохранять несколько локальных оптимумов;
  • система должна поддерживать локальное и инкрементальное обучение;
  • данные и обработка организованы как распределённая система;
  • существует содержательная предметная интерпретация сигналов;
  • производные целевой функции недоступны.

AIS обычно не являются первым выбором, если:

  • доступны большие размеченные выборки и сильные стандартные модели;
  • требуется обучение высокоразмерных представлений из изображений или текста;
  • задача является гладкой и допускает эффективную градиентную оптимизацию;
  • критична минимальная задержка предсказания;
  • отсутствует возможность тщательно настроить функцию аффинности.

См. также

Примечания


Литература

Личные инструменты