1. Learn
  2. /
  3. Курси
  4. /
  5. Моделі Transformer з PyTorch

Connected

Вправа

Додавання методів до класу MultiHeadAttention

У цій вправі ви побудуєте решту класу MultiHeadAttention з нуля, визначивши чотири методи:

  • .split_heads(): розділяє та перетворює вхідні вкладення між головами attention
  • .compute_attention(): обчислює масштабовану увагу на основі скалярного добутку та множить її на матрицю значень
  • .combine_heads(): перетворює ваги уваги назад у ту саму форму, що й вхідні вкладення x
  • .forward(): викликає інші методи, щоб пропустити вхідні вкладення через кожен етап

torch.nn імпортовано як nn, torch.nn.functional доступний як F, і torch також доступний.

Інструкції 1/4

undefined XP
    1
    2
    3
    4
  • Розділіть вхідні вкладення x між головами attention, змінивши їх форму на (batch_size, seq_length, self.num_heads, self.head_dim).