NeuroPro

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

Начало
Новости
Услуги
Нейронные сети
• базовые идеи
• возможности
• преимущества
• способы применения
• области применения
• точность решения
• НС и ИИ
Программы
Статьи
Заметки
Ссылки
Вопросы и ответы
Об авторе / контакты

Применение нейронных сетей

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

1. Решаемые задачи и конкурирующие методы

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

2. Требования к компетенции пользователя

Под пользователем здесь понимается человек, непосредственно разрабатывающий нейросетевые модели, а не конечный пользователь готового нейросетевого "решателя". Несмотря на многочисленные заявления о том, что нейронные сети доступны пользователям-неспециалистам, реальное положение вещей на самом деле иное. Во-первых, правильную формулировку задачи никакой компьютер за пользователя не сделает, причем под "правильной формулировкой" понимается не только правильность смысловой постановки задачи, но и правильный выбор математического метода решения и его настроек − а это в случае нейронных сетей подразумевает выбор адекватной структуры нейросети, алгоритма обучения, критерия качества решения задачи и т.д. Конечно, значительная гибкость и универсальность нейроалгоритмов допускает применение по принципу забивания гвоздей микроскопом, но не всегда это приводит к наилучшему результату. Во-вторых, имеющиеся автоматические схемы подбора оптимальных настроек нейросетевых методов не могут найти правильные решения для более-менее сложных задач. Например, соответствующие процедуры в Statistica Neural Networks не умеют хорошо решать задачу прогнозирования временных рядов, поскольку не используют приведения ряда к стационарному виду. А если делать вручную, то для получения хороших результатов в задаче прогнозирования временных рядов придется осваивать как теорию статистического прогнозирования и соответствующий модуль пакета Statistica (или альтернативную статпрограмму), так и нейросетевые методы и программы. И для иных классов задач грамотное применение нейросетей требует хороших знаний как методов нейроинформатики, так и других методов обработки и анализа данных (статистики, например).

3. Возможные способы применения и реализации

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

После создания нейросетевых моделей используется либо автоматическая генерация описания обученной нейросети на некотором языке программирования для того, чтобы полученный модуль можно было вставить в программу пользователя, либо поддерживаемые нейроимитаторами стандартные средства межпрограммной коммуникации (DDE, OLE, COM в среде Windows) для возможности вызова этих нейропрограмм из программ пользователя.

На специфические вычислительные архитектуры (например, сигнальные процессоры) обычно переносят сгенерированное программой-нейроимитатором описание обученной нейронной сети на языке программирования (например, языке С). Для ПЛИС/PLM/FPGA-кристаллов существуют и CAD-системы, в которых номенклатуру нейроэлементов можно создать-описать в виде набора модулей и потом из этих модулей путем выбора и "перетаскивания" мышкой собрать нужную топологию-архитектуру нейросети, затем проект скомпилировать и "прошить" кристалл. В настоящее время возможно создавать нейрокомпьютеры на базе видеокарт (графических процессоров).

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

далее: области практического применения нейросетей.