Автор (ы) оригинала | Сейя Токуй |
---|---|
Разработчики) | Сообщество, Preferred Networks, Inc. |
Первый выпуск | 9 июня 2015 г . [1] [2] | .
Стабильный выпуск | 7.7.0 [3] / 30 июля 2020 г . |
Репозиторий | |
Написано в | Python |
Платформа | кроссплатформенный |
Доступно в | Python |
Тип | Библиотека глубокого обучения |
Лицензия | Массачусетский технологический институт |
Веб-сайт | цепочка |
Chainer - это фреймворк глубокого обучения с открытым исходным кодом, написанный исключительно на Python поверх библиотек NumPy и CuPy Python. Разработкой руководит японская венчурная компания Preferred Networks в партнерстве с IBM , Intel , Microsoft и Nvidia . [4] [5] [6] [7]
Chainer примечателен своим ранним внедрением схемы « определение по запуску », а также своей производительностью в крупномасштабных системах. [1] Первая версия была выпущена в июне 2015 года и с тех пор приобрела большую популярность в Японии. [1] [2] Кроме того, в 2017 году он был включен KDnuggets в 10 лучших проектов Python с открытым исходным кодом для машинного обучения. [8]
В декабре 2019 года Preferred Networks объявила о переводе своей разработки с Chainer на PyTorch и будет предоставлять исправления только после выпуска v7. [9]
Определить по запуску [ править ]
Chainer был первым фреймворком глубокого обучения, который представил подход определения по запуску. [10] [11] Традиционная процедура обучения сети состояла из двух этапов: определение фиксированных связей между математическими операциями (такими как умножение матриц и нелинейная активация) в сети, а затем выполнение фактических обучающих вычислений. Это называется подходом определения и запуска или статического графа. Theano и TensorFlow - одни из известных фреймворков, использующих этот подход. Напротив, в подходе определения по запуску или динамического графа соединение в сети не определяется при запуске обучения. Сеть определяется во время обучения по мере выполнения фактических расчетов.
Одним из преимуществ этого подхода является то, что он интуитивно понятен и гибок. [12] Если сеть имеет сложные потоки управления, такие как условные выражения и циклы , в подходе определения и выполнения требуются специально разработанные операции для таких конструкций. С другой стороны, в подходе определения по запуску для описания такого потока можно использовать собственные конструкции языка программирования, такие как операторы if и циклы for. Эта гибкость особенно полезна для реализации рекуррентных нейронных сетей . [13] [14]
Еще одно преимущество - простота отладки . [12] В методе определения и запуска, если ошибка (например, числовая ошибка) произошла в обучающем вычислении, часто бывает трудно проверить ошибку, потому что код, написанный для определения сети и фактического места ошибки отделены. В подходе определения по запуску вы можете просто приостановить вычисление с помощью встроенного отладчика языка и проверить данные, которые передаются по вашему коду сети.
Функция Define-by-run приобрела популярность с момента появления Chainer и теперь реализована во многих других фреймворках, включая PyTorch [15] и TensorFlow. [12]
Библиотеки расширений [ править ]
Chainer имеет четыре библиотеки расширений: ChainerMN, ChainerRL, ChainerCV и ChainerUI. ChainerMN позволяет использовать Chainer на нескольких графических процессорах со значительно большей производительностью, чем другие платформы глубокого обучения. [1] Суперкомпьютер, на котором запущен Chainer на 1024 графических процессорах, обработал 90 эпох набора данных ImageNet в сети ResNet-50 за 15 минут, что в четыре раза быстрее, чем предыдущий рекорд, установленный Facebook. [16] [17] ChainerRL добавляет современные алгоритмы глубокого обучения с подкреплением , а ChainerUI - это инструмент управления и визуализации.
Приложения [ править ]
Chainer используется в качестве основы для PaintsChainer , сервиса, который автоматически раскрашивает черно-белые, только линии, черновые чертежи с минимальным вмешательством пользователя. [18] [19]
См. Также [ править ]
- Сравнение программного обеспечения для глубокого обучения
- Машинное обучение
- Искусственная нейронная сеть
Ссылки [ править ]
- ^ a b c d "ИИ-код 'Chainer', созданный крупными японцами, показывает, как Intel будет стрелять в GPU" . Реестр . 2017-04-07 . Проверено 24 декабря 2017 .
- ^ a b «Глубокое обучение の フ レ ー ム ワ ー ク Chainer を 公開 し ま し た» (на японском языке). 2015-06-09 . Проверено 24 декабря 2017 .
- ^ "Выпуск 7.7.0" . 30 июля 2020 . Проверено 31 июля 2020 года .
- ^ "Домашняя страница Chainer" . Проверено 24 декабря 2017 .
- ^ «IBM хочет быть« красной шляпой »глубокого обучения» . HPCwire . 2017-01-26 . Проверено 8 сентября 2017 .
- ^ «Intel сотрудничает с предпочтительными сетями в Японии в области глубокого обучения» . 2017-04-06 . Проверено 24 декабря 2017 .
- ^ «Microsoft сотрудничает с Preferred Networks, чтобы принести технологию глубокого обучения Chainer в Azure - MSPoweruser» . MSPoweruser . 2017-05-23 . Проверено 8 сентября 2017 .
- ^ «20 лучших проектов с открытым исходным кодом для машинного обучения Python» . KDnuggets . 2017-11-24.
- ^ «Предпочитаемые сети переносят свою платформу глубокого обучения на PyTorch» . Preferred Networks, Inc . 2019-12-05 . Проверено 27 декабря 2019 .
- ^ Токуи, Сейя; и другие. (2015). «Chainer: фреймворк нового поколения с открытым исходным кодом для глубокого обучения». 29-я ежегодная конференция по системам обработки нейронной информации (NIPS) . 5 .
- ^ Shimada, Наоки (14 сентября 2017). Глубокое обучение с Chainer . Gijutsu-Hyohron. п. 61. ISBN 4774191868.
- ^ a b c «Стремительное выполнение: обязательный, определяемый запуском интерфейс для TensorFlow» . Блог Google Research .
- ^ «Глубокое обучение с помощью динамических вычислительных графиков (ICLR 2017)» . Метаданные .
- ^ Hido, Shohei (8 ноября 2016). «Сложные нейронные сети, упрощенные с помощью Chainer» . O'Reilly Media . Проверено 26 июня 2018 . CS1 maint: обескураженный параметр ( ссылка )
- ↑ Перес, Карлос Э. (20 января 2017 г.). «PyTorch, динамические вычислительные графы и модульное глубокое обучение» . Средний .
- ^ «Чрезвычайно большой мини-пакет SGD: обучение ResNet-50 на ImageNet за 15 минут» (pdf) . Проверено 24 декабря 2017 .
- Рианна Грин, Тристан (20 ноября 2017 г.). «Ботаны Facebook превзошли японцев в гонке по обучению ИИ» . Следующая Сеть . Проверено 24 ноября 2017 года . CS1 maint: обескураженный параметр ( ссылка )
- ^ Знай, теперь ты (2017-02-15). «Это программное обеспечение на основе нейронной сети бесплатно добавит цвета в ваши рисунки» . Techly . Проверено 8 сентября 2017 .
- ^ «Приложение для рисования« pixiv Sketch »и служба автоматической раскраски« PaintsChainer »объединились, чтобы предоставить новую функцию для автоматического раскрашивания иллюстраций!» . 2017-05-24 . Проверено 24 декабря 2017 .
Внешние ссылки [ править ]
- Официальный веб-сайт