Афигеть... Реально круто. Совершенно новый для меня и очень ценный взгляд. А я вот только в 2023 магистерскую написал практически про паттерны рассуждений формируемые языковыми моделями на трейне и применяемыми ими на инференс ... и не знал про такое математическое обоснование. Просто понимаю, что они формируются, а как обосновать и какова природа процесса было не понятно. Спасибо, Игорь!
Очень подробно и доступно! Когда начал работать с LLM я понял, что это самый эффективный способ хранения информации, но объяснить друзьям простыми словами почему я не мог. Спасибо!
00:00 - Введение, что будет в курсе 01:18 - План на лекцию 01:48 - Трансформер, архитектура 04:17 - supervised VS unsupervised, реально ли unsupervised работает? 05:51 - pros&cons unsupervised 08:13 - ПРЕДСКАЗАНИЕ - КОМПРЕССИЯ 14:10 - MDL и пример с Universe of Data 18:08 - Колмогоровская сложность 19:56 - Почему компрессия? 21:06 - Пример с сжатием на LLAMA 24:15 - Как происходит передача? 28:34 - Пайплайн на компьютере 2, передача энтропии 32:46 - интересный факт)) 34:17 - итоги
Я магистр в физике полупроводников и знаю только основы МО. Эта лекция просто отлично зашла, кажется что большая часть понятна и главное интересно. Спасибо большое!
Спасибо за лекцию. Надо бы её переделать, добавить в 2 раза больше информации, условия эксперимента с суперкомпьютерами. Если для обоих серверов условия одинаковы, какой смысл передавать энтропию Z слева направо, проще посчитать её справа. И вообще, побольше физического смысла, что такое p1+z1 ? Вижу кучу восторженных возгласов от людей, который мало что поняли или посмотрели первые 5 минут. Повторюсь - спасибо за лекцию. Уважаю автора !
чтобы посчитать её справа, нужно чтобы справа оказался текст. Утверждение таково, что по ходу обучения модели передаваемый текст будет занимать больше места, чем передача энтропии. Это не верно для первых итераций, когда трансформер работает около-случайно, но верно с какого-то шага обучения. Поскольку модель ОЧЕНЬ хорошо предсказывает текст, то нужно будет передать крайне мало бит по сравнению с оригинальным текстом (да, даже если его сжимать)
Если я правильно понял, предлагается с компьютера 1 на компьютер 2 передать файл для инициализации модели. А обученные веса как будут переданы на компьютер 2? Ведь случайная модель не будет обеспечивать низкую энтропию (скорее всего энтропия будет максимально возможной) Или я что-то упускаю, и мы таким методом можем параллельно обучать модель на компьютере 2, поддерживая веса в синхронном виде?
Вопрос кажется снят. Как я понял, идея учить из параллельно. Как замечали в другом комментарии, на практике скорее всего проще и быстрее обученную модель на компьютер 2 передать. Которая сразу будет на все токены давать лучшее сжатие. Хотя это зависит от степени сжатия, и верно только с какого-то значения степени сжатия
@@kindyak7 Да, идея учить параллельно. На втором компьютере датасет получается прогоном той же модели, что и на первом (они же инициилизированы одинаково?), но с восстановлением датасета - см. с 28:50 как восстановили текущий батч (из предсказаний модели + кодирования энтропии) - сделали на нём backward pass и обновили веса, как и на первом компьютере. Итого у нас снова модели одинаковые. === > на практике скорее всего проще и быстрее обученную модель на компьютер 2 передать да, но тут же пример не о передаче модели, а о передачи данных. Модель - это просто часть инструмента компрессии. Причём рассматривается случай, что данных очень много. Можно загуглить, например, что у Amazon есть настолько крупные клиенты в облаке, что им быстрее оказалось перевести фурами часть стоек датацентра с дисками, а не передавать это по интернету. Это как пример того, что на огромных масштабах передача данных может быть и дорогой, и очень времязатратной) на самом деле схожая модель присутствует в современных архиваторах - просто они учат оооооочень маленькую модель, и, наверное (тут моя догадка) они сначала учат на всём, а потом кодируют, причём, можно переобучиться даже на конкретный набор данных. На Hutter Prize, который упоминается в ролике, если что, топовое решение (емнип без учёта ресурсов) - на трансформерах :)
14 минута, The Univese of Data - универсум данных, наверное тут так и переводится. Универсум - это множество, в рамках которого рассматриваются любые другие множества)
Привет. К сожалению, это курс не для начинающих, и он сам по себе является частью другого курса (dls.samcs.ru/, вторая часть). Поэтому такие темы тут не раскрыты. Можно изучить их по отдельности самостоятельно, но конкретно про "входной и выходной датасет на которых обучается эпоха" - это можно подчерпнуть в моей предыдущей лекции ua-cam.com/video/iOrNbK2T92M/v-deo.html (однако она тоже не для новичков, и например про эмбеддинги я там не рассказываю, а сразу испольхую это понятие).
заранее пардон, если это разбиралось, но наверное присоединюсь к вопросу о суперкомпьютерах: а в чем, собственно смысл было считать энтропию на первом и передавать его на второй, почему не посчитать сразу все на втором? суперкомпьютеры же не могут учиться на разных текстах, иначе придется передавать веса, а не лоссы?
Копирую ответ: чтобы посчитать её справа, нужно чтобы справа оказался текст. Утверждение таково, что по ходу обучения модели передаваемый текст будет занимать больше места, чем передача энтропии. Это не верно для первых итераций, когда трансформер работает около-случайно, но верно с какого-то шага обучения. Поскольку модель ОЧЕНЬ хорошо предсказывает текст, то нужно будет передать крайне мало бит по сравнению с оригинальным текстом (да, даже если его сжимать) Да, не могут учиться на разных текстах, иначе нужно передавать веса, что очень затратно (много гигабайт). Поэтому они должны учиться на одном и том же - но на правом-то компьютере этого текста нет.
я правильно понимаю что такую систему передачи можно построить только на первой эпохе? и на последущих эпохах размер энтрапии будет падать так же возможен ли вариант при котором на N эпохе размер этрапии + текущий размер сетки а это для лама65 120гигов будет меньше 397 гигов (размер энтрамии на первой эпохе)?
В теории, можно передавать одну и ту же инфу два раза, но в контексте замера перплексии на тренировке - действительно не имеет смысла повторять части датасета, так как начинается запоминание (меморизация), и по сути там compression ratio будет не самый честный. про второй вопрос - тут нужно сесть и посчитать, какой должны быть средняя перплексия, чтобы это оправдывалось, но я не уверен, что цифры сойдутся - чем больше модель, тем лучше у нее будет перплексия на первой эпохе, и тем меньше нам надо будет передавать, а значит всё сложнее дойти до этой планки, когда веса и коды на Nой эпохе передать проще чем просто коды с первой эпохи.
Насколько я понял, неравенство Хефдинга не может применяться именно для тренировочного сета. Потому что он не является случайно выбранным. Простейший контрпример - модель, которая тупо запоминает все ответы для тренировочного сета. Т.о. начилие хоть нулевой ошибки на тренировочном сете, хоть из миллиарда примеров не даёт никакой гарантии качества модели для произвольного сета. Неравенство Хёфдинга может быть полезно для оценки качества модели. Можно проверить модель на относительно небольшом проверочном сете, и сделать вывод о качестве её работы на произвольном сете. Но проверять модель на тренировочном сете нельзя. Ну вроде так...
Полная история GPT. Это он таким названием забайтил тех, кто хочет узнать про гпт с нуля. На самом деле тут ничего не будет понятно. И остальные части смотреть думаю нет смысла, там будет еще непонятнее.
ну чтобы смотреть вашу историю гпт, надо уже знать как работает гпт. это типичный пример обучения для тех, кто уже обучен. а кто не обучен, тот ничего не поймет@@stalkermustang
@@stalkermustang , Игорь, привет! Спасибо тебе огромное за твой труд. Поделюсь своим мнением относительно комментария выше. Мне как человеку без знания теории машинного обучения и высшей математики первое видео далось не просто. Лично для меня это не блокер, потому что все непонятные определения я гуглю и дополняю свои знания из различных источников. Знаю, что когда нибудь въеду:) Но такой подход может быть привычен не всем. И возможно, было ожидание о том, что ты будешь объяснять каждый base word на слайде. Потому что если непрерывно смотреть лекцию без знания слов, то быстро выпадаешь из контекста :)
@@МихаилРейнгандПривет, спасибо за ответ. Дело в том, что этот мини-курс - часть другого курса, и в посте с анонсом в телеграме я писал, какие нужны пререквизиты для просмотра. Конечно же курс не рассчитан на людей, которые, например, никогда не занимались ML или не смотрели предыдущую лекцию по устройству трансформера. Но не считаю, что это отбирает у курса право на название «Полная история..» , просто тут6 как и всегда, есть некотоырй входной порог. Наверное, это надо добавить в описание, так как конечно же не все переходят на видео по посту из канала или LinkedIn, где я давал схожий анонс.
Игорь, спасибо за лекцию!
Подача материала, как всегда, потрясающая :)
Афигеть... Реально круто. Совершенно новый для меня и очень ценный взгляд. А я вот только в 2023 магистерскую написал практически про паттерны рассуждений формируемые языковыми моделями на трейне и применяемыми ими на инференс ... и не знал про такое математическое обоснование. Просто понимаю, что они формируются, а как обосновать и какова природа процесса было не понятно.
Спасибо, Игорь!
Очень подробно и доступно! Когда начал работать с LLM я понял, что это самый эффективный способ хранения информации, но объяснить друзьям простыми словами почему я не мог. Спасибо!
Посмотрел на знакомые вещи под другим углом, спасибо!
00:00 - Введение, что будет в курсе
01:18 - План на лекцию
01:48 - Трансформер, архитектура
04:17 - supervised VS unsupervised, реально ли unsupervised работает?
05:51 - pros&cons unsupervised
08:13 - ПРЕДСКАЗАНИЕ - КОМПРЕССИЯ
14:10 - MDL и пример с Universe of Data
18:08 - Колмогоровская сложность
19:56 - Почему компрессия?
21:06 - Пример с сжатием на LLAMA
24:15 - Как происходит передача?
28:34 - Пайплайн на компьютере 2, передача энтропии
32:46 - интересный факт))
34:17 - итоги
Огромное спасибо, Игорь, за эту и другие лекции, буду очень ждать продолжение!
Это бешено круто и особенно - что это на русском языке. Просто космос. Спасибо вам!
cпасибо за классную лекцию
Спасибо огромное, очень круто
Большое спасибо!
Я магистр в физике полупроводников и знаю только основы МО. Эта лекция просто отлично зашла, кажется что большая часть понятна и главное интересно. Спасибо большое!
Спасибо за лекцию. Надо бы её переделать, добавить в 2 раза больше информации, условия эксперимента с суперкомпьютерами. Если для обоих серверов условия одинаковы, какой смысл передавать энтропию Z слева направо, проще посчитать её справа. И вообще, побольше физического смысла, что такое p1+z1 ?
Вижу кучу восторженных возгласов от людей, который мало что поняли или посмотрели первые 5 минут.
Повторюсь - спасибо за лекцию. Уважаю автора !
чтобы посчитать её справа, нужно чтобы справа оказался текст. Утверждение таково, что по ходу обучения модели передаваемый текст будет занимать больше места, чем передача энтропии. Это не верно для первых итераций, когда трансформер работает около-случайно, но верно с какого-то шага обучения. Поскольку модель ОЧЕНЬ хорошо предсказывает текст, то нужно будет передать крайне мало бит по сравнению с оригинальным текстом (да, даже если его сжимать)
Если я правильно понял, предлагается с компьютера 1 на компьютер 2 передать файл для инициализации модели. А обученные веса как будут переданы на компьютер 2? Ведь случайная модель не будет обеспечивать низкую энтропию (скорее всего энтропия будет максимально возможной)
Или я что-то упускаю, и мы таким методом можем параллельно обучать модель на компьютере 2, поддерживая веса в синхронном виде?
Вопрос кажется снят. Как я понял, идея учить из параллельно.
Как замечали в другом комментарии, на практике скорее всего проще и быстрее обученную модель на компьютер 2 передать. Которая сразу будет на все токены давать лучшее сжатие.
Хотя это зависит от степени сжатия, и верно только с какого-то значения степени сжатия
@@kindyak7 Да, идея учить параллельно. На втором компьютере датасет получается прогоном той же модели, что и на первом (они же инициилизированы одинаково?), но с восстановлением датасета - см. с 28:50
как восстановили текущий батч (из предсказаний модели + кодирования энтропии) - сделали на нём backward pass и обновили веса, как и на первом компьютере. Итого у нас снова модели одинаковые.
===
> на практике скорее всего проще и быстрее обученную модель на компьютер 2 передать
да, но тут же пример не о передаче модели, а о передачи данных. Модель - это просто часть инструмента компрессии. Причём рассматривается случай, что данных очень много. Можно загуглить, например, что у Amazon есть настолько крупные клиенты в облаке, что им быстрее оказалось перевести фурами часть стоек датацентра с дисками, а не передавать это по интернету. Это как пример того, что на огромных масштабах передача данных может быть и дорогой, и очень времязатратной)
на самом деле схожая модель присутствует в современных архиваторах - просто они учат оооооочень маленькую модель, и, наверное (тут моя догадка) они сначала учат на всём, а потом кодируют, причём, можно переобучиться даже на конкретный набор данных.
На Hutter Prize, который упоминается в ролике, если что, топовое решение (емнип без учёта ресурсов) - на трансформерах :)
Цитата Рэй Соломонова про описательную сложность хорошо перекликается с бритвой Оккама)
Спасибо!
Спасибо! Круто!
14 минута, The Univese of Data - универсум данных, наверное тут так и переводится. Универсум - это множество, в рамках которого рассматриваются любые другие множества)
Хотелось бы услышать более подробно как происходит Unsuoervised Learning, как создаются входной и виходной датасет на которых обучается епоха
Привет.
К сожалению, это курс не для начинающих, и он сам по себе является частью другого курса (dls.samcs.ru/, вторая часть).
Поэтому такие темы тут не раскрыты. Можно изучить их по отдельности самостоятельно, но конкретно про "входной и выходной датасет на которых обучается эпоха" - это можно подчерпнуть в моей предыдущей лекции ua-cam.com/video/iOrNbK2T92M/v-deo.html
(однако она тоже не для новичков, и например про эмбеддинги я там не рассказываю, а сразу испольхую это понятие).
Good stuff!
заранее пардон, если это разбиралось, но наверное присоединюсь к вопросу о суперкомпьютерах: а в чем, собственно смысл было считать энтропию на первом и передавать его на второй, почему не посчитать сразу все на втором? суперкомпьютеры же не могут учиться на разных текстах, иначе придется передавать веса, а не лоссы?
Копирую ответ: чтобы посчитать её справа, нужно чтобы справа оказался текст. Утверждение таково, что по ходу обучения модели передаваемый текст будет занимать больше места, чем передача энтропии. Это не верно для первых итераций, когда трансформер работает около-случайно, но верно с какого-то шага обучения. Поскольку модель ОЧЕНЬ хорошо предсказывает текст, то нужно будет передать крайне мало бит по сравнению с оригинальным текстом (да, даже если его сжимать)
Да, не могут учиться на разных текстах, иначе нужно передавать веса, что очень затратно (много гигабайт). Поэтому они должны учиться на одном и том же - но на правом-то компьютере этого текста нет.
@@stalkermustang теперь понятно, спасибо!
я правильно понимаю что такую систему передачи можно построить только на первой эпохе?
и на последущих эпохах размер энтрапии будет падать
так же возможен ли вариант при котором на N эпохе размер этрапии + текущий размер сетки а это для лама65 120гигов будет меньше 397 гигов (размер энтрамии на первой эпохе)?
В теории, можно передавать одну и ту же инфу два раза, но в контексте замера перплексии на тренировке - действительно не имеет смысла повторять части датасета, так как начинается запоминание (меморизация), и по сути там compression ratio будет не самый честный.
про второй вопрос - тут нужно сесть и посчитать, какой должны быть средняя перплексия, чтобы это оправдывалось, но я не уверен, что цифры сойдутся - чем больше модель, тем лучше у нее будет перплексия на первой эпохе, и тем меньше нам надо будет передавать, а значит всё сложнее дойти до этой планки, когда веса и коды на Nой эпохе передать проще чем просто коды с первой эпохи.
Насколько я понял, неравенство Хефдинга не может применяться именно для тренировочного сета. Потому что он не является случайно выбранным. Простейший контрпример - модель, которая тупо запоминает все ответы для тренировочного сета. Т.о. начилие хоть нулевой ошибки на тренировочном сете, хоть из миллиарда примеров не даёт никакой гарантии качества модели для произвольного сета.
Неравенство Хёфдинга может быть полезно для оценки качества модели. Можно проверить модель на относительно небольшом проверочном сете, и сделать вывод о качестве её работы на произвольном сете. Но проверять модель на тренировочном сете нельзя. Ну вроде так...
А кто целевая аудитория этой лекции? Какая база предполагается?
Те, кто интересуется машинным обучением и знает, как работает и обучается трансформер
У вас вроде нет законченного высшего образования, но объясняете как хорошийучитель
Это и есть мой секрет (╯°□°)╯︵ ┻━┻
Высшее образование нужно чтобы получать $10k за месяц, а не за ночь)
Пересмотрел. Задумолся...
Если честно ниxpeна не понятно 😢 На Хабре вы понятнее пишете (для неопытных воробьев)
Полная история GPT. Это он таким названием забайтил тех, кто хочет узнать про гпт с нуля. На самом деле тут ничего не будет понятно. И остальные части смотреть думаю нет смысла, там будет еще непонятнее.
а кому и что не понятно то :| конкретику бы
ну чтобы смотреть вашу историю гпт, надо уже знать как работает гпт. это типичный пример обучения для тех, кто уже обучен. а кто не обучен, тот ничего не поймет@@stalkermustang
@@stalkermustang , Игорь, привет! Спасибо тебе огромное за твой труд.
Поделюсь своим мнением относительно комментария выше.
Мне как человеку без знания теории машинного обучения и высшей математики первое видео далось не просто. Лично для меня это не блокер, потому что все непонятные определения я гуглю и дополняю свои знания из различных источников. Знаю, что когда нибудь въеду:)
Но такой подход может быть привычен не всем. И возможно, было ожидание о том, что ты будешь объяснять каждый base word на слайде. Потому что если непрерывно смотреть лекцию без знания слов, то быстро выпадаешь из контекста :)
@@МихаилРейнгандПривет, спасибо за ответ.
Дело в том, что этот мини-курс - часть другого курса, и в посте с анонсом в телеграме я писал, какие нужны пререквизиты для просмотра. Конечно же курс не рассчитан на людей, которые, например, никогда не занимались ML или не смотрели предыдущую лекцию по устройству трансформера.
Но не считаю, что это отбирает у курса право на название «Полная история..» , просто тут6 как и всегда, есть некотоырй входной порог. Наверное, это надо добавить в описание, так как конечно же не все переходят на видео по посту из канала или LinkedIn, где я давал схожий анонс.