REALM: Как научить нейросеть пользоваться Википедией как человеком

Yannic Kilcher 15,9 тыс. 1 ч 4 мин 14.08.2020
Главное

В современном мире поиск ответов на вопросы стал делом нескольких секунд: мы вбиваем запрос в Google, находим нужную страницу и считываем ответ. Однако для систем искусственного интеллекта долгое время существовал разрыв между умением «понимать» язык и обладанием конкретными фактами о мире. По мнению Янника Килхера (Yannic Kilcher), новая архитектура REALM пытается воссоздать человеческий подход к поиску информации, обучая нейросеть пользоваться внешним корпусом знаний так же эффективно, как это делает человек с поисковиком.

🧠 Проблема «запечённых» знаний: Зачем нам REALM? 4:36

Традиционные большие языковые модели (LLM), такие как GPT-3, обладают поразительным объемом знаний о мире, но эти знания хранятся в них неявно — они «запечены» непосредственно в веса нейронной сети . Янник Килхер отмечает, что такой подход делает модели непрозрачными и неповоротливыми: чтобы модель выучила больше фактов, её приходится делать всё больше и больше.

Авторы REALM (Retrieval-Augmented Language Model) предложили альтернативный путь — модульный подход . Вместо того чтобы заставлять модель запоминать всё на свете, они создали архитектуру, которая:

Главным достижением работы, по мнению ведущего, является не сам факт извлечения данных (это делали и раньше), а абсолютно новый метод предобучения (pre-training), который позволяет модели учиться искать информацию без подсказок человека, используя только сигнал от задачи заполнения пропусков в тексте (Masked Language Modeling) .

🏗️ Архитектура системы: Три кита REALM 8:47

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

  1. Модель эмбеддинга корпуса (Model 1): Обрабатывает миллионы документов Википедии и превращает их в векторы в многомерном пространстве .
  2. Модель эмбеддинга запроса (Model 2): Превращает вопрос пользователя (или текст с пропущенным словом) в вектор в том же самом пространстве .
  3. Модель-аннотатор (Model 3): Получает на вход текст вопроса и текст найденных документов, чтобы сформулировать финальный текстовый ответ .

Процесс поиска основан на расчете скалярного произведения (inner product) между вектором запроса и векторами документов . Чем выше результат, тем более релевантным считается документ. Янник подчеркивает, что для работы с 13 миллионами документов Википедии авторам пришлось использовать специальные алгоритмы MIPS (Maximum Inner Product Search), которые работают сублинейно, позволяя находить топовые документы мгновенно .

🔄 Обучение через «мертвую петлю» и проблема холодного старта 14:52

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

Янник Килхер выделяет несколько ключевых проблем и решений этого процесса:

🎯 Секретный соус: Salient Span Masking 45:04

Обычное Masked Language Modeling (как в BERT) часто оказывается слишком простым. Если скрыть слово «город» в фразе «Париж — это прекрасный [MASK]», модель угадает его по локальному контексту, не обращаясь к внешним знаниям.

Чтобы заставить REALM по-настоящему пользоваться Википедией, авторы внедрили «маскирование значимых фрагментов» (Salient Span Masking) :

По мнению Янника Килхера, это решение является «грязным хаком», так как оно сильно затачивает модель под конкретные наборы данных для ответов на вопросы, но признает, что именно оно дает колоссальный прирост в точности .

📊 Результаты и выводы 52:10

REALM значительно превосходит предыдущие подходы (такие как T5 или ORQA) на тестах Open Domain Question Answering (Natural Questions, WebQuestions, CuratedTrec) . При этом модель остается интерпретируемой: мы всегда можем увидеть, какой именно документ Википедии привел ИИ к конкретному ответу.

Янник демонстрирует пример с «числом Ферма»: без внешних документов модель оценивала вероятность верного ответа как ничтожную, но при подключении нужной статьи Википедии уверенность возрастала до максимума .

В заключение ведущий отмечает, что несмотря на впечатляющие цифры, системе еще есть куда расти — она всё еще может ошибаться, если в топ-8 результатов поиска попадает шумная информация . Но архитектурный сдвиг в сторону разделения «языка» и «памяти» кажется ему крайне перспективным направлением в развитии ИИ.

💬 Цитаты

«Чтобы запечатлеть знания более модульным и интерпретируемым способом, мы дополняем предварительное обучение языковой модели скрытым поисковиком знаний.»

Янник Килхер 06:37

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

Янник Килхер 35:54
👥 Спикер
🔗 Упомянутые сайты и проекты
📖 Термины
Open Domain Question Answering (Open QA)
Задача поиска ответа на вопрос в огромном открытом массиве документов без заранее указанного фрагмента текста.
Masked Language Modeling (MLM)
Метод обучения ИИ, при котором в предложении скрываются случайные слова, а модель должна их угадать по контексту.
Эмбеддинг (Embedding)
Представление фрагмента текста в виде компактного математического вектора (набора чисел).
MIPS (Maximum Inner Product Search)
Алгоритм быстрого поиска наиболее похожего вектора в базе данных из миллионов записей.
📊 Цифры
⚖️ Другая сторона
Искусственный интеллект REALM Yannic Kilcher Masked Language Modeling Open Domain Question Answering Wikipedia