Программное обеспечение для нейронных сетей
Эта статья нуждается в дополнительных цитатах для проверки . ( сентябрь 2014 г. ) |
Программное обеспечение для нейронных сетей используется для моделирования , исследования , разработки и применения искусственных нейронных сетей , концепций программного обеспечения, адаптированных из биологических нейронных сетей , а в некоторых случаях и более широкого спектра адаптивных систем, таких как искусственный интеллект и машинное обучение .
Симуляторы
[ редактировать ]Симуляторы нейронных сетей — это программные приложения, которые используются для моделирования поведения искусственных или биологических нейронных сетей. Они сосредоточены на одном или ограниченном количестве конкретных типов нейронных сетей. Обычно они автономны и не предназначены для создания общих нейронных сетей, которые можно интегрировать в другое программное обеспечение. Симуляторы обычно имеют встроенную систему визуализации для наблюдения за тренировочным процессом. Некоторые симуляторы также визуализируют физическую структуру нейронной сети.
Исследовательские симуляторы
[ редактировать ]Исторически сложилось так, что наиболее распространенный тип программного обеспечения для нейронных сетей предназначался для исследования структур и алгоритмов нейронных сетей. Основная цель этого типа программного обеспечения — посредством моделирования лучше понять поведение и свойства нейронных сетей. Сегодня при изучении искусственных нейронных сетей симуляторы в значительной степени заменены более общими средами разработки на основе компонентов в качестве исследовательских платформ.
Обычно используемые симуляторы искусственных нейронных сетей включают Stuttgart Neural Network Simulator (SNNS) и Emergent .
Однако при изучении биологических нейронных сетей программное обеспечение для моделирования по-прежнему остается единственным доступным подходом. В таких симуляторах изучаются физико-биологические и химические свойства нервной ткани, а также электромагнитные импульсы между нейронами.
Обычно используемые симуляторы биологических сетей включают Neuron , GENESIS , NEST и Brian .
Симуляторы анализа данных
[ редактировать ]В отличие от исследовательских симуляторов, симуляторы анализа данных предназначены для практического применения искусственных нейронных сетей. Их основное внимание уделяется интеллектуальному анализу данных и прогнозированию. Симуляторы анализа данных обычно имеют те или иные возможности предварительной обработки. В отличие от более общих сред разработки, симуляторы анализа данных используют относительно простую статическую нейронную сеть, которую можно настроить. Большинство симуляторов анализа данных, представленных на рынке, в качестве основы используют сети обратного распространения ошибки или самоорганизующиеся карты. Преимущество этого типа программного обеспечения в том, что оно относительно простое в использовании. Neural Designer — один из примеров симулятора анализа данных.
Симуляторы для обучения теории нейронных сетей
[ редактировать ]Когда параллельной распределенной обработки тома [1] [2] [3] были выпущены в 1986-87 годах, они содержали относительно простое программное обеспечение. Исходное программное обеспечение PDP не требовало каких-либо навыков программирования, что привело к его принятию широким кругом исследователей в самых разных областях. Исходное программное обеспечение PDP было преобразовано в более мощный пакет под названием PDP++, который, в свою очередь, стал еще более мощной платформой под названием Emergent . С каждой разработкой программное обеспечение становилось все более мощным, но и более сложным для использования новичками.
В 1997 году к книге было выпущено программное обеспечение tLearn. [4] Это был возврат к идее создания небольшого, удобного для пользователя симулятора, разработанного с учетом потребностей новичков. tLearn позволил использовать базовые сети прямого распространения, а также простые рекуррентные сети, обе из которых могут быть обучены с помощью простого алгоритма обратного распространения. tLearn не обновлялся с 1999 года.
В 2011 году вышел симулятор Basic Prop. Basic Prop — это автономное приложение, распространяемое в виде платформо-нейтрального JAR-файла, которое обеспечивает большую часть тех же простых функций, что и tLearn.
Среды разработки
[ редактировать ]Среды разработки нейронных сетей отличаются от описанного выше программного обеспечения в первую очередь по двум причинам: их можно использовать для разработки пользовательских типов нейронных сетей и они поддерживают развертывание нейронной сети вне среды. В некоторых случаях они обладают расширенными возможностями предварительной обработки , анализа и визуализации.
На основе компонентов
[ редактировать ]Более современный тип среды разработки, который в настоящее время пользуется популярностью как в промышленном, так и в научном использовании, основан на парадигме, основанной на компонентах . Нейронная сеть создается путем соединения компонентов адаптивного фильтра в потоке конвейерного фильтра. Это обеспечивает большую гибкость, поскольку можно создавать собственные сети, а также использовать пользовательские компоненты. Во многих случаях это позволяет сочетать адаптивные и неадаптивные компоненты для совместной работы. Поток данных контролируется заменяемой системой управления и алгоритмами адаптации. Другая важная особенность — возможности развертывания.
С появлением компонентных инфраструктур, таких как .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
[ редактировать ]Для производства и потребления ПММЛ предлагается ряд продуктов. В этот постоянно растущий список входят следующие продукты для нейронных сетей:
- R: создает PMML для нейронных сетей и других моделей машинного обучения с помощью пакета pmml.
- SAS Enterprise Miner: создает PMML для нескольких моделей интеллектуального анализа данных, включая нейронные сети , линейную и логистическую регрессию, деревья решений и другие модели интеллектуального анализа данных.
- SPSS: создает PMML для нейронных сетей, а также для многих других моделей интеллектуального анализа данных.
- STATISTICA: производит PMML для нейронных сетей, моделей интеллектуального анализа данных и традиционных статистических моделей.
См. также
[ редактировать ]- ИИ-ускоритель
- Физическая нейронная сеть
- Сравнение программного обеспечения глубокого обучения
- Интеллектуальный анализ данных
- Интегрированная среда разработки
- Логистическая регрессия
- Мемристор
Ссылки
[ редактировать ]- ^ Румельхарт, Д.Э., Дж.Л. Макклелланд и исследовательская группа НДП (1986). Параллельная распределенная обработка: исследования микроструктуры познания. Том 1: Фонды, Кембридж, Массачусетс: MIT Press
- ^ Макклелланд, Дж. Л., Д. Е. Румельхарт и исследовательская группа НДП (1986). Параллельная распределенная обработка: исследования микроструктуры познания. Том 2: Психологические и биологические модели, Кембридж, Массачусетс: MIT Press.
- ^ Макклелланд и Румельхарт «Исследования в области параллельной распределенной обработки», MIT Press, 1987
- ^ Планкетт, К. и Элман, Дж.Л., Упражнения по переосмыслению врожденности: справочник по коннекционистскому моделированию (MIT Press, 1997).
Внешние ссылки
[ редактировать ]- Сравнение симуляторов нейронных сетей в Университете Колорадо