Алексей Чернобровов
193 subscribers
150 photos
18 videos
133 links
Для личных сообщений: @chernobrovov
Почта: a.chernobrovov@gmail.com
Download Telegram
Сегодня я расскажу о Cloud-провайдере Русоникс, точнее об одном из ее продуктов, который может пригодится для DS-задач: виртуальный дата-центр – облачный сервис по модели «Инфраструктура как услуга» (IaaS). https://www.rusonyx.ru/iaas/
Как и у прочих облачных провайдеров, стоимость использования зависит от потребляемых ресурсов и первичных настроек, стартуя от 1000 рублей в месяц на самой простой конфигурации (ОС Ubuntu на 1 виртуальный ЦП с 1ГБ памяти, 1 ГБ HDD и 5-ю IP-адресами). Максимальная стоимость около 87 тысяч в месяц для ОС Windows Server 2016, 24 виртуальных ЦП, 128 ГБ памяти, хранилище почти 4 терабайта SSD и 32 IP-адреса. Каждый дополнительный диск увеличивает цену и неудивительно, что SSD стоит дороже HDD. Также можно выбрать дополнительные опции: резервное копирование, VPN/L2 на Яндекс.Cloud и балансировщик нагрузки. Защита от DDoS-атак предоставляется по умолчанию.
По сравнению с Яндекс.Cloud работает быстрее для многих задач. В отношении Data Science стоит выделить тесты по распознаванию речи, детекции лиц и машинному обучению. Например, в одноядерном режиме Русоникс лидирует в детекции лиц, обрабатывая 5.26 изображений в секунду против 4.72 в Яндекс.Cloud. Распознавание речи выполняется на том же уровне, что и в облаке Яндекса (20.7 слов в секунду), а вот в ML-тестах результат несколько хуже: Русоникс обрабатывает 17.5 изображений в секунду против 20.7 в Яндекс.Cloud.
Впрочем, в многоядерном режиме Русоникс намного опережает конкурента, в секунду обрабатывая 9.27 изображений против 5.53 и почти 40 слов вместо 28.4. В ML-кейсах облако Русоникс также лидирует: 33.8 изображений в секунду, тогда как Яндекс.Cloud справляется только с 23.5.
Сравнение цен с другими конкурентами (Amazon Web Services, Microsoft Azure, Google Cloud Platform) не делает Русоникс самым дешевым вариантом, однако стоимость месячного использования сравнима с Yandex.Cloud (2 281, 69 руб/мес. для виртуальной машины с ОС Linux, 2-х ядерным ЦП, 4 Гб RAM и SSD 30 GB). А если вам нужны сервера с ОС Windows, например, для 1C и других специфических приложений, условия Русоникс для той же конфигурации виртуальной машины будут самыми выгодными (3 180, 25 руб/мес).
Точная стоимость использования облака Русоникс зависит от потребляемых ресурсов: расходы считаются каждые сутки. Оптимизировать затраты можно, настроив ресурсопотребление, прямо в разделе «Отчеты». Ежемесячный баланс определяется ежедневными расходами.
Виртуальный сервер Русоникс поддерживает 2 технологии виртуализации: контейнеры и гипервизор. Контейнеры работают чуть быстрее и обеспечивают гибкое масштабирование ресурсов. Однако, здесь есть ограничения на виды операционных систем: возможно выбрать только из представленных вариантов. Во втором случае можно загружать собственные образы операционных систем, хотя изменение ресурсов виртуальной машины может потребовать ее перезапуска.
С точки зрения пользователя стоит отметить достаточно удобный веб-интерфейс со всеми нужными в работе функциями: от создания виртуального сервера до управления пользователями и дэшборда с отчетами. В частности, создать свой сервер можно всего за 4 шага, настроив все необходимые параметры: конфигурацию, образ, диски и сети.
В заключение отмечу бесплатную голосовую поддержку 24/7 выделенным менеджером, безлимитный трафик и фиксированные цены в рублях, что особенно важно для российских проектов.
Протестировать сервис Русоникс можно бесплатно по запросу, а при переходе от другого Cloud-провайдера первый внесенный платеж удвоится.
Завершая серию постов про новый курс SkillFactory «Профессия Data Scientist», сегодня разберем модули, посвященные нейросетям, основам глубокого обучения и профориентации в Data Science.
Сразу хочется отметить некоторый когнитивный диссонанс, который возникает от несоответствия названия и фактического содержания разделов курса. Например, Юнит 8 называется «Введение в нейронные сети», а начинается с основ Linux. Далее он включает 2 модуля: «DL-1. Введение в Deep Learning» и «DL-2. Практика с основными фреймворками Deep Learning». Что именно представляют собой искусственные нейронные сети, почему они активно применяются в Data Science и как работают, разбирается в 1-м модуле. Здесь же даются основы Deep Learning и несколько практических заданий. При том, что отдельные практические задания теперь более сложные и представляют собой мини-проекты, проверка теоретических знаний, наоборот, стала более примитивной – правильные ответы на тесты могут быть подобраны простым перебором.
Во 2-м DL-модуле идет знакомство с популярными фреймворками Keras, TensorFlow и PyTorch, включая углубленное погружение в градиентные методы и тензорные вычисления. Причем выполнять практические задания уже рекомендуется в онлайн-сервисе Google Colab, а не локальном Jupyter Notebook. Поскольку темы уже довольно сложные, обучающий контент представлен не только текстом и картинками, но и содержит много видеороликов. В качестве практического задания решается задача классификации модной одежды.
С прикладной точки зрения наиболее интересен «Юнит 9. Профориентация в Data Science», который включает существующие сегодня профили DS-специалистов: аналитик данных, дата-инженер и Data Scientist. Здесь же рассматривается разделение по наиболее популярным трекам: компьютерное зрение (Computer Vision, CV), обработка естественного языка (NLP) и ML-инженерия.
Структура каждого трека содержит введение, назначение, интервью с практикующим экспертом, практические кейсы из реальной деятельности и более подробный разбор некоторых специфических для этой области задач. Например, в ML-инженерии разбираются особенности развертывания моделей и их бизнес-приложения, а в CV – эксперименты с GAN-сетями.
Также есть разделы, посвященные отличиям ML/DL-исследователей от инженеров. Задания итогового проекта зависят от предпочтений студента, который должен сперва определиться с направлением и карьерной целью. Это вполне коррелирует с практической направленностью курса, ориентированного на подготовку Data Scientist’а, готового начать работу на уровне junior.

Подводя итог рассмотренному курсу в целом, делаю следующие выводы:
• несмотря на отмеченные недостатки, в целом структура и содержание разделов курса покрывают теоретический и практический минимум, требуемый от DS-джуна;
• материал изложен достаточно просто и понятно с наглядными картинками и видео, особенно в сложных темах по ML и DL;
• примитивность тестов на знание теории нивелируется практическими задачами и проектами, которые предполагают реальные вычисления и разработку кода;
• помимо материалов из непосредственной DS (математика, статистика, ML и DL), в курс также включены инженерные темы, такие как ликбез по Linux, тонкости развертывания моделей в проде и пр.
• минутки юмора в представлении практических заданий и интервью с живыми специалистами не дают заскучать;
• карьерный блок и тренажеры собеседований напоминают о конечной цели обучения (работа в качестве Data Scientist’а) и заставляют более точно формулировать свои требования к идеальной профессиональной деятельности с учетом собственных возможностей, способностей и текущей ситуации на рынке;
• образовательная траектория похожа на магистратуру в ВУЗе, начиная с общих основ обработки данных и заканчивая профильной специализацией в Data Science.

Таким образом, можно сказать, что курс стоит своих денег. При условии полного освоения всех модулей и самостоятельного выполнения каждого практического задания, на выходе из нулевого слушателя даже с гуманитарным бэкграундом получится сильный junior, готовый к решению поставленных задач под руководством опытных коллег.
30 октября прошёл открытый разговор «Цифровой четверг X5 Group». Вместе с экспертами рынка поговорили о том, как и зачем становиться Data-Driven компанией и почему иногда кейсы работы с данными не приносят реальной пользы бизнесу. А также размышляли, могут ли алгоритмы заменить людей или за цифрами все же нужен человек? Эфир доступен по ссылке

https://www.youtube.com/watch?v=ipbmoIXcKKs&ab_ch
Как получать качественные данные?

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

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

Матемаркетинг - крупнейшая конференция по продуктовой и маркетинговой аналитике, монетизации и решениям, основанным на данных, в России и СНГ.

- - - -
Матемаркетинг пройдет 18-19 ноября в Москве, а также будет доступен в онлайне.
↪️ Программа и все подробности доступны на нашем сайте.
- - - -

А пока делимся докладом Jordi Roura, InfoTrust Барселона, с прошлогоднего Матемаркетинга, из которого вы сможете подробнее узнать о том, как обеспечивать качество данных в целом и на конкретных примерах.
С 15 по 17 октября я буду учавствовать в качестве эксперта на хакатоне по искусственному интеллекту в Перми 😌

Площадкой хакатона станет Технопарк в сфере высоких технологий Morion Digital-один из крупных частных технопарков России.

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

🎗Результаты хакатона будут использованы в работе платформы интеллектуального волонтёрства,что позволит повысить эффективность всей благотворительной отрасли в России.

⚡️ Регистрация открыта до 13 октября
https://hacks-ai.ru/hakaton/perm
Итак, вы закончили ВУЗ или онлайн-курсы по направлению 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-исследователям, которым нужно подтянуть математику, вспомнить некоторые темы или углубить свои знания теории оптимизации.