Обновить
872.12

Python *

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

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

Советы, которые могут спасти Вас от ужасов PyYAML

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

YAML - это широко используемый язык сериализации данных. Все разработчики сталкиваются с необходимостью обработать YAML время от времени. Но обработка YAML, особенно с использованием PyYAML в Python, мучительна и полна ловушек. Здесь изложены некоторые советы, которые могут облегчить Вашу жизнь с PyYAML.

Читать далее

Еще раз о KISS и трендах

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

Последние несколько лет async вообще и asyncio в частности в питоне все больше набирают популярность и их все чаще используют. При этом иногда забывают о принципе KISS (Keep it simple, stupid) и о том, какие вообще проблемы решает асинхронный код и зачем он нужен. В этой статье я бы хотел описать пример, когда задачу можно и, на мой взгляд, нужно решать без использования async. И вообще, практически без всего.

Читать далее

Рейтинг русскоязычных энкодеров предложений

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

Энкодер предложений (sentence encoder) – это модель, которая сопоставляет коротким текстам векторы в многомерном пространстве, причём так, что у текстов, похожих по смыслу, и векторы тоже похожи. Обычно для этой цели используются нейросети, а полученные векторы называются эмбеддингами. Они полезны для кучи задач, например, few-shot классификации текстов, семантического поиска, или оценки качества перефразирования.

Но некоторые из таких полезных моделей занимают очень много памяти или работают медленно, особенно на обычных CPU. Можно ли выбрать наилучший энкодер предложений с учётом качества, быстродействия, и памяти? Я сравнил 25 энкодеров на 10 задачах и составил их рейтинг. Самой качественной моделью оказался mUSE, самой быстрой из предобученных – FastText, а по балансу скорости и качества победил rubert-tiny2. Код бенчмарка выложен в репозитории encodechka, а подробности – под катом.

Читать далее

Как написать средство проверки орфографии кхмерского языка

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

Материалом с подробностями о реализации средства проверки и исправления орфографии кхмерского языка, основного в Камбодже, делимся к старту флагманского курса по Data Science.

Читать далее

Pandas vs dask vs sqlite на raspberry pi

Время на прочтение7 мин
Охват и читатели4.4K
Возникла необходимость поработать с базой штрихкодов (barcode) на одноплатнике raspberry pi. Задача простая — открыть базу данных (~700 Мб), найти штрихкод и сделать это «достаточно быстро». Как оказалось, эти действия могут вылиться в захватывающее путешествие как в части того, как в базе быстро найти нужный код, так и в части того, как эту базу быстро открыть, чтобы найти. В работе помогали фреймворки pandas, dask, а также инструмент sqlite. Кто из них справился и какие есть нюансы — в данной статье.
Читать дальше →

Обзор книги «Секреты Python. 59 рекомендаций по написанию эффективного кода»

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

Всем доброго времени суток!

Публикую рецензию подписчика нашего телеграмм-канала IT-старт на книгу "Секреты Python. 59 рекомендаций по написанию эффективного кода" от автора Бретта Слаткина

Краткая, тезисная, но емкая рецензия.

Основные темы книги:

— Действенные рекомендации по основным аспектам разработки ПО с использованием версий Python 3.x и 2.x, дополненные подробными описаниями и примерами.

— Лучшие методики написания функций, снижающие вероятность появления ошибок в коде.

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

— Эффективные подходы к решению проблем, связанных с одновременным и параллельным выполнением множества операций.

— Усовершенствованные приемы работы со встроенными модулями Python.

— Инструментальные средства и лучшие методики коллективной разработки.

— Решения по отладке, тестированию и оптимизации кода.

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

Стоит ли читать книгу?

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

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

Читать далее

Прокладываем тропинки до микросервисов

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

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

Читать далее

Анализируем речь с помощью Python: Как и о чем говорят на YouTube-канале «вДудь»?

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

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

Сегодня при помощи статистических подходов и алгоритмов ML мы будем анализировать прямую речь. В качестве данных используем интервью, которые журналист Юрий Дудь (признан иностранным агентом на территории РФ) берет для своего YouTube-канала. Посмотрим с помощью Python, о чем таком интересном говорили в интервью на канале «вДудь».

Читать далее

Как с помощью Python создать приложение для расшифровки речи в реальном времени

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

Научить ИИ разговаривать шёпотом — непростая задача даже сегодня. Но мы покажем, насколько простыми стали распознавание и транскрипция речи, по крайней мере, на поверхности. Интересно? Тогда добро пожаловать под кат.

Читать далее

Как ускорить Python с помощью C-расширений. Часть 2

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

Привет, Хабр! Меня зовут Игорь Алимов, я ведущий разработчик группы Python в МТС Digital, и это вторая часть статьи, посвященной тому, как писать быстрый код на Python с использованием C-расширений. Я расскажу о всех нюансах и приведу конкретный пример применения этого метода.

Первую часть статьи читайте здесь, чтобы увидеть продолжение – переходите под кат!

Читать далее

Собираем генератор данных на Blender. Часть 2: Камера

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

Всем привет! На связи Глеб, в предыдущей статье мы рассмотрели работу с объектами на Blender. Но для того, чтобы создать минимально жизнеспособный генератор, нужно разобраться в том, как работают камеры.

Читать далее

Как я дообучал Tesseract и что из этого получилось

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

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

Инструкция от разработчиков https://tesseract-ocr.github.io/tessdoc/Home.html не всегда сразу понятна и очевидна, поэтому и появилась мысль записать свой опыт в эту статью.

У меня на компьютере стоит Linux Mint 20.2 Cinnamon, поэтому все действия происходят в этой системе и я не могу гарантировать, что все получится точно так же в Windows или Mac.

Для начала необходимо установить бибилиотеку tesseract на компьютер. Делается это достаточно просто. Сначала проверю версию, которая уже установлена (как правило в комплекте с Linux уже есть пакет tesseract). В терминале набираем

Читать далее

Компьютерное зрение в поиске атмосферных осадков

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

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

Читать далее

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

Добавляйте единицы измерения в имена

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

Есть одна ловушка читаемости кода, которой легко избежать, если вы о ней знаете; тем не менее она встречается постоянно: это отсутствующие единицы измерения. Рассмотрим три фрагмента кода на Python, Java и Haskell:

time.sleep(300)

Thread.sleep(300)

threadDelay 300

Сколько «спят» эти программы? Программа на Python выполняет задержку на пять минут, программа на Java — на 0,3 секунды, а программа на Haskell — на 0,3 миллисекунды.

Как это можно понять из кода? А никак. Вам просто нужно знать, что аргументом time.sleep являются секунды, а threadDelay — микросекунды. Если вы часто ищете эту информацию, то рано или поздно её запомните, но как сохранить читаемость кода для людей, никогда не встречавшихся с time.sleep?
Читать дальше →

Как сделать ИИ для поиска алмазов в Minecraft

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

В случайно сгенерированном мире Minecraft найдём алмазы с помощью ИИ. Как обученный с подкреплением агент проявит себя в одной из самых сложных задач игры? Подробностями делимся к старту флагманского курса по Data Science.

Читать далее

Визуализация и анализ зимних температур Алматы за последние сто лет на Streamlit

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

Как менялись зимние температуры в Алматы за сто лет, анализ на Streamlit.

Читать далее

Анонс: митап «Быстрый бэкенд». MongoDB, оптимизация алгоритмов и диагностика проблем в больших проектах

Время на прочтение2 мин
Охват и читатели1.8K
Привет, Хабр. Мы задумали встретиться офлайн в Москве и поговорить о том, как строить быстрый бэкенд и развивать его. Будут доклады о том, как живётся с большим кластером MongoDB, как битмап-индексы помогают быстро искать по каталогам и то, как анализировать большие объемы Jaeger-трейсов. Читайте пост: ниже тезисы и ссылка на регистрацию, встречаемся 4 июня.



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

Анализ аудиоданных (часть 1)

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

Каждый аудиосигнал содержит характеристики. Из MFCC (Мел-кепстральных коэффициентов), Spectral Centroid (Спектрального центроида) и Spectral Rolloff (Спектрального спада) я провела анализ аудиоданных и извлекла характеристики в виде среднего значения, стандартного отклонения и skew (наклон) с помощью библиотеки librosa.

Для классификации “живого” голоса (класс 1) и его отделению от синтетического/конвертированного/перезаписанного голоса (класс 2) я использовала алгоритм машинного обучения - SVM (Support Vector Machines) / машины опорных векторов. SVM работает путем сопоставления данных с многомерным пространством функций, чтобы точки данных можно было классифицировать, даже если данные не могут быть линейно разделены иным образом. Для работы я использовала математическую функцию, используемой для преобразования (известна как функция ядра) - RBF (радиальную базисную функцию).

В первой части анализа аудиоданных разберем:

Читать далее

Работа в Data Science: что важно знать и как этому научиться

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

Сегодня словосочетания вроде Data Science, Machine Learning, Artificial Intelligence очень популярны. При этом нередко под ними понимаются довольно разные вещи. Это зачастую смущает и запутывает людей, желающих войти в специальность: трудно разобраться, с чего начать, что действительно нужно, а что необязательно для начала. Не претендуя на общность, расскажем, как это видится на основе десятка лет опыта c решением такого рода задач для крупных клиентов со всего мира (сервис / заказная разработка / аутсорс – подставьте термин по вкусу).

Читать далее

Авто преписка в тг с привязкой к Google Calendar

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

Всем привет!

У меня была такая проблема что я каждый день когда ложился спать всегда ставил в нике преписку что то по типу [БУДУ ЗАВТРА В 8:00] так вот в какой то момент меня это доконало и я решил сделать так что бы скрипт сам делал мне эту преписку, но будет брать события с Google Calendar. Думаю это довольно удобно ведь так можно будет записывать в календарь все свои дела а скрипт будет автоматически ко времени преписывать их к нику.

давайте начнем!

и начнем мы с самого сложного, настройкой своего гугл аккаунта

заходим на этот сайт https://console.cloud.google.com/ входим в аккаунт гугл (не бойтесь его потерять, это официальный сайт гугла) и заполняем небольшую анкету:

первым делом мы видим такую картину

Читать далее

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