Коллективные знания (программное обеспечение)

Фреймворк с открытым исходным кодом для исследователей
Коллективное Знание (CK)
Разработчик(и)Григорий Фурсин и фонд cTuning
Первоначальный выпуск2015 ; 10 лет назад ( 2015 )
Стабильный релиз
2.6.3 (прекращено для новой платформы Collective Mind [1] ) / 30 ноября 2022 г. ( 2022-11-30 )
Написано вПитон
Операционная системаLinux , Mac OS X , Microsoft Windows , Android
ТипУправление знаниями , данные FAIR , MLOps , Управление данными , Оценка артефактов, Система управления пакетами , Система научного документооборота , DevOps , Непрерывная интеграция , Воспроизводимость
ЛицензияЛицензия Apache для версии 2.0 и лицензия BSD 3-пунктная для версии 1.0
Веб-сайтgithub.com/ctuning/ck , cknow.io

Проект Collective Knowledge ( CK ) представляет собой фреймворк и репозиторий с открытым исходным кодом , позволяющий проводить совместные, воспроизводимые и устойчивые исследования и разработки сложных вычислительных систем. [2] CK — это небольшая, портативная, настраиваемая и децентрализованная инфраструктура, помогающая исследователям и практикам:

  • обмениваться своим кодом, данными и моделями в виде повторно используемых компонентов Python и действий автоматизации [3] с унифицированным JSON API , метаинформацией JSON и UID на основе принципов FAIR [2]
  • собирать переносимые рабочие процессы из общих компонентов (таких как многоцелевая автонастройка и исследование пространства проектирования [4] )
  • автоматизировать, краудсорсинг и воспроизводить бенчмаркинг сложных вычислительных систем [5]
  • унифицировать предиктивную аналитику ( scikit-learn , R , DNN)
  • позволяют создавать воспроизводимые и интерактивные документы [6]

Известные случаи использования

  • ARM использует CK для ускорения компьютерной инженерии [7]
  • Несколько конференций , спонсируемых ACM, используют CK для автоматизации процесса оценки артефактов [8] [9]
  • Имперский колледж (Лондон) использует CK для автоматизации и краудсорсинга обнаружения ошибок компилятора [10]
  • Исследователи из Кембриджского университета использовали CK, чтобы помочь сообществу воспроизвести результаты их публикации на Международном симпозиуме по генерации и оптимизации кода (CGO'17) во время оценки артефактов [11]
  • General Motors (США) использует CK для сравнительного анализа оптимизации сверточных нейронных сетей [12] [13]
  • Фонд Raspberry Pi и фонд cTuning выпустили рабочий процесс CK с воспроизводимой «живой» статьей, чтобы обеспечить совместные исследования в области многоцелевой автонастройки и методов машинного обучения [4]
  • IBM использует CK для воспроизведения квантовых результатов из природы [14]
  • CK используется для автоматизации бенчмарка MLPerf [15] [16]

Портативный менеджер пакетов для портативных рабочих процессов

CK имеет интегрированный кроссплатформенный менеджер пакетов со скриптами Python , JSON API и метаописанием JSON для автоматического перестроения программной среды на компьютере пользователя, необходимой для запуска заданного исследовательского рабочего процесса. [17]

Воспроизводимость экспериментов

CK обеспечивает воспроизводимость экспериментальных результатов посредством участия сообщества, аналогично Википедии и физике . Всякий раз, когда новый рабочий процесс со всеми компонентами публикуется через GitHub, любой может попробовать его на другой машине, с другой средой и используя немного другие варианты (компиляторы, библиотеки, наборы данных). Всякий раз, когда встречается неожиданное или неправильное поведение, сообщество объясняет его, исправляет компоненты и делится ими обратно, как описано в. [4]

Ссылки

  1. ^ Пакет CK в PYPI
  2. ^ ab Fursin, Grigori (29 марта 2021 г.). Коллективное знание: организация исследовательских проектов как базы данных повторно используемых компонентов и переносимых рабочих процессов с общими API . Philosophical Transactions of the Royal Society . arXiv : 2011.01149 . doi : 10.1098/rsta.2020.0211.
  3. ^ Многоразовые компоненты и действия CK для автоматизации общих исследовательских задач
  4. ^ abc Живая статья с воспроизводимыми экспериментами, позволяющая проводить совместные исследования в области многоцелевой автонастройки и методов машинного обучения
  5. ^ Онлайн-репозиторий с воспроизведенными результатами
  6. ^ Указатель воспроизведенных статей
  7. ^ Эд Плауман; Григорий Фурсин, презентация ARM TechCon'16 «Знай свои рабочие нагрузки: проектируй более эффективные системы!»
  8. ^ Оценка артефактов для систем и конференций по машинному обучению
  9. ^ ACM TechTalk о воспроизведении 150 исследовательских работ и их тестировании в реальном мире
  10. ^ Проект ЕС TETRACOM по объединению CK и CLSmith (PDF) , заархивировано из оригинала (PDF) 2017-03-05 , извлечено 2016-09-15
  11. ^ Воспроизведение оценки артефактов для «Программной предварительной выборки для непрямого доступа к памяти», CGO 2017, с использованием CK, 16 октября 2022 г.
  12. ^ Сайт разработки GitHub для Caffe на базе CK, 11 октября 2022 г.
  13. ^ Приложение Android с открытым исходным кодом, позволяющее сообществу участвовать в совместном сравнительном анализе и оптимизации различных библиотек и моделей DNN.
  14. ^ Воспроизведение квантовых результатов из природы — насколько это сложно?
  15. ^ MLPerf крауд-бенчмаркинг
  16. ^ Руководство по автоматизации бенчмарков вывода MLPerf, 17 октября 2022 г.
  17. ^ Список общих пакетов CK
  • Сайт разработки: [1]
  • Документация: [2]
  • Публичный репозиторий с краудсорсинговыми экспериментами: [3]
  • Международный семинар по адаптивным самонастраивающимся вычислительным системам (ADAPT) использует CK для обеспечения публичного рецензирования публикаций и артефактов через Reddit : [4]
Взято с "https://en.wikipedia.org/w/index.php?title=Коллективные_знания_(программное обеспечение)&oldid=1260724797"