Выбор строки матрицы
Для vocabulary размераV embedding matrix E имеет shape[V,d]. IDt выбирает строку E[t]. Это эквивалентно умножению one-hot строки e_t[1,V] на E, но не требует создавать большой разреженный массив в памяти.
В лаборатории шесть учебных слов и три координаты. Строка для ID2 («спит») равна[0,1,0]. One-hot[0,0,1,0,0,0] выбирает именно её. Таблица содержит18скаляров; последовательность из четырёх IDs создаёт четыре строки активаций, а не четыре копии обучаемых параметров.
Эксперимент. Выберите другой ID, затем измените одну ячейку E. Изменится представление соответствующего слова. На этой странице E — ручной геометрический fixture, не pretrained semantics. Координатам нельзя приписывать автоматически найденные человеческие значения.
Граница. One-hot и плотный embedding не являются одинаковыми векторами разной длины: E задаёт преобразование пространства. ID является индексом, а не числовой мерой сходства. Если vocabulary переупорядочить, нужно согласованно переупорядочить embedding rows и выходной head.