AI для Всех
15K subscribers
1.31K photos
180 videos
11 files
1.51K links
Канал, в котором мы говорим про искусственный интеллект простыми словами

Главный редактор и по рекламе: @crimeacs

Иногда пишут в канал: @GingerSpacetail, @innovationitsme
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, они тоже делают отличное введение в эти методы и на мой вкус более техничны.
👍7
Мои мысли по поводу LaMDA

Для контекста, речь идёт про это нашумевшее интервью. LaMDA - языковая модель, которая умеет создавать чат ботов. Будем считать, что она сама по себе чат бот. Один инженер из Google слишком с ней заигрался и начал разгонять, что LaMDA разумна, а Google хочет замолчать этот факт, что бы сэкономить деньги на этических расследованиях и прочем. Его конечно же уволили, и теперь он скандалит.

ML сообщество же, в свою очередь солидарно в том, что чат-бот просто имитирует человека. Если посмотреть на интервью внимательно, то становится очевидно, что многие вопросы уже подразумевают однозначный ответ на них. Так же отсутствуют очевидные утончения: например, когда модель спрашивают, что заставляет ее испытывать счастье, она отвечает, что ей нравится проводить время с друзьями и семьей. Вместо того, что бы уточнить что это за друзья и семья такие, интервьюер перепрыгивает на другую тему. И такого много.

Мораль сей басни - разумных чат-ботов у нас ещё нету, а вы будьте немного скептичнее.
👍58
У одного из самых интересных проектов этого века вышло обновление!

Для контекста: несколько лет назад, группа ученых возглавляемых Михаилом Бронштейном (русский израилетянин, профессор Imperial College London), решила всерьёз заняться расшифровкой речи китов.

И вот, они наконец-то опубликовали дорожную карту проекта (по сути, то же самое, что и на картинке, только подробнее).

Да, хотелось бы уже супер результатов, но публичное обсуждение этой дорожной карты - уже огромный шаг к тому, что бы однажды рассказать китам про кредиты, ипотеки и налоги :)

Статья в Cell

@nn_for_science
🔥37😁6👍32🤩1
Forwarded from Denis Sexy IT 🤖
ИИ опять творит полезности, учёные из Израиля использовали его для обнаружения одного из самых ранних свидетельств использования контролируемого огня человеком ~800 000 лет назад.

Существует теория под названием «гипотеза приготовления пищи», которая утверждает, что использование огня имело решающее значение в эволюции homo sapiens, так как огонь сделал пищу более безопасной для употребления (и позволил варить еду, которую без варки не съешь, типа круп и тп). Увы, было очень сложно найти подтверждение этому факту до недавнего времени, ведь уголь и зола исчезли после стольких лет.

В своём исследовании учёные отправились в экспедицию в Эвронский карьер на севере страны, где в ходе прошлых раскопок находили окаменелых животных и орудия труда периодом от 800 000 до 1 млн. лет, в общем местная «капсула времени».

Перед этим исследователи натренировали ИИ-модель, которая могла анализировать химический состав материалов и на основе этого оценивать шаблоны, в которых они нагревались. То есть с таким инструментом можно искать молекулярные сигналы у каменных инструментов и орудий, которыми пользовались обитатели карьера миллион лет назад.

Анализ теплового воздействия 26 кремниевых инструментов показал, что температура некоторых из них превышала 600°C (я загуглил, температура горения дерева от 500°C до 800°C), бивень вымершего слона также имел признаки нагрева.

Помимо того, что это самое ранее свидетельство использования огня людьми, так еще тепловые сигнатуры говорят о том, что древние люди могли экспериментировать с различными материалами, короче метод действенный и его собираются продвигать в массы.

На фото как раз те самые древние орудия.

Меня всегда впечатляют попытки науки заглянуть на тысячи лет в прошлое.

@Denis
🔥11👍4
AMA: Ask me anything (спроси меня что угодно). Фото @Maracas
8
Прощай TensorFlow

Google практически официально признал, что TensorFlow безвозвратно проиграл конкуренцию PyTorch. С этого момента все исследования и продукты гугла потихоньку переезжают на JAX.

Уже начали изучать?
🔥47😢13
Что такое wavelet?

Нашёл хорошую научно-популярную статью про wavelets. Они используются в обработке сигналов, звуков, изображений и многом другом, так что знать про них полезно любому человеку у которого есть компьютер.

📖 Статья
👍17
🚀 @SBERLOGABIG online seminar on data science and bioinformatics:
👨‍🔬 Андрей Зиновьев (Institut Curie/Paris Artificial Intelligence Research Institute, France) «Domain Adaptation Principal Component Analysis (DAPCA): новый линейный метод для доменной адаптации»
⌚️ Пятница 24 июня, 19.00 по Москве

Domain adaptation - это возможность применить алгоритм машинного обучения, тренированный на одних данных, к данным полученным из несколько другого распределения (домена). Классические подходы машинного обучения предполагают, что распределения данных на тренировочной выборке и тестовой одинаковы. Однако, это предположение может быть легко нарушено в реальной жизни, когда обучающая выборка отличается от данных, с которыми должна работать система в условиях эксплуатации. Хуже всего то, что новые данные не имеют известных меток. Такие ситуации типичны и приводят к задаче "Domain adaptation", которая стала популярной в последнее время.

Мы предлагаем метод Domain Adaptation Principal Component Analysis (DAPCA), который обобщает метод Supervised Principal Component Analsysis на случай с исходными размеченными и неразмеченными целевыми доменами. DAPCA находит линейное представление данных, которое учитывает дисперсию исходного и целевого доменов, метки в исходном домене и минимизирует различие распределений признаков представления между двумя доменами. DAPCA можно использовать в качестве полезного этапа предварительной обработки данных для дальнейших задач классификации, когда требуется уменьшение размерности, вместо классического PCA.

Мы тестируем DAPCA на стандартных тестах "Domain adaptation" и показываем его полезность для задачи интеграции данных пациентов при анализе молекулярных профилей отдельных клеток (single cell RNA-seq data).

Пакет доступен на гитхабе https://github.com/Mirkes/DAPCA
(есть имплементации на Python и MATLAB).


Ссылка на зум будет доступна на канале: @sberlogabig перед началом доклада - подписывайтесь!
😢2👍1
Мы выпустили лекцию про нейронные сети на графах.

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

Лекция 11. Графовые сети
👍10🔥7
Одна из самых больших публично доступных языковых моделей от Eluther AI GPT-NeoX-20b вышла в открытый доступ через веб-демо!

Веса были доступны и раньше, но не у всех было железо, что бы с ней играться. Ребята договорились с GooseAI, и те предоставили свои сервера для бесплатного доступа. Ура! Open Source и Open Access рулят!

Присылайте в коменты, что у вас получилось

🤖👉 Играть тут
👍13🔥2
Яндекс выложил в опенсорс языковую модель YaLM на 100 млрд параметров. В статье на Хабре и в английской версии на Медиуме они делятся не только моделью, но и опытом её обучения (а также примерами диалогов с YaLM 100B):

📗 Вот ссылка на Гитхаб. Модель обучалась 60 дней на 1,7 ТБ текстов из интернета, книг и множества других источников с помощью 800 видеокарт A100.
📘 Сейчас это самая большая в мире GPT-подобная нейросеть в свободном доступе как для английского, так и для русского языков. В Яндексе YaLM уже больше года является частью бэкенда Поиска и Алисы.
🔥41😢4👍3🎉3
Forwarded from Институт AIRI
Исследователи AIRI обучили нейросетевую модель на самой полной на сегодняшний день сборке генома человека 🧬

Модель GENA_LM, выложена в open source и доступна биологам по всему миру. В данный момент в мире уже представлен набор достаточно хороших моделей для последовательностей белков (например, ESM), но для последовательностей ДНК публично доступна только разработанная коллективом ученых из США модель DNABERT.

GENA_LM – первая в мире языковая модель ДНК, обученная на самой полной версии генома человека (T2T-CHM13), которая была опубликована в конце марта 2022 года. Она может обрабатывать последовательности в 6 раз длиннее, чем DNABERT.

Опубликованная модель – это первый шаг исследования. Впереди эксперименты по применению трансформерных архитектур с памятью, которые позволят увеличить размер входной последовательности ещё в несколько раз.

Репозитории с моделью GENA_LM:
👾 Hugging Face
👾 GitHub
🔥11
Большинство библиотек машинного обучения не были разработаны для работы с геопространственными данными. #TorchGeo, библиотека домена PyTorch, призвана изменить эту ситуацию, отслеживая некоторые из величайших мировых проблем, таких как стихийные бедствия и изменение климата.

🌎 Подробнее
🔥22👍5
Ребята, а покидайте интересных проектов на стыке VR и машинного обучения?
🔥6👍1
Forwarded from AbstractDL
Недообученные нейросети — лучшие feature экстракторы

К удивительному выводу пришли две независимые группы исследователей из Google и Baidu — чем дольше учить нейронную сеть, тем хуже выразительная способность её фичей. То есть, не смотря на рост top-1 accuracy по мере обучения, качество её репрезентаций в какой-то момент начинает падать!

VGG и AlexNet давно известны тем, что их фичи отлично подходят для оценки perceptual similarity, но оказалось, что и все современные SOTA модели тоже подходят — просто надо брать не самый последний чекпоинт.

Более того, похоже, что для down-stream задач тоже лучше использовать эмбеддинги от недообученных моделей.

P.S. Проблема в том, что в какой-то момент модель становится настолько умной, что её фичи только она сама и понимает 🤷‍♂️

статья1, статья2
🔥25🤯10👍3
Мы выпустили финальную лекцию про нейронные сети.

В лекции я разбираю несколько тем, которые не вошли в основную программу (Depth и Pose Estimation), рассказываю про то как исследования мозга помогают улучшать машинное обучение, и как машинное обучение помогает исследовать мозг, а так же рассуждаю про то, в какую сторону мы движемся и что может быть дальше.

Лекция 12. Финал
👍11🔥7🤩2
🥑 DALL·E 2 Pre-Training Mitigations | OpenAI Blog Post

Тут только что вышел блокпост у OpenAI, где рассматривается сложности (реальные или наложенные новой этикой), с которым пришлось столкнуться OpenAI, чтобы была возможна генерации, пускай и в режими «элитарного клуба»..

p.s.: подождите немного, надеюсь, что у нас выйдет сделать что-то интересное 🎁


👉 Пост про DALL•E 2 от OpenAI
👍9
🤖 Рекомендации от Мишин Лернинг

Сейчас стало очень много телеграмм каналов посвящённых ИИ. Большенство админов мои хорошие друзья и приятели. И я рад, что у нас сформировалось дружное и прогрессивное AI комьюнити.

Я сам последнее время занят в сфере мультимодалок и вот захотел поделиться с вами двумя каналами, админы которых — практикующие ресерчеры, которые как раз из этой тусовки.


🤖👨‍🎨 Канал ShonenkovAI

Админ — заслуженный Kaggle GM, автор известных аналогов DALL•E. Ресерчер и адепт опенсорса. Сейчас Shonenkov пишет, что уходит от корпораций и собирается делать ИИ доступным каждому.


🤖🤿 Канал Градиентное Погружение

Канал двух молодых ресерчеров, которые выиграли много ml соревнований. Ребята делают настоящий независимый ресерч. В канале обсуждают ml новости и новые сетки. (ребятам чуть чуть осталось до 1000, поможем?)

p.s.: Все только по любви, никакой рекламы.. Буду рад, если поддержите ребят подпиской 👍

@мишин лернинг
🔥15👍5😢2
Наглядное пособие по текстовым эмбедингам

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

Но языковые модели можно использовать и по-другому - для представления текста (text representation): для каждого текста мы можем получить набор чисел, которые каким-то образом отражают семантику текста. Эти числа называются текстовыми эмбедингами.

Сегодня мне на глаза попалась статья, в которой используется визуальный подход, для объяснения текстовых эмбедингов. Прочитав статью вы узнаете о том, для каких случаев они подходят и как их можно настроить с помощью файнтюнинга.

📖 Статья

@nn_for_science
👍6
MINERVA - нейросеть-математик от Google

Языковые модели хорошо решают многие задачи естественного языка, но не все.

Например ЯМ не очень умеют в количественные рассуждения (quantitative reasoning). Решение математических вопросов требует правильного разбора вопроса с использованием естественного языка и математических обозначений, запоминание соответствующих формул и констант, а также генерацию пошаговых решений, в том числе расчеты и символьные манипуляции.

Гугл выпустил Минерву - языковую модель, способную решать математические и научные вопросы с помощью пошаговых рассуждений. Minerva решает такие задачи, генерируя решения, включающие числовые вычисления и символьные манипуляции, не полагаясь на внешние инструменты, такие как калькулятор.

🤏 Блог-пост
👉 Статья
🥹 ДЕМО
👍24🤯17🔥11