Обновить
506.05

Python *

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

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

Борьба с дисбалансом классов. Стандартные методы

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

Привет, Хабр! На связи KozhinDev, а именно ml-разработчик Приходько Александр. Этой статьей я начну цикл публикаций по теме борьбы с дисбалансом классов. В первую очередь этот гайд предназначен для ml-разработчиков уровня junior/middle. Мы ознакомимся с различными подходами к решению проблемы дисбаланса классов и проведем их сравнительный анализ на сгенерированной выборке: коснемся метрик качества, встроенных в классификаторы методы борьбы с дисбалансом классов, методы модификации выборки, а также комбинированные техники. В последней части мы расскажем про наш опыт применения кастомных метрик точности, как еще один метод борьбы с дисбалансом.

Читать далее

Data Drift в ML Страхового Дома ВСК: от PSI-анализа до пересборки фичей и сравнения моделей

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

Представьте: ваша модель машинного обучения, блестяще прошедшая все A/B-тесты, через полгода начинает тихо, но уверенно деградировать. Предсказания становятся менее точными, бизнес-метрики ползут вниз, а вы не понимаете, почему. Знакомо? Скорее всего, вы столкнулись с Data Drift — смещением данных.

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

В этой статье я на реальном примере разберу, как:

Читать и обсуждать

Просто о сложном: архитектура фронта для техлида

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

Привет, Хабр! Меня зовут Максим Вишневский, я архитектор (в основном фронтенда) и автор небольшого Telegram-канала Вишнёвые истории. Эта статья основана на моём докладе с TeamLead Conf++ 2024.

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

Читать далее

Python и Go — идеальный набор (высокоуровневых языков)

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

Перед вами - известное письмо Линуса Торвальдса, где он написал, что если бы единственная причина использовать С, а не С++, была в том, чтобы отпугивать программистов на С++ - это уже была бы весомая причина.

Питон в последнее время завоевал лидирующие позиции в дата саенс и машинном обучении, что меня как разработчика на нём не может не радовать. В данной статье вы узнаете, почему, следуя духу минимализма из указанной цитаты, нужно использовать го в тех областях, где лидерство питона не так очевидно. А в питоне - не заморачиваться с async/await, фреймворками и прочей ерундой.

Читать далее

Реализуем Q learning на Python

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

Обучение с подкреплением (Reinforcement learning) является одним из направлений ML. Суть этого метода заключается в том, что обучаемая система или агент учится принимать оптимальные решения через взаимодействие со средой. В отличие от других подходов, Reinforcement learning (RL) не требует заранее подготовленных данных с правильными ответами или явной структуры в них. 

Предполагается, что машинное обучение может быть либо контролируемым (модель обучается на размеченном наборе данных), либо неконтролируемым (алгоритмы обучаются на основе неразмеченных данных), но появление обучения с подкреплением нарушило этот статус-кво. Так, Q-обучение может исследовать пространство, используя несколько инструкций, анализировать окружающую среду шаг за шагом и накапливать данные по мере продвижения для моделирования.

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

Перейти к статье

Ищу слитые в опен сорс токены ботов

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

Многие люди публикуют свои проекты на github-подобных git-хостингах, для обеспечения общего доступа (это даёт множество преимуществ во многих случаях).

Часто, ввиду неопытности, при публикации, люди сливают чувствительные данные (в частности токены Telegram-ботов).

Читать далее

Как за 4 месяца вкатиться в Российское багбаунти

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

Так уж вышло, что я сел писать статью о нашем с Саней (@MrKaban4ik) приключении в багбаунти. Сразу предупреждаю: бывалым исследователям наша история покажется не самой захватывающей. Она не о сложных цепных эксплойтах, а о самом начале пути — о том, как ты делаешь первый шаг на площадке и, затаив дыхание, ждешь вердикта по своему первому отчету. Именно эти первые «хваты» вселяют ту самую уверенность, что ты на правильном пути.

{Багбаунти-кидди презенс}

Чуть предыстории. НЕБОЛЬШАЯ ИСТОРИЧЕСКАЯ СПРАВКА НА 5 МИНУТ. Февраль 2025 года.

Мы с Александром часто участвуем в CTF в рамках студенческой команды Capybaras. Недавно закончился Чемпионат России по спорт проге ИБ, мы написали квалы на чемпионат банка РФ и нас зовут в Екатеринбург на Уральский форум. Вуз платит — едем. К этому моменту мы знаем о вебе что он существует и что если нет никаких ограничений на загрузку можно загрузить файлик.php который может быть шелом и как то магически команды на OS исполняет. О багбаунти мы слышали, но не седели особо — потому что просто не знаешь что искать. Мы с Александром собираем вещи, едим в Сочи и оттуда летим в Екатиб. Хотя давайте меньше деталей, вы же тут не до вечера собрались читать. В общем‑то первый наш форум по ИБ, много вендоров и лекций в молодежной программе. Знакомлюсь с ДВФУ‑шниками, до сих пор {heart}. Но вернемся к форуму. Среди вендоров был и BI.ZONE. Интерес конечно же у меня к нему был потому что они недавно выпускают Threat Zone и как только открылась выставка, а у нас шла кибербитва — я решаю незаметно сбежать и сходить залутать заветный журнальчик. Подхожу к стенду, решаю потыкать стендик и подходит какой‑то тип в черном костюме и начинает спрашивать знаком ли я с продуктами компании, я жестко говорю что знаю EDR и какой то прикол с жуками, называемый bugbounty. А этот тип говорит: «Я глава этого продукта». Таким образом мы познакомились с человеком по имени Андрей Левкин — который сыграет на самом деле большую роль в том, чтоб мы начали багхантить. Форум заканчивается и мы едем домой.

Читать далее

Как научить робота выходить из лабиринта домино только «глазами»: Jetson Nano + Arduino

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

Побег Робота из лабиринта. Технологи: Jetson + Arduino + CV. Робот находит выход из лабиринта только с помощью компьютерного зрения.

Посмотреть видео и код.

Создаем классическую «Змейку» на Python

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

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

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

Читать далее

Бэктестер для торговых стратегий на GPU со скоростью просчёта 150 тыс стратегий за 1 секунду

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

Хочется, чтобы фреймворк для тестирования торговых стратегий был пакетным, гибким, подбирал сразу 10 параметров и просчитывал очень быстро. И вот он ...

Читать далее

Устаревшие версии Python обходятся компаниям в миллионы долларов

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

Команда Python for Devs подготовила перевод статьи о скрытых издержках использования старых версий Python. TL;DR: 83% разработчиков застряли на Python 3.10–3.11, и это обходится компаниям в миллионы долларов ежегодно из-за лишних "облачных" затрат. А ведь казалось бы, обновиться — проще простого.

Читать далее

Pytest. Гайд для тех, кто ни разу про него не слышал

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

Недавно на работе передо мной возникла задача максимально быстро погрузиться в автоматизированное тестирование с ранее мной не использовавшимся фреймворком pytest. Почитав порядка десяти статей на Хабре я понял, что в каждой из статей есть много всего интересного, а чтобы системно погрузиться — необходимо идти читать документацию. Я решил, в привычной мне манере, разобраться и систематизировать самый сок для того, чтобы быстро въехать в суть и важные тонкости положив основу для дальнейшего использования. 

Всем интересующимся — добро пожаловать под кат!

Читать далее

Изучаем Python: модуль random для начинающих с практическим домашним заданием

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

Разбираем модуль random в Python. Начнем с основ: почему его случайность на самом деле предсказуема и как random.seed() дает нам полный контроль над хаосом. Затем пройдемся по главным инструментам: от randint и shuffle до choices с весами.
А в конце — самое интересное. Вас ждет практикум на GitHub. Пять задач на закрепление материала, от генератора паролей до симулятора лутбокса, с полностью автоматической проверкой вашего кода через GitHub Actions. Заходите, чтобы проверить свои силы!

Читать далее

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

Нейросеть на службе бизнеса: от отзыва до инсайтов

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

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

Читать далее

DevSecOps за 20 миллионов? Я сделал свой сканер и выложил бесплатно

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

Я раньше работал обычным безопасником. Кто-то называет таких «ИБшниками», кто-то — «параноиками», кто-то — «тем самым занудой, который мешает жить».
Каждый день у меня был один и тот же диалог:

Тимлид: «У нас релиз в пятницу, отстань со своим сканированием».
Менеджер: «В бюджете только Jira и пицца, какие ещё 15 миллионов за софт?»
Разработчик: «Код сгенерил AI, билд прошёл, значит, всё норм».

Читать далее

AI Review: инструмент для автоматического ревью кода на основе LLM

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

Раньше вас ревьюил злой коллега — теперь это делает AI. AI Review — open-source инструмент, который сам проверяет код прямо в CI/CD. Поддерживает OpenAI, Claude, Gemini, GitLab и GitHub. Быстро, честно и без боли.

Читать далее

От консоли к 3D: Как написать игру «Сапер» на Python с нуля версия 3D (часть третья)

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

Создайте 3D-версию легендарного «Сапёра» на Python с использованием OpenGL. В этом руководстве вы шаг за шагом реализуете полностью трехмерную игру: от создания меню со слайдерами до 3D-визуализации игрового поля

Вы освоите работу с камерой в трехмерном пространстве, настройку динамического освещения, создание объемных мин с шипами и 3D-флагов, а также реализуете классическую игровую механику в трехмерной среде

Читать далее

Изучаем Python: модуль sys для начинающих с практическим домашним заданием

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

Практическое руководство по модулю sys для начинающих. Разбираем, как научить Python-скрипты принимать аргументы командной строки, управлять потоками ввода-вывода и корректно завершать работу. Материал подкреплен пятью задачами с автотестами на GitHub.

Читать далее

Трюк, который раньше ускорял Python, теперь лишь захламляет код

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

Команда Python for Devs подготовила перевод статьи о том, почему любимая оптимизация Python — присваивать глобальные функции локальным переменным — больше не даёт выигрыша. CPython 3.11 стал умнее, и старый хак l = len уже почти бессмыслен.

Читать далее

Что такое AI-агент и из каких основных частей он состоит

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

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

🔥 Начинаем 🔥

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