IT-новости про Python, которые стоит знать

Собрали в одном месте самые важные ссылки
консультируем про IT, Python

     28.06.2020       Выпуск 340 (22.06.2020 - 28.06.2020)       Статьи

Солнечная электростанция на балконе. Личный опыт

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

     28.06.2020       Выпуск 340 (22.06.2020 - 28.06.2020)       Статьи

Получение данных Amplitude через API

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

     26.06.2020       Выпуск 340 (22.06.2020 - 28.06.2020)       Статьи

Python и пиво — взболтать, но не смешивать

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

     25.06.2020       Выпуск 340 (22.06.2020 - 28.06.2020)       Статьи

Я вас графония принес! Как нейросеть может улучшить разрешение в старых играх до HD

Я детстве я любил играть на компьютере. Совсем маленьким я застал несколько игра на кассетном ZS Spectrum, однако настоящим открытием стали красочные DOS игры 90x годов. Тогда же и зародилось большинство существующих жанров. Немного поностальгировав, я решил вспомнить молодость и запустить одну из старых игр на эмуляторе Dosbox и был неприятно поражен гигантскими пикселями и низким разрешением. Хотя в крупнопиксельной старой графике может быть свое очарование, многих сейчас не устраивает такое качество.

     25.06.2020       Выпуск 340 (22.06.2020 - 28.06.2020)       Статьи

Библиотека ASE для атомных симуляций: создаем наночастицы

Библиотека ASE — это python-библиотека для проведения атомных манипуляций и вычислений. В данной статье мы будем создавать наночастицы с помощью этой библиотеки.

     25.06.2020       Выпуск 340 (22.06.2020 - 28.06.2020)       Статьи

Генерируем странные кулинарные рецепты с помощью TensorFlow и рекуррентной нейронной сети (пошаговая инструкция)

Я натренировал LSTM (Long short-term memory) рекуррентную нейронную сеть (RNN) на наборе данных, состоящих из ~100k рецептов, используя TensorFlow. В итоге нейронная сеть предложила мне приготовить "Сливочную соду с луком", "Клубничный суп из слоеного теста", "Чай со вкусом цукини" и "Лососевый мусс из говядины" ‍.

     25.06.2020       Выпуск 340 (22.06.2020 - 28.06.2020)       Статьи

Интерактивные финансовые данные в 20 строках кода

Статьи на финансовые темы появляются на Хабре регулярно. Во многих из них в качестве источника первичных данных используется неофициально открытое API Yahoo finance. В этой статье я покажу три способа добыть данные (включая Yahoo) а также как напилить из них простое вэб-приложение в 20 строк и выдать его клиенту, не умеющему в CLI.

     24.06.2020       Выпуск 340 (22.06.2020 - 28.06.2020)       Статьи

Как модифицировать базу данных после миграции в Django

Оригинальная статья: Adam JohnsonHow to Add Database Modifications Beyond Migrations to Your Django Project

В нескольких проектах Django, над которыми я работал, была необходимость в автоматическом внесение изменений в базу данных после проведенных миграций. Такая необходимость может возникнуть например для:

  • Управление хранимыми процедурами (stored procedures)
  • Управление проверочными ограничениями (check constraints)
  • Импорт статических данных из файла
  • Запись операций миграции в лог

     23.06.2020       Выпуск 340 (22.06.2020 - 28.06.2020)       Статьи

Рекурсивные нейронные сети — пример генерации музыки

Сегодня попробуем создать простую музыку при помощи сетей LSTM.

 

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

     23.06.2020       Выпуск 340 (22.06.2020 - 28.06.2020)       Статьи

R Markdown. Как сделать отчет в условиях неопределенности?

Маленький рецепт, который будет полезен при создании динамических отчетов.

 

Достаточно часто встречается ситуация, когда размер и содержание отчетной формы будет зависеть от состава переданных на вход данных. Речь идет именно о story-telling отчете, а не о простом выводе таблицы. В этом случае, в зависимости от содержания входных данных, могут появляться или исчезать отдельные пункты, графики, таблицы, текст.

     23.06.2020       Выпуск 340 (22.06.2020 - 28.06.2020)       Статьи

YoloV5 для распознавания марок автомобилей

Недавно был опубликован анонс новой YOLOv5, которая идейно дает гораздо лучший процент распознавания на датасете COCO, чем предыдущие версии. Автор решил испробовать новую модель на задаче распознавания марок автомобилей.

     23.06.2020       Выпуск 340 (22.06.2020 - 28.06.2020)       Видео

Статическая типизация в Django

* Краткий обзор тайп-чекинга в питоне, mypy, pep484.
* Как я писал библиотеку django-stubs.
* С какими проблемами столкнулся в процессе.
* Что еще планируется сделать.
* DEP (Django Enhancement Proposal) по поводу добавления типов в core.

     23.06.2020       Выпуск 340 (22.06.2020 - 28.06.2020)       Статьи

Книга «Глубокое обучение с подкреплением. AlphaGo и другие технологии»

Привет, Хаброжители! Мы издали книгу Максима Лапаня shmuma, это — подробное руководство по новейшим инструментам глубокого обучения с подкреплением и их ограничениям. Мы реализуем и проверим на практике методы кросс-энтропии и итерации по ценностям (Q-learning), а также градиенты по стратегиям.

     22.06.2020       Выпуск 340 (22.06.2020 - 28.06.2020)       Статьи

Функциональное программирование на Python для самых маленьких — Часть 1 — Lambda Функция

Я решил написать эту серию статей, ибо считаю, что никто не должен сталкиваться с той стеной непонимания, с которой столкнулся когда-то я.
Ведь большинство статей написаны таки образом что, для того чтобы понять что-то в Функциональном Программировании (далее ФП), тебе надо уже знать многое в ФП. Эту статью я старался написать максимально просто — настолько понятно, чтобы её суть мог уловить мой племянник, школьник, который сейчас делает свои первые шаги в Python.

     22.06.2020       Выпуск 340 (22.06.2020 - 28.06.2020)       Статьи

Визуализация генеративных алгоритмов: гифа, деревья, повторяющиеся и дифференциальные линии (на Python)

Паттерны всегда меня очаровывали. Даже не важно какие. Я экспериментировал со многими: сети, листья и их переплетения, ветви, молнии, флокирование, очертания фигур, реки, скальный осадок, пейзажи, слизистая плесень, лишайники, взаимодействие и расплавление, клеточные автоматы, некоторые фракталы и другие штуки. Мне кажется, что самое приятное — это то, как сложные и затейливые результаты можно получить от набора простых правил.

     21.06.2020       Выпуск 339 (15.06.2020 - 21.06.2020)       Статьи

Метод главных компонент: аналитическое решение

В этой статье мы залезем под капот одному из линейных способов понижения размерности признакового пространства данных, а именно, подробно ознакомимся с математической стороной метода главных компонент (Principal Components Analysis, PCA).

     21.06.2020       Выпуск 339 (15.06.2020 - 21.06.2020)       Статьи

Как предсказать гипероним слова (и зачем). Моё участие в соревновании по пополнению таксономии

Как может машина понимать смысл слов и понятий, и вообще, что значит — понимать? Понимаете ли вы, например, что такое спаржа? Если вы скажете мне, что спаржа — это (1) травянистое растение, (2) съедобный овощ, и (3) сельскохозяйственная культура, то, наверное, я останусь убеждён, что вы действительно знакомы со спаржей. Лингвисты называют такие более общие понятия гиперонимами, и они довольно полезны для ИИ. Например, зная, что я не люблю овощи, робот-официант не стал бы предлагать мне блюда из спаржи. Но чтобы использовать подобные знания, надо сначала откуда-то их добыть.

     20.06.2020       Выпуск 339 (15.06.2020 - 21.06.2020)       Видео

Автоматизируем все с Github Actions

Никита покажет множество функций Github Actions, поделится собственными впечатлениями и болями от первых месяцев использования, покажет, как сделать собственные инструменты. Это выступление будет интересно тем, кто любит автоматизацию и порядок: тимлиды, сеньоры, опсы и люди, принимающие решения. Какую основную мысль вынесут люди после? Процесс автоматизации в корне изменился. Он стал доступным и простым. Существуют способы, как улучшить процесс свой работы за несколько дней.

     20.06.2020       Выпуск 339 (15.06.2020 - 21.06.2020)       Статьи

Настраиваем окружение Python с помощью pyenv, virtualenvwrapper, tox и pip-compile

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

     18.06.2020       Выпуск 339 (15.06.2020 - 21.06.2020)       Статьи

Event2Mind для русского языка. Как мы обучили модель читать между строк и понимать намерения собеседника

Умение модели распознавать намерения собеседника, то есть понимать зачем человек совершил то или иное действие, применимо в большом числе прикладных NLP-задач. К примеру, чат-ботам, голосовым помощникам и другим диалоговые системам это позволит эмоционально реагировать на высказывания собеседника, проявлять понимание, сочувствие и другие эмоции. Кроме того, задача распознавания намерения – это еще один шаг на пути к пониманию человеческой речи (human understanding).