Слова как векторы

Слова как векторы

Биомолекула

Вместо one-hot кодирования современные модели используют технологию векторизации (представления слова в виде набора чисел), которую называют эмбеддинг. Здесь важно сделать оговорку, что эмбеддинг — это одновременно и процесс превращения слова в вектор, и полученный вектор.

Что позволяет различить значения слова предложении? С этим помогает контекст — слова, которые находятся в непосредственной близости от определенного слова. Именно эту идею — учет контекста для векторизации слов — используют разработчики более современных языковых моделей.

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

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

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

Сверху: устройство модели. Основная идея — учет контекста, только тут не просто используется статистика совстречаемости, а эмбеддинги оптимизируются так, чтобы можно было из контекста восстановить слово (метод CBOW) или, наоборот, из слова восстановить контекст (метод skip-gram). При обучении word2vec разработчики сначала разбивали большой корпус текстов на короткие участки, определяющие контекст, и модель (в случае CBOW) тренировали восстанавливать слово по этому контексту.

Снизу: Как отличить мужчину от женщины? Модель word2vec поможет! Она сохраняет связи не только между четверкой слов «король», «королева», «мужчина» и «женщина», но и позволяет восстановить связь между временными формами слов или между страной и ее столицей. В интернете можно найти множество «калькуляторов» word2vec, которые по тройке слов восстанавливают четвертое.


Как это все связано с биологией? Мы уже научили языковые модели работать с текстом, что открывает огромный простор для покорения мира белковых молекул. Подробнее об использовании языковых моделей для изучения биомолекул читайте в статье.




Report Page