Модель fastText — одно из самых эффективных векторных представлений слов для русского языка. Однако её прикладная польза страдает из-за внушительных (несколько гигабайт) размеров модели. В этой статье мы показываем, как можно уменьшить модель fastText с 2.7 гигабайт до 28 мегабайт, не слишком потеряв в её качестве (3-4%). Спойлер: квантизация и отбор признаков работают хорошо, а матричные разложения — не очень. Также мы публикуем пакет на Python для этого сжатия и пример компактной модели для русских слов.
Рубрика «Алгоритмы» - 42
Красно-чёрные деревья на javascript
2020-02-23 в 10:11, admin, рубрики: d3.js, javascript, Алгоритмы, красно-черные деревья, Учебный процесс в ITПривет! Изучал недавно красно-черные деревья. Попробовал визуализировать детали работы алгоритмов вставки и удаления на d3.js. Надеюсь, полученный результат поможет сэкономить немного времени тем, кто изучает алгоритмы на javascript. Посмотреть можно тут. Исходник реализации, от которой отталкивался тут . Под катом краткие подробности.
Читать полностью »
Очистка данных, как игра «Камень, Ножницы, Бумага». Это игра с финишем или без? Часть 2. Практическая
2020-02-21 в 15:43, admin, рубрики: big data, data accuracy, data analysis, data anomaly, data cleansing, data completeness, data consistency, data engineering, data mining, data preparation, data quality, data structures, dirty data, Алгоритмы, грязные данные, обработка данных, открытые данные, очистка данныхВ части первой описывалось, что данная публикация сделана на основе датасета результатов кадастровой оценки объектов недвижимости в Ханты-Мансийском АО.
Практическая часть представлена в виде шагов. Проводилась вся очистка в Excel, так как самый распространенный инструмент и описанные операции может повторить большинство специалистов знающих Excel. И достаточно неплохо подходит для работы в «рукопашную».
Нулевым этапом поставлю работы по запуску, сохранению файла, так как он размером 100 мб, то при количестве этих операций десятки и сотни на них уходит существенное время.
Открытие, в среднем, — 30 сек.
Сохранение – 22 сек.
Первый этап начинается с определения статистических показателей датасета.
Таблица 1. Статпоказатели датасета
Читать полностью »
Как мы предсказываем будущее с помощью машинного обучения: discovery-запросы в поиске Яндекса
2020-02-20 в 8:22, admin, рубрики: machine learning, Алгоритмы, Блог компании Яндекс, искусственный интеллект, команда яндекс.поиска, машинное обучение, поиск яндекса, поисковые технологии, яндексЛюди не всегда точно формулируют свои запросы, поэтому поисковые системы должны помогать им в этом. Меня зовут Сергей Юдин, я руковожу группой аналитики функциональности поиска в Яндексе. Мы каждый день улучшаем что-то с помощью машинного обучения. Последний год мы разрабатываем технологию, которая предугадывает интересы человека.
Со специалистом из моей команды Анастасией Гайдашенко avgaydashenko я расскажу читателям Хабра, как работает эта технология, опишу архитектуру и применяемые алгоритмы. А ещё вы узнаете, чем предсказание следующего запроса отличается от предсказания будущих интересов человека.
Результаты исследования откликов на вакансию дизайнера цифрового продукта. Часть первая — результаты и статистика
2020-02-20 в 8:04, admin, рубрики: recruitment, research, statistics, Алгоритмы, веб-дизайн, дизайн, Карьера в IT-индустрии, управление проектамиОсенью 2019 года мы запустили исследование сопроводительных писем продуктовых дизайнеров.
Цель — понять, насколько важно сопроводительное письмо, что в нём будут указывать, как оно влияет на самый верх воронки найма: пропустят отклик дальше по цепочке или нет?
Исследование проводилось в сентябре-ноябре 2019 года.
16 приглашенных экспертов из Яндекса, Альфа-Банка, Почты, Мэйл.Ру Групп, Интеркома, Миро, Революта, Сбербанка, Акрониса (и других) проанализировали 243 отклика на вакансию дизайнера цифровых продуктов.
В исследовании — основные выводы, статистика, а также поверхностный анализ описания вакансий и интервью нанимающих дизайн-менеджеров о поисках дизайнеров.
Как проверить навыки программирования на Python? Задачи от Яндекса
2020-02-18 в 8:59, admin, рубрики: counter, python, Алгоритмы, Блог компании Яндекс, Занимательные задачки, обход дерева, словари
Хакатон в Школе бэкенд-разработки
В 2019 году нам потребовалось автоматизированно проверить умение писать Python-код у сотен разработчиков. Так мы отбирали будущих студентов для Школы бэкенд-разработки. Это не то же самое, что предложить решить задачу на листе бумаги, как на собеседовании. С другой стороны, мы также не могли переиспользовать условия задач, уже подготовленные для наших соревнований по программированию. Дело в том, что соревнования с целью определить лучших из лучших — это одно, а отбор специалистов с небольшим опытом в школу — совсем другое. Нам требовались задачи, по решению которых было бы видно, обладает ли разработчик базовыми навыками написания кода и умением грамотно использовать память и время. Вот какие условия мы составили.
Читать полностью »
Машинное обучение в энергетике, или не только лишь все могут смотреть в завтрашний день
2020-02-18 в 8:01, admin, рубрики: Алгоритмы, Блог компании ГК ЛАНИТ, искусственный интеллект, машинное обучение, норбит, ПрограммированиеТочное предсказание будущих событий — перспективная и интересная задача во многих сферах: от прогноза погоды до финтеха (котировки акций, курсы валют). Машинное обучение уже сегодня позволяет значительно сократить время и трудозатраты на принятие управленческих решений.
Наша Data Science команда в НОРБИТ около полугода экспериментировала с использованием различных моделей машинного обучения для решения задач по классификации и регрессии, и по оптимизации бизнес-процессов в сфере b2b. Но когда появилась задача по предсказанию временных рядов, оказалось, что доступных материалов на эту тема в сети недостаточно для разработки быстрого решения.

Советы по использованию алгоритма коллапса волновой функции
2020-02-17 в 4:38, admin, рубрики: wave function collapse, Алгоритмы, Дизайн игр, коллапс волновой функции, процедурная генерация уровней, разработка игр, тайловые карты
В последнее время я много экспериментировал с процедурной генерацией на основе ограничений. В частности, с алгоритмом Wave Function Collapse (WFC, коллапс волновой функции). Я даже написал собственную open source-библиотеку и ассет unity.
WFC — это очень гибкий алгоритм, в особенности с разработанными мной улучшениями. Но в то же время я обнаружил, что достаточно трудно создавать с его помощью практичные уровни, применимые для компьютерных игр. Основная сложность заключается в том, что у WFC нет какой-то глобальной структуры. Всё, что он делает — заставляет генерацию выходных данных выглядеть локально похожей на входящие данные, например, при взгляде на отдельные небольшие прямоугольники выходных данных.
В этой статье я расскажу, чему научился и что сможет поднять генераторы на основе ограничений на новый уровень.
Читать полностью »
Null проблема в Data Science и Machine Learning
2020-02-17 в 2:40, admin, рубрики: data engineering, data science, machine learning, NaN, natural language processing, None, null, Алгоритмы, машинное обучение, СемантикаСуществующее определение Null в Data Science сильно ограничено. Приложив немножко усилий? мы значительно улучшим обработку данных, ранее попадаемых в Null.
Google разработал алгоритм автоматического кадрирования видео по важным объектам в кадре
2020-02-16 в 19:02, admin, рубрики: Google, Алгоритмы, Блог компании Madrobots, видео, кадрирование, Работа с видеоКоманда исследователей из компании Google представила новую разработку — алгоритм автоматического кадрирования видео. Исходный материал редактируется машиной, пользователю нужно лишь задать основные параметры, вроде соотношения сторон в кадре.
Ну а ПО все делает самостоятельно, отслеживая важные объекты на видео и обрезая кадры таким образом, что все важное оставалось в финальном варианте видео.
Читать полностью »