Компания Sony открыла свои наработки в области нейронных сетей
Компания Sony представила проект NNabla (Neural Network Libraries), в рамках которого открыты наработки в области построения нейронных сетей для решения задач глубинного машинного обучения. Система универсальная и изначально рассчитана на использование как на настольных ПК и встраиваемых устройствах, так и в кластерах и крупных серверах для решения исследовательских задач и практического применения. Код ядра NNabla написан на языке C++ и распространяется под лицензией Apache 2.0.
Для конечных приложений предлагается программный интерфейс для языка Python, отличающийся простотой использования и высокой гибкостью. Например, для создания двухуровневой нейронной сети для классификации потерь (loss) достаточно пяти строк кода. При этом предоставляется единый API как для работы со статическими и динамическими графами вычислений. Допускается подключение модулей с реализацией новых функций, методов оптимизации и операторов для нейронной сети.
Поддерживается работа в Linux и Windows. Благодаря ядру на C++ система достаточно компактна и может работать на встраиваемых системах с ограниченными ресурсами. Для ускорения вычислений предоставлены средства для организации выполнения с привлечением специфичных реализаций, например на базе FPGA. Из готовых оптимизирующих модулей отмечается бэкенд для задействования CUDA для выноса вычислений на сторону GPU. Также поддерживается специальный движок для оптимизации работы с памятью.
Из областей, в которых Sony уже применяет NNabla, отмечены оценка стоимости недвижимости в Sony Real Estate Corporation, распознавание действий пользователя в системе "Xperia Ear" (например, подтверждение операции или прием звонка кивком головы) и распознавание рукописного ввода в электронной книге Sony DPT-RP1.