﻿1
00:00:00,000 --> 00:00:02,750


2
00:00:05,010 --> 00:00:07,323
- Давайте изучим архитектуру трансформера.

3
00:00:09,150 --> 00:00:12,030
Этот видео является вводным в серию видео о кодерах,

4
00:00:12,030 --> 00:00:15,510
декодерах и кодер-декодерах.

5
00:00:15,510 --> 00:00:16,343
В этой серии,

6
00:00:16,343 --> 00:00:18,900
мы попытаемся понять, что представляет собой трансформерная сеть,

7
00:00:18,900 --> 00:00:22,770
и постараемся объяснить это простыми, высокоуровневыми терминами.

8
00:00:22,770 --> 00:00:25,800
Понимание нейронных сетей не требуется,

9
00:00:25,800 --> 00:00:29,343
может помочь только понимание основ векторов и тензоров.

10
00:00:32,250 --> 00:00:33,270
Для начала

11
00:00:33,270 --> 00:00:34,530
мы возьмем эту диаграмму

12
00:00:34,530 --> 00:00:36,630
из оригинальной статьи о трансформерах,

13
00:00:36,630 --> 00:00:40,140
озаглавленной "Внимание - все, что вам нужно".

14
00:00:40,140 --> 00:00:41,010
Как мы увидим здесь,

15
00:00:41,010 --> 00:00:42,780
мы можем использовать только некоторые его части,

16
00:00:42,780 --> 00:00:44,630
в зависимости от того, что мы пытаемся сделать.

17
00:00:45,480 --> 00:00:47,610
Мы не будем углубляться в конкретные слои,

18
00:00:47,610 --> 00:00:48,990
составляющие эту архитектуру,

19
00:00:48,990 --> 00:00:51,390
но попытаемся понять различные способы

20
00:00:51,390 --> 00:00:52,893
использования этой архитектуры.

21
00:00:55,170 --> 00:00:56,003
Для начала давайте

22
00:00:56,003 --> 00:00:58,260
разделим эту архитектуру на две части.

23
00:00:58,260 --> 00:00:59,910
Слева находится кодер,

24
00:00:59,910 --> 00:01:01,980
а справа - декодер.

25
00:01:01,980 --> 00:01:03,330
Их можно использовать вместе,

26
00:01:03,330 --> 00:01:05,330
но можно и независимо.

27
00:01:06,180 --> 00:01:08,610
Давайте разберемся, как они работают.

28
00:01:08,610 --> 00:01:11,460
Кодер принимает входные данные, представляющие собой текст.

29
00:01:11,460 --> 00:01:13,620
Он преобразует этот текст, эти слова,

30
00:01:13,620 --> 00:01:15,675
в числовые представления.

31
00:01:15,675 --> 00:01:17,400
Эти числовые представления

32
00:01:17,400 --> 00:01:20,460
могут также называться эмбеддингами, или признаками.

33
00:01:20,460 --> 00:01:23,100
Мы увидим, что он использует механизм самовнимания

34
00:01:23,100 --> 00:01:24,483
в качестве основного компонента.

35
00:01:25,500 --> 00:01:27,120
Мы рекомендуем вам посмотреть видео

36
00:01:27,120 --> 00:01:29,700
о кодерах специально для того, чтобы понять

37
00:01:29,700 --> 00:01:31,680
что такое это числовое представление,

38
00:01:31,680 --> 00:01:33,690
а также как оно работает.

39
00:01:33,690 --> 00:01:36,660
Мы изучим механизм самовнимания более подробно,

40
00:01:36,660 --> 00:01:38,913
а также его двунаправленные свойства.

41
00:01:40,650 --> 00:01:42,780
Декодер аналогичен кодеру.

42
00:01:42,780 --> 00:01:45,630
Он также может принимать текстовые входы.

43
00:01:45,630 --> 00:01:48,210
Он использует аналогичный механизм, что и кодер,

44
00:01:48,210 --> 00:01:51,150
который также является маскированным самовниманием.

45
00:01:51,150 --> 00:01:52,590
Он отличается от кодера

46
00:01:52,590 --> 00:01:54,990
своим однонаправленным свойством

47
00:01:54,990 --> 00:01:58,590
и традиционно используется в авторегрессионной манере.

48
00:01:58,590 --> 00:02:01,650
Здесь мы также рекомендуем вам посмотреть видео о декодерах,

49
00:02:01,650 --> 00:02:04,000
особенно для того, чтобы понять, как все это работает.

50
00:02:06,810 --> 00:02:07,890
Комбинирование этих двух частей

51
00:02:07,890 --> 00:02:10,200
дает так называемый кодер-декодер,

52
00:02:10,200 --> 00:02:12,720
или трансформер последовательности в последовательность.

53
00:02:12,720 --> 00:02:14,280
Кодер принимает входные данные

54
00:02:14,280 --> 00:02:17,850
и вычисляет высокоуровневое представление этих входов.

55
00:02:17,850 --> 00:02:20,252
Эти выходы затем передаются в декодер.

56
00:02:20,252 --> 00:02:22,860
Декодер использует выход кодера,

57
00:02:22,860 --> 00:02:26,370
наряду с другими входными данными для создания прогноза.

58
00:02:26,370 --> 00:02:27,900
Затем он прогнозирует выход,

59
00:02:27,900 --> 00:02:30,248
который он будет повторно использовать в будущих итерациях,

60
00:02:30,248 --> 00:02:32,662
отсюда и термин "авторегрессивный".

61
00:02:32,662 --> 00:02:34,740
Наконец, чтобы получить представление

62
00:02:34,740 --> 00:02:36,690
о кодерах-декодерах в целом,

63
00:02:36,690 --> 00:02:39,670
мы рекомендуем вам ознакомиться с видео о кодерах-декодерах.

64
00:02:39,670 --> 00:02:42,420


