Обновить
537.32

Python *

Высокоуровневый язык программирования

Сначала показывать
Порог рейтинга
Уровень сложности

Как экономить память и удваивать размеры моделей PyTorch с новым методом Sharded

Время на прочтение5 мин
Охват и читатели7.8K
Модели глубокого обучения улучшаются с увеличением количества данных и параметров. Даже с последней моделью GPT-3 от Open AI, которая использует 175 миллиардов параметров, нам ещё предстоит увидеть плато роста количества параметров.

Для некоторых областей, таких как NLP, рабочей лошадкой был Transformer, который требует огромных объёмов памяти графического процессора. Реалистичные модели просто не помещаются в памяти. Последний метод под названием Sharded  [букв. ‘сегментированный’] был представлен в Zero paper Microsoft, в котором они разработали метод, приближающий человечество к 1 триллиону параметров.

Специально к старту нового потока курса по Machine Learning, делюсь с вами статьей о Sharded в которой показывается, как использовать его с PyTorch сегодня для обучения моделей со вдвое большей памятью и всего за несколько минут. Эта возможность в PyTorch теперь доступна благодаря сотрудничеству между командами FairScale Facebook AI Research и PyTorch Lightning.


Приятного чтения!

Визуализация пересечений и перекрытий с помощью Python

Время на прочтение6 мин
Охват и читатели15K

Изучение вариантов решения одной из самых сложных задач визуализации данных


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

В этой статье воспользуемся Python для изучения способов визуализации перекрытий и пересечений множеств, наших возможностей, а также их преимуществ и недостатков.


Диаграмма Венна
Приятного чтения!

«Вспомнить все» или решение проблемы катастрофической забывчивости для чайников

Время на прочтение29 мин
Охват и читатели8.7K

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

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

Вот с этим мы и будем бороться.

Читать далее

DALL·E от OpenAI: Генерация изображений из текста. Один из важнейших прорывов ИИ в начале 2021 года

Время на прочтение5 мин
Охват и читатели82K

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

Итак, исследователи в области искусственного интеллекта из OpenAI создали нейронную сеть под названием DALL·E, которая генерирует изображения из текстового описания на естественном языке.

Давайте посмотрим что из себя представляет, и на что способна эта нейронная сеть?

Поехали!

С каких книг можно начать изучать программирование (Python, C#, C++, Java, Lua, …)

Время на прочтение3 мин
Охват и читатели73K

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

Данная статья посвящена вопросу, который волнует большинство начинающих программистов и робототехников (именно тех робототехников, кто готов постичь премудрости сложных систем и достичь конструкторских решений как в Boston Dynamics).

Для начинания есть несколько путей.

Читать далее

Как я научила свой компьютер играть в пары используя OpenCV и Глубокое обучение

Время на прочтение7 мин
Охват и читатели8K

Немного веселья с компьютерным зрением и CNN с маленькой базой данных.

Читать далее

Тестирование в Apache Spark Structured Streaming

Время на прочтение8 мин
Охват и читатели3.3K

Введение


На текущий момент не так много примеров тестов для приложений на основе Spark Structured Streaming. Поэтому в данной статье приводятся базовые примеры тестов с подробным описанием.


Все примеры используют: Apache Spark 3.0.1.

Читать дальше →

Ещё один способ использования python в браузере (и не только)

Время на прочтение2 мин
Охват и читатели11K

Весной 2020 года я впервые попробовал себя в разработке сайтов бэкенд я писал на питоне а на фронте пришлось использовать js и он вызвал у меня отторжение(тут надо уточнить, что я не считаю js ужасным языком, просто он мне не понравился). Не долго думая я начал писать транслятор с питона в явускрипт(а если бы погуглил то нашел бы это https://brython.info/, https://www.transcrypt.org/). об этом трансляторе и пойдет речь.

Читать далее

Хакатоны Осень 2020. Мой опыт

Время на прочтение5 мин
Охват и читатели7.9K

Добрый день, уважаемые хабровчане.

Подходит к концу год 2020 и пришла пора подвести итоги. В этот году я попробовал себя в хакатона для получения разнообразных навыков. Самым важным было для меня отработать навык быстрого погружения в проблему, написать решение, протестировать его и улучшить. Хакатоны которые мне попадались были длинные и короткие. Длинные- это больше 1 недели, короткие- это 2-3 дня. Всегда есть плюсы и минусы у обоих вариантов. Как и всякого человека, меня одолевали сомнения, как это будет, моя роль в команде, где искать эти команды, хватит ли навыков и т.д. Мой друг Владимир Привалов много раз приглашал меня на хакотоны, но все это как то откладывалось и переносилось по разным причинам. Видимо это был мой внутренний саботаж данного процесса. Но осенью этого года я решил попробовать свои силы и принял участие в одном хакатоне самостоятельно без команды, знакомых, смс и регистрации

Читать далее

Звездный год (365 дней 369 минут), Тропический год(+ 348.5 минут) и звездные сутки(1436 минут) в радиоактивном распаде

Время на прочтение5 мин
Охват и читатели5.3K


В этой статье будет приведен очень короткий код поиска периодов тропического года, звездного года и звездных суток в данных радиоактивного распада плутония.
Читать дальше →

ИИ итоги 2020-го года в мире машинного обучения

Время на прочтение3 мин
Охват и читатели11K

Подведем основные итоги уходящего года в мире машинного обучения. Рассмотрим самые громкие открытия в мире компьютерного зрения, обработки естественного языка, генерации изображений и видео, а также крупный прорыв в области биологии. Коротко о самом главном за год!

Поехали!

Обеспечить январь настроением

Время на прочтение6 мин
Охват и читатели1.2K

Вместо эпилога

Эта история произошла довольно давно, но некоторые подробности стали ясны только сейчас, отчего и настало время её рассказать.

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

А дело происходило в НИИЧАВО в тот момент, когда у Кристобаль Хозеевича Хунты не получилось навести порядок с Тройкой. Соответственно товарищ А.Привалов, выражаясь современным языком «завис» под началом товарища Выбегалло. Ноябрь выдался малоснежный, но близился новый год и т. Выбегалло пришёл к т. Привалову с поручением от Тройки: «Ввиду наступающего праздника Нового года необходимо разработать план обеспечения настроением всех жителей страны:

1) в недельный срок произвести оценку потребности нужных событий на 1000 жителей;

2) передать описание потребности из п.1 в лабораторию Хорошего настроения для реализации плана, уже доведённого до них Тройкой.

Передав поручение Тройки с резолюцией «Обеспечить январь настроением» Выбегалло, строго посмотрел на т. Привалова и сказал, что зайдёт через два дня.

Работа началась

Александр с максимально серьёзным видом кивнул. Сказал: «Немедленно займусь» и проводил уходящего т. Выбегалло взглядом. Особого беспокойства Александр не испытывал, т.к. недавно у заезжего путешественника во времени выменял на неразменный рубль notebook c Anaconda. Так что сейчас он точно знал, что Рython не только змея такая, но и полезная в хозяйстве вещь.

Немного поразмышляв о подходах, он создал данные с 1000 событий для января месяца. Малым, но приятным бонусом, было то, что 1 января выпадало на понедельник и функции обработки дат даже не понадобились. В данных он заложил два типа событий: «искренняя улыбка» и «беззаботный смех».

При подготовке к встрече Александр считал данные:

Читать далее

Ближайшие события

Эволюция команды разработки

Время на прочтение4 мин
Охват и читатели4.2K

Весной 2019 года меня пригласили руководить разработкой в небольшой стартап, занимающийся обработкой Big Data.

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

Читать далее

Вытаскиваем данные из Instagram

Время на прочтение17 мин
Охват и читатели145K

Давайте разберемся, как с помощью достаточно простого кода на python можно вытащить из инстаграмма разные данные, находящиеся в открытом доступе.

Читать далее

Создание процедурной анимации смерти при помощи автоматов падающего песка

Время на прочтение2 мин
Охват и читатели10K
В этом посте я покажу, как использовал автоматы падающего песка для генерации анимаций смерти монстров в моей игре Vagabond.



Автоматы падающего песка


Автомат падающего песка — это клеточный автомат, симулирующий перемещение песчинок и создание куч песка под действием гравитации.

Правила просты:

  • Если ячейка под песчинкой пуста, то песчинка движется в пустую ячейку (см. (a)).
  • Если ячейка под песчинкой заполнена, но свободна ячейка внизу слева или внизу справа, то песчинка движется туда (см. (b)). Если свободны обе, то одна из них выбирается случайным образом.
  • В остальных случаях песчинка не движется.
Читать дальше →

Цифровые раскопки: заводим Python 1.0.1

Время на прочтение2 мин
Охват и читатели5.3K
Всем привет! Сегодня мы будем пытаться собрать Python 1.0.1 (1994 год) на современном железе при помощи современного компилятора. Даже если Вы, как Python разработчик, никогда не компилировали проект на Си, то не волнуйтесь, я проведу Вас через весь путь. Я предполагаю, что у Вас:

  • установлен какой-нибудь дистрибутив Линукс
  • make
  • компилятор для make

мои версии
Fedora 33 x64
make 4.3
gcc 10.2.1
На другом дистрибутиве и с более старыми/новыми версиями компилятора и make тоже должно работать.

Для пользователей macOS инструкция для линукс должна сработать.

если установлен windows
Вы можете скомпилировать Python и в Windows.
Для этого Вам нужен make для Windows, он есть в составе MinGW

Для начала идем на официальный сайт и скачиваем архив с исходным кодом.
Читать дальше →

Принимаем и декодируем передачи SSTV с МКС

Время на прочтение4 мин
Охват и читатели32K

Привет, Хабр.

Как было написано в недавнем анонсе, с 24 по 31 декабря производится передача изображений формата SSTV с МКС. Передача идет в радиолюбительском диапазоне на частоте 145.800 МГц и принять её может любой желающий.

Посмотрим, как это работает и как такой сигнал можно принять и декодировать.

Читать далее

Кастомизация календаря на PyQt5

Время на прочтение4 мин
Охват и читатели9.8K

Сегодня столкнулся с простой на первый взгляд задачей: в виджете календаря на PyQt5 сделать так, чтобы сегодняшняя дата обводилась зеленой рамкой. Но оказалось, что на русском языке материалов на эту тему вообще нет, а на английском - только один вопрос на stackoverflow. Решил облегчить жизнь другим разработчикам, которые только знакомятся с этой библиотекой и описать, как я решал эту задачу.

Читать далее

Rust глазами Python-разработчика #2

Время на прочтение10 мин
Охват и читатели7.2K

Снова привет!

Мы – @cbmw и @AndreyErmilov, часть команды разработки «Рамблер/Медиа» (портал «Рамблер»). И это вторая часть наших размышлений по поводу сравнения Python и Rust (первая часть).
В этой части мы затронем многопоточность, асинхронность, функциональную парадигму и попробуем сделать некоторые заключения, которые мы для себя определили.

Читать далее

Вклад авторов