Обновить
512K+

Python *

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

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

Поиск объектов на изображении. Часть 1

Уровень сложностиСложный
Время на прочтение3 мин
Охват и читатели34K

Компьютерное зрение - удивительная область, которая позволяет компьютерам видеть и понимать мир через обработку изображений и видео. Одним из наиболее популярных инструментов для работы с компьютерным зрением является библиотека OpenCV. В этой статье мы рассмотрим, как использовать OpenCV для распознавания обьектов на изображении.

Допустим мы хотим найти карты из игры Дурак онлайн. Вот такое изображение мы будем обрабатывать.

Читать далее

Заметки про увеличение картинок нейронными сетями

Уровень сложностиСложный
Время на прочтение28 мин
Охват и читатели9.9K


TLDR — это не готовое решение, это попытка самостоятельно разобраться, подобрать архитектуру и обучить генеративно-состязательную модель (GAN) для увеличения картинок в 2 или 4 раза. Я не претендую на то, что моя модель или путь рассуждений лучше каких-то других. Кроме того, относительно недавно стали популярны трансформеры и diffusion модели — заметки не про них.


С заметками не получилось линейной структуры повествования — есть отступления "в сторону" и уточнения. Можно пропускать нерелевантные заметки. Например, описание подготовки данных нужно, если вы хотите воспроизвести эксперименты — а в остальных случаях можно пропустить. Я написал каждую отдельную заметку по-возможности цельной и независимой от других.


Я уже был знаком со свёрточными сетками, но мне хотелось попробовать генеративно-состязательные сети. Понять, почему используют те или иные подходы. Попробовать свои идеи. Посмотреть, насколько быстро можно научить модель и насколько хорошо она будет работать.


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

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

Мой первый супероптимизатор

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

Настало время для очередного бесполезного проекта.

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

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

Что под капотом у нейронной сети. Нейросеть c точки зрения математики и программирования

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

Цель данной публикации – комплексное рассмотрение строения искусственных нейронных сетей c точки зрения и математики и программного кода. В данной работе нейронная сеть реализуется на языке Python с использованием библиотеки tensorflow.keras. Статья сосредоточена в основном на строении и функционировании искусственной нейронной сети, поэтому такие этапы как обучение и т.д. в ней не затрагиваются.

Читать далее

Как разместить телеграм бота на сервере. Хостим бота через Push в GIT

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

В этой статье мы рассмотрим, как развернуть телеграм бота на python в облаке через push в GIT одной командой

Читать далее

Как извлечь больше данных о посетителях сайта через «Яндекс.Метрику» при помощи Python и с минимумом библиотек

Время на прочтение8 мин
Охват и читатели28K

Меня зовут Андрей Устьянцев, я ведущий аналитик направления Big Data в Лиге Цифровой Экономики. Эту статью я задумал как вторую в цикле материалов (первую об улучшении лендинга на основе метрик вы можете прочитать здесь). Сам текст будет полезен аналитикам, которым необходим более глубокий анализ данных о посетителях сайта, чем предоставляет стандартный интерфейс «Яндекс.Метрики». Или тем, кто хочет объединить данные из «Метрики» с другими источниками (например, из CRM) для визуализации, поиска инсайтов, проверки продуктовых гипотез etc.

Читать далее

DeepPavlov «из коробки» для задачи NLP на Python

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

Привет, Хабр!

Сегодня с вами участник профессионального сообщества NTA Пётр Гончаров.

В этом посте я разобрал последовательность действий, выполненных при решении задачи автоматизированного анализа текстовой информации в публикациях на Хабре для составления отчётов: парсинга сайта и использования «из коробки» инструментов библиотеки DeepPavlov для поиска ответов на вопросы в заданном контексте.

Погрузиться глубже

Гибкая разработка прототипа на Python

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

Всем привет!
Меня зовут Дмитрий, и я системный аналитик в отделе прототипирования в Первой грузовой компании. Наша команда помогает создавать новые цифровые продукты в компании и оптимизировать бизнес-процессы. Для этого мы разрабатываем прототипы/PoC-продукты для быстрого тестирования гипотез. Чем я занимаюсь: общение с заказчиком, анализ и описание требований к продукту, сопровождение процесса создания прототипа, разбор кейсов. Сегодня я поделюсь лайфхаками гибкой разработки прототипа.

Читать далее

Apache Airflow в связке с Kubernetes

Уровень сложностиСложный
Время на прочтение5 мин
Охват и читатели15K

Привет! Меня зовут Алексей Карпов, я DevOps-инженер (MLOps) отдела ML разработки в OKKO. Хочу поделиться опытом в работе с Apache Airflow в связке с Kubernetes. Расскажу, как установить Airflow в Kubernetes, настроить автоматическую синхронизацию DAG'ов с удалённым репозиторием, а также как отладить его работу. Всё это — на примере запуска простейшего DAGа. 

Читать далее

Решение проблемы «падения» процессов в приложении, работающее 24/7 в режиме мультипроцессинга

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

Есть приложение, в котором выполняет несколько функций, например, сбора данных из различных источников, их обработки и помещения результатов в БД. Приложение, по задумке, должно работать 24/7, чтобы в любой момент можно было подключиться к БД и получить свежайшую информацию.

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

Решаем

Python3 + C, есть ли смысл?

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

Доброго времени суток! В данной статье рассмотрим стоит ли интегрировать методы из С в проекты написаные на Python3 и как это сделать.

Перейти к публикации --->

Мокинг внешних API в Python

Время на прочтение19 мин
Охват и читатели15K

В этом руководстве я покажу, как протестировать использование внешнего API с помощью Python моков.

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

Читать далее

Что такое индексация смарт-контрактов в Web3 разработке? (Начальные знания не требуются)

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

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

Сложно сказать, что культура инженерии данных глубоко укоренилась в сообществе разработчиков Web3. И не каждый разработчик может легко определить, что означает индексация в контексте Web3. Я хотел бы уточнить некоторые детали на эту тему и поговорить об инструменте под названием The Graph, который стал де-факто стандартом индустрии для доступа к данным на блокчейне для создателей DApp'ов (децентрализованных приложений).

Под кат

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

Shawarma as a service: как создать бота для заказа шавермы и оставить голодными лишь 1,1% коллег

Время на прочтение12 мин
Охват и читатели26K

Полтора года назад в Selectel появилась традиция кушать шаверму по четвергам. Акция, названная Шавадеем, быстро обрела популярность. С увеличением количества адептов ее организационные моменты — в частности, сбор и отправка заказов — становились все сложнее. На помощь позвали программиста — меня.

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

cv3 — делаем OpenCV питоничным

Уровень сложностиПростой
Время на прочтение14 мин
Охват и читатели14K

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

Читать далее

Роли ChatGPT, которые первыми начинают диалог с клиентом и добивается поставленной бизнес задачи

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

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

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

Читать далее

Автоматизация видеонаблюдения

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

Всем привет! Я работаю не в IT компании системным администратором. В перечень обязанностей входит и администрирование систем видеонаблюдения [мы используем CTV и HiWatch], это обычная ситуация админ должен уметь все и сразу.

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

Мне интересно!

Задача коммивояжёра — ещё немного больше, ещё немного быстрее

Уровень сложностиСредний
Время на прочтение16 мин
Охват и читатели10K

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

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

Читать далее

PySpark для аналитика. Как выгружать данные с помощью toPandas и его альтернатив

Время на прочтение9 мин
Охват и читатели20K

Тимлид команды аналитики и DS в Авито Александр Ледовский рассказал, как быть, когда нужно посчитать что-то на pySpark, чтобы потом выгрузить.

Читать далее

Хороший, плохой, злой и… свободный? Сравниваем глуповатые, но усердные AI-плагины для разработки

Уровень сложностиСредний
Время на прочтение22 мин
Охват и читатели34K

Привет, Хабр! Меня зовут Арсений, я — тимлид в команде разработки инструментов разработчика KasperskyOS. Работа нашей команды заключается в том, чтобы делать жизнь разработчика ПО под нашу собственную микроядерную OS удобной, так что любые технологии, упрощающие жизнь разработчика, не оставляют нас равнодушными. Вместе со всеми мы следим за хайпом вокруг нейросетей и решили сделать небольшой обзор AI-плагинов автодополнения кода, которые каждый из нас может использовать уже сейчас.


image


В этой заметке попробуем сравнить следующие AI плагины VSCode:


  • Copilot v1.84.61 — самый нашумевший робот
  • Tabnine v3.6.45 — самый старый из трех и самый дорогой
  • Codeium v1.2.11 — самый свежий и самый малоизвестный
  • FauxPilot — Open source, self-hosted аналог Copilot, использующий модели от CodeGen; посмотрим, что может противопоставить коммерческим продуктам OSS-проект, развернутый на моем запечном сервере.

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

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