Олимпиадный тренинг и проектную работу объединили разработчики Яндекса на образовательной программе «Алгоритмы и анализ данных». Ее участниками стали 50 учеников 9 и 10 классов. Первые две недели школьники решали задачи, писали код, который проверяли автоматизированные системы, а на финишной прямой – разделились на 12 команд, чтобы за неделю решить практические кейсы.
«Олимпиадное программирование – это про то, как сделать код эффективным и написать программу быстро. Такой тренинг – процесс индивидуальный, задачи школьники сдавали через компьютер и с преподавателями контактировали не так много. Нам хотелось, чтобы дети вышли за эти рамки, попробовали себя в других сферах компьютерных наук, и мы предложили им поработать в командах над прикладными задачами Яндекса и других IT-компаний. У нас получилась полноценная профориентационная составляющая, школьники уже говорят, что проекты помогли им определиться с направлением будущей профессии», – рассказал руководитель программы Евгений Соколов.
Среди компаний, предоставивших кейсы, — Яндекс, М.Видео, Департамент информационных технологий Москвы, разработчик графических процессоров и систем-на-чипе Nvidia, компания современной розничной торговли Х5 Retail Group. Каждая из 12 команд получила свою задачу, а также ментора. Итоги, как и полагается, команды представили в формате презентации продукта. Эксперты и наставники программы выбрали три лучших проекта в трех номинациях. Знакомим вас с победителями.
Номинация «Лучшая демонстрация результатов». Победитель – проект «PoseML»
Команда: Иван Беспалов, Владислав Гусев, Родион Истомин, Денис Шабанов
Словосочетание «язык тела» может означать не только передачу мыслей, чувств и эмоций. Всем телом можно, например, набирать sms-сообщения. Представьте, что вы стоите под душем, вам приходит срочное сообщение и вместо того, чтобы быстрее хватать полотенце и вытирать руки, вы встаете в определенную позу, ваш мобильный ее считывает и отправляет соответствующее сообщение. Удобно? Такой сервис под названием «PoseML» разработали школьники.
Постановка задачи. Обработка поз человека в символы, понятные машинам.
Результат. На защите школьники представили модель, которая считывает позу с восьми точек – кисти, локти, плечи и бедра – и определяет номер позы, в которой вы стоите. Чтобы система считала одну букву, нужно сделать шесть конкретных кодов, то есть поз. Список букв и соответствующих им кодов можно найти в разработанном школьниками приложении. Есть в этом даже что-то шпионское :).
Изображение: слайд из презентации команды
Пользовательский интерфейс разработки состоит из камеры, которая фиксирует движения пользователя на экране, предыдущего кадра, отправленного на сервер приложением, и префикса текста, который вы уже написали. На сервере происходит приведение фотографий к одному разрешению, поиск координат опорных точек и распознавание поз. После данные отправляются в приложение, которое их визуализирует.
Что продемонстрировали. Чтобы закодировать букву под определенную позу человека, школьники обработали около 2 000 фотографий для обучения. На них нейросеть eldar (github.com/eldar) отмечала ключевые точки. Как работает вся система, проектная группа успешно продемонстрировала на защите. За что и получила главный приз в номинации «Лучшее демо».
Номинация «Самый сложный проект». Победитель – «Boogle Doc»
Команда: Эмир Зиганшин, Илья Латыпов, Андрей Хорохорин, Святослав Иванченко
Представьте, что вам необходимо совместно с коллегами написать текст. Или, например, вместе с одноклассниками законспектировать лекцию, сделать реферат или презентацию. Очевидно, что использовать съемные носители для таких задач неудобно, ведь с документом работает только один, файл нужно постоянно передавать друг другу. Лучшее решение ситуации – текстовые редакторы онлайн. Над созданием такого сервиса под названием «Boogle Doc» и работала проектная группа в «Сириусе».
Постановка задачи. Есть несколько браузеров, которые могут передавать друг другу данные. Необходимо при внесении правок в документ на одном браузере применять эти правки во всех других браузерах. В результате применения всех изменений документ должен получиться одинаковый на всех компьютерах.
Изображение: слайд из презентации команды
В чем сложность. Для заядлых пользователей систем совместной работы вместе работать в одном файле – обыденность. С технической точки зрения, конечно, сделать такую систему – нетривиальная задача. Во-первых, школьникам нужно было написать программу, которая сможет синхронно работать сразу на нескольких компьютерах, взаимодействующих друг с другом. Во-вторых, нужно было продумать, как избежать конфликта, когда несколько человек редактируют документ и одновременно вносят правки, которые должны сохраниться, а не сломать систему.
Результат. Школьники с задачей справились и на защите презентовали программу, которая в перспективе может стать офисным программным пакетом или, например, более функциональным и продвинутым аналогом существующих сервисов.
Номинация «Лучшее выступление». Победитель – «Обработка изображений с помощью нейросетей»
Команда: Марк Бушмакин, Хамза Кондрашков, Михаил Косов, Дан Нестеров
Нельзя просто так взять и заставить улыбнуться человека на фото (да ведь?), но нейросетям под силу, казалось бы, невозможное. И школьники это доказали.
Постановка задачи. Создать модель, способную изменять нелинейные атрибуты изображения человека. Такие как возраст, наличие бороды или очков, улыбку, пол и многое другое.
Результат. Школьникам предложили добиться максимально качественного изображения и минимизировать артефакты – размытость, инородные объекты на фото, любые дефекты. С подобной задачей не справится ни один линейный алгоритм. Команда использовала для работы нейросеть, выпущенную Nvidia всего год назад. С помощью этой нейросети школьники создали лица и затем «оживили» их: получилось «омолодить» или «состарить» человека на картинке, увидеть, как бы он выглядел в женском обличии и наоборот.
Изображение: слайд из презентации команды
Как выступили. Команда проявила настоящую бизнесовую жилку и поразила экспертов продающим выступлением. Школьники рассказали, кому и чем может быть полезна разработка. Например, СМИ могут использовать программу для создания фото и изображений вместо их покупки на стоках, ведь нейросеть способна генерировать изображения, не защищенные авторским правом. Программа полезна криминалистам, которые смогут составлять качественные и подробные фотороботы преступников. А геймеры смогут разрабатывать персонажей компьютерных игр. Полноценная разработка для стартапа:).