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

Python *

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

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

Как я написал удобного Telegram-бота для взаимодействия со школьным дневником

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров9.6K

Когда я начал свой путь в парсинге, мне в голову сразу пришла идея написать клиент для удобного взаимодейстия со школьным дневником. В последствии я решил оформить его в виде Telegram-бота.

...

Читать далее

Байесовская собака: анализ пёсьего компаса

Уровень сложностиСредний
Время на прочтение23 мин
Количество просмотров7.2K

Ориентируются ли собаки по компасу, когда делают свои грязные дела? Оказывается — да! Если вам интересно, как можно это подтвердить в домашних условиях, используя компас, Байесовскую статистику и собаку (собака не включена), то добро пожаловать под кат. 

Читать далее

Экономия RAM с pandas.read_sql

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров1.9K

Как экономить до 90% оперативной памяти при загрузке pandas DataFrame из базы данных?

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

Читать далее

Все ли волки страшные: AUF или как приручить uplift?

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров1.5K

Всем привет! Меня зовут Мельников Виктор, я работаю Junior Data Scientist в хабе Розничного Бизнеса Департамента Продвинутой Аналитики в Альфа-Банке. В этой статье я расскажу про AUF – Open Source библиотеку Альфа-Банка. 

Её главная задача — автоматическое решение задач uplift-моделирования.

Позволяет ускорять разработку в десятки раз и убирает рутину, избавляя от привычного fit-predict. Приятным бонусом идёт полный отчёт по качеству модели, понятный как DS, так и бизнесу.

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

Читать далее

Свои языки программирования: зачем компании изобретают колесо заново

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

Кажется, языков программирования уже предостаточно, но IT-гиганты продолжают плодить свои. Google, Apple, JetBrains — готовых решений хватает до отказа, а им все равно хочется иметь что-то свое, эксклюзивное. Дело в технологической необходимости, гордыне или «синдроме NIH», когда чужое не берут? Может, это попытка захватить контроль над всем технологическим стеком или хитрый маркетинговый ход для завоевания умов разработчиков? Давайте копнем глубже, чтобы разобраться.
Читать дальше →

Запускаем FLUX 1 Dev в Google Colab

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров2.7K

Ранее я уже делал статью про запуск в пару кликов моделей Stable Diffusion в Google Colab с помощью Fooocus (способ актуальный), сегодня мы проделаем похожее с моделью FLUX 1 Dev, но без web интерфейса.

Читать далее

Как я Telegram бота для текстовых квестов на ChatGPT делал

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров3.2K

Привет, Хабр! Хочу поделиться своим опытом создания Telegram-бота для текстовых квестов при помощи ИИ. Если вы любите текстовые квесты, писать ботов или просто интересуетесь GPT, то этот материал для вас.

Ссылка на репозиторий с исходным кодом: questTg.

Читать далее

AI (Computer Vision) для реальной жизни (или кто для кого готов)

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров3.5K

Профессия «плотник» полезна в обычной жизни, а что можно сказать о «программисте»? Когда государственной политикой является цифровизация, то правительство должно понимать: цифра она везде цифра! И в обычной жизни придется учитывать и такие истории.

Но сначала, чтоб не тратить время «продвинутых» хабберчан, краткое резюме:
1. уровень технической информации = junior
2. стек = python, ultralytics, YOLO (различных версий)
3. тема = распознование объектов, обучение модели
4. социальная польза = забота об экологии в городе Москва

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

детали под катом

Проанализировал более 260 тысяч футбольных матчей, чтобы поспорить с учёными-статистиками

Уровень сложностиПростой
Время на прочтение17 мин
Количество просмотров13K

Потратил пару месяцев, чтобы спарсить матчи и понять, насколько футбол хаотичная и непредсказуемая игра. И выводы оказались довольно неоднозначными. Но обо всём по порядку

Читать далее

Быстрее, выше, сильнее: сравнение подходов poetry, rye и uv

Уровень сложностиПростой
Время на прочтение15 мин
Количество просмотров3K

Привет, с вами снова Егор, Tech Lead компании ИдаПроджект. Я все еще занимаюсь стратегией, процессами и командами в направлении backend-разработки :)

Когда-то давно (по меркам IT), шесть лет назад, мы сходили на конференцию и послушали про poetry, преисполнились и внедрили его у себя на проектах. Но ничто не стоит на месте: вот уже два года мир знает о uv, а недавно появился еще и rye. Поэтому я посвятил пару выходных тестированию этих инструментов, чтобы использовать на наших типичных проектах.

В статье сравним poetry, uv и rye: кто быстрее управляет зависимостями, как использовать их в Docker, и какой из них выбрать в 2025 году. Заодно пробежимся по философии инструментов и посмотрим пару новых PEP стандартов, которые могут улучшить работу с зависимостями.

Читать далее

Имитатор касаний. Ч3: Программная часть

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров2.7K

Цифры нажимались как бы сами собой, быстро следуя в чётком порядке. Это было очень круто! Кряк даже пустил слезу от умиления, а енот довольно потирал свои ловкие ручонки.) Наверняка ему не терпится сделать ещё один интересный проект.
+++
Проанализировав данные, полученные с помощью обратной разработки в части 1 и части 2, можем прикинуть алгоритм работы имитатора касаний, написать приложение и взломать пароль! Этим сегодня и займёмся.

– Кто-нибудь, разбудите программиста!
Читать дальше →

От скриптов к сервисам: 10 книг для профессиональной разработки в Data Science

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров6.5K

Привет! Меня зовут Марк Паненко, и я Chief Data Science в Ozon Банке. Сегодня я хочу поговорить про книги, которые научат писать код. В современной экосистеме Data Science недостаточно просто знать алгоритмы машинного обучения и статистические методы — необходимы прочные инженерные навыки для создания масштабируемых, поддерживаемых решений.

Это третья часть серии статей о главных книгах для data-специалистов. В первой части «От комиксов до нейросетей» я писал о литературе для джунов. Во второй — «Код устареет, принципы — останутся» — для мидлов и сеньоров.

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

Читать далее

AI агенты — клоны сотрудников (часть 3)

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров6.9K

Итак, я прошел длинный путь создания RAG с нуля, и начал делать AI агентов для нашей компании.

По технологиям испробовал:

Читать далее

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

История эволюции веб-сервиса: от примера из доки до космолета

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров1.2K

5k RPS, 5ms Latency и 100 экспериментов одновременно. История о том, как наша команда перестраивала веб-сервис для сплитования трафика в высокопроизводительную систему. С какими ограничениями Cpython и Gil столкнулись на пути, как обходили "узкие места" и оптимизировали сервис до микросекунд. В общем, всё о том, как мы построили "космолет" на Python и взлетели! Ну и, конечно же, ответ на вопрос: "Почему не Go? ".

Читать далее

Инструменты Python для анализа данных на примере данных стриминг-сервиса

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров5.1K

В данной статье рассмотрены некоторые методы и инструменты библиотек python для анализа данных. Используем три самые популярные библиотеки: Pandas, Numpy, Seaborn

Читать далее

Как спрогнозировать вес птицы с помощью XGBoost: от предобработки данных до оптимизации модели

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров2.4K

Привет, Хабр! Вот когда каждый грамм действительно имеет значение: если вам нужно спрогнозировать вес птицы перед продажей, чтобы экономить на кормах и оптимизировать производство. Меня зовут Михаил Чирков, я data scientist в R-Style Softlab и сегодня хочу поделиться с вами кейсом прогнозирования с помощью XGBoost, этот проект мы делали в рамках внедрения BI-системы для птицефабрики. 

Читать далее

Год с Dishka: какой он — модный DI-контейнер?

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров8K

Привет, Хабр, меня зовут Юрий, я уже год использую хайповый IoC‑контейнер dishka в python-проекте и хочу немного поделиться опытом эксплуатации.

Мой проект — движок для городской ночной поисковой игры «Схватка» («Энкаунтер» или «Дозоры»). Проект полностью open source.

Читать далее

Датасеты меняют всё (*в мобильной платформе SimpleUI)

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров1.2K

Речь пойдет о новом механизме хранения и манипулирования данными в SimpleUI, который так тесно связан с UI-механизмами платформы что по сути является частью UI/UX. Это многогранный артефакт – это и «визуальная форма данных» (списки, поля ввода, поиск) и резидентное в памяти хранение и примитивное локальное хранение. В целом можно сказать, что «вы наполняете датасет данными, а платформа делает все остальное». Причем в результате выигрыш во всем – в скорости разработки, в прозрачности решения и производительности на любых объемах данных. Кроме того, это удобная работа со ссылочными объектами, что делаем Симпл более удобным для работы с данными внешних систем, а датасеты в свою очередь становятся основным механизмом хранения данных внешних систем (даже для онлайн-решений).

Читать далее

Поиск ликвидных облигаций с использованием Python

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров15K

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

Пять лет назад написал Node.js-скрипт, затем адаптировал его для Google Таблиц, а теперь разрабатываю Python версию. При помощи сообщества на GitHub эта Python версия идёт к созданию полноценной библиотеки с расширенными возможностями: автоматический поиск ликвидных облигаций, расчет денежных потоков, сбор новостей по эмитентам и вычисление оптимального объема покупки. Все это направлено на помощь простым инвесторам, вроде нас с вами, чтобы оперативно находить выгодные инвестиционные инструменты и принимать решения на основе актуальной информации.

Проект полностью open source.

Автоматизация работы с облигациями

Бэктестинг торговых стратегий на Python с помощью Numba. Когда перевод расчетов на GPU действительно оправдан?

Уровень сложностиСложный
Время на прочтение26 мин
Количество просмотров7K

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

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

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

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

Читать далее

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