Есть ли open source в университетах — рассказывает Михаил Гущин, лидер сообщества «Открытый код ФКН ВШЭ». fulu.. fulu. linguacodus.. fulu. linguacodus. megnetsparse.. fulu. linguacodus. megnetsparse. Open source.. fulu. linguacodus. megnetsparse. Open source. open source в университетах.. fulu. linguacodus. megnetsparse. Open source. open source в университетах. roerich.. fulu. linguacodus. megnetsparse. Open source. open source в университетах. roerich. tabddpm.. fulu. linguacodus. megnetsparse. Open source. open source в университетах. roerich. tabddpm. Биографии гиков.. fulu. linguacodus. megnetsparse. Open source. open source в университетах. roerich. tabddpm. Биографии гиков. михаил гущин.. fulu. linguacodus. megnetsparse. Open source. open source в университетах. roerich. tabddpm. Биографии гиков. михаил гущин. научное программирование.. fulu. linguacodus. megnetsparse. Open source. open source в университетах. roerich. tabddpm. Биографии гиков. михаил гущин. научное программирование. ниу вшэ.. fulu. linguacodus. megnetsparse. Open source. open source в университетах. roerich. tabddpm. Биографии гиков. михаил гущин. научное программирование. ниу вшэ. Управление сообществом.. fulu. linguacodus. megnetsparse. Open source. open source в университетах. roerich. tabddpm. Биографии гиков. михаил гущин. научное программирование. ниу вшэ. Управление сообществом. Учебный процесс в IT.

Кандидат физ.-мат. наук Михаил Гущин работает старшим научным сотрудником на факультете компьютерных наук НИУ ВШЭ. Одно из заметных профессиональных начинаний Михаила — open source-сообщество факультета. Мы обсудили его развитие, ключевые разработки Михаила и коллег, а также российский open source в целом.

Михаил Гущин (слева), к.ф.-м.н и open source-энтузиаст (фото из личного архива)
Михаил Гущин (слева), к.ф.-м.н и open source-энтузиаст (фото из личного архива)

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

Сотрудники и студенты факультета компьютерных наук (ФКН) Высшей школы экономики активно участвуют в публикации научных статей в ведущих международных журналах и выступают на престижных научных конференциях уровня Core A/A*. Работы охватывают широкий спектр тем, начиная от анализа больших данных и заканчивая исследованием новых материалов. Избранные публикации представлены на сайте факультета.

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

1. Научно-учебная лаборатория методов анализа больших данных (Lambda) располагает собственной страницей на GitHub. Среди её недавних проектов выделю следующие:

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

MegNetSparse — эта библиотека может быть полезна исследователям двумерных материалов. Они перспективны для развития следующего поколения (опто-) электронных устройств. Основной характеристикой двумерных кристаллов является возможность настройки их свойств посредством контролируемого введения дефектов. Однако пространство поиска для таких структур огромно и требует больших вычислений. MegNetSparse ориентирован на улучшение качества прогнозов алгоритмов машинного обучения путём предоставления эффективных представлений двумерных кристаллических структур. Этот подход существенно уменьшает ошибку прогнозирования энергии и повышает производительность как на этапе обучения, так и при прогнозе. Благодаря применению нового метода представления данных, MegNetSparse демонстрирует значительное преимущество перед конкурентами в плане эффективности использования вычислительных ресурсов.

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

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

2. Также хочу рассказать о нескольких проектах научно-учебной лаборатории компании Яндекс на ФКН. Лаборатория тоже активно делится результатами своих исследований на своей странице на Github. Несколько их проектов:

TabDDPM — это алгоритм для синтеза табличных данных с использованием диффузионных моделей. Его уникальность заключается в способности синтезировать качественные данные, сохраняя конфиденциальность информации. Для сравнения своего метода с существующими решениями на основе других генеративных моделей ИИ, авторы создали синтетические данные и использовали их для обучения классических моделей классификации и регрессии, таких как случайный лес и CatBoost. Экспериментальные результаты показали, что TabDDPM превосходит другие методы по качеству в различных сценариях, включая защиту приватных данных. Сегодня этот алгоритм широко применяется в научных исследованиях по всему миру и пользуется большой популярностью.

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

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

3. Международная лаборатория статистической и вычислительной геномики также участвует в развитии open-source проектов и выкладывает их у себя на странице:

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

VGsim (Viral Genealogy Simulator) служит для моделирования вирусных генеалогий, с ее помощью можно моделировать пути распространения COVID-19 в условиях глобальной пандемии и прочие сценарии пандемий мирового масштаба. Симулятор вирусных генеалогий — программное обеспечение, предназначенное для проверки методов анализа данных, связанных с генетической природой коронавируса. По генетическим последовательностям вирусов можно детально проследить пути их распространения — построить их генеалогию, дерево заражений. Такие деревья содержат много информации, в частности, об эволюции патогенов. Авторы отмечают, что их библиотека не только является самым быстрым симулятором вирусных генеалогий, но также способна учитывать миграцию, что отличает ее от общепринятых моделей. Библиотека может быть полезна ученым-эпидемиологам, Data Science-специалистам в области медицины и статистики.

Вышеупомянутые проекты — лишь малая часть той обширной коллекции, которую сотрудники и студенты ФКН ВШЭ предоставляют в открытом доступе. Более подробную информацию о текущих и будущих проектах можно узнать на нашем канале «Открытый код ФКН ВШЭ» в Telegram.

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

Мой путь в мир открытого кода начался довольно неожиданно. В 2009 году я поступил на факультет общей и прикладной физики Московского физико-технического института (МФТИ), где начал изучать экспериментальную физику твёрдого тела. В магистратуру поступил на факультет управления и прикладной информатики, где моим научным руководителем стал Андрей Устюжанин. Он познакомил меня с машинным обучением и показал, как можно его применять для анализа физических данных. В 2019 году под руководством Андрея я защитил диссертацию по теме «Применение методов машинного обучения в задачах обработки и хранения данных в экспериментах физики высоких энергий» и получил степень кандидата физико-математических наук.

Параллельно с учёбой я работал в компании Яндекс, а позже присоединился к Научно-учебной лаборатории методов анализа больших данных (Lambda) на факультете компьютерных наук НИУ ВШЭ, где работаю и по сей день в качестве старшего научного сотрудника.

Моя работа в компании и в лаборатории была сосредоточена на применении искусственного интеллекта для анализа данных физических экспериментов. Лаборатория входила в коллаборации эксперимента LHCb на Большом адронном коллайдере и эксперимента SHiP в CERN, в Швейцарии. Мы занимались применением машинного обучения для анализа данных, собираемых с детектора LHCb. Это были интересные задачи и отличный опыт международного сотрудничества.

В стенах CERN (фото из личного архива Михаила)

В стенах CERN (фото из личного архива Михаила)

Одним из значительных событий стало участие в организации соревнования на платформе Kaggle по распознаванию треков заряженных частиц для детекторов в CERN. Это соревнование объединило физиков и специалистов по Data Science, став важным этапом в развитии данного направления. В результате был разработан ряд новых и уникальных алгоритмов, которые были выложены в открытый доступ и оказали сильное влияние на развитие методов анализа таких данных.

Со временем мои интересы распространились на приложения искусственного интеллекта в других естественных науках. В частности, я принимал активное участие в совместных проектах с Государственным астрономическим институтом имени П.К. Штернберга (ГАИШ), Пулковской астрономической обсерваторией и Крымской астрофизической обсерваторией. Результаты этих исследований также есть в открытом доступе.

Я руководил проектом «Зеркальной лаборатории» по теме «Разработка и применение методов машинного интеллекта для эффективного поиска новых материалов», который был выполнен в сотрудничестве с Университетом Иннополис и Национальным университетом Сингапура. Это направление активно развивается и сегодня в нашей лаборатории и на ФКН в целом.

Сейчас руковожу проектом «Повышение эффективности центров обработки данных и систем хранения данных методами искусственного интеллекта», который реализуется совместно с Исследовательским центром в сфере искусственного интеллекта Института радиоэлектроники и информационных технологий — РТФ Уральского федерального университета им. первого Президента России Б.Н. Ельцина.

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

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

Одной из главных целей является интеграция факультета в мировое сообщество open source. Мы хотим, чтобы наши проекты находили отклик среди зарубежных коллег, а взаимодействие с ними приносило новые возможности для исследований. Мы выбрали Telegram для развития нашего сообщества по открытому коду, поскольку эта платформа идеально подходит для оперативного общения и распространения информации как внутри факультета, так и за его пределами. На нашем канале «Открытый код ФКН ВШЭ» мы уже осветили более 40 открытых проектов, созданных сотрудниками и студентами, и продолжаем пополнять эту коллекцию. Помимо этого, мы регулярно публикуем анонсы образовательных семинаров и докладов приглашённых экспертов. Канал также служит удобной площадкой для обратной связи: вы можете задать любой вопрос, связанный с открытым кодом, и мы обязательно вам ответим.

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

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

Когда речь идёт о результатах научных исследований, наиболее популярными становятся лицензии, обеспечивающие максимальную свободу использования и минимальные ограничения. Лицензии типа MIT, Apache-2.0 или BSL-1.0 отлично подходят для таких случаев, так как они позволяют легко адаптировать и использовать код в любых научных, коммерческих и образовательных проектах. Это критически важно для исследователей, ведь чем шире аудитория, тем больше шансов, что их труды найдут применение и принесут ощутимую пользу.

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

Вы достаточно часто делитесь открытыми разработками коллег из индустрии, в том числе из компаний. Сотрудничаете ли вы с коммерческими структурами по теме открытого кода? Какие в целом направления такого сотрудничества могли бы быть перспективными для университета (на ваш личный взгляд)?

Большинство проектов, о которых мы рассказываем на нашем канале, созданы сотрудниками и студентами ФКН. Хотя многие из них параллельно работают в компаниях, в своих публикациях они указывают аффилиацию с НИУ ВШЭ. Тем не менее, сотрудничество с коммерческими структурами — это важная составляющая работы.

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

Михаил Гущин представляет базовые кафедры ФКН (фото из личного архива)

Михаил Гущин представляет базовые кафедры ФКН (фото из личного архива)

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

Каким вы видите корпоративный open source в России? На ваш взгляд, есть ли тут какая-то динамика за последние пару лет? Какие моменты компаниям следует улучшить, если сравнивать с зарубежными open source-проектами?

В России существуют отличные ИТ-компании, которые создают высококачественные проекты. Чем больше они будут делиться своими инструментами и продуктами в открытом доступе, тем лучше будет для всего сообщества open source. Эти проекты вызывают интерес не только в бизнесе, но и в университетах, где студенты могут становиться активными их участниками, внося свой вклад в развитие кода, а сотрудники — предлагать новые алгоритмы и методы решения задач.

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

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

Российские компании редко уделяют должное внимание взаимодействию с сообществом пользователей и разработчиков. В то время как на Западе принято активно вовлекать сторонних участников в процесс разработки, поддерживать форумы и чаты, организовывать хакатоны и конференции, российские компании часто ограничиваются публикацией кода без дальнейшей поддержки. Хотя, конечно, и в России есть отличные примеры. Также компании в России недостаточно активно продвигают свои open source-решения. Западные компании понимают, что успешный open source-проект — это не только техническая, но и маркетинговая задача. Необходимо информировать потенциальных пользователей о существовании проекта, его преимуществах и возможностях. Это особенно будет полезно для студентов и сотрудников университетов.

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

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

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

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

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

Могли бы вы объяснить управленцам российских научных центров и университетов ключевые преимущества работы в формате open source?

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

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

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

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

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

Кстати, о вашем сообществе я узнал от коллег из других университетов, с которыми делал интервью ранее (тут и тут). Могли бы выделить другие российские и знакомые вам зарубежные вузы, которые также активно развивают свои open source-комьюнити?

Хочу обратить внимание на Лабораторию искусственного интеллекта Сбера. Здесь талантливые специалисты проводят исследования в области ИИ и делятся своими достижениями через публикации в авторитетных научных журналах и выступлениях на престижных конференциях. Команда также разрабатывает инновационные решения на основе ИИ, которые находят применение в таких сферах, как промышленность, финансы и ритейл. У лаборатории есть собственная страница на GitHub, где можно ознакомиться с их проектами.

Отдельно стоит упомянуть фреймворк LightAutoML, который предназначен для автоматического построения моделей машинного обучения. Этот инструмент уже завоевал признание мирового сообщества благодаря своей эффективности и простоте использования. Более того, команда лаборатории одержала победу в международном соревновании Kaggle AutoML Grand Prix 2024, что стало еще одним свидетельством высокого уровня их работы.

Автор: dmitrykabanov

Источник

Рейтинг@Mail.ru
Rambler's Top100