Обновить
519.94

Python *

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

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

Собираем автоматический конспект из материалов курса на платформе Эквио

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

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

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

Читать далее

О чем боятся спросить Junior DS. Оптимизация кода

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

Привет всем! В данной статья я постараюсь ответить на вопросы, связанные с оптимизацией работы кода. Мы затронем различные возможности оптимизации работы кода, которые очевидны опытным специалистам и о них, нередко, даже не задумываются начинающие Data Scientist'ы.


Читать далее

RFM-анализ для успешного сегментирования клиентов с помощью Python

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

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

Recency (Давность) — Как давно клиент совершил покупку?
Frequency (Частота) — Как часто они совершают покупки?
Monetary Value (Денежная ценность) — Сколько они тратят?

Читать далее

Упущенные из виду факты о переменных и объектах в Python: все дело в указателях

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

В Python переменные и структуры данных не содержат объектов. Этот факт часто упускается из виду, и его трудно уяснить.

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

Читать далее

Подсказки по типам Python — Как сузить количество типов с помощью TypeGuard

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

Ранее я уже рассказывал о сужении типов с помощью isinstance(), assert и Literal. В сегодняшней заметке мы рассмотрим TypeGuard, новый специальный тип, который позволяет нам создавать кастомные функции сужения типов.

Читать далее

PyCUDA или этому коду нужно ускорение

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

Рассмотрим библиотеку PyCUDA, как альтернативу CUDA для C/C++. Оценим её возможности и проведем сравнение производительности на конкретном примере, а именно реализуем алгоритм Харриса для детекции углов на изображении.

Читать далее

Как рисовать диаграммы в Seaborn

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

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

Читать далее

Практические применения генеративных моделей: как мы делали суммаризатор текстов

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


В последнее время вышло большое количество генеративных моделей для русского языка. Команды Сбера выпустили целое семейство авторегрессионных моделей ruGPT3, ruT5, о которых мы подробно писали ранее. Сегодня мы расскажем, как практически применять обучение таких моделей и какие продукты можно получить на их основе.

Мы выводим в открытый доступ два новых сервиса: Рерайтер и Суммаризатор. Модель «Рерайтер» способна переписать любой текст другими словами с сохранением смысла вне зависимости от длины и формата — от новостей и художественной литературы до постов в социальных сетях. Модель «Суммаризатор» позволяет создать сжатое изложение исходного текста, сохраняющее его главные тезисы. Эта модель может быть полезна для экономии времени читателя, а также выделения главных мыслей объёмных документов, научной или бизнес-литературы. В частности, использовать сервис можно для подготовки обзоров научных работ на заданную тему, создания новостных дайджестов, выделения наиболее важных событий в лентах информагентств для аналитики. 
Читать дальше →

Как написать свой прокси с кроликом и рейт-лимитами и не изменить змее с сусликом

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

Пару лет назад мы в Just Work делали несколько похожих проектов, которые должны были обрабатывать данные, получаемые из одного внешнего HTTP API. Это API, несмотря на согласованные повышенные лимиты, изредка банило наши ключи доступа за малейшее превышение. Из-за этого ответственность за соблюдение лимитов лежала на клиентах. В дальнейшем, проектов, использующих это API, должно было становиться все больше, и заказчика не устраивала перспектива разбираться с каждой реализацией по отдельности.

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

Читать далее

Мой опыт с резиновым мужиком. Github Copilot

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

Первая моя ассоциация с Github Copilot - это резиновый мужик-автопилот из фильма "Аэроплан". Помню, в детстве я увидел этот фильм и потом реально думал, что так автопилоты и выглядят: какая-то смешная резиновая кукла надувается и начинает управлять самолётом. И вот, через столько лет меня не покидает ощущение, что передо мной надувается какая-то кукла и пытается писать за меня код.

Короче, нежданно-негаданно мне пришёл инвайт в GitHub copilot. Я и забыл про то, что когда-то запрашивал доступ - ажиотаж давно уже спал, вроде мир не захвачен машинами, а значит, не такой уж он и крутой, да? С другой стороны, недавно к нам на позицию senior python постучал чел и сказал, что большую часть нашего тестового задания он запилил при помощи copilot, так что определённо кто-то "пилотом" пользуется. В общем, непонятно: хорошо оно или плохо? Стану ли я теперь более продуктивным? Есть только один способ проверить: в бою.

Поехали

Пишем простой сервер на Python

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

Ну, начнем как и везде с определений, берите тетрадь и ручку сейчас начнется нудятина. Чтобы мы cмогли написать свой сервер, нужно для начала понимать как он вообще работает, ловите определение:

Читать определение

Кластеризация, которую легко осуществить с помощью PyCaret

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

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

Читать далее

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

Вывод аудио на несколько источников на raspberry pi

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


В статье пойдет речь о том как вывести аудио, проигрываемое на raspberry pi на несколько источников (проигрывателей) одновременно. В частности, аудио будет параллельно транслироваться по hdmi, на audio jack, bluetooth устройство (устройства).
Читать дальше →

Большое сравнение 400 нейронных сетей для задачи классификации на более 8000 классов

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

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

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

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

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

Читать далее

О плохом и хорошем коде

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

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

Читать далее

Создание telegram web apps и взаимодействие с ними в телеграм ботах

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

В обновлении Bot API 6.0 телеграм-боты получили много новых функций. Из них для разработчиков самая примечательная - Telegram Web Apps (Веб-приложения внутри телеграм). С этим нововведением разработчики могут подключать к своим ботам web-приложения, которые открываются в дополнительном окне, что сильно расширяет инструментарий, а, следовательно и функционал ботов в телеграм.

Читать далее

Категориальные признаки

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

Не одним One-Hot единым...

В данной статье разберемся с кодированием категориальных данных. В профессиональной среде нередко о существовании чего-то кроме OH или Label Encoder не догадываются не только рядовые Junior DS, но и даже Middle, а иногда и Senior. Исправить данную несправедливость и призвана данная статья.

Читать далее

Работа с API HeadHunter при помощи python

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

Разбираемся на практике с API HeadHunter при помощи python.

Появилась задача анализа вакансий на рынке труда, и осуществлять ее надо базе HeadHunter. Необходимо получить все вакансии определенной компании по всем городам России. Ознакомившись с документацией по API на github (https://github.com/hhru/api), приступаем к работе.

Читать далее

Разбираемся с декораторами в Python

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

Декораторы – это обертка вокруг функций (или классов) в Python, которая меняет способ работы этой функции. Декоратор абстрагирует свой собственный функционал. Нотация декоратора в целом наименее инвазивна. Разработчик может писать свой код так, как ему хочется, и использовать декораторы только для расширения функциональности. Все это звучит крайне абстрактно, поэтому давайте обратимся к примерам.

Читать далее

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