ЯдроКодаподготовка к экзаменам
Научная библиотека

Загружаем научный разбор

Подготавливаем текст, источники и редакционные примечания без изменения разметки страницы.

Каталог статейМатериал и источники

AlphaGenome: что разность предсказаний говорит об изменении ДНК

Автор: · Обновлено

AlphaGenome и эффекты вариантов ДНК: что предсказывает модель, как сравнивают REF и ALT и почему балл регуляции не равен вероятности заболевания.

Две последовательности ДНК отличаются одной буквой. Можно ли по этому отличию понять, изменится ли работа гена? Полезный ответ должен назвать измеряемый эффект, участок и биологический контекст. Фраза «мутация важная» без этих уточнений почти ничего не объясняет. Исследовательская задача AlphaGenome — связать последовательность с молекулярными измерениями и сравнить предсказания для исходного и изменённого вариантов.

В [разборе AlphaFold](/research/alphafold-2-3-confidence-limits) речь идёт о пространственной структуре молекул и достоверности структурного предсказания. Здесь другой объект: последовательность ДНК и признаки регуляции генов. Изменение регуляции может возникнуть без изменения аминокислотной последовательности белка. Ни структура белка сама по себе, ни регуляторный профиль сами по себе не описывают целиком поведение организма.

Какой результат действительно показали исследователи

Рецензируемая статья Žiga Avsec и соавторов опубликована в Nature 28 января 2026 года. AlphaGenome получает участок ДНК длиной около миллиона пар оснований и предсказывает множество функциональных профилей: среди них экспрессия, доступность хроматина и сплайсинг. У модели общий кодировщик, блоки Transformer и декодировщик с выходами для разных задач. Разрешение зависит от выхода; формулировка «до одного основания» не означает одинакового разрешения всех профилей. Обучение использует человеческие и мышиные данные. Авторы отдельно оценивают предсказание профилей на отложенных участках и эффекты вариантов; в 25 из 26 оценок второго типа модель достигает или превосходит лучшие внешние сравнения. Это счёт задач с разными метриками, а не точность 96% для произвольной мутации. Публикация Nature.

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

Что именно вычитают

В официальной процедуре сравнивают предсказания для REF, исходного аллеля, и ALT, альтернативного. Затем выбирают нужный пространственный участок, применяют соответствующее выходу агрегирование и получают оценку на профиль. Для вставок и удалений требуется согласование координат: после вставки нельзя просто вычесть элементы массивов с одинаковыми индексами. Описание variant scoring.

Рассмотрим собственную учебную модель. Она узнаёт придуманный мотив ACG и ставит единицу в начало каждого совпадения. В первом условном клеточном контексте единица увеличивает сигнал, во втором уменьшает. Эти правила заданы нами, не извлечены из биологических данных. Их задача — показать, почему одна замена может давать разные результаты в разных выходах и почему среднее между ними бывает обманчивым.

from math import isclose

def toy_tracks(sequence):
    motif = [float(sequence[i:i + 3] == "ACG")
             for i in range(len(sequence))]
    return {
        "context_A": [1.0 + 2.0 * value for value in motif],
        "context_B": [1.0 - 0.5 * value for value in motif],
    }

reference = "TTACGTTACGTT"
position = 3  # Индекс Python: четвёртая буква последовательности.
assert reference[position] == "C"
alternate = reference[:position] + "T" + reference[position + 1:]
ref_tracks = toy_tracks(reference)
alt_tracks = toy_tracks(alternate)

mask = range(2, 5)  # Включает начало первого мотива, исключает второй.
effects = {}
for name, ref in ref_tracks.items():
    delta = [alt - old for alt, old in zip(alt_tracks[name], ref)]
    effects[name] = sum(delta[i] for i in mask)
    assert isclose(delta[7], 0.0)  # Второй мотив сохранился.

assert effects == {"context_A": -2.0, "context_B": 0.5}
assert sum(a - b for a, b in zip([0, 4], [4, 0])) == 0
assert sum(abs(a - b) for a, b in zip([0, 4], [4, 0])) == 8
print(alternate, effects)

После запуска получится TTATGTTACGTT и словарь эффектов -2.0, 0.5. Проверка исходной буквы ловит ошибку координаты до расчёта. Последние два утверждения показывают другой риск: профили [4, 0] и [0, 4] имеют одинаковую сумму, хотя сигнал полностью переместился. Нулевой эффект по сумме не означает тождество профилей. Сумма абсолютных разностей отвечает на иной вопрос и не сохраняет направление изменения.

Здесь нет вызова AlphaGenome, обученных весов или реального генома. Числа нельзя использовать как оценку биологического эффекта. Пример проверяет логику сравнения массивов и помогает заметить ошибку ещё до дорогого запуска модели. Если перепутать REF и ALT, знак поменяется; если сдвинуть маску, изменится сам предмет измерения. Оба случая можно диагностировать обычными проверками входных данных.

Почему высокий балл не равен вероятности заболевания

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

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

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

Как превратить предсказание в исследовательскую гипотезу

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

Для воспроизводимой записи сохраняйте сборку генома, координаты и их соглашение, REF/ALT, выбранный выход, биологический контекст, маску, правило агрегирования и версию модели. Это наша рекомендация по организации эксперимента: без этих полей два одинаковых числа могут обозначать разные вычисления. В отчёте полезнее показать исходный и альтернативный профили рядом, чем оставить только ранжированный список баллов.

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

Источники

Формат и права

Формат
Авторский разбор

Атрибуция

Самостоятельный русскоязычный разбор ЯдроКода. Результаты исследований отделены от авторских учебных данных, вычислительных опытов и выводов. Материал не является переводом или перепечаткой.

Код, данные и иллюстрации

Учебные данные, расчёты и программные примеры созданы для этой публикации. Изображения, таблицы и программный код первоисточников не воспроизводятся.