Search
Write a publication
Pull to refresh
-2
0.1
Send message

Overpass API: следующий уровень владения OpenStreetMap

Reading time12 min
Views34K

В своих различных геосервисах мы используем данные OpenStreetMap (OSM). Данные в OSM заносятся, в основном, через специальные программы-редакторы, про самые популярные из которых мы писали тут и тут. На программном уровне редакторы общаются с главным сервером через OSM API. Этот API работает как на чтение, так и на запись и предоставляет лишь минимально необходимые возможности. Через него выборку можно ограничить только прямоугольником, но не произвольной полигональной областью, также нет ни фильтрации данных, ни способов их преобразования перед отправкой клиенту. Но что делать, если тебе нужно выбрать данные из OSM, отсеив много лишнего, желательно сразу показать результаты на карте, и при этом ты ни разу не программист? Тут-то на помощь и приходит Overpass API — мощный инструмент запросов к данным OSM, и Overpass Turbo — веб-приложение, предоставляющее графический интерфейс к Overpass API и дополнительные удобства при работе с запросами.

Читать далее

Шёпот и эмоции в Алисе: история развития голосового синтеза Яндекса

Reading time15 min
Views39K


Четыре года назад мы запустили Алису. С самого начала она обладала собственным, узнаваемым голосом. Хотя проблемы тоже были: интонации хромали, эмоции скакали от слова к слову, а омонимы и вовсе ставили синтез в тупик. Алиса звучала пусть и не как робот, но ещё и не как человек.

Исследования показывают, что желание общаться с голосовым помощником напрямую зависит от того, насколько точно он имитирует речь людей. Поэтому мы постоянно работаем над «очеловечениванием» голоса Алисы. С тех пор сменилось несколько поколений нашего голосового синтеза. Мы научились расставлять интонации, отличать «замОк» от «зАмка» и многое другое.

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

Камера, мотор, панорама: как создаются 3D-фото автомобилей в приложении Авто.ру

Reading time7 min
Views10K


Чем лучше удастся рассмотреть потенциальную покупку перед оплатой, тем меньше шансов столкнуться с неприятными сюрпризами после, вопреки недобросовестным продавцам и недостаточно подробным описаниям. Чтобы ожидания пользователей чаще совпадали с реальностью, всё больше онлайн-магазинов внедряют 3D-фото на карточки своих товаров: одежда, электроника и даже маркетплейсы. Спрос на панорамные фото автомобилей был только делом времени и технологий, ведь в отличие от обуви или телефона, съёмка машины требует намного больше места и усилий.

Привет, на связи Антон Тимофеев, продуктовый менеджер в Авто.ру, и Александр Сапатов, разработчик команды компьютерного зрения Яндекса. Под катом расскажем о том, что происходит под капотом нашего приложения, после того как вы нажимаете кнопку «Панорама», и почему для создания хорошего снимка теперь достаточно обычного смартфона.

Ускоряем панораму машины в приложении Авто.ру

Reading time12 min
Views8.8K


В приложении Авто.ру есть такая фича — панорамы автомобилей. Она позволяет любому сделать 3D-фото своей машины, показать её во всей красе. Как это работает и как нашим коллегам из ML удалось уместить в смартфон то, что раньше требовало целого ангара, напичканного дорогостоящим оборудованием, yaantonn уже рассказывал на Хабре.


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

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

Как работают коды Spotify — часть 2

Reading time8 min
Views6.4K

В первой части мы разобрали общие технические принципы функционирования кодов платформы Spotify, и в завершении я написал, что неуверенность в некоторых деталях не позволила мне реализовать собственный конвертер штрихкодов в URI. Однако благодаря дополнительному исследованию и активной помощи от участников StackOverflow теперь я это преобразование выполнить могу.
Читать дальше →

Как это устроено: видеоконференции ВКонтакте на безлимитное число участников

Reading time20 min
Views21K

Сервисы для онлайн-общения и всевозможная доставка — наверное, самые востребованные и активно развивающиеся отрасли 2020–21-го. Мы ВКонтакте тоже не остались в стороне: работая удалённо с первых месяцев пандемии, запустили групповые видеозвонки. Сперва они вмещали одновременно 128 человек, а теперь мы полностью сняли лимиты на число участников.

В этой статье рассказываем, с какими трудностями сталкивается большинство сервисов звонков. И показываем, что нам понадобилось сделать и изобрести, чтобы преодолеть ограничения по числу участников. Попутно отвечаем на вопросы, которые прилетали со всех сторон на волне интереса к технологиям real-time коммуникации: как устроены Zoom и Clubhouse, что взять для своего сервиса звонков из open source, как встроить звонки в приложение. Про эффективную доставку тоже будет — но не еды, а данных, аудио и видео.

Читать далее

Асимметричный анализ тональности деловых новостей

Reading time8 min
Views4.3K

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

Читать далее

Как сделать игру 2048 на React

Reading time12 min
Views11K

Автор этого туториала сосредоточился на анимации. Он использовал хуки библиотеки React, её Context API, а также TypeScript и LESS. В конце вы найдёте ссылки на игру, её код и демо анимаций. Подробности рассказываем под катом, пока у нас начинается курс по Frontend-разработке.

Читать далее

Нейросеть, способная объяснить себе задачу: P-tuning для YaLM

Reading time9 min
Views20K

Мы уже рассказывали о том, как применили семейство генеративных нейросетей YaLM для подготовки ответов в Поиске, Алисе или даже в Балабобе. Главная особенность наших моделей — метод few-shot learning, который позволяет без дополнительного обучения решать большинство задач в области обработки естественного языка. Достаточно лишь подготовить подводку на человеческом языке — и модель сгенерирует текст. Но что, если это не самый оптимальный путь?

Сегодня я расскажу читателям Хабра про апгрейд этого метода под названием P-tuning. Вы узнаете про недостатки оригинального метода few-shot и преимущества нового подхода. Покажу, где он уже применяется на примере покемонов. Добро пожаловать под кат.
Читать дальше →

Чаты на вебсокетах. Теперь про бэкенд

Reading time4 min
Views14K

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

Ниже подробности о том, что было до написания кастомных чатов и какие стояли требования к реализации, из каких компонентов они состоят, как вписываются в нашу инфраструктуру и что получилось в итоге. А в конце статьи — ссылки про особенности разработки наших чатов на вебсокетах для iOS и Android.

Читать далее

Гидропоника. Персидская принцесса Сорая, или как из семян вырастить премиальную клубнику

Reading time7 min
Views38K

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

Почему из семян? Проще не заморачиваться, а купить рассаду! - скажут некоторые. Но увы, с покупной рассадой не всё так просто, как может показаться с первого взгляда. Главная проблема покупной рассады - грибковые болезни и наличие яиц или личинок вредителей. Даже приобретая рассаду с известных европейских питомников Вы рискуете получить заражённые растения, и занести к себе на садовый участок нежеланных гостей в виде трипсов, паутинного клеща, цикадок, белокрылки и иже с ними.

Читать далее

Пишем систему рекомендаций музыки на основе ML

Reading time9 min
Views11K

К старту курса по ML и DL рассказываем, как воспользоваться API Spotify, чтобы создать систему рекомендаций музыки под настроение на основе алгоритмов ML. Благодаря простоте систему легко настроить под ваши нужды: API Spotify возвращает понятные человеку признаки музыкального файла, например тембр. За подробностями приглашаем под кат.

Читать далее

Подборка бесплатных курсов для тех, кто делает первые шаги в Data Science

Level of difficultyEasy
Reading time3 min
Views80K

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

Читать далее

Превращаем Raspberry Pi в круглосуточный криптотрейдер, поднимаем podman на Windows…

Reading time3 min
Views5.2K

... а также интегрируем веб-консоль RHEL в Red Hat Satellite.

Подборка новых шпаргалок, вебинаров, свежих статей и полезных книг в самом полезном дайджесте на просторах #Хабр! Оставайтесь с нами – станьте частью DevNation!

Читать дальше: Превращаем Raspberry Pi...

Tun2Socks: прокси-сервер в качестве шлюза, или VPN через прокси

Reading time9 min
Views75K

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

Какой бы сценарий использования прокси у вас ни был, использовать шлюз по умолчанию в большинстве случаев удобнее. Хотя бы потому, что некоторые приложения не умеют работать через прокси.

Читать далее

Нейросети для Natural Language Inference (NLI): логические умозаключения на русском языке

Reading time9 min
Views21K

NLI (natural language inference) – это задача автоматического определения логической связи между текстами. Обычно она формулируется так: для двух утверждений A и B надо выяснить, следует ли B из A. Эта задача сложная, потому что она требует хорошо понимать смысл текстов. Эта задача полезная, потому что "понимательную" способность модели можно эксплуатировать для прикладных задач типа классификации текстов. Иногда такая классификация неплохо работает даже без обучающей выборки!

До сих пор в открытом доступе не было нейросетей, специализированных на задаче NLI для русского языка, но теперь я обучил целых три: tiny, twoway и threeway. Зачем эти модели нужны, как они обучались, и в чём между ними разница – под катом.

Читать далее

Многозадачная модель T5 для русского языка

Reading time7 min
Views32K

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

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

Читать далее

Играем с CLIP. Создаем универсальный zero-shot классификатор на Android

Reading time9 min
Views8.7K

TLDR: приложение можно скачать и потестить тут

Эта статья является дополненной и сильно расширенной версией моей статьи в TowardsDataScience о создании приложения, использующем новейшую мультимодальную нейросеть от OpenAI

В чем проблема классификаторов?

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

Читать далее

Создание веб-компонентов с помощью Vue 3.2

Reading time8 min
Views14K

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

Как разработчик Vue, в идеале мы хотели бы просто использовать наш фреймворк для создания сложных пользовательских интерфейсов. Но иногда мы оказываемся в описанной выше ситуации, работая с другим фреймворком JavaScript, таким как React или Angular, или используя внутреннюю систему рендеринга, такую как Rails или Laravel. Как мы можем создать многоразовый пользовательский интерфейс для различных вариантов внешнего интерфейса?

В Vue 3.2 у нас теперь есть решение этой проблемы: веб-компоненты на базе Vue!

Читать далее

Проект Natasha. Набор качественных открытых инструментов для обработки естественного русского языка (NLP)

Reading time34 min
Views108K
Два года назад я писал на Хабр статью про Yargy-парсер и библиотеку Natasha, рассказывал про решение задачи NER для русского языка, построенное на правилах. Проект хорошо приняли. Yargy-парсер заменил яндексовый Томита-парсер в крупных проектах внутри Сбера, Интерфакса и РИА Новостей. Библиотека Natasha сейчас встроена в образовательные программы ВШЭ, МФТИ и МГУ.

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

Для новостных статей качество на всех задачах сравнимо или превосходит существующие решения. Например с задачей NER Natasha справляется на 1 процентный пункт хуже, чем Deeppavlov BERT NER (F1 PER 0.97, LOC 0.91, ORG 0.85), модель весит в 75 раз меньше (27МБ), работает на CPU в 2 раза быстрее (25 статей/сек), чем BERT NER на GPU.

В проекте 9 репозиториев, библиотека Natasha объединяет их под одним интерфейсом. В статье поговорим про новые инструменты, сравним их с существующими решениями: Deeppavlov, SpaCy, UDPipe.

Information

Rating
5,826-th
Registered
Activity