пожалуйста, помогите мне понять матрицы запросов, ключей и значений в архитектуре трансформатора. Сколько матриц запросов, ключей и значений должно быть в одном кодировщике? Например, у меня всего одна голова внимания и десять вложений, значит ли это, что должен быть только один набор матриц (под словом "набор" я имею в виду три матрицы - запрос, ключ и матрица значений), или это означает, что каждый из у десяти вложений должен быть свой набор матриц?
Пробовал создавать энкодер на "обрабатывающем" языке программирования с одним набором матриц, результаты вывода странные (вроде результирующие векторы почти одинаковые, а должны быть разные), вот и пришел сюда для уточнения теории , может я что-то не так делаю.
Трудно попытаться ответить на ваш вопрос, он кажется неточным на многих уровнях.
Одиночный слой само-внимания с одной головой будет иметь один ключ, одно значение, одну матрицу запросов.
Эти матрицы будут создаваться одинаково, иметь одинаковые размеры, они будут умножаться на вход таким же образом, но полученные тензоры будут использоваться по-разному при вычислении финальной оценки внимания:
Можете ли вы уточнить, что вы подразумеваете под «десятью вложениями»? 10 может относиться к разным вещам, например:
Под «десятью вложениями» я подразумеваю, например, десять слов в качестве входных данных. Спасибо за объяснение.