Форум Статьи Контакты
Строительство — возведение зданий и сооружений, а также их капитальный и текущий ремонт, реконструкция, реставрация и реновация.

Caffe


Caffe — среда для глубинного обучения, разработанная Яньцинем Цзя (Yangqing Jia) в процессе подготовки своей диссертации в университете Беркли. Caffe является открытым программным обеспечением, распространяемым под лицензией BSD license. Написано на языке C++, и поддерживает интерфейс на языке Python.

Название Caffe произошло от сокращения «Convolution Architecture For Feature Extraction» (Свёрточная архитектура для извлечения признаков).

История

Яньцинь Цзя в университете Беркли создал среду Caffe для поддержки глубинного обучения. Ключевым вопросом диссертации было обеспечение эффективной параллельной обработки многомерных матричных операций, для чего было принято решение создать фреймворк на основе математической библиотеки MATLAB и мультипроцессорной архитектуры CUDA. Первоначальная разработка заняла только два месяца. К проекту присоединились множество разработчиков и теперь его хостинг осуществляется через веб-сервис GitHub.

В апреле 2017 Facebook объявил о создании Caffe2, который включает в себя новые возможности, в частности рекуррентные нейронные сети.

В мае 2018 команды Caffe2 и PyTorch объединились. С тех пор код Caffe2 перенесён в репозиторий PyTorch и является частью последнего.

Характеристики

Caffe поддерживает много типов машинного обучения, нацеленных в первую очередь на решение задач классификации и сегментации изображений. Caffe обеспечивает свёрточные нейронные сети, RCNN, долгую краткосрочную память и полносвязные нейронные сети. При этом для ускорения обучения применяется система графических процессоров (GPU), поддерживаемая архитектурой CUDA и иcпользующих библиотеку CuDNN от фирмы Nvidia.

Caffe позволяет использовать готовые промышленные конфигурации нейронных сетей, прошедшие апробацию. В комплект входит, в частности AlexNet, победившая в 2012 году в соревновании по распознаванию изображений ImageNet, и GoogLeNet, победившая в соревнованиях ImageNet 2014 года

Caffe манипулирует блобами — многомерными массивами данных, которые используются в параллельных вычислениях, которые помещаются в CPU или GPU. Обучение в cвёрточной нейронной сети реализуется как параллельные многопроцессорные вычисления блобов от слоя к слою (прямым и обратным ходом). Solver (решатель) координирует весь процесс обучения — прямой ход от исходных к выходным данным, получение функции ошибок, обратный ход (Метод обратного распространения ошибки) назад от выходного слоя с использованием градиентов ошибок. При этом Caffe реализует различные стратегии обучения для Solverа.

В качестве входа используются данные из памяти, из базы данных или со внешних носителей информации. В качестве скрытых слоёв используются традиционные для свёрточной сети свёрточные слои, слои ReLU, пулинг, полносвязные слои, а также слои разворачивания (деконволюции) для сетей RNN. Обеспечены также многие другие типы слоёв, фильтров, преобразований данных и функций ошибок.

Приложения

Caffe применяется в академических исследованиях, прототипов для стартапов, а также и для промышленного применения — распознавания изображений, речи или мультимедиа. Yahoo! также интегрировала Caffe со средой Apache Spark, создав распределённый фрэймворк CaffeOnSpark.


(голосов:0)

Пожожие новости
Комментарии

Ваше Имя:   

Ваш E-Mail: