Pull to refresh
53
1
Send message

Так все же, насколько быстры каналы в Linux?

Reading time26 min
Views22K

В этом посте будет проанализировано, как каналы Unix реализуются в Linux. Для этого мы напишем и в несколько итераций оптимизируем тестовую программу, которая записывает и считывает данные через канал.  

Читать далее
Total votes 96: ↑91 and ↓5+86
Comments31

Яндекс выложил YaLM 100B — сейчас это крупнейшая GPT-подобная нейросеть в свободном доступе. Вот как удалось её обучить

Reading time10 min
Views117K

Больше примеров — в конце поста

В последние годы большие языковые модели на архитектуре трансформеров стали вершиной развития нейросетей в задачах NLP. С каждым месяцем они становятся всё больше и сложнее. Чтобы обучить подобные модели, уже сейчас требуются миллионы долларов, лучшие специалисты и годы разработки. В результате доступ к современным технологиям остался лишь у крупнейших IT-компаний. При этом у исследователей и разработчиков со всего мира есть потребность в доступе к таким решениям. Без новых исследований развитие технологий неизбежно снизит темпы. Единственный способ избежать этого — делиться с сообществом своими наработками.

Год назад мы впервые рассказали Хабру о семействе языковых моделей YaLM и их применении в Алисе и Поиске. Сегодня мы выложили в свободный доступ нашу самую большую модель YaLM на 100 млрд параметров. Она обучалась 65 дней на 1,7 ТБ текстов из интернета, книг и множества других источников с помощью 800 видеокарт A100. Модель и дополнительные материалы опубликованы на Гитхабе под лицензией Apache 2.0, которая допускает применение как в исследовательских, так и в коммерческих проектах. Сейчас это самая большая в мире GPT-подобная нейросеть в свободном доступе как для английского, так и для русского языков.

В этой статье мы поделимся не только моделью, но и нашим опытом её обучения. Может показаться, что если у вас уже есть суперкомпьютер, то с обучением больших моделей никаких проблем не возникнет. К сожалению, это заблуждение. Под катом мы расскажем о том, как смогли обучить языковую модель такого размера. Вы узнаете, как удалось добиться стабильности обучения и при этом ускорить его в два раза. Кстати, многое из того, что будет описано ниже, может быть полезно при обучении нейросетей любого размера.
Читать дальше →
Total votes 166: ↑165 and ↓1+164
Comments139

HaGRID — огромный открытый датасет для распознавания жестов

Reading time9 min
Views7.3K

Хороший набор данных невероятно важен при обучении нейросетей. Наш датасет изображений с жестами HaGRID (Hand Gesture Recognition Image Dataset) — один из таких. С его помощью можно создать систему распознавания жестов, которая будет отлично работать в совершенно разных ситуациях. Например, жестовое управление можно использовать в видеоконференциях, для управления устройствами умного дома или мультимедийными возможностями автомобиля. Ещё одна важная возможность — создание виртуальных помощников для пользователей с дефектами речи или использующих язык жестов. Ниже рассказываем, как всё это работает, и делимся ссылками на датасет и набор предобученных моделей к нему.

Читать далее
Total votes 19: ↑19 and ↓0+19
Comments12

Рейтинг русскоязычных энкодеров предложений

Reading time9 min
Views22K

Энкодер предложений (sentence encoder) – это модель, которая сопоставляет коротким текстам векторы в многомерном пространстве, причём так, что у текстов, похожих по смыслу, и векторы тоже похожи. Обычно для этой цели используются нейросети, а полученные векторы называются эмбеддингами. Они полезны для кучи задач, например, few-shot классификации текстов, семантического поиска, или оценки качества перефразирования.

Но некоторые из таких полезных моделей занимают очень много памяти или работают медленно, особенно на обычных CPU. Можно ли выбрать наилучший энкодер предложений с учётом качества, быстродействия, и памяти? Я сравнил 25 энкодеров на 10 задачах и составил их рейтинг. Самой качественной моделью оказался mUSE, самой быстрой из предобученных – FastText, а по балансу скорости и качества победил rubert-tiny2. Код бенчмарка выложен в репозитории encodechka, а подробности – под катом.

Читать далее
Total votes 26: ↑26 and ↓0+26
Comments19

Моя борьба с санкциями или как появился умный VPN

Reading time3 min
Views74K

Зачем людям ранее был нужен VPN (кроме мошенников конечно) - чтоб ходить на Linkedin и обходить всякие разные запреты РКН.

Когда ввели санкции и некоторые сайты перекрасились в сине-желтый цвет, то многие по старой памяти подумали - включим VPN и всё сразу станет как раньше, разве что русские сайты начнут открываться на 50мс медленнее.

Но не тут-то было. Вместе с перекраской сайтов, началась волна DDoS и хакерских атак на различные сервисы в РФ. В итоге, российские сайты закрылись от остального интернета. И с VPN стало очень некомфортно - хочешь пользоваться Terraform или там MatterMost скачать - включаешь VPN и сразу же не можешь сходить ни на Ozon ни на Госуслуги.

Интернет разделился на InnerNet и OuterNet.

Читать далее
Total votes 46: ↑39 and ↓7+32
Comments130

Почему GPU обманывают о своей нагрузке и как с этим бороться

Reading time10 min
Views19K
В предыдущем посте я рассказывал о том, как мы строили свои суперкомпьютеры. В этом — поделюсь опытом, который мы накопили, эксплуатируя наши кластеры. Этот опыт будет полезен не только тем, кто обучает огромные ML-модели. На грабли, о которых пойдёт речь, легко наступить, даже если вы специалист с парой GPU.



Почему в распределённом обучении нельзя доверять утилизации GPU? Почему переход в эру распределённого обучения — фундаментальный сдвиг парадигмы мышления, к которому должен быть готов каждый ML-разработчик? Ещё больше «Почему» и ответов на них — под катом.
Читать дальше →
Total votes 75: ↑74 and ↓1+73
Comments8

15 игр, которые прокачивают логику, алгоритмы, ассемблер и силу земли

Reading time8 min
Views102K


Есть «Super Mario», признанная классика видео игр. Есть «Doom», который запускают на чайниках и тестах на беременность. Есть супер-популярные по статистике twitch.tv игры («League of Legends», «GTA V», «Fortnite», «Apex Legends») которые стримят пятая часть всех стриммеров.

А есть игры, на которые очень мало обзоров, но они супер крутые — игры про алгоритмы. Игры, в которых можно кодить на ретро-компьютере; игры, которые надо взламывать; игры, где можно программировать контроллеры или поведение персонажей; игры, где можно создавать свою игру внутри игры.

Под катом подборка классных игр про алгоритмы за последние 10 лет. Если что-то упустила — буду рада дополнениям.

Еще я создала канал в Telegram: GameDEVils, буду делиться там клевыми материалами (про геймдизайн, разработку и историю игр).
Читать дальше →
Total votes 98: ↑93 and ↓5+88
Comments98

Изготавливаем самодельный электролюминесцентный индикатор

Reading time11 min
Views22K
В прошлый раз я показывал вам свою коллекцию советских электролюминесцентных индикаторов. Я капитально подсел на эту тему и последние три месяца пытаюсь изготовить самодельный индикатор удовлетворительного качества.

Дерпи Хувс ловит маффины. Стекло. Эпоксидка. Зелёный люминофор.

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

Думаю ещё через несколько месяцев я смогу написать уже Исчерпывающее руководство по изготовлению самодельных индикаторов, с подробным обоснованием всех возможных комбинаций материалов, но пока же ограничусь описанием проведённых экспериментов и полученными текущими результатами^
Читать дальше →
Total votes 206: ↑206 and ↓0+206
Comments51

2D магия в деталях. Часть четвёртая. Вода

Reading time13 min
Views34K

— Я тут воду для проекта запилил.
— О, круто! А почему она плоская? Даёшь волны!

— Слушай, ты тогда про волны говорил, помнишь? Зацени!
— Да, хорошие волны, а преломление и каустику ещё не делал?

— Привет, я тут игрался с Unity всю ночь, смотри какие отражения и каустику закодил!
— Дарова, и правда, хорошо! А когда у тебя вода кипит, отражения не глючат?

— Хай, реализовал наконец, кипение, вроде ничего?
— О, прямо как нужно! Слушай, прикинь как круто, если кипящую волну заморозить?

— Лови картинку, лёд вроде ничего придумал?
— Норм, слушай, а у тебя лёд замерзает, он в объёме увеличивается? И кстати, ты когда геймлей то делать начнёшь?
Вариации на тему лога с другом.

Да, вы уже поняли, наконец-то расскажу про реализацию воды в проекте. Приступим?

Total votes 87: ↑86 and ↓1+85
Comments36

Как сделать полнотекстовую поисковую машину на 150 строках кода Python

Reading time14 min
Views26K

Полнотекстовый поиск — неотъемлемая часть нашей жизни. Разыскать нужные материалы в сервисе облачного хранения документов Scribd, найти фильм в Netflix, купить туалетную бумагу на Amazon или отыскать с помощью сервисов Google интересующую информацию в Интернете — наверняка вы сегодня уже не раз отправляли похожие запросы на поиск нужной информации в невообразимых объёмах неструктурированных данных. И что удивительнее всего — несмотря на то что вы осуществляли поиск среди миллионов (или даже миллиардов) записей, вы получали ответ за считанные миллисекунды. Специально к старту нового потока курса Fullstack-разработчик на Python, в данной статье мы рассмотрим основные компоненты полнотекстовой поисковой машины и попытаемся создать систему, которая сможет за миллисекунды находить информацию в миллионах документов и ранжировать результаты по релевантности, причём всю систему можно воплотить всего в 150 строках кода на Python!

Читать далее
Total votes 8: ↑6 and ↓2+4
Comments8

Экспериментируем с ПЛИС семейства ECP5 фирмы Lattice

Reading time10 min
Views8.6K

Когда я видел на Хабре упоминание о ПЛИС Lattice, у меня всегда возникал простой вопрос: «А зачем ещё одна ПЛИС?». Вроде всю жизнь хватало пары базовых. Но полгода назад случилось то, что сняло этот вопрос для меня. Пришёл Заказчик и сказал: «Мы делаем проект на ECP5». Против требований Заказчика не попрёшь!

А пока я осваивал работу с этим железом и пытался понять, как обосновать необходимость попробовать то же самое для остальных, мой знакомый, ныне живущий в Штатах, обрадовал новостью, что у его любимого поставщика подходит к концу запас десятых Циклонов и шестых Спартанов. В целом, через три года будет построен новый завод Intel, но что именно там будут производить, он не в курсе. И три года продержаться в любом случае, будет нужно. Короче, сейчас надо иметь возможность быстро мигрировать с одной ПЛИС на другую.

Итого, вчера делать ознакомительную статью про Lattice было рано, завтра – может быть поздно.

Сегодня я расскажу, где купить более-менее дешёвые платы для опытов, как быстро освоить Open Source среду разработки и какие готовые проекты осмотреть в первую очередь.

Читать далее
Total votes 38: ↑37 and ↓1+36
Comments30

Дефицит есть, а денег не дают. Почему?

Reading time27 min
Views292K

Мы уже выяснили, что у нас есть дефицит рабочих рук во всех отраслях. На примере СССР увидели, что дефицит легко закрывается деньгами и плюшками, что сейчас и происходит в IT. Однако при дефиците рабочих рук в остальных отраслях зарплаты остаются на уровне Румынии и никак не подтягиваются. Почему?

Читать далее
Total votes 618: ↑603 and ↓15+588
Comments1205

ruDALL-E: генерируем изображения по текстовому описанию, или Самый большой вычислительный проект в России

Reading time10 min
Views165K

2021 год в машинном обучении ознаменовался мультимодальностью — активно развиваются нейросети, работающие одновременно с изображениями, текстами, речью, музыкой. Правит балом, как обычно, OpenAI, но, несмотря на слово «open» в своём названии, не спешит выкладывать модели в открытый доступ. В начале года компания представила нейросеть DALL-E, генерирующую любые изображения размером 256×256 пикселей по текстовому описанию. В качестве опорного материала для сообщества были доступны статья на arxiv и примеры в блоге

С момента выхода DALL-E к проблеме активно подключились китайские исследователи: открытый код нейросети CogView позволяет решить ту же проблему — получать изображения из текстов. Но что в России? Разобрать, понять, обучить — уже, можно сказать, наш инженерный девиз. Мы нырнули с головой в новый проект и сегодня рассказываем, как создали с нуля полный пайплайн для генерации изображений по описаниям на русском языке.

В проекте активно участвовали команды SberAI, SberDevices, Самарского университета, AIRI и SberCloud.

Мы обучили две версии модели разного размера и дали им имена великих российских абстракционистов – Василия Кандинского и Казимира Малевича:

1. ruDALL-E Kandinsky (XXL) с 12 миллиардами параметров;

2. ruDALL-E Malevich (XL), содержащая 1,3 миллиарда параметров.

Некоторые версии наших моделей доступны в open source уже сейчас:

1. ruDALL-E Malevich (XL) [GitHub, HuggingFace]

2. Sber VQ-GAN [GitHub, HuggingFace]

3. ruCLIP Small [GitHub, HuggingFace]

4. Super Resolution (Real ESRGAN) [GitHub, HuggingFace]

Две последние модели встроены в пайплайн генерации изображений по тексту (об этом расскажем ниже).

Версии моделей ruDALL-E Malevich (XL), ruDALL-E Kandinsky (XXL), ruCLIP Small, ruCLIP Large, Super Resolution (Real ESRGAN) также скоро будут доступны в DataHub.

Обучение нейросети ruDALL-E на кластере Christofari стало самой большой вычислительной задачей в России: 

1. Модель ruDALL-E Kandinsky (XXL) обучалась 37 дней на 512 GPU TESLA V100, а затем ещё 11 дней на 128 GPU TESLA V100 — всего 20 352 GPU-дней;

2. Модель ruDALL-E Malevich (XL) обучалась 8 дней на 128 GPU TESLA V100, а затем еще 15 дней на 192  GPU TESLA V100 – всего 3 904 GPU-дня.

Таким образом, суммарно обучение обеих моделей заняло 24 256 GPU-дней.

Разберём возможности наших генеративных моделей.

Читать далее
Total votes 119: ↑114 and ↓5+109
Comments185

Самый полный чек-лист для защиты от мошенников

Reading time17 min
Views156K

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

Читать далее
Total votes 148: ↑146 and ↓2+144
Comments169

Оптическая нейросеть

Reading time3 min
Views21K

Обученная многослойная фазовая маска (классификатор рукописных символов). Справа показана физическая модель оптической нейросети D²NN, напечатанная на 3D-принтере: слои 8×8 см с расстоянием 3 см друг между другом

Группа исследователей из Калифорнийского университета в Лос-Анджелесе разработала новый тип нейронной сети, которая в работе использует свет вместо электричества. В журнале Science опубликована статья с описанием идеи, рабочего устройства, его производительности и типов приложений, которые, по мнению авторов, хорошо вычислять в нейросети нового типа.

Полностью оптический фреймворк глубокого обучения Diffractive Deep Neural Network (D²NN), который физически сформирован из множества отражающих или прозрачных поверхностей. Эти поверхности работают сообща, выполняя произвольную функцию, усвоенную в результате обучения. В то время как получение результата и прогнозирование в физической сети организовано полностью оптически, обучающая часть с проектированием структуры отражающих поверхностей рассчитывается на компьютере.
Читать дальше →
Total votes 46: ↑45 and ↓1+44
Comments33

1000 тонн регенерированного урана из Франции везут в Россию. Что это значит?

Reading time9 min
Views112K

Похоже в Россию снова ввозят ядерные материалы из Европы. Позавчера в Париже Гринпис Франции провел акцию протеста против отправки в Россию 1000 тонн регенерированного урана. Увидев в их твиттере новость об этом я понял, что скоро и в наших СМИ начнется шум. И вот он начался. Попытался на скорую руку разобраться с тем о чем идет речь, что же к нам везут, насколько это похоже на историю с ввозом ОГФУ из Германии, с которой я подробно разбирался ранее, и при чем тут выступление президента Франции Макрона.

Читать далее
Total votes 118: ↑109 and ↓9+100
Comments307

Вакуумное напыление «на коленке»

Reading time12 min
Views30K

Вакуумное напыление (англ. physical vapor deposition, PVD; напыление конденсацией из паровой (газовой) фазы) — группа методов напыления покрытий (тонких плёнок) в вакууме, при которых покрытие получается путём прямой конденсации пара наносимого материала.

Различают следующие стадии вакуумного напыления:

  1. Создание газа (пара) из частиц, составляющих напыление.
  2. Транспорт пара к подложке.
  3. Конденсация пара на подложке и формирование покрытия.

К группе методов вакуумного напыления относятся перечисленные ниже технологии, а также реактивные варианты этих процессов.
Читать дальше →
Total votes 75: ↑74 and ↓1+73
Comments37

Обзор команд полуфиналистов $10M ANA Avatar XPRIZE

Reading time15 min
Views1.9K

38 роботов, которые расширят потенциал человека. Обзор команд полуфиналистов $10M ANA Avatar XPRIZE - четырехлетнего международного соревнования по разработке управляемых оператором роботов-аватаров, позволяющих переносить в любую точку пространства навыки и опыт человека.  

На участие в соревновании, стартовавшем в 2018 году, было подано более 1800 заявок. В полуфинал вышли 38 команд, среди них 1 команда из России.

Читать далее
Total votes 2: ↑2 and ↓0+2
Comments0

Выбираем длинный путь (или прощай MAX_PATH)

Reading time4 min
Views74K


Многим пользователям ПК под управлением ОС Windows, не говоря о разработчиках, знакомы проблемы при работе с длинными (более 260 символов, MAX_PATH) путями файлов или каталогов.

В данной статье рассматриваются способы избавления от этого пережитка при разработке приложений на различных платформах (WinApi, .Net Framework, .Net Core) и активации нативной поддержки длинных путей в Windows 10 (Anniversary Update).
Подробности
Total votes 37: ↑34 and ↓3+31
Comments22

Троян в CS-Cart. Утечка счетов из 35'000 интернет-магазинов

Reading time3 min
Views10K

TL;DR: Разрабы второго по популярности (по версии ratingruneta) интернет-магазина встроили в движок код, который делает копии всех счетов клиентов на сервер в Аризоне.

Читать далее
Total votes 27: ↑15 and ↓12+3
Comments28

Information

Rating
1,261-st
Registered
Activity