Официальный канал школы "Deep Learning School" от Физтех-Школы прикладной математики и информатики МФТИ и Лаборатории нейронных систем и глубокого обучения МФТИ.
Мы - бесплатная онлайн-школа глубокого обучения. Обучаем работе с нейросетями с основ до продвинутого уровня. Наш сайт: dls.samcs.ru Наши курсы на Stepik: stepik.org/org/dlschool
Тут целый ряд вопросов возникает. Касательно инференса и MoE - понятно. Нужно корректировать. 1 . Другой вопрос касательно реальных задач. Насколько лосс, размер модели, количество токенов в обучении коррелирую с результатами в бенчмарках? Может быть, увеличив свои бюджеты в 3 раза - мы получим лишь весьма незначительный прирост в целевых задачах. 2. Насколько обосновано выходить на плато? Допустим, ограничение в инференсе 1 млрд параметров и нужно получить максимально качественную модель при разумно-неограниченном вычислительном бюджете. Сколько данных будет пределом для такой модели (после которого она уже не будет получать преимуществ). Что случится если модель выйдет на плато (начнет переучиваться)? Как это будет связано со значениями в бенчмарках? 3. Говоря о количестве данных, что мы можем сказать об их качестве? Разнообразии? Ведь все занимаются очисткой данных как минимум и это сильно помогает на бенчмарках. А если говорить о синтетике, тут появляется вопрос об их разнообразии и правдоподобии. Может, просто создать случайные последовательности символов? Их бесконечно. Или все-таки нужно заботиться о слабо измеримых параметров данных (самый простой пример факты реальные и факты ошибочные).
Отличное объяснение, структурированно и лаконично🎉 ну и естественно приятный лектор) пс в 16:01 все таки не вектор столбец умножается а вектор строка..
Поясните, пожалуйста, почему на эмбеддингах работает векторная арифметика (например, королева = король - мужчина + женщина)? Из того, как мы их получили, следует, что в них закодирован их контекст, поэтому эмбединги похожих слов будут похожи, т.е. их косинусное расстояние будет большим. А вот то что на данных эмбеддингах будет работать векторная арифметика, мне не совсем понятно.
Нашел объяснение: Alex Gittens, Dimitris Achlioptas, and Michael W. Mahoney. 2017. Skip-Gram − Zipf + Uniform = Vector Additivity. In Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pages 69-76, Vancouver, Canada. Association for Computational Linguistics.
Можно сказать что если я задам то как найти носки в комнате, которые я потерял и хорошо натренирую модель по поиску носков, то трансформер найдёт паттерны для нахождения инопланетных рас ?
Поначалу довольно интересный подкаст, потом начинается вкусовщина от спикера местами доходящая до токсичности. Выглядит очень странно, кандидат должен быть и жнец, и жрец, и на дуде игрец. Но при этом не должен быть олимпиадником, кэгглистом, курсистом (но курсера это другое) {вставить сюда категорию людей, которая не нравится спикеру}. Совсем потряс комментарий про то, как спикер сдерживался от того, чтобы не похихикать над семью звездочками, хотя кажется, что семь звездочек, даже если и выполнено в плане копипаста технологий, все равно довольно таки не плохой результат, может не повод для большой гордости, но странно высмеивать так. При чем очень элитарными выглядят рассуждения в духе, вот они взяли что-то и поменяли там немного, и вот получился хороший результат, а по сути они ничего и не сделали в плане рнд. Какое-то обесценивание на ровном месте. Хотя, если мы возьмём статьи в некоторых областях, и посмотрим как именно они развивались, всё-таки будет складываться ощущение, что идеи то старые, просто к ним какие-то новые трюки применены для ускорения или же новые вычислительные ресурсы использованы. Сам спикер отмечает, что у человека должно после собеседования остаться желание рекламировать кампанию, но у меня тяжёлый осадок остаётся после прослушенного, слишком много пафоса и элитарности.
Объясняется математиком для математиков, а надо бы программистом для программистов, потому что это конечные исполнители. Вы сами не путаетесь деуподетенаомегаподетддтт? Это дань динозаврам, чтобы они вам ночью не снились? Это все можно записать в виде программы, использовав человекочитаемые обозначения для функций и переменных, и станет все понятно. Не экономьте пиксели, они не кончатся.
Спасибо за видео! Кругом много видео на тему NLP, вроде бы все об одном и том же говорят, но до конца непонятно всё равно и можешь потратить час времени и ощущение как будто на 30% понял тему, а тут новичку как-то приятнее въезжать в материал, потому что много примеров и картинок, это хороший труд, складывается впечатление, что Вы думали головой перед тем как подавать материал слушателю, а не рассказывали на ходу что знаете. Есть парочку вопросов: 1) Может быть я не очень понял, но вначале Декодеру всегда подаётся <BOS>. Если модель уже построена и я хочу вывести её в продакшн. Например, я подаю модели "Меня зовут Ринат", то как модель из <BOS> поймёт первое слово "My"? Это всё делается благодаря тому что я уже подал Энкодеру "Меня зовут Ринат", и уже через ОБУЧЕННЫЕ веса я получаю свой h^d_0 и благодаря этому вектору Декодер из <BOS> должен получить "My" в качестве y с крышкой? 2) Не сразу понятно порой в каком порядке выкладываются видео, где первое видео, где последнее. Может как-то помечать их, условно серия видео "A1, A2, A3,..." от лектора №1, потом серия видео "B1,B2,B3,..." от лектора №2. Как будто нумерации хочется.
Ошибка в определении линейной зависимости. Забыл сказать, что \beta_i, = 1,...,n, не все равны нулю. 4:45 такую ерунду наговорил, каша в математических терминах. Совсем не факт, что веса будут уменьшаться, они и увеличиваться могут. Это что такое "применяться градиентный шаг"?
Спасибо! Как считаете, стоит с самого начала смотреть новые видео, которые вы выкладываете? Обучение без учителя, например. К аббревиатуре GPT стойкое отвращение >_<
Какая косноязычная каша во рту. Произношение английских слов вообще за гранью. Вам нужно нанять логопеда и учиться проводить профессиональные презентации.
ОЧень подробно и точно! Особенно понравилось про связь 3 слоя - 5 слоев, тоесть получается как и перцептроне все последующие слои связаны со всеми предыдущими.
20:41 Но в этом случае размерность вектора а будет равна m, а не d (размер эмбеддинга). И складывать вектор внимания a с x или у мы не сможем. 21:55 Аналогичная проблема. Мы получим n векторов размерности m (которая вообще говоря не совпадает с размерностью эмбединга) @DeepLearningSchool
Очередная хрень на 50 минут про свертку, которой уже пруд пруди ; и ничего про детальное обучение сети - особенно фильтров, в которых сами рассказчики ни черта ничего не понимают.
На слайде из 9:50 опечатка - должно быть DL[q(z|x, pfi) || p(z)]. И лекторша проговорила эту ошибку Еще опечатка на слайде из 11:04 в 1 строке - должно быть q[z, x | phi], а не q[z, phi| x]. Ещё на 3ей строчке этого же слайда почему-то стоит минус между лоссами реконструкции и регуляризации
хах, тут скорее во всей формуле на слайде 9:50 в знаменателе вместо p(z) должно быть p(z | x, phi) . На 11:04 ошибок нет. Не важно q(z | x, phi) или q(z | phi, x). Минус в лоссе тоже верный, мы перевернули дробь под логарифмом, чтобы получить D_KL - это дает минус.
Грубо говоря, VQ-VAE - это про то, как апроксимировать довольно гибкие, сложные непрерывные распределения дискретными точками, которые более легковестные. То есть эти N точек (вектора из codebook'а) - это центроиды каких-то уплотнений, кластеров из реального распределения. Насколько я понял, тут обычный лосс (как MSE из AE) разбивается на 2 лосса - энкодера и декодера. Мы хотим, чтобы вектора из энкодера плотно группировались у N точек, которыми мы хотим апроксимировать пространство (это encoder loss, от которого текут градиенты по всей CNN энкодера) и мы хотим, чтобы восстановленное изображение из сжатого латентного пространства было максимально похожим на входное (это reconstruction loss, от которого текут градиенты по всей CNN декодера). Ну и т.к. мы инициализировали эти N точек рандомно, то с чего вообще мы взяли, что с помощью их вообще можно что-то нормально апроксимировать? Давайте и их двигать, но по чуть-чуть (добавив коэффициент бэтта), чтобы модель успевала сходиться. А то получится, что центроиды двигаются в сторону итоговых точек энкодера, а эти точки уже сместились в сторону центроидов, оказавшись в другом месте. В итоге так и будут они в противофазе туда сюда прыгать. Резюмируя еще раз: Есть реальное распределение в латентном (сжатом) пространстве, в VAE мы его апроксимировали композицией нормальных распределений (это как разложение функции в ряд Фурье на 100 синусод или в ряд Тейлора), а потом в VQ-VAE мы это распределение еще раз упростили до набора центроидов локальных уплотнений плотности.