Все потоки
Поиск
Написать публикацию
Обновить
451.8

Python *

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

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

Выполняем глубокое обучение быстро при помощи Fast AI

Время на прочтение5 мин
Количество просмотров12K

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

И всё же, существует инструмент, позволяющий легко совершить «быстрый старт» и опробовать нейронные сети в деле самостоятельно – это fast ai. Вообще, fast ai – это прежде всего группа исследователей, занимающихся вопросами искусственного интеллекта и глубокого обучения в частности, которая выпустила одноимённую библиотеку в свободное пользование в 2018 году. Если говорить простыми словами – fast ai представляет собой надстройку над упомянутым выше фреймворком pytorch и упрощает работу с ним, делает это быстрее. Отсюда и слово «быстро» в названии статьи.

Пожалуй, перейдём к практике и покажем, насколько просто работать с fast ai на простом примере задачи классификации изображений – постараемся обучить нейронную сеть различать две модели автомобильной марки Subaru: Impreza и Legacy. Как и обычно, в первую очередь выполняем установку библиотеки, выполнив в консоли команду:

Читать далее

Рисовалка для атомных орбиталей на Python

Время на прочтение10 мин
Количество просмотров11K

Начался новый учебный год, и преподавателям, студентам и школьникам, возможно, требуется (или просто хочется) посмотреть на то, как выглядят орбитальки, на которых сидят электроны в атомах: все эти завораживающие буковки s, p, d, f, и т.д. Да, картинок полно как в учебниках, так и в Интернете, но покрутить орбитальки на картинке не получится, а картинку из учебника/с левого сайта в презентацию/реферат без мороки с лицензией пихать (по-хорошему) не стоит. Поэтому в этом посте мы разберём одну из возможных реализаций рисовалки для этих самых орбиталек.

Посмотреть код, без регистрации и СМС.

Подгонялка соотношения белков, жиров и углеводов

Время на прочтение10 мин
Количество просмотров22K

В один прекрасный день я сидел и прикидывал в голове, сколько и чего надо съесть, чтобы получилось 30 гр. белка, 25 гр. жиров и 60 гр. углеводов. Из продуктов у меня были: гречка, яйца и авокадо.

Json (БЖУ указанно на 100 гр. сырого продукта):

{"Гречка": {"Белки": 11.7, "Жиры": 2.7, "Углеводы": 75}, "Яйца": {"Белки": 12.7, "Жиры": 11.5, "Углеводы": 0.7}, "Авокадо": {"Белки": 2, "Жиры": 15, "Углеводы": 9}}

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

Читать далее

Вот так выглядит нейросеть без фреймворков

Время на прочтение5 мин
Количество просмотров20K

Чтобы лучше понять глубокое обучение, Data Scientist из Hewleet Packard написал нейросеть только при помощи NumPy. Знать свои инструменты необходимо любому специалисту, поэтому наш курс по науке о данных включает раздел «Математика для Data Science». Под катом вы найдёте не только реализацию нейронной сети. Статья начинается со знакомства с книгой автора, которая, по его словам, будет полезна, если вы хотите создать достойное портфолио Machine Learning.

Читать далее

Уведомления при изменении цены акций в Тинькофф Инвестициях

Время на прочтение2 мин
Количество просмотров15K

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

Для инвестиций я выбрал Тинькофф, как один из наиболее популярных и функциональных сервисов. Очень быстро появилась потребность отслеживать цену акций, чтобы держать руку на пульсе. В Тинькофф Инвестициях есть инструмент для этого: уведомления по достижении некоего уровня цены. Но это уведомление срабатывает один раз и его приходится ставить заново, что неудобно. Подходящий для меня функционал я обнаружил в приложении Investing.com: уведомление придёт, если цена акции изменится на заданную в процентах величину. После уведомления счётчик сбрасывается и уведомление придёт снова, если это повторится. Я установил приложение и добавил для отслеживания свои акции - то что нужно!

Но со временем, когда я продал несколько акций и купил другие, стало понятно, что вносить те же изменения в приложении Investing.com мне лень + раздражало лишнее приложение на телефоне. Благо, у Tinkoff Investing есть API. Я решил реализовать тот же функционал с уведомлениями, но непосредственно для моих акций, а уведомления получать в Telegram. Так родился проект https://github.com/DiTsi/tinkoff_investing_notifier.

Читать далее

Простая нейронка без библиотек и многомерных массивов

Время на прочтение10 мин
Количество просмотров34K

Руководство? Гайд? В общем описание моего опыта создания простой, а главное понятной любому новичку нейросети :)

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

Читать далее

Kedro — ключ к модульной Data Science

Время на прочтение8 мин
Количество просмотров6.6K

Kedro — фреймворк модульного кода в Data Science. С его помощью вы можете создавать проекты по шаблону, настраивать конвейер в YAML, делить его на части, документировать проект — и это далеко не всё. Материалом о работе с Kedro делимся к старту курса по Data Science.

Читать далее

Парсим базу юриков ФНС (велосипедостроение с xml, csv, SQLite и Питоном)

Время на прочтение7 мин
Количество просмотров9.1K

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

Вводная

Что хотим сделать: взять данные по юридическим лицам (ЮЛ) РФ за 2019 год (идентификаторы ЮЛ: наименование и ИНН(ЮЛ), оборот, расход) и положить в SQLite.

Читать далее

Колл-центр на базе Telegram

Время на прочтение3 мин
Количество просмотров15K

image


В мире, где количество скачиваний Telegram перевалило за 1 млрд, есть простая задача — принимать звонки от клиентов. Будем разворачивать колл-центр?
Давайте представим себе сколько это головной боли:


  • Арендовать номера телефонов, помещение для операторов
  • Покупать, устанавливать телефоны (Хардфоны? Софтфоны ?)
  • Нанимать-обучать операторов, платить им зарплату (… продолжать? :-) )
  • Подумать как организовать удаленный доступ (vpn ?)

Почему бы просто не принимать звонки на Telegram сотрудников и назвать их операторами?
Просто, да не очень то уж и просто...

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

Быстрый, мощный интерфейс на Python

Время на прочтение15 мин
Количество просмотров154K

Dear PyGui принципиально отличается от других фреймворков GUI Python. Рендеринг на GPU, более 70 виджетов, встроенная поддержка асинхронности — это лишь некоторые возможности Dear PyGui. Руководством по работе с этим пакетом делимся к старту курса по разработке на Python.

Читать далее

Программа раннего доступа к JetBrains DataSpell открыта для всех

Время на прочтение3 мин
Количество просмотров6.2K

С тех пор, как мы анонсировали JetBrains DataSpell в марте, наша новая IDE для Data Science была доступна для ограниченного числа пользователей, которые помогали нам с тестированием IDE и обратной связью. Сегодня мы запускаем программу раннего доступа для всех желающих. Всем, кто хотел участвовать в программе, придут приглашения. Вы можете скачать свежую EAP-сборку на сайте JetBrains DataSpell (регистрация не требуется).

Читать далее

Еще раз о Code Review

Время на прочтение3 мин
Количество просмотров5.3K

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

Читать далее

Поиграем в слова? Автоматическое распознавание букв и нахождение слов в игре Слово

Время на прочтение18 мин
Количество просмотров8.1K

В данной статье на примере проекта, архитектура которого приведена на фото, вы сможете найти ответы на следующие вопросы:

- Как работает алгоритм нахождения слов в игре типа Boggle?
- Как предобработать изображение для дальнейшего распознавания букв с помощью OpenCV?
- Как распознать буквы с помощью pytesseract?
- Как происходит клиент-серверное взаимодействие через TCP сокеты?
- Как связать Shortcut и приложение Pythonista?
- Как пробросить порты для взаимодействия с сервером в Docker?

Читать далее

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

Orchest — конструктор конвейеров Machine Learning

Время на прочтение6 мин
Количество просмотров3.9K

Orchest содержит Jupyter Notebook, не требует ациклических ориентированных графов, а работать можно на Python, R и Julia. Также можно запустить сервис VSCode, метрики TensorBoard — и это далеко не всё. Руководством о создании конвейера ML при помощи Orchest делимся к старту флагманского курса по Data Science.

Читать далее

8 лучших фреймворков для тестирования с помощью Python в 2021 году

Время на прочтение9 мин
Количество просмотров35K

Если вы когда-нибудь думали: «С какого же языка программирования мне следует начать свое путешествие в тестирование?» Ваш ответ – Python. Но он подойдет не только начинающим! В недавнем опросе, который я провела в LinkedIn, мы видим, что среди опытных программистов 35% проголосовали за то, что Python является их самым любимым языком программирования (немного опередив всеми любимую Java, которая заняла 2-е место с 32%).

На протяжении многих лет Python действительно набирает обороты как среди тестировщиков, так и среди разработчиков, да и в целом является самым динамично развивающимся языком программирования (как видно на диаграмме трендов Stack Overflow), и мы прекрасно понимаем, что это значит. Популярность = релевантность!

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

Читать далее

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

Время на прочтение7 мин
Количество просмотров9.6K

Пользователи iFunny ежедневно загружают в приложение около 100 000 единиц контента, среди которого не только мемы, но и расизм, насилие, порнография и другие недопустимые вещи. 

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

Как мы это в итоге сделали — расскажу под катом на наглядном примере. Статья рассчитана на тех, кто знаком с Python (при этом необязательно разбираться в Data Science и Machine Learning).

Читать далее

«Почему, если создание ПО настолько востребовано, так сложно найти работу инженером (SE)?»

Время на прочтение6 мин
Количество просмотров6K

Мой ответ на невероятно распространенный вопрос.

Заголовок этой статьи отсылает к популярному вопросу с Quora*, основные ответы на который сводились к следующему: «Это не так, уровень безработицы составляет 3,6%», «Слишком много разработчиков и недостаточно инженеров» и «Это естественное следствие микроэкономической теории». Возможно, было бы полезно подробнее остановиться на всех этих суждениях, но я подумал, что было бы интереснее взглянуть на самый популярный ответ.

Он и небольшое рассуждение о Software Engineering vs. Software Development под катом. А, ну и еще там подсказки по прохождению собеседований.

Читать далее

«Оптимизируем» функции на уровне AST

Время на прочтение10 мин
Количество просмотров8.6K

Python предоставляет программисту огромное пространство свободы. Увы, обычно это довольно дорогая в плане производительности свобода, зато при правильном применении иногда она позволяет творить сущую магию. Но сегодня мы поговорим не о таких вот «богоугодных» применениях свободы, а о том, что никогда не стоит использовать в прикладном программировании — о модификациях кода на уровне AST.

Запутаться

Использование API-схем для property-based-тестирования

Время на прочтение18 мин
Количество просмотров7.5K

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

Я расскажу об обычных проблемах, с которыми люди сталкиваются при использовании API-схем. Как можно использовать API-схемы для описания property-based-тестов, и чем здесь может помочь Schemathesis. И покажу на практике, как его можно интегрировать в  существующий проект.

Читать далее

Симуляция трафика городских дорожных сетей в SUMO

Время на прочтение8 мин
Количество просмотров16K

Как давно вы оказывались в пробке? Чтобы решить проблему дорожных заторов, до принятия важных решений нужно моделировать движение. Сделать это можно на платформе с открытым кодом The Simulation of Urban Mobility (SUMO). Но как создать сложную симуляцию? На этот вопрос отвечает материал, которым мы решили поделиться к старту курса по Data Science.

Читать далее

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