Библиотека нейронных сетей с открытым исходным кодом [закрыто]


Я ищу библиотеку нейронных сетей с открытым исходным кодом. До сих пор я смотрел на FANN, WEKA и OpenNN. Есть ли другие, на которые я должен смотреть? Критерием, конечно же, является документация, примеры и простота использования.

4 58

4 ответа:

последнее обновление: 2017/12/17 (Я буду обновлять этот ответ время от времени...)

стандартные реализации нейронных сетей

  • FANN является очень популярной реализацией в C / C++ и имеет привязки для многих других языков.
  • Я думаю, что у WEKA нет очень хорошей реализации для нейронных сетей. Лучшая библиотека для Java (и C#): Encog.
  • в scikit-learn (Python) 0.18 (текущая версия разработки) будет реализована прямая нейронная сеть (документация API).
  • PyBrain (Python) содержит различные типы нейронных сетей и методы обучения.
  • и я должен упомянуть свой собственный проект, который называется OpenANN (документация). Он написан на C++ и имеет привязки Python.

Глубокое Изучение

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

сравнение производительности для GPU-ускоренных библиотек можно найти здесь (немного устарела, к сожалению). Сравнение версий графических процессоров и библиотек можно найти здесь.

неактивные:

Если вы хотите гибкость в определении сетевых конфигураций, таких как совместное использование параметров или создание различных типов сверточных архитектур, то вы должны посмотреть на семейство библиотек Torch:http://www.torch.ch/.

Я еще не просматривал документацию для Torch 7, но документация для других версий была довольно приличной, и код очень читаем (в Lua и C++).

вы можете использовать accord.net рамки. http://accord-framework.net/

Он содержит алгоритмы нейронного обучения, такие как Левенберг-Марквардт, параллельное упругое обратное распространение, алгоритм инициализации Нгуена-Видроу, сети глубоких убеждений и ограниченные машины Больцмана и многие другие элементы, связанные с нейронной сетью.

Netlab является широко используемой библиотекой Matlab. (бесплатно и с открытым исходным кодом)

инструментарий Netlab предназначен для обеспечения необходимых центральных инструментов для моделирования теоретически обоснованной нейронной сети алгоритмы и связанные с ними модели для использования в обучении, исследованиях и разработка приложений. Он широко используется в Мск купить Исследования в области математики сложных систем.

библиотека Netlab включает в себя программное обеспечение реализации широкого спектра из методов анализа данных, многие из которых еще не доступны в стандартные пакеты моделирования нейронных сетей. Netlab работает с Matlab версия 5.0 и выше, но требуется только ядро Matlab (т. е. нет других требуются наборы инструментов). Он не совместим с более ранними версиями Матлаб.