Больше информации по резюме будет доступно после регистрации

Зарегистрироваться
Был более двух недель назад

Мужчина

Москва, м. Партизанская, не готов к переезду, готов к редким командировкам

Data Scientist / Аналитик данных

Специализации:
  • BI-аналитик, аналитик данных
  • Аналитик
  • Дата-сайентист

Тип занятости: полная занятость, частичная занятость, стажировка

Опыт работы 26 лет 5 месяцев

Январь 2022по настоящее время
4 года 5 месяцев
Российский государственный социальный университет

Москва, rgsu.net

Образовательные учреждения... Показать еще

Ведущий программист
1. Полнофункциональная поддержка процессов репликации данных в СУБД Oracle, PostgreSQL, MS SQL. Сложные SQL запросы. 2. Администрирование, настройка ETL-алгоритмов в среде Apache NiFi (Groovy, NiFi Expression Language, JOLT, etc) 3. Сбор, подготовка, обработка текстовых данных. (pandas, numpy, re, etc) 4. Разработка парсеров сайтов (Web scraping), телеграмм-каналов, групп VK и т.п. (BeautifulSoup, Selenium, Pyrogram, Telethon, VK API, Twitter-API) 5. Тематическое моделирование, классификация текстовых корпусов (нейронные сети - BERTopic, RuBERT) 6. Работа с БД Neo4j (Cypher). 7. Описание реального бизнес-кейса, разработанного и внедренного мною, который представляет из себя одну из подсистем в работе комплексной информационной системы (далее - "ИС_part1"). Постановка задачи: автоматизация процесса сборки, обработки текстовых данных и получения из него интересующих метрик для аналитических групп. Исходные данные: - xlsx-выгрузки из внешнего источника данных Brand Analytics, сформированные по определенному набору ключевых слов. - Список тематических TG-каналов/групп (как открытых, так и приватных) в количестве 100+ - Список открытых тематических VK-групп в количестве 50+ Верхнеуровневое описание "ИС_part1": подсистема представляет из себя автоматически запускаемый из планировщика задач программный модуль с базовым технологическим стеком на языке Python и выгрузкой предобработанного текстового корпуса с требуемыми метриками в служебную TG-группу. Участие оператора не требуется. Этапность работы "ИС_part1" с указанием используемых методологических и программных решений: - Выгрузка вложений с xlsx-фалами, автоматически формируемыми внешней ИС Brand Analytics, из почтового ящика. Предварительная очистка данных (логотипы и проч.), приведение форматов, экспорт в pandas. Предусмотрена возможность многократного подключения ИС к imap-серверу с целью гарантированного получения необходимого количества электронных писем. - Сбор данных посредством доступа к API TG по списку TG-каналов/групп в указанном диапазоне дат. Используются асинхронные (asyncio) методы парсинга посредством библиотек pyrogram, telethon на базе протокола MTProto. Устойчивость работы этапа обеспечивается автоматическим подключением в случае необходимости (напр. одна из наиболее частых причин - FloodWaitError) любого количества авторизованных в API TG пользовательских аккаунтов (читай SIM карт). Предусмотрен механизм минимизации количества запросов к API TG посредством локального хранения вновь полученных (ранее неизвестных нам) идентификаторов (id) каналов и их access_hash. Реализован алгоритм обновления исходного плана парсинга с учетом выявленных недоступных/несуществующих/удаленных каналов/групп. Экспорт полученных данных в pandas. - Сбор данных посредством доступа к API VK по списку VK-каналов/групп в указанном диапазоне дат. Устойчивость работы этапа обеспечивается предварительной проверкой полученного тестового контента при использовании заданного пользовательского API-ключа (aka VK token). - Импорт локально хранимых служебных словарей с набором ключевых слов для последующего алгоритмического Features engineering-а (генерации бинарных метрик вхождения подстроки в строку). - Объединение полученных датафреймов из разных источников в единый, экспорт данных во временное сессионное файловое хранилище для обеспечения сохранности полученных данных в случае непредвиденных обстоятельств (действующие глобальные ограничения доступа к API TG заставляют очень бережно относиться к имеющимся ресурсам). - Препроцессинг текстового корпуса для дальнейшей кластеризации: а) удаления тегов, стоп-слов, спецсимволов, однобуквенных слов, мультиповторных букв и т.п. Технологический стек - регулярные выражения, lambda-функции в pandas, разные строкововые методы. б) лемматизация текстового корпуса посредством библиотеки natasha. - Препроцессинг текстового корпуса для дальнейшей классификации: практически тоже самое как и для кластеризации, за исключением лемматизации и ряда других способов обработки текста. - Выделение из дальнейшей обработки коротких (до установленной длины) сообщений в отдельный датафрейм. - Выделение из дальнейшей обработки дубликатов строк посредством применения методики снижения размерности хэш-функций aka LSH(Locality-Sensitive Hashing) в задаче ANN(Approximate Nearest Neighbor). Определение для каждого найденного кандидата в дубликаты вероятностного сходства по косинусному расстоянию между полученными векторными n-граммами. - Кластеризация (тематическое моделирование) предобработанного текстового корпуса посредством библиотеки BERTopic с использованием алгоритмов transformers, TF-IDF мер оценки, понижением размерностей UMAP и алгоритмом HDBSCAN. - Бинарная классификация предобработанного корпуса посредством BERT-подобной нейронной сети (в частности, ruBert-base). Технологический стек - PyTorch, HuggingFace Datasets, Transformers. Определение вероятности принадлежности к требуемому классу. P.S. Методологию дообучения нейронной сети (fine-tuning) под мою конкретную задачу оставляем за рамками данного описания (это отдельная задача). FYI - Accuracy на тестовом датасете составляет 90+%. - Финальная фильтрация данных по комплексному показателю вероятности принадлежности к определенному классу и других бинарных признаках наличия ключевых слов в строках. - Экспорт данных в xlsx-формат под требования Функционального Заказчика. Автоматическая загрузка файлов в служебную TG-группу. - Отправка детального удобочитаемого LOG-файла работы "ИС_part1" по электронной почте списку лиц. Технологический стек - logging, smtplib. Предусмотрена возможность многократного подключения к smtp-серверу с целью гарантированной доставки электронных писем. - Удаление временно хранимых файлов. - Конфиденциальность некоторых используемых переменных (служебные токены, пароли и т.п.) обеспечивается механизмом их раздельного хранения в конфигурационных файлах с использованием модуля configparser.
Сентябрь 2021по настоящее время
4 года 9 месяцев
MIPT (МФТИ) Deep Learning School

Москва, www.dlschool.org

Годовой курс.
------------------------- 1 СЕМЕСТР (CV) -------------------------------- 1. PyTorch, CycleGan, Aiogram, StyleTransfer, Webhook Telegram Bot с функциями переноса стилей. Дипломный проект. https://github.com/Belousov-Aleksandr/Telegram_NST_Bot 2. PyTorch. Классификация персонажей Simpsons (f1-scor 0.997). Соревнование на Kaggle. https://github.com/Belousov-Aleksandr/PyTorch/blob/main/Simpson.ipynb 3. PyTorch. Autoencoders (AE, VariationalAE, ConditionalVAE) https://github.com/Belousov-Aleksandr/PyTorch/blob/main/autoencoders.ipynb 4. PyTorch. Сегментация объектов. SegNet, UNet, UNet-2 with custom loss-function (Dice, Focal, Lovasz) https://github.com/Belousov-Aleksandr/PyTorch/blob/main/segmentation.ipynb 5. PyTorch. DSGAN. Генерация лиц людей. https://github.com/Belousov-Aleksandr/PyTorch/blob/main/gan_final.ipynb 6. Sklearn, CatBoost, XGBoost, Imblearn, Kaggle. https://github.com/Belousov-Aleksandr/PyTorch/blob/main/sklearn_catboost_imblearn.ipynb Предсказание оттока пользователей. Соревнование на Kaggle. ------------------------ 2 СЕМЕСТР (NLP) -------------------------------- 1. Базовый уровень NLP (токенизация, лемматизация, ранжирование, эмбединги, классификация на RNN (LSTM), CNN). - https://github.com/Belousov-Aleksandr/PyTorch/blob/main/%5Bhomework%5Dsimple_embeddings.ipynb - https://github.com/Belousov-Aleksandr/PyTorch/blob/main/%5Bhomework%5Dembeddings.ipynb - https://github.com/Belousov-Aleksandr/PyTorch/blob/main/%5Bhomework%5Dclassification.ipynb 2. Средний уровень NLP скрытые цепи Маркова, алгоритм Виттерби, Part-Of-Speech Tagger, LstmTagger, NLTK, Rnnmorph - https://github.com/Belousov-Aleksandr/PyTorch/blob/main/%5Bhomework%5Dlanguage_model.ipynb Mashine_Translatation (bidirectional Seq2Seq with concat_Attention) - https://github.com/Belousov-Aleksandr/PyTorch/blob/main/NeuralMachineTranslation.ipynb 3. Продвинутый уровень NLP GPT2 (Sequence Classification on Twitter Dataset) - https://github.com/Belousov-Aleksandr/PyTorch/blob/main/%5Bhomework_part1%5DGPT.ipynb BERT (Sentence Sentiment Classification) - https://github.com/Belousov-Aleksandr/PyTorch/blob/main/%5Bhomework_part2%5DBERT_for_text_classification.ipynb Summarization () - https://github.com/Belousov-Aleksandr/PyTorch/blob/main/%5Bhomework%5Dsummarization.ipynb Spoken Language Processing (классификация возраста по голосу) - https://github.com/Belousov-Aleksandr/PyTorch/blob/main/%5Bhomework%5DAudio.ipynb
Август 2020Сентябрь 2021
1 год 2 месяца

Москва, www.skillbox.ru

Образовательные учреждения... Показать еще

Двухлетний курс "Data Scientist" (завершен).
Курс Skillbox завершен. Защищены 2 диплома. Приобретенные навыки: - построение классических конструкций Python, начиная от импорта данных, условия-циклы-функции, базовые коллекции, классы, исключения и заканчивая применением методов ООП на языках Python и R - операции над многомерными массивами, матрицами, векторами, датафреймами (numpy, pandas, tidyverse) - разведочный анализ данных EDA - методы статистического анализа исследуемых данных (корреляция Пирсона, оценка Чеддока, AB-тестирование, доверительные интервалы, критерии Уилкоксона, t-Стьюдента и т.п.) - визуализация данных (matplotlib, seaborn, plotly, ggplot2) - создание аналитических панелей (Dashboard) - основы работы с БД (mySQL, PostgreSQL, MongoDB, JSON) с изучением языка SQL - основы математики и теории вероятности для DataScientist (интерполирование, апроксимирование, полиномное/дифференциальное исчисления, SymPy, etc...) - построение обучающих регрессионных, классификационных и кластерных моделей в рамках Machine Learning (sklearn) - применение дополнительных техник ML (Boosting, Stacking, PCA, SVD, t-SNE) - оценка качества ML-моделей различными метриками (roc-auc, f1, cross-val, etc...) - Neural Network (сверточные нейросети, семантическая сегментация, детектирование объектов (компьютерное зрение), генеративные нейронные сети, NLP, RNN, LSTM, DQN, завершен дипломный проект по курсу) - Рекомендательные системы (surprise, SVD, GridSearchCV, etc...) Мой технологический стек: Python, R, Scikit-Learn, TensorFlow, PyTorch, SQL, pandas, scipy, etc. Мои работы: 1. Аналитический отчет обучающего workflow он-лайн Университета, который в дальнейшем поможет продюсерам образовательных программ эффективно выстраивать стратегию по модернизированию и улучшению образовательных курсов. Выявление проблемных модулей, расчет нагрузки на преподавателей и т.п. (pandas, numpy, matplotlib, seaborn) https://github.com/Belousov-Aleksandr/Coursework_analytics_1 2. Аналитический отчет для HR-отдела. На основании проведенной аналитики составлены рекомендации для отдела кадров по стратегии набора персонала (SQL, pandas) https://github.com/Belousov-Aleksandr/Coursework_analytics_2 3. Анализ данных и прогноз оттока пользователей (выявление людей, которые продлят контракт с интернет-провайдером и которые не продлят). Применяются различные методы машинного обучения и прогнозирования. (sklearn, xgboost, pandas, numpy, matplotlib) https://github.com/Belousov-Aleksandr/Coursework_ML_Beginner и версия_2 с pipeline и более высокой точностью https://github.com/Belousov-Aleksandr/PyTorch/blob/main/baseline.ipynb 4. Дипломный проект «Data Scientist. Аналитика. Средний уровень». Подготовка исследования для компании «Мегафон» и анализ того, как зависит (и зависит ли) оценка, которую ставит клиент в опросе, от технических показателей, которые были собраны.(AB-тестирование, scipy, numpy, pandas, seaborn, matplotlib) https://github.com/Belousov-Aleksandr/Data-Scientist_Analytics_Intermediate-level 5. Нейронные сети (Neural Network) 5.0 Дипломная работа. Распознавание эмоций. https://github.com/Belousov-Aleksandr/Emotion-Recognition_Neural_Network В данном разделе представлена дипломная работа курса «Data Scientist. ML. Средний уровень (нейронные сети)», которая предполагает разработку pipeline для распознавания эмоций как по статическим изображениям, так и в режиме real-time Video. Акцент в работе был сделан на две предобученные ML-модели (VGGFace2 и BiT-M r50x1). Применяя различные методы оптимизации, такие как transfer learning, finetuning, augmentation, preprocessing, сегментация по bounding_box, dataset_balancing, multi_face/no_face cleaning, модели были обучены на оптимизированных датасетах с полными фотографиями и на датасетах с обрезанными по bounding_box лицами. Проведены эксперименты с valence-arousal разложением эмоций, когда модель обучается не на самих эмоциях, а на их разложении по этим двум компонентам. Создан скрипт, который работает с веб-камерой и выводит на экран текущую эмоцию. Разработан код генерации и отправки csv-посылки на Kaggle для проверки точности модели по Privat Score. (https://www.kaggle.com/c/skillbox-computer-vision-project) В качестве инструментов для детектирования лиц при проведении разведочного анализа применялись алгоритмы: - MTCNN (Multi-task Cascaded CNN). Наиболее длительный, но в то же время, наиболее качественный алгоритм детектирования лица на фото по обязательным 7 точкам (углы глаз, углы губ, кончик носа) и необрезанному овалу лица, который включает в себя три подсети: сеть предложений (P-Net), сеть уточнения (R-Net) и сеть вывода (O-Net). - SSD (Single Shot MultiBox Detector aka 'DNN Face Detector from OpenCV'). - HAAR Cascade. Также этот метод называется методом Виолы-Джонса и является одним из лучших по соотношению показателей эффективность распознавания/скорость работы, обладая при этом низкой вероятностью ложного обнаружения лица. Дополнительно были исследованы предобученные модели Inception_ResNet_V2, Ganeval-cifar10-convnet, Inception_V3, EfficientNet_B7, Mobilenet_v3, применялись разные типы оптимизаторов (напр.SGD, RMSProp), варьировались входящие размеры изображений, количество эпох и т.п. с целью достижения наивысшего Privte Scor, который в итоге составил 0.54. 5.1 Сверточные нейросети. Определение пола, возраста, национальности по фото. https://github.com/Belousov-Aleksandr/Neural_Network/blob/main/homework_5.ipynb 5.2 Компьютерное зрение. Семантическая сегментация. Определение силуэтов людей на фото. https://github.com/Belousov-Aleksandr/Neural_Network/blob/main/homework_6_7.ipynb 6. Разные базовые техники https://github.com/Belousov-Aleksandr/EDA_matplotlib_other К своим сильным сторонам могу отнести исключительную нацеленность и мотивированность на достижение значимого результата в рамках выбранной профессии/должности. При этом здравая доля встроенного перфекционизма позволяет найти максимально результативное и красивое решение. Рассматриваю стажировку, проектную деятельность, работу в офисе, удаленную работу.
Январь 2000Апрель 2021
21 год 4 месяца
Предыдущие места работы...
специалист/руководитель
Моя трудовая деятельность насчитывает более 20 лет в сфере IT-технологий по направлениям: внедрение/сопровождение/эксплуатация разноплановых IT-решений в крупном и среднем бизнесе (банковский/логистический/телекоммуникационный(ISP)/website development секторы, с использованием методологий PMI, ITIL Foundation, MOF; системное администрирование. Серьезный руководящий опыт.

Навыки

Уровни владения навыками
Python
Machine Learning
Data Scientist
Data Analysis
Neural Network
Data Science

Опыт вождения

Имеется собственный автомобиль

Права категории B

Обо мне

Я - начинающий Data Scientist. При этом мой опыт IT-сфере составляет более 20 лет. Мне интересно направление Data Scientist, потому что есть возможность анализа больших данных, на основе которых можно сделать прогноз в зависимости от поставленной задачи. Качественно исполняю предложенные кейсы, не боюсь новых и сложных задач.

Высшее образование

1994
Высшее образование
Радиоэлектроника и лазерная техника, Оптико-электронные приборы и системы

Знание языков

Русский — Родной

Английский — B1 — Средний

Повышение квалификации, курсы

2022
МФТИ. Deep Learning School
Neural Network, Compuer Vision, Natural Language Processing
2021
Online-университет Skillbox
Neural Network, Data Scientist, Machine Learning

Тесты, экзамены

2021
Skillbox
Skillbox, Диплом - Аналитика. Средний уровень.
2021
Skillbox
Skillbox, Диплом - Нейронные сети. распознавание эмоций.

Гражданство, время в пути до работы

Гражданство: Россия

Разрешение на работу: Россия

Желательное время в пути до работы: Не более часа