Multiple Instance Learning
Обучение с множеством экземпляров использует группы экземпляров, размеченные только целиком, например слайд среза ткани с одним диагнозом, и выявляет ключевые экземпляры.
Обучение с множеством экземпляров (MIL) — это разновидность машинного обучения, в которой обучающие примеры объединены в группы, называемые пакетами, и метка присваивается только каждому пакету, но не отдельным экземплярам внутри него. Оцифрованный гистологический препарат с меткой «рак» — это пакет из тысяч фрагментов ткани, лишь в нескольких из которых могут быть опухолевые клетки; видео с наблюдения с меткой «инцидент» — пакет из коротких клипов, большинство из которых не содержат ничего необычного. MIL учится предсказывать метки пакетов и одновременно определять, какие экземпляры за них отвечают. Это разновидность обучения со слабым учителем, которую используют, когда разметка каждого экземпляра заняла бы у специалистов слишком много времени или была бы невозможна.
Томас Диттерих, Ричард Латроп и Томас Лосано-Перес ввели эту постановку задачи в 1997 году для прогнозирования активности лекарств. Молекула может складываться в множество форм и связывается с мишенью, если подходит хотя бы одна из них. Поэтому исследователи рассматривали каждую молекулу как пакет возможных форм, а меткой служила только измеренная активность молекулы.
Стандартное предположение MIL#
Согласно классическому предположению для бинарных меток, пакет считается положительным, если содержит хотя бы один положительный экземпляр, и отрицательным, только если отрицательны все экземпляры. Если, как в обычном обучении с учителем, скопировать метку пакета на каждый экземпляр, множество отрицательных экземпляров в каждом положительном пакете получит неверные метки. Вместо этого MIL оценивает каждый экземпляр и объединяет оценки в одно предсказание для пакета. Взятие максимума точно соответствует стандартному предположению: оценка пакета равна оценке самого подозрительного экземпляра, и только оценка этого экземпляра получает сигнал обратного распространения ошибки от метки пакета.
В этом примере на PyTorch линейная модель оценки экземпляров обучается на 16 000 пакетах по 20 случайных экземпляров. В каждом положительном пакете скрыт один экземпляр-свидетель, отличающийся по 4 из 16 признаков. При обучении используются только метки пакетов, а 1 000 тестовых пакетов позволяют проверить предсказания для пакетов и то, оказывается ли экземпляр с наивысшей оценкой свидетелем:
import torch
torch.manual_seed(0)
n = 17000 # 16,000 training bags and 1,000 test bags, each holding 20 instances with 16 features
bags, labels, witness = torch.randn(n, 20, 16), torch.randint(0, 2, (n,)).float(), torch.randint(0, 20, (n,))
bags[torch.arange(n), witness, :4] += 2.0 * labels[:, None] # a positive bag hides one shifted "witness" instance
scorer = torch.nn.Linear(16, 1) # gives every instance a score
optimizer = torch.optim.Adam(scorer.parameters(), lr=1e-2)
for i in range(0, 16000, 32): # train on 32 bags per step, using bag labels only
bag_logits = scorer(bags[i : i + 32]).squeeze(-1).max(dim=1).values # max pooling: a bag scores as its top instance
loss = torch.nn.functional.binary_cross_entropy_with_logits(bag_logits, labels[i : i + 32])
optimizer.zero_grad()
loss.backward()
optimizer.step()
with torch.no_grad():
scores = scorer(bags[16000:]).squeeze(-1) # one score per test instance
positive = labels[16000:].bool()
bag_accuracy = ((scores.max(dim=1).values > 0) == positive).float().mean()
located = (scores.argmax(dim=1) == witness[16000:])[positive].float().mean()
print(f"Bag accuracy: {bag_accuracy:.3f}, witness ranked first in {located:.3f} of positive bags")Модель правильно классифицирует 0,917 тестовых пакетов и ставит экземпляр-свидетель на первое место в 0,960 положительных пакетов, хотя метки экземпляров ни разу не использовались. Именно благодаря такому ранжированию экземпляров системы MIL могут указывать на фрагменты или клипы, лежащие в основе решения.
Объединение и MIL на основе внимания#
Объединение максимумом опирается на один экземпляр, поэтому один зашумлённый экземпляр может изменить результат для всего пакета. Объединение средним использует все экземпляры, но ослабляет редкий сигнал; оно подходит для коллективных предположений, при которых метка зависит от доли экземпляров с определённым признаком. Максимилиан Ильзе, Якуб Томчак и Макс Веллинг предложили глубокую MIL с механизмом внимания в 2018 году: небольшая нейросеть присваивает каждому экземпляру вес, а представление пакета представляет собой взвешенное среднее признаков экземпляров. Механизм внимания работает с пакетами любого размера, игнорирует порядок экземпляров и формирует веса, которые служат тепловой картой областей, лежащих в основе предсказания, подобно картам значимости.
Изображения целых гистологических препаратов слишком велики для сквозного обучения, поэтому во многих конвейерах обработки гистологических изображений каждый фрагмент сначала преобразуют в вектор признаков с помощью замороженного предварительно обученного кодировщика, а затем обучают только сеть объединения и классификатор на метках препаратов. В этой роли может выступать модель классификации изображений YOLO26: model.embed() возвращает один объединённый вектор признаков для каждого входного изображения, поэтому пакет фрагментов становится пакетом векторов экземпляров для слоя объединения с механизмом внимания.
Применение#
При анализе медицинских изображений MIL избавляет патологоанатомов от необходимости обводить опухоли на гистологических препаратах размером в гигапиксели. Габриэле Кампанелла и его коллеги из Мемориального онкологического центра имени Слоуна — Кеттеринга обучили систему MIL на 44 732 изображениях целых гистологических препаратов от 15 187 пациентов, используя только диагнозы из заключений патологоанатомов. В их исследовании 2019 года сообщалось, что площадь под ROC-кривой превышала 0,98 для рака предстательной железы, базальноклеточной карциномы и метастазов рака молочной железы в лимфатические узлы.
Для видео Вакаш Султани, Чэнь Чэнь и Мубарак Шах рассматривали каждое видео наблюдения как пакет сегментов для обнаружения аномалий и выпустили набор данных UCF-Crime: 1 900 неразрезанных видео только с метками на уровне видео. На них обучают модель присваивать наивысшую оценку аномалии сегментам, в которых происходит инцидент. При слабом обучении с учителем для обнаружения объектов изображение рассматривается как пакет предполагаемых областей с метками только присутствующих классов, а области с наивысшими оценками становятся предсказанными ограничивающими рамками. Во всех этих сценариях хранение всех фрагментов или кадров с одного гистологического препарата, от одного пациента или из одного видео в одной части выборки предотвращает утечку данных, которая возникла бы, если бы почти идентичные экземпляры оказались и в обучающей, и в тестовой выборках.
MIL и смежные постановки задач#
Полуобучение объединяет полностью размеченные и неразмеченные примеры, тогда как каждый пакет MIL размечен, но ни один из его экземпляров не имеет метки. Многометочная классификация присваивает одному примеру несколько классов; её можно сочетать с MIL в обучении с множеством экземпляров и меток. После MIL можно применить активное обучение: передавать экспертам экземпляры с наивысшими оценками из положительных пакетов, если метки на уровне экземпляров становятся достаточно ценными.










