Как стать автором
Обновить
1
0

Пользователь

Отправить сообщение

Знай сложности алгоритмов

Время на прочтение2 мин
Количество просмотров1M
Эта статья рассказывает о времени выполнения и о расходе памяти большинства алгоритмов используемых в информатике. В прошлом, когда я готовился к прохождению собеседования я потратил много времени исследуя интернет для поиска информации о лучшем, среднем и худшем случае работы алгоритмов поиска и сортировки, чтобы заданный вопрос на собеседовании не поставил меня в тупик. За последние несколько лет я проходил интервью в нескольких стартапах из Силиконовой долины, а также в некоторых крупных компаниях таких как Yahoo, eBay, LinkedIn и Google и каждый раз, когда я готовился к интервью, я подумал: «Почему никто не создал хорошую шпаргалку по асимптотической сложности алгоритмов? ». Чтобы сохранить ваше время я создал такую шпаргалку. Наслаждайтесь!
Читать дальше →
Всего голосов 312: ↑296 и ↓16+280
Комментарии99

Самые популярные структуры данных

Время на прочтение9 мин
Количество просмотров25K
Что такое структура данных?
Проще говоря, структура данных — это контейнер, в котором хранятся данные в определенной компоновке (формате, или способе организации их в памяти). Эта «компоновка» позволяет структуре данных быть эффективной в одних операциях и неэффективной в других. Ваша цель — понять структуры данных, чтобы вы могли выбрать структуру данных, наиболее оптимальную для рассматриваемой проблемы.

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

Читать дальше →
Всего голосов 16: ↑12 и ↓4+12
Комментарии8

Шпаргалка по рекомендательным системам

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

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

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

Читать далее
Всего голосов 7: ↑7 и ↓0+7
Комментарии7

Сравнение матричной факторизации с трансформерами на наборе данных MovieLens с применением библиотеки pytorch-acceleratd

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

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

Читать далее
Всего голосов 23: ↑23 и ↓0+23
Комментарии1

Рекомендательная система SVD

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

Про SVD разложение и PCA. Решение задачи восстановления user-item matrix с помощью stochastic gradient descent.

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии4

Рекомендательная система SVD: Funk MF (Matrix Factorization)

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

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

Читать далее
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Рекомендательная система для Directum Club. Часть первая, коллаборативная

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

Каждый день пользователи по всему миру получают большое количество различных рассылок — только через сервис MailChimp ежедневно рассылают миллиард писем. Из них открывают 20.81%.


Ежемесячно пользователи наших сайтов получают рассылки с отобранными редактором материалами. Эти письма открывают около 21% читателей.


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


В этой статье расскажу о том, как реализовать рекомендательную систему с нуля на основе коллаборативной фильтрации.


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


Во второй части описана реализация на Python для данных нашего сайта.

Читать дальше →
Всего голосов 7: ↑7 и ↓0+7
Комментарии3

Дропаем ранжирующие метрики в рекомендательной системе, часть 3: платформа для экспериментов

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

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

Кроме онлайн приложения мы построили небольшую, но цельную платформу для экспериментов с рекомендательными моделями. Сегодня я подробно на ней остановлюсь:
- Расскажу о workflow экспериментов и пайплайнах обработки данных.
- О том, какие инструменты мы использовали для реализации платформы.
- Нарисую полную инфраструктуру проекта.

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

Будет много MLOps для RecSys.

RecSys dive ->
Всего голосов 7: ↑7 и ↓0+7
Комментарии2

Дропаем ранжирующие метрики в рекомендательной системе, часть 2: двухэтапные модели

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

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

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

RecSys dive ->
Всего голосов 9: ↑9 и ↓0+9
Комментарии3

Дропаем ранжирующие метрики в рекомендательной системе, часть 1: визуальный анализ и popularity bias

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

Привет, Хабр! Поговорим о RecSys?

Что нужно для построения рекомендательной системы, которая будет полезна бизнесу? Топовые метрики, максимум предсказательной силы, machine learning на полную? Проверим. Сегодня покажу:

Как (и почему) мы дропнули в 3 раза ранжирующие метрики в пет-проекте по рекомендациям фильмов
Как искали свой идеальный алгоритм
Как подобрали релевантные рекомендации на самые разные запросы

Будем говорить обо всех аспектах экспериментов в RecSys: метрики, визуальный анализ, workflow. А результат проверим в онлайн-приложении.

RecSys dive ->
Всего голосов 18: ↑18 и ↓0+18
Комментарии2

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность