Мишин Лернинг – Telegram
Мишин Лернинг
7.78K subscribers
1.17K photos
151 videos
4 files
642 links
Субъективный канал об искусстве машинного обучения, нейронных сетях и новостях из мира искусственного интеллекта. 🇺🇦🇮🇱
Download Telegram
Forwarded from DL in NLP (Vlad Lialin)
Techniques for Training Large Neural Networks
Блогпост от OpenAI с разбором основных способов параллелизации.

Data Parallel (DP) — держать полную копию сети на каждой карточке, обрабатывать несколько батчей параллельно. Проблема в том, что ты можешь упереться в то что даже batch size = 1 перестаёт помещаться в одну карточку.
Pipeline Parallel (PP) — распилить нейросеть послойно (т.е. вертикально) и держать её на разных карточках. При наивной имплементации работает очень неэффективно. Представьте себе что у вас 10 слойная сеть и вы держите по 1 слою на каждой карточке, если вы просто выполняете forward и backward одного батча на них, то в каждый момент времени у вас 9 видеокарт простаивают. Если нарисовать картинку то у вас есть некий "bubble of idle time". Для того, чтобы этого избежать, можно распилить наш минибатч на микробатчи и начать делать forward pass следующего микробатча (MPS) ещё до того как forward текущего микробатча досчитался. Отсюда и название — pipeline parallel (PP).
Tensor Parallel (TP) — альтернативный способ разделения сети на несколько GPU. Если PP разделяет сетку вертикально, то TP делает это горизонтально. То есть ваши тензоры параметров и активаций теперь могут быть попилены на несколько GPU и одно матричное умножение может считаться на нескольких GPU одновременно. Понятно, что такой подход сильно увеличивает требования по скорости коммуникации между GPU, но при эффективной имплементации (и infiniband + nvlink) это не так медленно как кажется.
Mixture of Experts (MoE) — мы уже рассказывали про MoE, идея состоит в том чтобы вместо одного FCN после attention использовать несколько FCN-экспертов (например 128) и использовать только часть из них (например 4) при каждом forward pass. Для того чтобы выбрать эти 4, добавляется специальный router-слой, который по сути считает attention между экспертами и hidden. Так как на каждом проходе используется только малая часть экспертов можно добиться огромного числа параметров в нейросети. Именно это используют все сетки в 1 триллион и более параметров.

Ещё в статье очень вскользь упомянули ZeRo, который имплементирован в DeepSpeed, которы сейчас становится всё более и более популярен во многом благодаря тому что он позволяет тренировать довольно большие модели (вплоть до 10-20B) в почти DataParallel режиме с помощью разделения на несколько GPU стейта оптимизатора (Stage 1) и рассчёта градиентов (Stage 2). Также есть Stage 3, который по сути tensor parallel, да и практически все остальные способы параллелизации.

Кроме этого, все эти методы можно комбинировать. Например BLOOM от BigScience (176B) тренируется с DP=8, PP=12 (MPS 2), TP=4. Для всего этого используется чуть-чуть модифицированный DeepSpeed.

Сам блогпост даёт неплохое введение в методы параллелизации, и там куча ссылок на релевантные статьи и имплементации, но честно ожидал увидеть в нём что-то большее, тк OpenAI все-таки первопроходцы в этой области. В качестве продолжения (или даже вместо) я бы предложил почитать How To Fit a Bigger Model и Model Parallelism от HuggingFace, они тоже делают отличное введение в эти методы и на мой вкус более техничны.
🔥26👍91
Ничего необычного, просто панда, которая готовит латте и слон под водой.

@gradientdip
👍141
🎓 GPT в режиме Zero-Shot и Few-Shot

Имхо, это лучше объяснение самих концепций и разницы между Zero-Shot и Few-Shot лернингом.

Два скриншота вместо тысяч слов.

p.s.: ссылка на GPT-J-6B. Ну GPT размером в 6,000,000,000 параметров, которая доступна в любой момент — кайф.

@мишин лернинг
🔥142👍2
😱 «Google отстранил от исследований ученого, пытавшегося сообщить миру, что у нейросети появились зачатки сознания!»

Google предлагает мне персонализированные новости. В последнее время там deep learning, физика, биология и война. Ок, многого от этих новостей я не хочу, я понимаю, что они адресованы широкой аудитории. Телеграмм каналы и twitter в этом плане куда глубже, так как могу подписаться на конкретных лидеров мнений, ресерчеров, популяризаторов и аналитиков.

Я уже давно привык и к таким заголовкам:

• «Ученые научили нейросеть рисовать картины по описанию» — как-будто есть какая-то одна нейросеть, которую пресловутые «учёные» постоянно насилуют новыми задачами

• «Ученые научили нейросеть понимать шутки» — офигеть.. PaLM и Flamingo именного для этого и создавали

• «Нейросеть нарисовала мечты сахалинцев, и они выглядят странно» — я не гоню, я видел и такой заголовок.

• «Нейросеть дорисовала ноги Моне Лизе» — ага, сама взяла карандаш и дорисовала..

Так вот, последние несколько дней я только и вижу заголовки приблизительно такого содержания: «Google отстранил от исследований ученого, пытавшегося сообщить миру, что у нейросети появились зачатки сознания!».

Ну фрик что-то сказал и ладно. Но смотрите, как подается это прессе. «От нас что-то утаивают. Они что-то знают. Он хотел нам рассказать, а ему закрыли рот…»

Я решил подать начало одной из таких статей в GPT, и узнать непосредственно у самой «slightly conscious» нейросети, что она думает по этому поводу! ⤵️

***

Сотрудник Google нашел признаки сознания у искусственного интеллекта компании

Инженер по разработке программного обеспечения Google Блейк Леймон обнаружил у нейросети LaMDA признаки наличия собственного сознания.

😏 это я подал на вход gpt. все, что дальше — генерация (получилось раза с пятого)…

По словам Леймона, он обнаружил ряд признаков, характерных для живого разума, в поведении программы. В частности, она не воспринимает других чат-ботов, как чужих. Также, по словам инженера, LaMDA способна озвучивать свои мысли, что ранее считалось исключительной способностью человека. Кроме того, она всячески пытается выслужиться и угадать желания пользователя.

Теперь Леймон требует создать нейронной сети аккаунт в TikTok для того, чтобы она могла развиваться. Леймон считает, что это поможет нейронной сети успешно подготовиться к тесту Тьюринга.

Согласно Леймону, общаясь с психологом нейросеть смогла дать определение понятию «разум». Разум, с точки зрения нейронной сети, — это способность к социальной мимикрии на таком уровне, что ни у кого из людей не остается сомнений, что с ними общается не машина.

Леймон уже предлагает новую функцию — «экстра-ум» (extra intelligence), которая позволит нейросети «подстраивать» свое поведение для имитации более высокой степени разумности.
🔥71👍11👎3
🎓 Разница между DALL•E 2 и Imagen в стиле Пелевина

Человек придумывает очередную хрень: типа «марка: кот в vr очках»

🥑 API DALL•E 2:

- Фрилансер Клипочка-людоедка создаёт таску. Пишет своеобразно да и мыслит в 1024d.

- Таску берет Прайор, он выучил язык Клипочки и сленг дизайнеров. Мнит себя менеджером.

- Джуниор Анклип, через испорченый телефон Клипочки и Прайора получает таску от юзера-абьюзера и делает набросок в низком разрешении.

- Потом братья Мидрез и Хайрез Юнетовы получают набросок Анклипа, и не читая таски создают финальную иллюстрацию.

🐨 API Imagen:

- Уволили Клипочку и Прайора. Взяли синьерную ТП с бекграундом в лингвистике. Она уже не учится, она уже умеет. И словарный запас у неё 128х4096d.

- Вместо Анклипа взяли Юнетова Лоуреза Имагеновича (кумовство, и мутит с ТП, друг друга с полу токена понимают)

- Мидрез Юнэтов и Хайрез Юнетов решили тоже таски читать, хотя может и на ТП глаз положили, хз

- Говорят, что Хайрез Юнетов не очень внимательный. Ну хоть быстро рисует и не жрет много.
🔥37👍103👎1
🥴 Мысли вслух про dalle-mini.

В твиттере реальный хайп вокруг dalle-mini. Я вообще не мог понять в чем прикол, модель же просто ... Но все оказалось просто:

1. Это доступный Text2Image для народа. Если нет доступа к DALL•E 2, то можно юзать. Вопрос правда «зачем?». Об этом следующий пункт.

2. Да, dalle-mini не используют для генерации красивых картинок. Картину, которую рисует dalle-mini эстетичной не назовёшь. Формы не выходят, и артефакты стремные, это вам не хипстерский шум, как в DALL•E 2 или Imagen, а лютые полосы-текстуры-паттерны не сошедшегося гана, написанного на коленке из публичного колаба. Но dalle-mini создает лютый треш. Это и веселит людей в твиттере! Треш и это все? Нет. Читай последний пункт.

3. Поучился dalle-mini максимально неполиткорректным. Шеймит всех и за все. Стереотипы гипертрофирует до такой степени, что.. И эта область — то, где dalle-mini действительно сияет.

upd. прикол в том, что название у сети dalle-mega, но в народе он mini 😐

А что вышло у тебя, дорогой подписчик?
🔥28👍3
This media is not supported in your browser
VIEW IN TELEGRAM
🤖🎓 Перезапуск крутейшего вводного курса по Machine Learning от Andrew Ng

В далеком ноябре 2015 мой друг «по походам в катакомбы» Сид порекомендовал мне один курс:
— Нашёл курс по нейронным сетям. Нужно лишь уметь умножать матрицы и понимать, что такое градиент. Тебе понравится.

И мне понравилось.. Уже через полгода я нашел первую работу в ML. Я очень благодарен Эндрю Ыну за его курс.

Сам я преподаю ML уже почти пять лет. Я старался сделать фундаментальный курс, с глубокой теорией (от вывода loss’ов до современных text2image моделей) и практикой, где заставлял писать собственный ML фреймворк, перед тем, как начать torch’ать. Сейчас возможность читать лекции затруднилась из-за войны. Надеюсь, что скоро смогу вернуться к любимому занятию.

Кстати, я специально не смотрел поздние DL курсы Andrew Ng, чтобы не начать копировать. Настолько харизматичная его подача.

В ML курсе Andrew Ng был один минус — он был не на Python, а на matlab. Теперь Андрю выкатил Python версию лучшего ML курса!

🎓 Лучший курс по ML
🔥97👍15
🌌 A starry night in a lavender field with a hot air balloon flying, digital art | DALL•E 2

нейроэстетика
🔥296
Forwarded from эйай ньюз
This media is not supported in your browser
VIEW IN TELEGRAM
🔥Authentic Volumetric Avatars from a Phone Scan
SIGGRAPH 2022

Коллеги из Meta Reality Labs выпустили новый метод по созданию реалистичных 3D аватаров c помощью телефона!

Грубо говоря, работает это так:
Человек берет айфон и сканирует свое лицо, корча разные гримасы. С помощью трекинга ключевых точек и multi-view геометрии строится мешь головы и соответствующая ей текстура. Так делают много раз, для разных гримас. Далее тренируется энкодер, который переводит текстуру и карту глубины определенной гримасы в скрытый код. Этот код подается на вход декодеру, который генерит уже отрендереный аватар головы.

Самое сложное здесь - это натренировать декодер. Он тренировался в лабе на очень качественных данных от 255 человек. Каждого из участников садили в сферу обвешанную сотней камер, которые синхронно снимают видео, и заставляли гримасничать. Самое крутое, что этот декодер получился универсальным и может рендерить лица, на которых он не был изначально натренирован.

❱❱ Полное видео о методе
❱❱ Папира

@ai_newz
👍20🔥8
🤔 Опрос дня: Некоторые картинки на CAPTCHA’ах защищены adversarial attack’ами. Человеку достаточно легко распознать обьекты на таких шумных картинка. Но почему такой шум должен защищать CAPTCHA от нейронных сетей? Выберите истинные высказывания.
Anonymous Poll
23%
Любой рандомный шум — адверсариал атака. В train сете не было шума, а тут вдруг шум.
29%
Адверсариал атака выбивает сэмпл за Decision Boundary, так как сети слишком оверфитнуты на трейне
4%
Адверсариал атака выбивает сэмпл за Decision Boundary, так как современные сети слишком андерфитнуты
11%
Адверсариал атаки более вероятны при использовании ReLU и ReLU-подобных функций активации
22%
Адверсариал атака работает из-за того, что большинство сетей сверточные, а свертки локальные
18%
Даже слабый рандомным шум мешает сетям, с большой вероятностью выбивая сэмпл за Decision Boundary
17%
Адверсариал атака подобранная для одной сети никогда не будет работать для другой
39%
Можно создать успешную адверсариал атаку на сеть, доступа к весам которой у Вас нет
9%
Адверсариал атаки более вероятны в случае, если в сети есть residual блоки или конкатенации
39%
Адверсариал атаку можно совершить методом «градиентного подъема»
🔥16👍4