Русский
Русский
English
Статистика
Реклама

Мисис

Транслируем искусство через робототехнику

08.04.2021 22:07:23 | Автор: admin

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

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

Big Fucking Printer

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

  • Разработать систему разметки поля

  • Придумать маркер для нанесения краски на огромную площадь

  • Переделать всю электронику робота, не кататься же на бееедуине, верно? Никто ведь так не делает, правда?

  • Разработать стек навигации для робота

  • Написать пару*строк кода

Ну что, строим?

Конечно же нет, ведь нужно выбрать из чего, как и сколько это будет стоить. Для решения вопроса с навигацией мы потратили не мало времени и ни одно копьё было сломано.SLAMотвергли наши программисты-питонисты-(дата сатанисты). Инерциальный датчик отвергли программисты-электронщики. А вот езда по тросу понравилась всем. Еще были такие варианты: расставить лазеры, расставить метки, использовать энкодеры на колёсах, лазерная рулетка,GPSи много всего другого. Размер нашего холста: 40x50 метров. Для определения текущего положения робота с точность до 1 см использовалась связка энкодера и инфракрасного датчика расстояния. При помощи ввёртышей и талрепов натягивается трос каждые 5 метров. На роботе устанавливается каретка с энкодером, ее отклонение фиксирует датчик расстояния. Трос проходит через энкодер и при смещении робота относительно троса, смещается и каретка. Конструкция хоть и простая, но на таких расстояниях крайне эффективная.

Допустим мы знаем наше положение на поле, но чем и как мы будем рисовать? А почему бы не использовать готовые решения? Итак, мы обзавелись обычным аэрографом, компрессором с ресивером и огромной направляющей из алюминия длинной в 5 метров. Каждые 10 сантиметров робот останавливается, аэрограф совершает поступательное движение по рельсе и наносит часть изображения. Для приведения аэрографа в движение к нему прикрутили мотор с шестерней, а на рельсе установили зубчатую рейку, бережно отфрезерованную из обрезков фанеры.

Маркер в действии

Теперь-то строим?

Почти. Моделируем. СвязкаSolidWorksиFusion360, запихнутая вGazebo это отдельный способ извращений, но команда состоит из творческих людей с различными взглядами на жизнь. Так или иначе, лучший файлообменник телеграмм соединяет сердца инженеров. Модель робота была кропотливо разработана вCADсистемах (а с нашим бюджетом мы не могли позволить купить лишних запчастей) и протестирована в симуляторе, ведь пруды чистые, а не черновые.

Итого, детали в пути, и мы приступаем к проектированию плат и написанию кода. Робототехников хлебом не корми, дай на питончике, да на плюсах покодить,а вот держи. Собственно мозгами робота сталиRaspberryPi,STM32-Discoveryи несколько плат с камушками серииSTM32F1. Их связь осуществляется черезUART. Для питания сего изобретения были выбраны литиевые аккумуляторы в сборке 12s8p, переваренные из батареиTeslaи два 12-вольтовых гелиевых аккумулятора. В качестве движителей общим решением были избраны моторыNema-23 с планетарными редукторами 1:4. Дешёвые драйверы двигателейTB6600 расплавились при первом включении, пришлось срочно искать замену DM860H.

Когда все детали приехали, а мы уже порядком подустали, стало ясно, что времени осталось мало, скоро весна, а пруд превратится в шугу. Реализовать задуманное планировалось ещё до новогодних праздников, но сессия в университете вмешалась и поломала весь тайм-менеджмент, а еще оставила без стипендии. Правильно, зачем же робототехнику материальные блага, достаточно духовной пищи.

Полевые испытания

Тем временем, работа по конструированию, сборке и программированию подходила к концу.Для испытаний оставалось зарядить аккумуляторы, смазать втулки, залить код и озаботится выбором краски. Первые испытания было решено провести в хоккейной коробке.

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

Первые испытания боевого робота показали, что гуашь не видна даже в такой большой концентрации на снегу после распыления, а гелиевые аккумуляторы не обеспечивали необходимый ток для работы компрессора. Из плюсов: мы провели калибровку датчика расстояния (ошибка не более 5см на 5м).

Фото с первых тестов

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

Финальный эксперимент?

Чтобы управа района одобрила покраску Чистых Прудов, нам было необходимо продемонстрировать работоспособность робота. Итак, в последний раз мы отправляемся в хоккейную коробку. Что по изменениям? К краскопульту добавили шторки, чтобы краска не летела во все стороны, а также не намерзала на винтовой передаче. Добавили систему подачи краски в ресивер краскопульта. В качестве краски использовали колер, разбавленный спиртом. Как вы понимаете, спирта было потрачено много. Гелиевые аккумуляторы дополнились сборкой 4s8pиз тех же аккумуляторовTesla, которыеPanasonic.

Рисовать решили логотипYouTube-канала Техникум, они ездили с нами на испытания, поэтому мы захотели их отблагодарить.Окраска квадрата 5x5м заняла около 30 минут. На удивление, первый видимый результат получился удовлетворительным.

Результат

Ало, пустите на пруд?

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

Мы, робот и Грант Гастин

P.S.

Сейчас мы продолжаем совершенствовать робота. Первоочередная задача перенос стека навигации на aruco метки, чтобы робота можно было использовать в помещениях. 17 апреля в университете науки и технологий НИТУ "МИСиС" пройдёт день открытых дверей. Мы будем рисовать логотип университета в центральном лобби, фотоотчёт будет в инсте.

Подробнее..

Топ-наука. Медийная десятка мая отчаяние аквариумных рыбок, голоса психических расстройств и много раз COVID

16.06.2020 16:14:27 | Автор: admin
И вновь мы рассказываем о самых медийных исследованиях российских университетских учёных, получивших наибольший резонанс в СМИ. Сегодня у нас ТОП-10 самых нашумевших научных разработок мая.

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

Кто же сумел преодолеть планку читательского интереса и оказаться в горячей десятке?


Сергей Бобылев/ТАСС

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

42 перепечатки



9 место у исследователей Физтеха. Возглавляемый МФТИ российский консорциум разработал симулятор гидроразрыва пласта Кибер ГРП, способный, по утверждению разработчиков, заменить существующие западные аналоги и повысить эффективность добычи нефти. В состав научного консорциума под лидерством МФТИ входят Инжиниринговый центр МФТИ, Сколтех, Институт гидродинамики им. М. А. Лаврентьева и Санкт-Петербургский политехнический университет.

45 перепечаток



8 место осталось за исследователями нашего родного НИТУ МИСиС, что особенно радует авторов этой заметки. Наши ученые разработали керамический материал с самой высокой температурой плавления среди всех известных на данный момент соединений более 4 тыс. С. Материал перспективен для использования в наиболее теплонагруженных узлах летательных аппаратов носовых обтекателях, воздушно-реактивных двигателях и острых передних кромках крыльев, работающих при температурах выше 2000 С.

46 перепечаток


Фото: Depositphotos

На 7 месте специалисты из московского научно-практического центра дерматологии и кометологии, РНИМУ имени Пирогова и РУДН, которые изучили патологии кожи, связанные с коронавирусной инфекцией. Было выявлено семь видов высыпаний, которые могут быть связаны с патогеном, в некоторых случаях это первый сигнал заражения SARS-CoV-2.

50 перепечаток



Наша десятка подходит к экватору, и 6 место достается ученым Новосибирского государственного технического университета (НГТУ), которые совместно с коллегами из педагогического университета и фониатрического центра запатентовали технологию, позволяющую диагностировать психоэмоциональные расстройства по голосу. По словам разработчиков, теории о связи психоэмоциональных расстройств были еще у советских ученых, но они, как правило, опирались на эмпирические наблюдения, в то время как новосибирские специалисты доказали это с помощью математической модели.

58 перепечаток


Доля и структура зеленой инфраструктуры в 15 крупнейших городах России. Изображение предоставлено пресс-службой географического факультета МГУ

На 5 месте ученые из Московского государственного университета (МГУ), которые предложили более детальный подход для оценки зеленых зон для городов России. Новая система учитывает три основных аспекта: устойчивость зеленой зоны, доступность для граждан, комфортность среды, говорится в статье, опубликованной в журнале "Вестник Отделения наук о Земле РАН". Чтобы всесторонне охарактеризовать зеленые насаждения города как связанную систему, ученые предложили 13 показателей, объединенных в три группы, с учетом доступности, формирования комфортной городской среды и устойчивости.

59 перепечаток


Фото: spbu.ru

4 место у ученых Санкт-Петербургского госуниверситета, которые в камчатском вулкане обнаружили два новых минерала, возникших из вулканических газов, арсмирандит и леманнит. Ранее считалось, что схожие по структуре и составу минералы можно получить лишь в лабораторных условиях. По словам исследователей, фундаментальное открытие поможет в разработке методик синтеза новых материалов, а также в изучении переноса металлов в геологических системах.

66 перепечаток


Nicolle R. Fuller/NSF/IceCub

И вот, наконец, пьедестал почета.

Бронза у российских астрофизиков из ФИАНа, МФТИ и ИЯИ РАН, которые впервые установили источник мельчайших космических частиц нейтрино. Оказалось, что нейтрино высоких энергий рождаются вблизи черных дыр в центрах далеких активных галактик. Результаты исследования опубликованы в журнале Astrophysical Journal. Ученые сравнили данные, полученные на нейтринном телескопе IceCube в Антарктиде, с радиоастрономическими наблюдениями квазаров активных ядер далеких галактик, и нашли связь между рождением космических нейтрино и вспышками квазаров.

70 перепечаток


Рыбки зебраданио. CC BY-SA 2.0 / Oregon State University/Lynn Ketchum /

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

105 перепечаток


РИА Новости / Илья Питалев

Наконец, какое же исследование оказалось самым тиражируемым в мае?

Никаких неожиданностей. Больше всего перепечаток и первое место у новости про специалистов проектного офиса по математическому моделированию Уфимского авиационного университета (УГАТУ) и Башкирского медуниверситета (БГМУ), которые разработали прогноз пика заболеваемости COVID-19 в регионах. Согласно модели, пик эпидемии в России прошел 8-9 мая, когда ежесуточно регистрировали по 10,5 тысячи новых пациентов с коронавирусом. Башкирские исследователи нашли несколько общих для разных регионов закономерностей по сценарию эпидемии. Так, вначале прирост числа инфицированных оставался плавным из-за своевременного введения ограничительных мер, а вспышки впоследствии происходили из-за массового скопления людей в отдельных местах. После этого распространение COVID-19 перешло в стадию экспоненциального роста и к середине мая достигло пика.

144 публикации

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

Не болейте!
Подробнее..

Как победить букмекеров с помощью ИИ опыт студентов магистратуры Наука о данных

06.05.2021 14:05:14 | Автор: admin

Привет, Хабр! Сегодня хотим представить вам проект студентов магистратуры Наука о данных НИТУ МИСиС и Zavtra.Online (подразделении SkillFactory по работе с университетами) созданный на внутреннем хакатоне, который прошел в марте. Команда поделится решением выбранной задачи предсказание победителя-бойца турнира UFC. Задача отличалась от прочих тем, что после написания модели из неё можно сделать целый продукт, оформив модель в приложение, готовое к использованию конечными пользователями, например теми, кто захочет обыграть букмекеров.


Гипотеза и её проверка

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

  • физические параметры бойца (его рост, вес, размах рук и ног);

  • возраст бойца (всё-таки со временем физически мы слабеем);

  • разница в опыте соперников (вряд ли какой-то новичок без опыта одолеет Хабиба);

  • характер поведения бойца на ринге (чаще обороняется или чаще нападает);

  • географические параметры (вдруг наш боец не успел адаптироваться к другому часовому поясу).

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

Принцип разделения прост: мы случайным образом разбиваем свои данные примерно на 70 %, используемых для обучения модели, и 30 % для тестирования модели. Однако есть нюанс... Для предсказания результата боя UFC важно, чтобы тренировочная выборка была раньше тестовой во временном периоде.

Иначе модель будет смотреть в будущее, и на реальных данных модель будет работать некорректно. Этот нюанс мы учли и разбили выборку не случайным образом, а в зависимости от временных периодов.

Разработка проекта

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

Примерно 90 % времени мы потратили на обработку данных и остальные 10 % на обучение модели. Пайплайн подготовки данных верхнеуровнево выглядел следующим образом: мы очистили датасет от пропусков и выбросов и обогатили его новыми признаками.

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

Сбор данных и статистика

Ментор предоставил нам спарсенные данные по истории Боёв UFC и статистику по бойцам. Данные и Jupyter Notebook с бейзлайном модели можно найти по этой ссылке на Kaggle. В связи с тем что сроки у нас были ограничены, мы решили не заниматься дополнительным парсингом фичей, а уделить большое внимание обработке имеющихся данных и генерации новых признаков.

Также в процессе обработки мы собрали немного занимательной статистики по боям: например, на этом бублике можно увидеть распределение боев по категориям, из которой можно увидеть, что мужских боёв гораздо больше, чем женских (увы).

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

Предобработка данных

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

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

Вторым шагом был сбор фичей с кумулятивной статистикой по всем предыдущим боям для каждого из соперников и генерации из получившейся накопленной суммы новых важных признаков, таких как серия побед, сумма побед нокаутами, сумма чистых побед, точность ударов, среднее время боя, KO/TKO и т. д. Это перечень важных показателей по уже проведённым боям, которые обычно публикуются на сайте UFC до начала боя. Затем мы посчитали разницу по физическим характеристикам бойцов, удалили коррелированные между собой величины и законсервировали данные в pkl-файл.

Случайный лес, стекинг, бэггинг и итоговая модель

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

Изначально мы не учли наличие временного ряда, и наша модель тренировалась на данных из будущего перемешанного с прошлым, то есть мы взяли временной ряд и случайным образом поделили данные на тренировочные и тестовые (80/20). Тренировочные для тренировки модели, тестовые для проверки правильности уже тренированной модели.

Процент точности прогноза победы варьировался от 75 до 82%! Но какая разница, если обучение было неправильным?.. Модель не должна смотреть в будущее, как это было у нас. Решить эту проблему удалось достаточно просто: мы вернули даты для нашего датасета и поделили на тренировочные и тестовые по датам: данные до 2018 года взяли за тренировочные, данные после 2018 года за тестовые, и вуаля, точность упала в среднем на 5 %, однако теперь мы в ней хотя бы уверены.

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

Посмотреть на модель можно на GitHub.

Для того чтобы модель предсказала победителя на новых данных, нужно эти данные обработать таким же образом, как мы это делали в нашем ноутбуке (Jupyter Notebook) DeepOverfitting-DataPreparing, после этого просто подать эти строчки данных для двух бойцов в predict функцию нашей модели и получить предсказание, либо 0, либо 1, 0 победил 2 боец, 1 победил первый боец.

Итоги

Самое главное мы все выявили свои слабые и сильные стороны, поняли, какие пробелы в понимании работы с временными рядами нам нужно заполнить, и научились распределять нагрузку в команде. После всего проделанного нами пути мы решили, что не остановимся на достигнутом и продолжим развивать наш продукт.

Поэтому мы наметили следующий план:

  1. Улучшим точность предсказаний путем более кропотливой настройки модели.

  2. Проверим нашу текущую модель на предстоящих боях.

  3. Попробуем применить нейронные сети и глубокое обучение.

  4. Разработаем приложение, которое будет в удобном виде показывать, сколько и куда ставить.

  5. Станем кем-то кроме букмекера, кто заработает на ставках. И, конечно, будем писать на Хабре про дальнейшее развитие проекта. Букмекеры, берегитесь, мы идём за вами.

Состав команды работавшей над проектов:

  • Евгения Шикина (г. Видное)

  • Оксана Евсеева (г. Барселона)

  • Максим Щиколодков (г. Москва)

  • Михаил Стриженов (г. Москва)

  • Лев Неганов (г. Москва)

  • Кирилл Плотников (г. Екатеринбург)

Узнать больше про магистратуру можно на сайтеdata.misis.ruи вTelegram канале.

Ну и конечно не магистратурой единой! Если вы хотите узнать больше про data science, машинное и глубокое обучение заглядывайте к нам на соответствующий курсы, будет непросто, но увлекательно.

Узнайте, как прокачаться и в других специальностях и навыках или освоить их с нуля:

Другие профессии и курсы
Подробнее..

Как собрать датасет за неделю опыт студентов магистратуры Наука о данных

24.12.2020 14:22:40 | Автор: admin
Привет, Хабр! Сегодня хотим представить вам некоммерческий открытый датасет, собранный командой студентов магистратуры Наука о данных НИТУ МИСиС и Zavtra.Online (подразделении SkillFactory по работе с вузами) в рамках первого учебного Дататона. Мероприятие проходило как один из форматов командной практики. Данная работа заняла первое место из 18 команд.

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

TLTR: Ближе к концу статьи вы найдёте информативные графики, карты и ссылки.




Немного про сам Дататон


Программа магистратуры Наука о данных НИТУ МИСиС и Zavtra.Online рассчитана на два года т.е четыре семестра и раз в семестр для студентов будет проводиться хакатон, делая обучение больше ориентированным на решение практических задач. Первый хакатон был посвящен сбору датасета, поэтому и назвали его соответственно Дататон.

Всего в Дататоне приняло участие 90 студентов. Перед ними поставили задачу собрать датасет, который может использоваться в продукте, основанном на Data Science.

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

Оценивать команды позвали менторов практикующих специалистов по Data Science высокого уровня из таких компаний как: Align Technology, Intellivision, Wrike, Мерлин АИ, Лаборатория Касперского, Auriga, Huawei, SkillFactory.

Начало работы над датасетом


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

Основная работа по сбору и обработке была проделана за 5 дней, остальное время до публикации мы исправляли недостатки, незначительно обогащали датасет и оптимизировали его структуру.

Фундаментальной идеей нашего датасета является гипотеза, что окрестности перспективных транспортно-пересадочных узлов Москвы (далее ТПУ) станут хорошими зонами для развития бизнеса. Что вообще представляет из себя концепция ТПУ?


Источник: stroi.mos.ru

Какие проблемы решает датасет?


Основная гипотеза тривиальна и лежит на поверхности. Больший интерес представляют уточняющие вопросы от потенциального предпринимателя, которые можно задать, основываясь на ней. Например:

  • Я хочу открыть новую торговую точку по адресу X, сколько прямых конкурентов будет вокруг?
  • В окрестностях какого из строящихся ТПУ будут самые благоприятные условия для развития торговой точки?
  • В каких условиях сейчас работают мои непосредственные конкуренты?
  • Будет ли моя торговая точка входить в зону охвата уже существующего или строящегося ТПУ?
  • Мои клиенты используют автомобили, где лучше разместиться, чтобы им было удобнее посещать мой магазин?

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

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

1. Описание источников


1.1 Источники


В датасете были использованы следующие данные с сайта Портал открытых данных правительства города Москвы:


Другие источники:


1.2 Структура датасета


Основу структуры данных составляют уникальные объекты торговли и услуг, каждому из которых соответствует набор метаданных, включающих в себя такие сведения, как:

  • Информация о ближайшем ТПУ.
  • Информация о районе размещения.
  • График работы и транспортная доступность.
  • Данные о стоимости коммерческой недвижимости в районе.
  • Данные о зоне охвата и размере объекта.

Часть данных представлена в виде словарей, что связано с вложенностью отдельных признаков. Например, ряд ТПУ представляет собой комплекс из отдельных объектов наземного и подземного транспорта, и рассматривать их по отдельности нелогично. Но при необходимости эти вложенные объекты легко могут быть извлечены, что мы и выполняем при визуализации объектов на карте.

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


Это пример не только объединения, но и неточности отдельных полей, о чем будет следующий раздел

1.3 Качество данных и проблемы при их сборе


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

  • Сведения по статусу и срокам сдачи отдельных ТПУ можно считать устаревшими.
  • Обнаружилась путаница в единичных случаях указаниях широты и долготы, из-за чего некоторые объекты убегали в другие страны.
  • Данные о пассажиропотоке опубликованы с неточностями в форматировании, отдельные записи явно сильно завышены. Яркий пример данные по пассажиропотоку на станции Авиамоторная. Цифра в 400 000 пассажиров в сутки кажется явно завышенной, впрочем, как и в ряде других случаев. Беглый поиск показал, что реальная цифра может быть в разы меньше. Исправить такие артефакты крайне сложно.
  • Данные о ценах на коммерческую недвижимость пришлось собирать в ручном режиме.


Пример спорных данных

2. Обработка данных


2.1 Данные об объектах


После предварительной оценки имеющихся в распоряжении первичных данных (а это были данные об объектах торговли, услуг и ТПУ на территории Москвы) мы поняли, что ключевым элементом нашего датасета будут уникальные объекты торговли и услуг, которые мы объединили в единый центральный датасет. Всего мы получили более 78 000 записей, для которых помимо уникального ID и названия имеются сведения о:

  • Времени работы.
  • Типе объекта.
  • Принадлежности к сетевым объектам.
  • Адресе и координатах расположения.
  • Административной принадлежности.

2.2 Данные об административном делении


Эту информацию, в том числе географические и демографические параметры, мы обнаружили на Википедии в относительно актуальном состоянии на начало 2020 года. Мы автоматизировали процесс выгрузки сведений путём написания собственной функции для парсинга html-страниц. Незначительными трудностями, с которыми мы столкнулись, стали:

  • Использование специальных символов для сносок.
  • Необходимость приведения всех данных к общим единицам измерения.

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

2.3 Данные о зонах охвата


Зоны охвата являются не объективной оценкой, а лишь одной из теоретических методик оценки эффективности того или иного объекта торговли. Мы обнаружили методику оценки, которая разделяет объекты на 4 группы. В нашем случае достаточно было ввести лишь 3 из них маленькие, средние и большие. Разделение мы осуществляли путем анализа типов и названий объектов. Например, приставка Гипер- с большой долей вероятности соответствует большому объекту. Исходя из размера мы определили зону, в радиусе которой торговый объект является привлекательным для клиентов.

2.4 Данные о ТПУ


В имеющемся датасете под ТПУ подразумевается любой транспортный объект, которых на территории Москвы более 250. Поэтому нам пришлось объединять их в комплексы, исходя из названий и расстояний между ними. Сведения об объектах включают в себя такие данные, как:

  • Административные данные и географическое расположение.
  • Типы транспорта.
  • Год сдачи и статус объекта (от проекта до завершения).
  • Ближашая станция.

В теории они легко объединяются в кластеры, но на практике обнаружился ТПУ Планерная, который рушил всю систему. Одна станция находится в районе метро Речной вокзал, а вторая за Химками. Расстояние между ними составляет около 6 км, и очевидно, что учитывать их как единый комплекс при расчёте транспортной доступности нельзя. Подобные отклонения вносят шум в данные и вынуждают создавать сложные алгоритмы обработки.

Каждый полученный комплекс центрирован относительно всех включенных объектов, при этом мы сохранили все данные об исходных ТПУ они хранятся внутри в виде словарей, где ключами выступают оригинальные ID ТПУ.

2.5 Данные о стоимости аренды и покупки коммерческой недвижимости


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

Поэтому мы не стали изобретать велосипед, а просто нашли наиболее удобный ресурс и вручную сохранили статистические сведения о стоимости продажи и аренды коммерческой недвижимости для торговых объектов, отдельно стоящих зданий и объектов общего назначения за 2020 год.

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

2.6 Данные о пассажиропотоке на станциях метро


Эта секция тоже оказалась достаточно проблемной, поскольку изначально идея найти такие сведения в актуальном виде показалась нереальной, а официальные ответы оказалось ждать очень долго (и не факт, что они были бы положительными). Долгое время эта задача оставалось нерешённой, и нам пришлось повторно рассматривать буквально каждую крупицу информации, даже явно устаревшей.

Иронично, что обнаруженная ошибка в старом источнике позволила обнаружить подходящие данные. После повторной проверки мы поняли, что в одном из источников использованы данные за 2019 год, при этом подпись содержит указание на 2016 год. Эта подпись и сбила нас при первой оценке. Актуальность подтвердилась наличием данных по построенным в 2019 году объектам метро.

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

2.7 Новые признаки и данные


Собрать числовые или строковые данные мало. Эти данные важно уметь трактовать и выделять на их основе новые параметры или свойства. Поскольку наша гипотеза строилась на принадлежности объекта к ближайшему ТПУ, мы написали алгоритм поиска ближайших объектов и для каждого уникального объекта сопоставили:

  • Параметры ближайшего ТПУ.
  • Расстояние до ТПУ.
  • Радиус охвата объекта.
  • Входит ли ТПУ в зону охвата?
  • К какому классу относится объект?


Небольшой кусок датасета с бинарными признаками

2.8 Итоговый датасет


В результате объединения мы получили датасет размерностью 44 столбца и 78086 строк. В формате Pandas он занимает около 25,9+ MB. Если разбить столбцы на тематические сегменты, то в нём содержатся данные о:

  • Объекте.
  • Близлежащем ТПУ и его составе.
  • Районе объекта.
  • Стоимости покупки и аренды площадей.

2.9 Корреляционная матрица




Что можно сказать по полученной корреляционной матрице?

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

Остальные взаимосвязи между параметрами не столь явные, и трудно сделать по ним однозначные выводы.

3. Немного визуализаций


3.1 Датасет на карте Москвы


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

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

Для большей наглядности на карте реализованы слои в виде административного деления по районам. В нашем случае за стандартное отображение мы приняли плотность объектов на каждый район города.


Пример отображения районов по плотности размещения объектов


Транспортная схема Москвы: здесь отображаются только ТПУ


Пример отображения с объектами в данной выборке всего 10000 объектов из более чем 78 000


Пример отображения объектов по выделенному адресу описание сформировано в виде HTML-кода

3.2 (Не)много графиков


Графики отличный инструмент для анализа. В качестве демонстрации мы подготовили ряд графиков, чтобы наглядно продемонстрировать статистику по наиболее интересным параметрам датасета.

Вот, например, 20 крупнейших торговых сетей Москвы:



А если посмотреть, какие типы объектов самые популярные?



По типам услуг всё не так интересно, зато понятно, сколько всего объектов каждого типа есть в городе.



Теперь чуть более интересные цифры количество объектов при ТПУ.



Руки чешутся посмотреть на самый верхний ТПУ Профсоюзная. Почему бы и да? На этом скриншоте размещаются больше 2000 объектов, для которых этот ТПУ ближайший.



Хорошо, как насчёт того, чтобы узнать, сколько из объектов в городе являются сетевыми? Получается красивый пирог с почти идеальной четвертью. Занятно. Пусть 1 и 0 вас не пугают, это как раз и есть пример бинарного признака, где 1 означает, что объект входит в какую-либо крупную сеть.



Раз уж мы решили строить топы, почему бы не узнать адрес, по которому располагается большее число объектов? Легко!



Найти его не так уж сложно. Список впечатляет:



И напоследок немного более сложной экономической статистики. Что если поделить все ТПУ на группы от проектируемых до уже сданных в эксплуатацию? Какое стандартное отклонение (сигма), в рублях, за аренду торговых площадей или, скажем, при приобретении отдельно стоящих зданий будет в этих группах?



Судя по графикам, разброс цен на аренду и покупку недвижимости около уже построенных ТПУ заметно больше, рынок недвижимости стабильнее в районах со строящимися или проектируемыми ТПУ. Это можно использовать для оценки эффективности инвестиций в недвижимость.

Представленные графики лишь малая часть потенциала датасета, который может быть расширен в дальнейшем.

4. Заключение


4.1 Варианты применения


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

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

  • Визуализация объектов и ТПУ по определённым критериям. Например: отобразить на карте новые объекты, которые будут сданы в 2022 году.
  • Анализ типов объектов и условий их работы. Например: составить статистику о графиках работы ближайших конкурентов и проанализировать результаты.
  • Проверка известных гипотез на имеющихся практических данных. Например: добавить в датасет известные данные по обороту торговой сети и сопоставить с данными по пассажиропотоку и пешей доступности.

4.2 Целевая аудитория


Датасет может быть интересен:

  • Девелоперам,
  • Инвесторам,
  • Бизнесу (торговля и услуги),
  • Риэлторам и консультантам,
  • Частным исследователям и урбанистам.

4.3 Достоинства и недостатки


Недостатки нашего датасета обусловлены объективными причинами многие информационные источники содержат неточные или неполные сведения, что невозможно нивелировать постобработкой. Часть сведений вообще невозможно найти в открытом доступе. Однако мы создали все условия, чтобы на практике данные можно было легко обновить или добавить новые.

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

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

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

  • Преобразования некоторых данных к бинарному представлению 1/0.
  • Приведения всех отсутствующих данных к единой форме NaN.
  • Создания служебных колонок, описывающих длину вложенных словарей.
  • Разбиения столбцов на логические секции и с детальными именами.
  • Опоры на источники. Все данные могут быть получены путём непосредственного доступа к первоисточнику.
  • Упрощения визуализации. Она организована удобными функциями, которые принимают на вход много служебных параметров и сводят отображение нужных данных к паре строк кода.

4.4 Вместо резюме


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

GitHub и сайт датасета.

Узнать больше про магистратуру можно на сайте data.misis.ru и в Telegram канале.

Участники команды Data SkyScrapers


Артем Филиппенко Тимлид / Программирование / Автор статьи
Юлия Компаниец Программирование / Алгоритмизация / Визуализация
Егор Петров Программирование / Парсинг / Поддержка репозитория
Вячеслав Кандыбин Парсинг / Поиск источников
Ильдар Габитов Координация / Анализ
Сергей Гильдт Помощь в составлении статьи

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



Ну и конечно не магистратурой единой! Хотите узнать больше про машинное и глубокое обучение заглядывайте к нам на соответствующий курс, будет непросто, но увлекательно. А промокод HABR поможет в стремлении освоить новое, добавив 10% к скидке на баннере.
image



Подробнее..

Нужно больше датасетов. Музыка, IT-скилы и котики

11.02.2021 18:04:31 | Автор: admin

Привет, Хабр! Совсем недавно мы писали про открытый датасет, собранный командой студентов магистратуры Наука о данных НИТУ МИСиС и Zavtra.Online (подразделение SkillFactory по работе с университетами) в рамках первого учебного Дататона. А сегодня представим вам целых 3 датасета от команд, которые также вышли в финал.

Все они разные: кто-то исследовал музыкальный рынок, кто-то рынок труда IT-специалистов, а кто-то и вовсе домашних кошек. Каждый из этих проектов актуален в своей сфере и может быть использован для того, чтобы что-то усовершенствовать в привычном ходе работы. Датасет с котиками, например, поможет судьям на выставках. Датасеты, которые необходимо было собрать студентам, должны были представлять собой MVP (таблица, json или структура каталогов), данные должны быть очищены и проанализированы. Посмотрим же, что у них получилось.



Датасет 1: Скользим по музыкальным волнам с Data Surfers


Состав команды:

  • Плотников Кирилл project manager, разработка, документация.
  • Тарасов Дмитрий разработка, сбор данных, документация.
  • Шадрин Ярослав разработка, сбор данных.
  • Мерзликин Артём product manager, презентация.
  • Колесниченко Ксения предварительный анализ данных.

В рамках участия в хакатоне участниками команды было предложено несколько различных интересных идей, но мы решили остановиться на сборе данных о российских музыкальных исполнителях и их лучших треках с ресурсов Spotify и MusicBrainz.

Spotify музыкальная платформа, пришедшая в Россию не так давно, но уже активно захватывающая популярность на рынке. Кроме того, с точки зрения анализа данных, Spotify предоставляет очень удобное API с возможностью запроса большого количества данных, в том числе их собственных метрик, например таких, как danceability показатель от 0 до 1, описывающий, насколько трек подходит для танцев.

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

Сбор данных об артистах


Мы собрали целую таблицу, содержащую 14363 уникальных записи о различных исполнителях. Чтобы в ней было удобно ориентироваться под спойлером описание полей таблицы.

Описание полей таблицы
artist имя артиста или название группы;
musicbrainz_id уникальный идентификатор артиста в музыкальной базе данных Musicbrainz;
spotify_id уникальный идентификатор артиста в стриминговом сервисе Spotify, если он там представлен;
type тип исполнителя, может принимать значения Person, Group, Other, Orchestra, Choir или Character;
followers количество подписчиков артиста на Spotify;
genres музыкальные жанры артиста;
popularity индекс популярности артиста на Spotify от 0 до 100, который рассчитывается на основе популярности всех треков артиста.


Пример записи

Поля artist, musicbrainz_id и type извлекаем из музыкальной базы данных Musicbrainz, так как там есть возможность получить список артистов, связанных с одной страной. Извлечь эти данные можно двумя способами:

  1. Постранично парсить раздел Artists на странице с информацией о России.
  2. Достать данные через API.
    Документация MusicBrainz API
    Документация MusicBrainz API Search
    Пример запроса GET на musicbrainz.org

В ходе работы выяснилось, что API MusicBrainz не совсем корректно отвечает на запрос с параметром Area:Russia, скрывая от нас тех исполнителей, у кого в поле Area указано, например, Izhevsk или Moskva. Поэтому данные с MusicBrainz были взяты парсером непосредственно с сайта. Ниже пример страницы, откуда парсились данные.


Полученные данные об артистах из Musicbrainz.

Остальные поля получаем в результате GET запросов к эндпоинту.При отправке запроса в значении параметра q указываем имя артиста, а в значении параметра type указываем artist.

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


Таблица содержит 44473 записи о самых популярных треках российских артистов, представленных в таблице выше. Под спойлером описание полей таблицы.

Описание полей таблицы
artist имя артиста или название группы;
artist_spotify_id уникальный идентификатор артиста в стриминговом сервисе Spotify (по нему можно будет джойнить таблицы, так как это spotify_id из таблицы с артистами);
name название трека;
spotify_id уникальный идентификатор трека в стриминговом сервисе Spotify;
duration_ms длительность трека в миллисекундах;
explicit содержит ли текст трека нецензурные выражения, может принимать значения true или false;
popularity индекс популярности трека на Spotify *;
album_type тип альбома, может принимать значения album, single или compilation;
album_name название альбома;
album_spotify_id уникальный идентификатор альбома в стриминговом сервисе Spotify;
release_date дата выхода альбома;
album_popularity индекс популярности альбома на Spotify.

Особенности аудио
key предполагаемая общая тональность трека, целые числа накладываются на нотацию звуковысотных классов, 0 = C, 1 = C/D, 2 = D и т.д.;
mode указывает модальность трека, мажор 1, минор 0;
time_signature предполагаемый общий тактовый размер композиции;
acousticness мера достоверности от 0,0 до 1,0 того, является ли трек акустическим;
danceability описывает, насколько трек подходит для танцев от 0,0 до 1,0;
energy представляет собой перцептивную меру интенсивности и активности от 0,0 до 1,0;
instrumentalness определяет, содержит ли трек вокал, принимает значения от 0,0 до 1.0;
liveness определяет присутствие аудитории при записи, принимает значения от 0,0 до 1,0;
loudness общая громкость трека в децибелах, типичный диапазон значений от -60 до 0 дБ;
speechiness определяет наличие произнесённых слов в треке, принимает значения от 0,0 до 1,0;
valence описывает музыкальную позитивность, передаваемую треком, принимает значения от 0,0 до 1,0;
tempo предполагаемый общий темп трека в ударах в минуту.

Подробно о каждом параметре можно прочитать здесь.


Пример записи

Поля name, spotify_id, duration_ms, explicit, popularity, album_type, album_name, album_spotify_id, release_date получаем с помощью GET запроса на https://api.spotify.com/v1//v1/artists/{id}/top-tracks , указывая в качестве значения параметра id Spotify ID артиста, который мы получили ранее, а в значении параметра market указываем RU. Документация.

Поле album_popularity можно получить, сделав GET запрос на https://api.spotify.com/v1/albums/{id}, указав album_spotify_id, полученный ранее, в качестве значения для параметра id. Документация.

В результате получаем данные о лучших треках артистов из Spotify. Теперь задача получить особенности аудио. Сделать это можно двумя способами:

  1. Для получения данных об одном треке нужно сделать GET-запрос на https://api.spotify.com/v1/audio-features/{id}, указав его Spotify ID как значение параметра id. Документация.
  2. Чтобы получить данные о нескольких треках сразу, следует отправить GET запрос на https://api.spotify.com/v1/audio-features, передавая Spotify ID этих треков через запятую как значение для параметра ids. Документация.

Все скрипты находятся в репозитории по этой ссылке.

После сбора данных мы провели предварительный анализ, визуализация которого представлена ниже.



Итоги


В результате у нас получилось собрать данные по 14363 артистам и 44473 трекам. Объединив данные из MusicBrainz и Spotify, мы получили наиболее полный на текущий момент набор данных о всех российских музыкальных исполнителях, представленных на платформе Spotify.

Такой датасет позволит создавать B2B и B2C продукты в музыкальной сфере. Например, системы рекомендаций промоутерам исполнителей, концерт которых можно организовать, или системы помощи молодым исполнителям в написании треков, которые с большей вероятностью станут популярными. Также при регулярном пополнении датасета свежими данными можно анализировать различные тенденции в музыкальной индустрии, такие как формирование и рост популярности определённых трендов в музыке, либо проводить анализ отдельных исполнителей. Сам датасет можно посмотреть на GitHub.

Датасет 2: Исследуем рынок вакансий и выявляем ключевые навыки с Ежу понятно


Состав команды:

  • Пшеничный Андрей сбор и обработка данных, написание аналитической записки о датасете.
  • Кондратёнок Павел Product Manager, сбор данных и описание его процесса, GitHub.
  • Щербакова Светлана сбор и обработка данных.
  • Евсеева Оксана подготовка итоговой презентации проекта.
  • Елфимова Анна Project Manager.

Для своего датасета мы выбрали идею сбора данных о вакансиях в России из сферы IT и Телеком с сайта hh.ru за октябрь 2020 года.

Сбор данных о скилах


Самым важным показателем для всех категорий пользователей являются ключевые навыки. Однако при их анализе у нас возникли трудности: эйчары при заполнении данных о вакансии выбирают ключевые навыки из списка, а также могут вносить их вручную, а следовательно, в наш датасет попало большое количество дублирующих навыков и некорректных навыков (например, мы столкнулись с названием ключевого навыка 0,4 Кb). Есть ещё одна трудность, которая доставила проблем при анализе получившегося датасета, только около половины вакансий содержат данные о заработной плате, но мы можем использовать средние показатели о заработной плате с другого ресурса (например, с ресурсов Мой круг или Хабр.Карьера).

Начали с получения данных и их глубинного анализа. Далее мы произвели выборку данных, то есть отобрали признаки (features или, иначе, предикторы) и объекты с учетом их релевантности для целей Data Mining, качества и технических ограничений (объема и типа).

Здесь нам помог анализ частоты упоминания навыков в тегах требуемых навыков в описании вакансии, какие характеристики вакансии влияют на предлагаемое вознаграждение. При этом было выявлено 8915 ключевых навыков. Ниже представлена диаграмма с 10 наиболее популярными ключевыми навыками и частотой их упоминания.


Наиболее часто встречающиеся ключевые навыки в вакансиях из сферы IT, Телеком

Данные получили с сайта hh.ru с помощью их API. Код для выгрузки данных можно найти тут. Вручную выбрали признаки, которые нам необходимы для датасета. Структуру и тип собираемых данных можно увидеть в описании документации к датасету.

После этих манипуляций мы получили Dataset размером 34 513 строк. Образец собранных данных вы можете увидеть ниже, а также найти по ссылке.


Образец собранных данных

Итоги


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

Датасет 3: Наслаждаемся многообразием котиков с Команда AA


Состав команды:

  • Евгений Иванов разработка веб-скрапера.
  • Сергей Гурылёв product manager, описание процесса разработки, GitHub.
  • Юлия Черганова подготовка презентации проекта, анализ данных.
  • Елена Терещенко подготовка данных, анализ данных.
  • Юрий Котеленко project manager, документация, презентация проекта.

Датасет, посвящённый котам? Да почему бы и нет, подумали мы. Наш котосет содержит образцы изображений, на которых сфотографированы кошки различных пород.

Сбор данных о котиках


Изначально для сбора данных мы выбрали сайт catfishes.ru, он обладает всеми нужными нам преимуществами: это свободный источник с простой структурой HTML и качественными изображениями. Несмотря на преимущества этого сайта, он имел существенный недостаток малое количество фотографий в целом (около 500 по всем породам) и малое количество изображений каждой породы. Поэтому мы выбрали другой сайт lapkins.ru.




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

Для сбора изображений с сайта нами был написан веб-скрапер. Сайт содержит страницу lapkins.ru/cat со списком всех пород. Сделав парсинг этой страницы, мы получили названия всех пород и ссылки на страницу каждой породы. Итеративно пройдя в цикле по каждой из пород, мы получили все изображения и сложили их в соответствующие папки. Код скрапера был реализован на Python с использованием следующих библиотек:

  • urllib: функции для работы с URL;
  • html: функции для обработки XML и HTML;
  • Shutil: функции высокого уровня для обработки файлов, групп файлов и папок;
  • OS: функции для работы с операционной системой.

Для работы с тегами мы использовали XPath.



Каталог Cats_lapkins содержит папки, названия которых соответствуют названиям пород кошек. Репозиторий содержит 64 каталога для каждой породы. Всего в датасете содержатся 2600 изображений. Все изображения представлены в формате .jpg. Формат названия файлов: например Абиссинская кошка 2.jpg, вначале идёт название породы, затем число порядковый номер образца.



Итоги


Такой датасет может, например, использоваться для обучения моделей, классифицирующих домашних кошек по породам. Собранные данные могут быть использованы для следующих целей: определение особенностей по уходу за котом, подбор подходящего рациона для кошек определённых пород, а также оптимизация первичной идентификации породы на выставках и при судействе. Также котосет может использоваться и бизнесом ветеринарными клиниками и производителями кормов. Сам котосет находится в свободном доступе на GitHub.

Послесловие


По итогам дататона наши студенты получили первый кейс в своё портфолио дата-сайентиста и обратную связь по работе от менторов из таких компаний, как Huawei, Лаборатория Касперского, Align Technology, Auriga, Intellivision, Wrike, Мерлин АИ. Дататон был полезен ещё и тем, что прокачал сразу и профильные хард- и софт-скилы, которые понадобятся будущим дата-сайентистам, когда они будут работать уже в реальных командах. Также это хорошая возможность для взаимного обмена знаниями, так как у каждого студента разный бэкграунд и, соответственно, свой взгляд на задачу и её возможное решение. Можно с уверенностью сказать, что без подобных практических работ, похожих на какие-то уже существующие бизнес-задачи, подготовка специалистов в современном мире просто немыслима.

Узнать больше про нашу магистратуру можно на сайте data.misis.ru и в Telegram канале.

Ну, и, конечно, не магистратурой единой! Хотите узнать больше про Data Science, машинное и глубокое обучение заглядывайте к нам на соответствующие курсы, будет непросто, но увлекательно. А промокод HABR поможет в стремлении освоить новое, добавив 10 % к скидке на баннере.



image



Подробнее..

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru