Алексей Чернобровов
319 subscribers
25 links
Для личных сообщений: @chernobrovov
Почта: a.chernobrovov@gmail.com
Download Telegram
to view and join the conversation
Итак, вы закончили ВУЗ или онлайн-курсы по направлению Data Science и приступили к поиску работы. Чтобы сократить этот марафон и ускорить получение долгожданного job offer’а, в этой статье я собрал ТОП-5 советов junior’у «Как найти работу в Data Science» из личного опыта и практики коллег.



1. Собирайте портфолио
Учебные проекты, производственные практики, участие в конкурсах, хакатонах и других соревнованиях – за неимением реального релевантного опыта работы в Data Science все это можно отразить в резюме, подкрепив ссылками на Github. Хотя HR и team lead вряд ли будут копаться в вашем репозитории, его наличие свидетельствует, что вы, как минимум, умеете пользоваться этим инструментарием и способны решать поставленные задачи.



2. Вливайтесь в тусовку
Slack-чаты, Telegram-каналы, группы в Facebook, LinkedIn и прочих соцсетях, посвященные Data Science – в этих онлайн-сообществах можно не только узнать последние новости мира ML, AI и Big Data, но и получить предложение о работе. В таких тусовках часто встречаются объявления о вакансиях, причем не только от рекрутеров, но и от непосредственных коллег. Еще полезно будет время от времени посещать офлайн-мероприятия: официальные митапы Яндекса, Mail.ru Group, VK, OK, различных банков и прочих крупных компаний, а также неформальные ламповые встречи типа моих DS-завтраков, о которых я писал здесь.



3. Приведите в порядок резюме
В сети тонны советов, как составить CV, которое зацепит внимание рекрутера. Чтобы не повторять их здесь, подчеркну главное: резюме – это не ваша полная автобиография, а лишь срез профессиональных компетенций, релевантных желаемой вакансии. Претендуя на должность Data Scientist’а нет смысла детально описывать, каких успехов вы достигли в роли sales-менеджера или инженера-строителя. А вот подробно указать, с какими DS-технологиями, библиотеками и фреймворками вы знакомы – настоятельно рекомендуется. Тем более, что сегодня первичный поиск кандидатов выполняется автоматически через парсинг резюме на hh.ru и прочих работных сайтах. Также большинству работодателей совершенно не интересно ваше семейное положение, разнообразный список хобби и особенности характера (стрессоустойчивость, коммуникабельность и пр.). А вот зарплатные ожидания – очень даже важны. Причем они должны соответствовать текущему рынку: когда junior без опыта претендует на 200К это как минимум странно. Узнать свою стоимость на рынке можно с помощью разных сервисов и периодических исследований. Например, тот же habr.ru каждые полгода выпускает обзор рынка ИТ-специальностей с распределением зарплат по грейдам, от junior до senior.

Составив резюме, покажите его знакомому HR или попросите ревью в тех же телеграмм-чатах. Вас с удовольствием покритикуют коллеги-соискатели, а также тусующиеся там рекрутеры. Полученные отзывы помогут улучшить CV и потренируют вашу стрессоустойчивостьJ. Обновив резюме, его можно не только выкладывать на https://hh.ru, https://www.superjob.ru/ и пр., но и лично разослать в компании мечты. Даже если открытой вакансии сейчас нет, а соискатель очень понравился, ее могут завести специально для вас. Хотя это достаточно редкий кейс, но вероятность получить работу таким образом совсем не нулевая.



4. Подготовьтесь к собеседованию
При том, что интервью – это не экзамен и не смотрины, вас все равно будут оценивать, как по hard, так и по soft skills. Причем соискатель, который осознает ценность DS для бизнеса, например, повышение ROMI и ROAS благодаря точной сегментации клиентов с помощью ML-модели, предпочтительнее кандидата, который просто отлично владеет инструментами, но совершенно не понимает бизнес-контекста. Поэтому, рассказывая работодателю о предыдущем опыте или, в случае его отсутствия, про учебные проекты, покажите, каким образом результаты ваших трудов помогли повысить прибыль, снизить затраты или еще как-то увеличить эффективность компании.

Зубрить алгоритмы нет смысла, а вот отдохнуть перед беседой и составить свой список вопросов к работодателю – очень даже стоит.
Например, есть ли контроль рабочего времени для сотрудников на удаленке, каких KPI от вас ожидают на выходе, будете ли вы заниматься только DS-задачами или попутно тянуть дата-инженерию и DevOps при развертывании своих моделей в production. Также стоит выяснить организационные вопросы: трудоустройство в штат или по ИП/ГПХ, больничные, премии и пр.



5. Настройтесь на марафон
Поиск любимой работы, которая приносит не только деньги, но и моральное удовлетворение – это не спринт, а забег на длинную дистанцию. Правило воронки продаж работает и здесь. Обычно конверсия собеседований к job offer для junior’а составляет 50-10%. Это означает, что примерно после 10 интервью вы получите от 1 до 5 приглашений на работу. Однако, чтобы дойти до этого этапа, необходимо пройти первичный отбор резюме и, возможно, выполнить тестовое задание. Здесь цифры немного меньше: конверсия в 10% считается успехом. Поэтому полируйте свое CV, адаптируя его к конкретной вакансии, тренируйтесь на котиках рекрутерах и в случае отказа обязательно просите обратную связь. Особенно такой feedback будет полезен от технического специалиста, а не просто HR-менеджера.

В заключение самое главное: не опускайте руки в случае провала, вы получили опыт и следующее интервью 100% пройдет лучше. Тем более, что текущий рынок Data Science в России и странах бывшего СНГ – это рынок соискателя, где спрос на специалистов намного больше предложения. Кроме того, при наличии нужных навыков можно посмотреть в сторону дата-инженерии и аналитики данных. Эти специализации отличаются от чисто DS-профиля, однако тесно соприкасаются с ним и, возможно, подойдут вам. Подробнее о сходствах и отличиях этих направлений я рассказывал здесь и здесь.

Наконец, есть смысл предложить свои DS-компетенции на текущем месте работы, если там имеются релевантные задачи. Однако, этот вариант осуществим далеко не в каждой компании. И, если потребности в Data Scientist’ах у предприятия нет от слова «совсем», не бойтесь поменять работодателя. В любом случае, какой бы путь вы не выбрали, желаю вам найти свою работу мечты в Data Science – самой сексуальной профессии 21 века!



Полезные ссылки
Slack и Телеграм-каналы

https://t.me/analysts_hunter

https://t.me/bds_job

https://t.me/bdscience_ru

https://ods.ai/join-community



Подготовка к собеседованию

https://www.youtube.com/watch?v=Uj3PpTH-dyg&feature=youtu.be

https://www.educative.io/blog/top-machine-learning-interview-questions

https://www.educative.io/blog/cracking-machine-learning-interview-system-design



Отчеты и дэшборды с аналитикой DS и ИТ-рынка (вакансии и зарплаты)

https://revealthedata.com/examples/hh/

https://career.habr.com/salaries/reports

https://habr.com/ru/article/569026/

https://chernobrovov.ru/articles/kak-poluchit-rabotu-v-data-science-5-sovetov-soiskatelyu.html
🤫 Псс… Я тут секретики рассказываю. Часто бывает так, что вы не можете провести АБ-тест, а очень нужно. Например, потому что у вас есть сетевой эффект или решаете задачу ценообразования, где нельзя двум группам показывать разные версии цен. Но, тем не менее, проводить эксперименты нужно и тогда есть отличный инструмент – Switchback.
Если хотите о нем узнать, то можно прочитать этот пост.
⚠️А если лень читать, то вам сюда ➡️: https://citymobil.timepad.ru/event/1813232/. Если пройти по регистрации и дождаться 28 октября, то Ксения Мензорова из Ситимобил лично вам все расскажет! Не упустите свой шанс! :)
💡Так вот, что такое Switchback? Switchback — метод сплитования контрольных и тестовых групп с гиперпараметрами в виде дискретности использования групп. Чаще всего используют сплитование по времени, по гео, по источникам трафикам и др.
В самом простом варианте, например, вы нарезаете (сплитуете) время по часам. И в каждый час разные сплиты показывают версию А или Б. Важно, чтобы на этом сплитовании корректно работал АА-тест, что в общем случае делает этот подход не совсем тривиальным.
Интуитивно выглядит просто. Но, разумеется, у такого подхода есть множество сложностей. Например, клиент будет начинать делать заказ в начале одно сплита, а заканчивать уже в другом, как это обработать?
🚗 Подробнее о многих аспектах Switchback-тестирования на примере их применения в такси, можно узнать из серии статей Ситимобил.
1. Switchback-эксперименты в Ситимобил. Эпизод 1: Скрытая сила Switchback.
Из этой статьи вы узнаете эвалюцию подхода к экспериментам в Ситимобил. Как от week-to-week тестов и рандомизированных АБ команда перешла к Switchback-тестирования. Вы узнаете, что такое stable unit treatment value assumption (SUTVA) и сетевой эффект. Как подобрать окно переключения по расстоянию и времени в Switchback. Как Switchback применяют на практике в Ситимобил.
2. Эксперименты в Ситимобил. Эпизод 2: Атака тестов на Switchback.
В этой статье речь пойдет о практических шагах и возможности получить ответы на главные, волнующие всех экспериментаторов вопросы: какими статистическими методами можно проверить switchback-тест и как выбрать подходящий. На примере одной из важных метрик сравнивается несколько статистических тестов, использующих разную агрегацию данных, а также разные интересные математические решения.
1. https://habr.com/ru/company/citymobil/blog/560426/
2. https://habr.com/ru/company/citymobil/blog/575218/
Последнее время очень мало читаю каналы по Data Science, так как не хватает времени. Но у меня есть гилти плежер – это канал Арсения. Мы с Арсением познакомились давно, когда он меня пригласил выступить в Минск на DataFest. Помимо того, что Арсений мой хороший приятель, он еще крутой ML-инженер, которого интересно читать. Вот его недавний пост https://t.me/partially_unsupervised/125 про разделение ролей. Мне очень нравится, что Арсений всегда высказывает свое мнение, хотя часто оно бывает спорным. Мне, кстати, тяжело высказываться на такие темы и обсуждать коллег, но в комментах идут жаркие споры и можно послушать разные мнения. В общем всем советую подписаться на его канал: https://t.me/partially_unsupervised
Недавно мне попался предпринт книги по байесовской оптимизации Романа Гарнетта (Roman Garnett), доцента Вашингтонского университета св. Льюиса (Washington University in St. Louis). Это черновик монографии ученого, которая будет официально опубликована издательством Cambridge University Press в начале 2022 года. Основное содержание книги уже сейчас доступно на Github, куда ее выложил сам автор: https://github.com/bayesoptbook/bayesoptbook.github.io/tree/master/book
Почти 350 страниц англоязычного текста полностью охватывают математические основы оптимизации вообще и байесовского подхода в частности. Книга предназначена для студентов, аспирантов и специалистов Data Science, включая области машинного обучения и статистики. Хотя в целом текст написан достаточно сухим математическим языком, внимательный читатель даже без глубокого опыта в математике сможет освоить материал благодаря обилию наглядных иллюстраций и подробному объяснению формул.
Книга охватывает основные 3 темы:
• теоретические и практические аспекты моделирования гауссовских процессов,
• байесовский подход к последовательному принятию решений,
• реализация практических и эффективных политик оптимизации.
Также затронуты несколько дополнительных тем:
• обзор результатов теоретической сходимости,
• обзор заметных расширений,
• всесторонняя история байесовской оптимизации,
• аннотированная библиография приложений.
На мой взгляд книга пригодится не только студентам и преподавателям, но и практикующим DS-исследователям, которым нужно подтянуть математику, вспомнить некоторые темы или углубить свои знания теории оптимизации.
Я продолжаю серию митапов про Data Science в геосервисах, логистике, приложениях Smart City и т.д.
28 октября в 18:00 МСК состоится 3-я онлайн встреча Citymobil Data Meetup!

💣 Программа – пушка!

🚕 Ксения Мензорова Data Science в Surge Pricing Ситимобил
«Атака тестов на свичбэк»
Расскажет какими статистическими методами можно проверить switchback-тест. А ещё подскажет, как правильно выбрать подход, позволяющий бизнесу быстро принимать решения.

🚕 Екатерина Колпакова Руководитель DWH Ситимобил
«Сказ про то как мы в Ситимобил DWH строим»
Подробно расскажет о подходе к построению сложных систем, совмещения Data Vault и Data Lake, а также будет рассмотрено, как же в компании устроены потоки данных.

🛴 Николай Рядчиков Senior ML Specialist Самокат
«Прогнозирование времени доставки заказа»
Будут рассмотрены необходимость детальной структуры местности для точного прогноза заказа, временные факторы прогноза, очередность заказа в порядке выполнения курьером как важнейший фактор прогноза, методология проведения экспериментов для проверки качества прогноза.

После доклада спикеры ответят на вопросы слушателей. Регистрация для бесплатного участия в первом комментарии)
https://citymobil.timepad.ru/event/1813232/
⚠️ Если вы вдруг забыли, то спешу напомнить!
Сегодня 28 октября в 18:00 МСК состоится 3-я онлайн встреча Citymobil Data Meetup!
Сегодня будут отличные доклады:
🚕 Ксения Мензорова Data Science в Surge Pricing Ситимобил «Атака тестов на свичбэк».
🚖 Екатерина Колпакова Руководитель DWH Ситимобил «Сказ про то как мы в Ситимобил DWH строим».
🛴 Николай Рядчиков Senior ML Specialist Самокат «Прогнозирование времени доставки заказа».
⚠️ Регистрация для бесплатного участия еще открыта!

https://citymobil.timepad.ru/event/1813232/?fbclid=IwAR2pM7LSVkrddhHjysJ3VGaapgw1tTe9eGq3u93j4DO2aAqQxyKmo6E0eW8
🕸Глубокое обучение для кибербезопасности: кейс Adobe
Команда Security Intelligence в Adobe применяет методы DL, чтобы лучше обнаруживать обфускацию команд, повышая общую безопасность. Обфускация команд - это популярный метод кибербезопасности, который намеренно затрудняет чтение части стандартного кода, продолжая выполнять его. Традиционные методы обнаружения вредоносных программ обычно основаны на правилах и не быстро адаптируются к новым типам вредоносных программ и обфускации. Обнаружить их поможет глубокое обучение, которое создает динамические ML-модели, способные адаптироваться к новым типам информации.
Есть несколько способов обнаружить обфускацию. Например, методы статистики, применяемой к соотношениям известных/неизвестных слов (токенов) и простым языковым моделям, основанным на n-граммах. Но при достаточном количестве данных глубокое обучение превосходит традиционные методы обработки естественного языка в классических основных задачах. Поэтому глубокое обучение может предоставить надежное решение для обнаружения запутанных команд, обфускация которых может принимать множество различных форм. Deep Learning позволяет создавать более динамичные модели, которые лучше работают с ранее невидимыми данными, чем традиционные методы ML.
Команда разработчиков Adobe представляет собой глубокую сверточную нейросеть (CNN) на уровне символов. Тестирование этой DL-модели на несбалансированном датасете показало отличные результаты, близкие к 100% успешности.
Исходный код и подробное объяснение доступны здесь: https://pypi.org/project/obfuscation-detection/
Forwarded from Big Data Science [RU]
🙌🏻Простое комбо для дата-аналитика: 3 фреймворка Python + электронные таблицы
На практике любой аналитик данных работает с датасетами не только в Jupyter Notebook или Google Colab. Иногда приходится табличные файлы открывать Excel и Google Spreadsheets. Поэтому есть потребность в объединении Python-скриптов со встроенными инструментами электронных таблиц. Для этого пригодятся следующие фреймворки:
XLWings – Python-пакет, который фактически предустановлен на Anaconda и чаще всего используется для автоматизации процессов Excel. Он похож на Openpyxl, но более надежен и удобен. Например, можно написать собственную UDF-функцию на Python для парсинга веб-страниц, машинного обучения или решения NLP-задач для данных в электронной таблице. https://www.xlwings.org/tutorials/
Mito – интерфейс электронных таблиц для Python, электронная таблица внутри Jupyter, которая генерирует код. Mito поддерживает основные функции Python, как: слияние, соединение, pivot, фильтрация, сортировка, визуализация, добавление столбцов, использование формул электронных таблиц и пр. https://docs.trymito.io/
Openpyxl – Python-пакеты для чтения из Excel и записи в него. Например, можно подключиться к локальному файлу Excel и получить доступ к определенной ячейке или их группе, извлекая данные в DataFrame. А после обработки можно отправить данные обратно в Excel-файл. На практике этот пакет чаще всего применяется в финансовой сфере, т.к. обработка больших наборов данных в Excel происходит слишком медленно. https://foss.heptapod.net/openpyxl/openpyxl
Forwarded from Big Data Science [RU]
🦋Самоконтролируемое обратимое обучение с подкреплением: новый подход от Google AI
Обучение с подкреплением (RL) отлично решает задачи с нуля, но обучить агента понимать обратимость его действий не так-то просто. Например, роботам следует избегать действий, которые могут привести к их поломке. Чтобы оценить обратимость действия, нужны практические знания и понимание физики среды, в которой существует RL-агент. Поэтому исследователи Google AI на конференции NeurIPS 2021 представляем новый способ аппроксимации обратимости действий RL-агентов. Этот подход добавляет отдельный компонент оценки обратимости к самоконтролируемой процедуре обучения с подкреплением на немаркированных данных, собранных агентами. Модель можно обучать онлайн (совместно с агентом RL) или офлайн (из набора данных взаимодействий), чтобы направлять политику RL в сторону обратимого поведения. Так можно значительно повысить производительность агентов RL при выполнении нескольких задач.
Компонент обратимости, добавленный к процедуре RL, извлекается из взаимодействий и представляет собой модель, которую можно обучать отдельно от самого агента. Обучение модели проходит самостоятельно и не требует разметки данных с указанием обратимости действий: модель сама узнает о том, какие типы действий имеют тенденцию быть обратимыми, из контекста обучающих данных. При этом учитывается вероятность возникновения событий и приоритет как прокси-мера истинной обратимости, которую можно узнать из набора данных взаимодействий, даже без вознаграждения RL-агента.
Этот метод позволяет агентам RL прогнозировать обратимость действия путем обучения моделированию временного порядка случайно выбранных событий траектории, что приводит к лучшему исследованию и контролю. Метод является самоконтролируемым, т.е. не требует предварительных знаний об обратимости действий, что подходит для различных сред.
https://ai.googleblog.com/2021/11/self-supervised-reversibility-aware.html
Недавно увидел новость, которая заинтересовала меня своей идей про "космос для всех" на канале @digitaldiner. Речь идет о событии AstroAccess и их новой цели сделать космическое пространство доступным для всех, даже для людей с ограниченными возможностями. Телеграм вообще превратился в собрание крайне любопытных микроблогов с удобной доставкой контента. Рекомендую https://t.me/digitaldiner, как прикольный научно-популярный новостной канал про диджитал и технологии! :)
Совсем скоро 18 и 19 ноября будет проходить Матемаркетинг-2021.
А пока у вас есть отличная возможность посмотреть мой доклад с Матемаркетинг-2020.
⚠️ Из доклада «Как архитектура DWH влияет на Data Quality» вы узнаете как совместными усилиями дата-инженеров, аналитиков и менеджеров построить DWH так, чтобы покрыть различные требования по Data Quality.
https://www.youtube.com/watch?v=9amh_xHBk2Q
С 19 по 21 ноября (то есть в конце этой недели!) я буду участвовать в качестве эксперта на девятом хакатоне по искусственному интеллекту в городе Челябинске. И помогать командам зарабатывать деньги! :)

⚠️ В это раз будет два кейса на выбор! Общий призовой фонд составит 800 000 рублей!

🔥 Регистрация открыта до 17 ноября (остался один день!) так что спешите принять участие. Ссылка на регистрацию: https://hacks-ai.ru/hakaton/chelyabinsk

📈 Кейс №1 от Росаккредитации: ИИ на страже качества российских товаров
Участникам предстоит создать модель машинного обучения для верификации сведений, содержащихся в документах об оценке соответствия продукции (товаров).

🛬 Кейс №2 от АО «ЧРЗ Полет»: Цифровой авиадиспетчер
От участников требуется создать систему автоматического видеосопровождения воздушного судна при заходе на посадку с применением элементов ИИ, определяющих отклонения самолета от заданной траектории курса и глиссады по одному каналу видеоизображения.
🚨Я продолжаю серию митапов про Data Science в геосервисах, логистике, приложениях Smart City и т.д.

📆 23 ноября в 18:30 МСК состоится 4-я онлайн встреча Citymobil Data Meetup!

Если перед вами стоят задачи, которые связаны с городской мобильностью, системой маршрутизации доставки, думаю, вам будет интересно послушать:

🚕 Михаил Дьячков Data Science Team Lead Ситимобил «Поисковые подсказки в Ситимобил: от эвристики до машинного обучения»
Расскажет о том, как работает алгоритм формирования поисковых подсказок конечных пунктов назначения в приложении Ситимобил.

🚗 Алексей Венжега Head of Analytics Wheely «Системный подход к разработке целевых метрик улучшения качества шоферской базы»

🚙 Алексей Кудинов Product Manager Почтатех «Как мы разбираемся с адресными данными, которым больше 100 лет»
Расскажет о сложностях, с которыми сталкивались при внедрении автоматической маршрутизации: о несуществующих адресах, неизвестных геокординатах и проблемы определения габаритов отправлений для оптимального заполнения транспорта.

После докладов спикеры ответят на вопросы.
Регистрация для бесплатного участия по ссылке
https://citymobil.timepad.ru/event/1838143/
⚠️ Если вы вдруг забыли, то хочу напомнить, что сегодня 23 ноября в 18:30 МСК состоится 4-я онлайн встреча Citymobil Data Meetup!

❗️Сегодня будут интересные доклады!

🚕 Михаил Дьячков Data Science Team Lead Ситимобил «Поисковые подсказки в Ситимобил: от эвристики до машинного обучения»

🚗 Алексей Венжега Head of Analytics Wheely «Системный подход к разработке целевых метрик улучшения качества шоферской базы»

🚙 Алексей Кудинов Product Manager Почтатех «Как мы разбираемся с адресными данными, которым больше 100 лет»

После докладов будет сессия Q&A.

Регистрация для бесплатного участия:

https://citymobil.timepad.ru/event/1838143/
Где найти обучающие датасеты для рекомендательных систем. ТОП-15 популярных датасетов для формирования рекомендаций и задач ранжирования

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

ЧТО ТАКОЕ РЕКОМЕНДАТЕЛЬНЫЕ СИСТЕМЫ И КАК ОНИ РАБОТАЮТ: ОСНОВНЫЕ МЕТОДЫ И МЕТРИКИ
Каждый из нас сталкивался с рекомендательными системами, например, крупный интернет-магазин нам советует посмотреть гардины и карнизы, если ранее вы заходили в каталог штор. Онлайн-кинотеатр подбирает зрителям фильмы и сериалы с учетом ранее просмотренных, а сервисы текстовых блогов присылают подборки новых статей, которые с большой вероятностью будут интересны читателю. Все это – примеры рекомендательных систем, направленных на стимулирование пользовательского интереса к продуктам бизнеса, нужное для повышения лояльности клиентов и роста продаж. В общем случае ML-алгоритмы в рекомендательных системах ищут взаимосвязи между пользователями и продуктами, учитывая все наиболее полезные признаки из всего пространства фичей, которое можно сгенерировать из характеристики пользователей и продуктов, а также событиям взаимодействия между этими классами объектов: дата, время, тип и пр.

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

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

Контент-ориентированные метод состоит в том, что для каждого пользователя и каждого продукта создается свой «профиль», чтобы сопоставить пользователей с тем контентом, который им понравился или был куплен. Из характеристик пользователей и продуктов создаются 2 вектора: профиль пользователя и профиль продукта. То есть, мы используем знания не только о рейтингах, но и о пользователях, а также о продуктах. Далее определяется сходство между пользователями и продуктами с использованием мер косинусного сходства или индекса Жаккара. Продукт рекомендуется пользователю, при большом значении меры сходства с самим пользователем или с другими продуктами, просмотренными/купленными этим пользователем. Плюсы контент-ориентированных методов в изоляции данных конкретного пользователя от других.

На смену этим подходам пришли гибридные подходы, а затем их обобщили современные нейронные сети: Neural Collaborative Filtering, Deep Semantic Similarity Model и другие. Но общая идеи остается прежней: нужно по-прежнему иметь векторное представление о пользователи и о продукте, а затем на основе метрик близости ранжировать объекты.

Для оценки качества работы рекомендательной системы сегодня используются, безусловно, бизнес-метрики (CTR, средний чек, время нахождения в сервисе и т.д.). Но в явном виде их оптимизировать довольно трудно, поэтому при обучении моделей использует различные ML-метрики: RMSE (для матрицы рейтингов), Recall@n, Precision@n, MAP, NDCG и другие.

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

ДАТАСЕТЫ ДЛЯ ОБУЧЕНИЯ РЕКОМЕНДАТЕЛЬНЫХ СИСТЕМ
Современный DS-специалист редко сталкивается с недостатком обучающих датасетов. Например, для разработки рекомендательных систем можно найти набор данных, который напрямую предназначен для конкретного бизнес-кейса: онлайн-кинотеатр, интернет-магазин, текстовый блог или соцсети. Особенно хочется порекомендовать следующие датасеты:

1. MovieLens 25M Dataset – набор рейтинговых данных с веб-сайта MovieLens, который описывает 5-звездочные рейтинги и действия с произвольным тегированием по более 60 тысячам фильмов от 1,5 миллионов пользователем с 1995 по 2019 годы. MovieLens – это «семейство» датасэтов. Самый востребованный, разумеется, самый полный - 25M, но часто используют только часть записей, например, 1 миллион, или 100 тысяч. Все датасеты есть по этой ссылке. https://grouplens.org/datasets/movielens/
2. Netflix Prize - многовариантный датасет временных рядов, который использовался в конкурсе Netflix Prize с рейтингами примерно 100 миллионов фильмов. В наборе данных более 480000 пользователей, каждый из которых промаркирован уникальным целочисленным идентификатором. С помощью этого датасета можно предсказать недостающие записи в матрице рейтинга пользователей фильма. http://academictorrents.com/details/9b13183dc4d60676b773c9e2cd6de5e5542cee9a
3. Book-Crossing – датасет с рейтингами около 300 тысяч миллионов книг и обезличенными демографическими данными о более 250 тысячах их читателей. http://www2.informatik.uni-freiburg.de/~cziegler/BX/
4. Amazon Review Data – многомиллионный набор обзоров, рейтингов и метаданных продуктов (описание, категория, цена, бренд, характеристики, фото), а также данные о просмотре ссылок. Общее количество обзоров в этом наборе данных более 233 тысяч миллионов. https://nijianmo.github.io/amazon/index.html
5. Yahoo! Music User Ratings - коллекция Yahoo! Music о предпочтениях пользователей к разным музыкальным исполнителям. Датасет содержит более 10 миллионов оценок музыкальных исполнителей и подходит для проверки рекомендательных систем или алгоритмов колабративной фильтирации. Но, чтобы его скачать, нужно запрашивать разрешение на использование данных. https://webscope.sandbox.yahoo.com/catalog.php?datatype=r
6. LastFM – датасет содержит информацию о социальных сетях, тегах и прослушивании музыкальных исполнителей от 2 тысяч пользователей онлайн-музыки Last.fm. Это коллекция из 17 632 музыкальных исполнителей, которых слушали и отметили пользователи. https://files.grouplens.org/datasets/hetrec2011/
7. Social Network Influencer – датасет Peerindex, который включает стандартную задачу изучения парных предпочтений. Здесь каждая точка данных описывает двух человек и предварительно рассчитанные стандартизованные функции на основе активности в Twitter: объем взаимодействий, количество подписчиков и пр. для каждого человека. С помощью этого набора данных можно обучить ML-модель для прогнозирования веса блогера, т.е. его влияния. https://www.kaggle.com/c/predict-who-is-more-influential-in-a-social-network/data
8. Million Song Dataset – набор звуковых фич и метаданных для миллиона современных музыкальных треков от Echo Nest. http://millionsongdataset.com/
9. Free Music Archive (FMA) – набор легальных аудиозаписей для задач анализа музыки - просмотр, поиск и организация коллекций. Архив содержит 917 ГиБ и 343 дня аудио под лицензией Creative Commons из 1 06 574 треков от 16 341 исполнителя и 14 854 альбомов по 161 жанру.
FMA предоставляет полноразмерный высококачественный звук, предварительно вычисленные фичи, а также метаданные трека и пользователя, теги и произвольный текст, например, биографии исполнителей. https://github.com/mdeff/fma
10. Steam Video Games - набор данных о действиях пользователей и их характеристиках от самого популярного хаба видеоигр, PC Gaming Steam https://www.kaggle.com/tamber/steam-video-games/data
11. Ta-Feng – набор данных о покупках от ACM RecSys по 23+ тысяч товаров, от продуктов питания и канцелярских товаров до мебели. Датасет включает данные о более 800 тысячах транзакций 32+ тысяч пользователей за 4 месяца, с ноября 2000 г. по февраль 2001 г. http://www.bigdatalab.ac.cn/benchmark/bm/dd?data=Ta-Feng
12. Beiren – данные о реальных покупках более миллиона человек в супермаркетах Китая за период с 2012 по 2013 год. Датасет содержит сведения о 49 290 149 транзакций по 220 828 товарам. http://www.bigdatalab.ac.cn/benchmark/bm/dd?data=Beiren
13. MQ - набор датасетов для обучения ранжированию. Данные обучения состоят из списков элементов с некоторым частичным порядком, указанным между элементами в каждом списке. Этот порядок обычно создается путем выставления числовой или порядковой оценки или бинарного суждения (например, «релевантный» или «нерелевантный») для каждого пункта. http://www.bigdatalab.ac.cn/benchmark/bm/Domain?domain=Learning%20to%20Rank
14. Jester - Анонимные данные о рейтингах шуток (анекдотов) из системы Jester. https://goldberg.berkeley.edu/jester-data/
15. REKKO CHALLENGE – набор данных от онлайн-кинотеатра OKKO для конкурса по разработке рекомендательных систем 2019 года. Сюда входит несколько CSV-датасетов по транзакциям, пользовательским оценкам и отметкам, а также JSON-файлы с метаданными о фильмах и пользователях. https://boosters.pro/championship/rekko_challenge/data


Также можно поискать датасеты в открытых источниках, например:

Papers With Code https://paperswithcode.com/task/recommendation-systems - тут есть бенчмарки для рекомендательных систем и датасеты к ним, в частности, датасет от WeChat и другие специфичные наборы данных.
Google Search Dataset https://datasetsearch.research.google.com/search?query=recomendation
Kaggle https://www.kaggle.com/datasets?search=recomendation


РЕЗЮМЕ
Наиболее полный список обновляемых датасетов нашелся в Google Search Dataset – более 100 наборов данных из множества источников и практически для любого бизнес-приложения. В заключение отмечу, что обучающий датасет с большим количеством данных и важен для разработки рекомендательной системы, постановка задачи прежде всего идет от бизнеса.

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



Источники

https://towardsdatascience.com/recommendation-systems-models-and-evaluation-84944a84fb8e
https://analyticsindiamag.com/a-guide-to-building-hybrid-recommendation-systems-for-beginners/

https://chernobrovov.ru/articles/datasets-for-recomendation-systems.html
🗓 3 и 4 декабря пройдет Главная конференция Яндекса для разработчиков YaTalks.

Будет 5 больших треков по направлениям бэкенд, фронтенд, мобильная разработка, машинное обучение, управление продуктом. О жизни в IT будет отдельный Lifestyle-треке. Более 80 экспертов из ведущих российских и мировых компаний уже готовят истории о том, что происходит на переднем крае технологий. Будет происходить обсуждение больших и малых трендов IT-индустрии и научного мира, а также самых значимых событий в IT за 2021 год. Также будут проходить дебаты и дискуссии, кулинарный мастер-класс, IT-стендап, пайка и другие активности.

‼️В субботу 4 декабря в 15:05 МСК я буду участвовать в дебатах мероприятия YaTalks.

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

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

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

Рефери в этом непростом вопросе выступит Сергей Гаврилов.

А что думаете вы на этот счет?)

💥 Успейте зарегистрироваться) https://yatalks.yandex.ru/
Forwarded from Big Data Science job
🚕Ситимобил — IT-компания, которая движется в сторону Urban mobility. Мы не просто создаем сервис заказа такси, а разрабатываем, поддерживаем и улучшаем современную платформу, решающую проблему передвижения по городу.

Senior Data Scientist (В отдел Incentives Водительские и Клиентские мотивации).
Эффективные мотивационные механики способствуют росту бизнеса, улучшают клиентский опыт и увеличивают заработок водителей. Задача нашей команды – создание и развитие мотивационных программ, повышение их эффективности и автоматизация их использования.

🤑 Вилка: от 250 т.р. до 500 т.р.

Задачи, которые предстоит решить за
3 месяца: Улучшить качество текущего решения для предсказания бизнес-эффекта от мотивационной механики Гарантированный доход для водителей
6 месяцев: Создать модели для автоматизации подбора оптимальных настроек мотивационных механик
12 месяцев: Улучшить ключевые метрики бизнеса за счет создания в команде системы эффективного распределения бюджета на мотивационные механики

Мы ждем, что ты:
Имеешь высшее техническое или экономическое образование;
Знаешь SQL (мы работаем с MySQL, Exasol и ClickHouse);
Разбираешься и имеешь опыт в создании ML-моделей
Хорошо программируешь на Python (обработка данных, построение модели, деплой в продакшен)
Хорошо понимаешь математическую статистику и методологию проведения экспериментов;
Умеешь строить информативные отчеты в Tableau или в схожих средствах визуализации;
Готов погрузиться во весь цикл продуктовой разработки (исследование, постановка задачи на разработку, формирование и проверка гипотез);
Кайфуешь от амбициозных задач и смело экспериментируешь;

Будет круто, если ты:
Умеешь проводить АБ-тесты;
Имел опыт работы в компаниях, работающих по модели маркетплейс;
Знаком с институциональной экономикой и теорией стимулов;

Помимо lденег, мы предлагаем:
📃Официальное оформление и зарплата на уровне топовых IT-компаний России.
🏢Классный офис рядом с метро «Сокол», в котором есть все: от теннисных столов до бесплатного пива, которое течет по пятницам из барного крана 🍾
🅿️Бесплатную парковку для сотрудников
🖥Любые мелочи, которые могут понадобиться тебе для работы: техника, лицензии на программы и т.п.
🩺Расширенную медицинскую страховку с первого рабочего дня
☕️Чай, кофе, снеки и фрукты в течение дня;
🎡Возможность уходить в отпуск или работать удаленно, когда это нужно, или брать day-off;
👨‍🎓Заботу о твоем развитии: мы готовы компенсировать практически любую профессиональную литературу, курсы, обучение и участие в профессиональных конференциях и семинарах;
🚕Ну и, разумеется, мы предоставляем корпоративную скидку на такси :)

❤️Хотите, чтобы ваше резюме рассмотрели быстро? Присылайте в телегу ➡️ @chernobrovov (Алексей Чернобровов)

https://hh.ru/vacancy/49874571