stringtranslate.com

Программное обеспечение для нейронных сетей

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

Симуляторы

Симуляторы нейронных сетей — это программные приложения, которые используются для моделирования поведения искусственных или биологических нейронных сетей. Они сосредоточены на одном или ограниченном количестве конкретных типов нейронных сетей. Обычно они автономны и не предназначены для создания общих нейронных сетей, которые можно интегрировать в другое программное обеспечение. Симуляторы обычно имеют встроенную систему визуализации для наблюдения за тренировочным процессом. Некоторые симуляторы также визуализируют физическую структуру нейронной сети.

Исследовательские симуляторы

Симулятор нейронной сети для исследований SNNS

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

Обычно используемые симуляторы искусственных нейронных сетей включают Stuttgart Neural Network Simulator (SNNS) и Emergent .

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

Обычно используемые симуляторы биологических сетей включают Neuron , GENESIS , NEST и Brian .

Симуляторы анализа данных

В отличие от исследовательских симуляторов, симуляторы анализа данных предназначены для практического применения искусственных нейронных сетей. Их основное внимание уделяется интеллектуальному анализу данных и прогнозированию. Симуляторы анализа данных обычно имеют те или иные возможности предварительной обработки. В отличие от более общих сред разработки, симуляторы анализа данных используют относительно простую статическую нейронную сеть, которую можно настроить. Большинство симуляторов анализа данных, представленных на рынке, в качестве основы используют сети обратного распространения ошибки или самоорганизующиеся карты. Преимущество этого типа программного обеспечения в том, что оно относительно простое в использовании. Neural Designer — один из примеров симулятора анализа данных.

Симуляторы для обучения теории нейронных сетей

Когда в 1986-87 годах были выпущены тома по параллельной распределенной обработке [1] [2] [3] , они содержали относительно простое программное обеспечение. Исходное программное обеспечение PDP не требовало каких-либо навыков программирования, что привело к его принятию широким кругом исследователей в самых разных областях. Исходное программное обеспечение PDP было преобразовано в более мощный пакет под названием PDP++, который, в свою очередь, стал еще более мощной платформой под названием Emergent . С каждой разработкой программное обеспечение становилось все более мощным, но и более сложным для использования новичками.

В 1997 году к книге было выпущено программное обеспечение tLearn. [4] Это был возврат к идее создания небольшого, удобного для пользователя симулятора, разработанного с учетом потребностей новичков. tLearn позволил использовать базовые сети прямого распространения, а также простые рекуррентные сети, обе из которых могут быть обучены с помощью простого алгоритма обратного распространения. tLearn не обновлялся с 1999 года.

В 2011 году вышел симулятор Basic Prop. Basic Prop — это автономное приложение, распространяемое в виде платформо-нейтрального JAR-файла, которое обеспечивает большую часть тех же простых функций, что и tLearn.

Среды разработки

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

На основе компонентов

Среда разработки на основе компонентов Peltarion Synapse .

Более современный тип среды разработки, который в настоящее время пользуется популярностью как в промышленном, так и в научном использовании, основан на парадигме, основанной на компонентах . Нейронная сеть создается путем соединения компонентов адаптивного фильтра в потоке конвейерного фильтра. Это обеспечивает большую гибкость, поскольку можно создавать собственные сети, а также использовать пользовательские компоненты. Во многих случаях это позволяет сочетать адаптивные и неадаптивные компоненты для совместной работы. Поток данных контролируется заменяемой системой управления и алгоритмами адаптации. Другая важная особенность — возможности развертывания.

С появлением компонентных инфраструктур, таких как .NET и Java , среды разработки на основе компонентов способны развертывать разработанную нейронную сеть в этих платформах в качестве наследуемых компонентов. Кроме того, некоторое программное обеспечение также может развертывать эти компоненты на нескольких платформах, например во встроенных системах .

Среды разработки на основе компонентов включают: Peltarion Synapse , NeuroDimension NeuroSolutions , Scientific Software Neuro Laboratory и интегрированное программное обеспечение LIONsolver . Бесплатные среды на основе компонентов с открытым исходным кодом включают Encog и Neuroph .

Критика

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

Пользовательские нейронные сети

Однако большинство доступных реализаций нейронных сетей представляют собой специальные реализации на разных языках программирования и на разных платформах. Базовые типы нейронных сетей легко реализовать напрямую. Существует также множество программных библиотек , которые содержат функции нейронных сетей и которые можно использовать в пользовательских реализациях (например, TensorFlow , Theano и т. д., обычно обеспечивающих привязку к таким языкам, как Python , C++ , Java ).

Стандарты

Чтобы модели нейронных сетей могли использоваться разными приложениями, необходим общий язык. Для удовлетворения этой потребности был предложен язык разметки прогнозных моделей (PMML ) . PMML — это язык на основе XML, который позволяет приложениям определять и совместно использовать модели нейронных сетей (и другие модели интеллектуального анализа данных) между приложениями, совместимыми с PMML.

PMML предоставляет приложениям независимый от поставщика метод определения моделей, поэтому проблемы, связанные с собственностью, и несовместимость больше не являются препятствием для обмена моделями между приложениями. Он позволяет пользователям разрабатывать модели в приложении одного поставщика и использовать приложения других поставщиков для визуализации, анализа, оценки или иного использования моделей. Раньше это было очень сложно, но с PMML обмен моделями между совместимыми приложениями теперь стал простым.

Потребители и производители PMML

Для производства и потребления ПММЛ предлагается ряд продуктов. В этот постоянно растущий список входят следующие продукты для нейронных сетей:

Смотрите также

Рекомендации

  1. ^ Румельхарт, Д.Э., Дж. Л. Макклелланд и исследовательская группа НДП (1986). Параллельная распределенная обработка: исследования микроструктуры познания. Том 1: Фонды, Кембридж, Массачусетс: MIT Press
  2. ^ Макклелланд, Дж. Л., Д. Е. Румельхарт и исследовательская группа НДП (1986). Параллельная распределенная обработка: исследования микроструктуры познания. Том 2: Психологические и биологические модели, Кембридж, Массачусетс: MIT Press.
  3. ^ Макклелланд и Румельхарт «Исследования в области параллельной распределенной обработки», MIT Press, 1987
  4. ^ Планкетт, К. и Элман, Дж.Л., Упражнения по переосмыслению врожденности: справочник по коннекционистскому моделированию (MIT Press, 1997).

Внешние ссылки