Проект « Коллективные знания» ( CK ) - это платформа и репозиторий с открытым исходным кодом, обеспечивающая совместные, воспроизводимые и устойчивые исследования и разработку сложных вычислительных систем. [1] [2] CK - это небольшая портативная, настраиваемая и децентрализованная инфраструктура, помогающая исследователям и практикам:
- обмениваться код, данные и модели в качестве многоразовых Python компонентов и действий автоматизации [3] с единой JSON API , информацию мета JSON, и UID на основе принципов добросовестной [1]
- собирать портативные рабочие процессы из общих компонентов (таких как многоцелевой автонастройка и исследование пространства дизайна [4] )
- автоматизировать, краудсорсинг и воспроизводить бенчмаркинг сложных вычислительных систем [5]
- унифицировать предиктивную аналитику ( scikit-learn , R , DNN)
- позволяют воспроизводить и интерактивные документы [6]
Разработчики) | Григорий Фурсин и фонд cTuning |
---|---|
Первый выпуск | 2015 |
Стабильный выпуск | 2.0.7 / 14 мая 2021 г. |
Написано в | Python |
Операционная система | Linux , Mac OS X , Microsoft Windows , Android |
Тип | Управление знаниями , данные FAIR , MLOps , управление данными , оценка артефактов , система управления пакетами , система научных рабочих процессов , DevOps , непрерывная интеграция , воспроизводимость |
Лицензия | Лицензия Apache для версии 2.0 и 3-пункт лицензии BSD для версии 1.0 |
Веб-сайт | github |
Известные обычаи
- ARM использует CK для ускорения компьютерной инженерии [7] [2] [8]
- Ассоциация вычислительной техники оценивает CK на предмет возможной интеграции с цифровой библиотекой ACM, спонсируемой Sloan Foundation [9], и на предмет воспроизводимости исследований [10]
- Несколько конференций, спонсируемых ACM, используют CK для процесса оценки артефактов [11]
- Имперский колледж (Лондон) использует CK для автоматизации и краудсорсинга обнаружения ошибок компилятора [12]
- Исследователи из Кембриджского университета использовали CK, чтобы помочь сообществу воспроизвести результаты своей публикации на Международном симпозиуме по генерации и оптимизации кода (CGO'17) во время оценки артефактов [13]
- General Motors (США) использует CK для проведения массовых тестов оптимизации сверточной нейронной сети [14] [15]
- Raspberry Pi Foundation и фонд cTuning выпустил рабочий CK с воспроизводимым «живой» бумаги для того, чтобы совместные исследования в многоцелевой автонастройки и машинного обучения методов [4]
- IBM использует CK для воспроизведения квантовых результатов от Nature [16]
- CK используется для автоматизации тестирования MLPerf ™ [17] [18]
Портативный менеджер пакетов для переносимых рабочих процессов
CK имеет интегрированный кроссплатформенный менеджер пакетов со сценариями Python , JSON API и метаописанием JSON для автоматического восстановления программной среды на пользовательском компьютере, необходимой для выполнения заданного рабочего процесса исследования. [19]
Воспроизводимость экспериментов
CK обеспечивает воспроизводимость экспериментальных результатов через участие сообщества, как в Википедии и физике . Каждый раз, когда новый рабочий процесс со всеми компонентами публикуется через GitHub, любой может попробовать его на другом компьютере, с другой средой и с немного другими вариантами (компиляторы, библиотеки, наборы данных). Каждый раз, когда встречается неожиданное или неправильное поведение, сообщество объясняет его, исправляет компоненты и делится ими, как описано в [4].
Рекомендации
- ^ a b Фурсин, Григорий (октябрь 2020 г.). Коллективные знания: организация исследовательских проектов в виде базы данных многократно используемых компонентов и переносимых рабочих процессов с общими API-интерфейсами (PDF) . Философские труды королевского общества . Проверено 22 октября 2020 года .
- ^ а б Фурсин, Григорий ; Антон Лохмотов; Эд Пахарь (январь 2016 г.). Коллективные знания: на пути к устойчивости НИОКР . Материалы конференции и выставки «Дизайн, автоматизация и испытания в Европе», 2016 г. (ДАТА) . Проверено 14 сентября 2016 года .
- ^ повторно используемые компоненты и действия CK для автоматизации общих исследовательских задач
- ^ a b c Григорий Фурсин , Антон Лохмотов, Дмитрий Савенко, Эбен Аптон . Рабочий процесс Collective Knowledge для совместных исследований многоцелевых методов автонастройки и машинного обучения , arXiv: 1801.08024, январь 2018 г. ( ссылка arXiv , интерактивный отчет с воспроизводимыми экспериментами )
- ^ Онлайн-репозиторий с воспроизведенными результатами
- ^ Указатель воспроизведенных статей
- ^ Информация HiPEAC (страница 17) (PDF) , январь 2016 г.
- ^ Эд Пахарь; Григорий Фурсин, презентация ARM TechCon'16 «Знайте свои рабочие нагрузки: создавайте более эффективные системы!»
- ^ Воспроизводимость результатов в цифровой библиотеке ACM
- ^ ACM TechTalk о воспроизведении 150 исследовательских работ и их тестировании в реальных условиях
- ^ Оценка артефактов для систем и конференций по машинному обучению
- ^ Проект ЕС TETRACOM по объединению CK и CLSmith (PDF) , заархивирован из оригинала (PDF) 05 марта 2017 г. , извлечен 15 сентября 2016 г.
- ^ Воспроизведение оценки артефактов для «Предварительной выборки программного обеспечения для косвенного доступа к памяти», CGO 2017, с использованием CK
- ^ Сайт разработки GitHub для Caffe на базе CK
- ^ Приложение для Android с открытым исходным кодом, позволяющее сообществу участвовать в совместном тестировании и оптимизации различных библиотек и моделей DNN.
- ^ Воспроизведение квантовых результатов от природы - насколько это сложно?
- ^ MLPerf ™ массовый эталонный тест
- ^ Руководство по автоматизации вывода тестов MLPerf
- ^ Список общих пакетов CK
Внешние ссылки
- Сайт разработки: [1]
- Документация: [2]
- Публичный репозиторий с краудсорсинговыми экспериментами: [3]
- Международный семинар по адаптивной самонастраивающейся вычислительной системе (ADAPT) использует CK для обеспечения возможности публичного обзора публикаций и артефактов через Reddit : [4]