Здравоохранение
В свое время в США была введена в действие система обнаружения мошенничеств в области здравоохранения. Было подсчитано, что потери бюджета от такого рода фальсификаций составляют около 730 млн. долл. в год. Создание специализированной нейросетевой системы заняло у фирмы ITC более года и обошлось всего в 2,5 млн. долл. Тестирование новой системы показало, что нейронная сеть позволяет обнаруживать 38% случаев мошенничества, тогда как использовавшаяся до нее экспертная система давала только 14%. Для настройки нейронной системы были применены также методы нечеткой логики и генетической оптимизации.
В медицинской диагностике нейронные сети нередко используются вместе с экспертными системами. Компанией «НейроПроект» была создана система объективной диагностики слуха у грудных детей. Общепринятая методика диагностики состоит в том, что в процессе обследования регистрируются отклики мозга в ответ на звуковой раздражитель, проявляющиеся в виде всплесков на электроэнцефалограмме. Для диагностики слуха ребенка опытному эксперту-аудиологу необходимо провести около 2 тыс. тестов, нейронная сеть способна с той же достоверностью определить уровень слуха уже по 200 наблюдениям в течение всего нескольких минут, причем без участия специалиста.
Приведенные примеры показывают, что технологии нейронных сетей применимы практически в любой области, а в таких задачах, как распознавание образов и прогнозирование котировок акций, они стали уже привычным и широко используемым инструментом. Повсеместное проникновение нейронных технологий в другие области – только вопрос времени. Конечно, внедрение новых наукоемких технологий – процесс сложный, однако практика показывает, что инвестиции не только окупаются и приносят выгоду, но и дают тем, кто их использует, ощутимые преимущества.
Перспективы
В настоящее время искусственные нейронные сети являются важным расширением понятия вычисления. Они уже позволили справиться с рядом непростых проблем и обещают создание новых программ и устройств, способных решать задачи, которые пока под силу только человеку. Современные нейрокомпьютеры используются в основном в программных продуктах и поэтому редко задействуют свой потенциал «параллелизма». Эпоха настоящих параллельных нейровычислений начнется с появлением на рынке большого числа аппаратных реализаций – специализированных нейрочипов и плат расширений, предназначенных для обработки речи, видео, статических изображений и других типов образной информации.
Со временем должна появиться и бытовая техника, подстраивающаяся под своего владельца, предвестником которой можно считать нейросетевой блок адаптивного управления в новом пылесосе фирмы Samsung. Системы безопасности будут узнавать своих хозяев по голосу, внешнему виду и ряду других уникальных характеристик. Получат развитие и системы жизнеобеспечения «умных» электронных домов, которые станут еще более адаптивными и обучаемыми. На производстве и в различных промышленных системах интеллектуальные нейросетевые контроллеры смогут распознавать потенциально опасные ситуации, уведомлять о них людей и принимать адекватные и, что самое главное, своевременные меры. Потоки данных в вычислительных сетях и сетях сотовой связи тоже будут оптимизироваться с помощью нейротехнологий.
Множество надежд в отношении нейронных сетей сегодня связывают именно с аппаратными реализациями, но пока время их массового выхода на рынок, видимо, еще не пришло. Они или выпускаются в составе специализированных устройств, или достаточно дороги, а зачастую и то и другое. На их разработку тратится значительное время, за которое программные реализации на самых последних компьютерах оказываются лишь на порядок менее производительными, что делает использование нейропроцессоров нерентабельным. Но все это только вопрос времени – нейронным сетям предстоит пройти тот же путь, по которому еще совсем недавно развивались компьютеры, увеличивая свои возможности и производительность, захватывая новые сферы применения по мере возникновения новых задач и развития технической основы для их разработки.
Это и понятно, так как предпосылки для появления компьютеров тоже накапливались постепенно: механические калькуляторы были созданы еще во времена Паскаля, теория универсальных вычислений была разработана в 30-х годах Аланом Тьюрингом, а лампы и развитие радиоэлектроники подготовили создание элементной базы для первых ЭВМ. Вторая мировая война поставила задачу расчета баллистических траекторий, для решения которой понадобились мощные калькуляторы, роль которых сыграли ЭВМ 40-х годов, производящие вычисления по разработанному алгоритму, много раз повторяющему одну и ту же последовательность операций.
2.2 Особенности моделирования процессов методом искусственных нейронных сетей (ИНС)
Такой впечатляющий успех определяется несколькими причинами:
• Нейронные сети – это исключительно мощный метод имитации процессов и явлений, позволяющий воспроизводить чрезвычайно сложные зависимости. Нейронные сети по свой природе являются нелинейными, в то время как на протяжении многих лет для построения моделей использовался линейный подход. Кроме того, во многих случаях нейронные сети позволяют преодолеть «проклятие размерности», обусловленное тем, что моделирование нелинейных явлений в случае большого числа переменных требует огромного количества вычислительных ресурсов.
• Другая особенность нейронных сетей связана с тем, что они используют механизм обучения. Пользователь нейронной сети подбирает представительные данные, а затем запускает алгоритм обучения, который автоматически настраивает параметры сети. При этом от пользователя, конечно, требуется какой-то набор эвристических знаний о том, как следует отбирать и подготавливать данные, выбирать нужную архитектуру сети и интерпретировать результаты, однако уровень знаний, необходимый для успешного применения нейронных сетей, гораздо скромнее, чем, например, при использовании традиционных методов.
Механизм обучения
При решении с помощью нейронных сетей прикладных задач необходимо собрать достаточный и представительный объем данных для того, чтобы обучить нейронную сеть решению таких задач. Обучающий набор данных – это набор наблюдений, содержащих признаки изучаемого объекта. Первый вопрос, какие признаки использовать и сколько и какие наблюдения надо провести.
Выбор признаков, по крайней мере первоначальный, осуществляется эвристически на основе имеющегося опыта, который может подсказать, какие признаки являются наиболее важными. Сначала следует включить все признаки, которые, по мнению аналитиков или экспертов, являются существенными, на последующих этапах это множество будет сокращено.
Нейронные сети работают с числовыми данными, взятыми, как правило, из некоторого ограниченного диапазона. Это может создать проблемы, если значения наблюдений выходят за пределы этого диапазона или пропущены.
Вопрос о том, сколько нужно иметь наблюдений для обучения сети, часто оказывается непростым. Известен ряд эвристических правил, которые устанавливают связь между количеством необходимых наблюдений и размерами сети. Простейшее из них гласит, что количество наблюдений должно быть в 10 раз больше числа связей в сети. На самом деле это число зависит от сложности того отображения, которое должна воспроизводить нейронная сеть. С ростом числа используемых признаков количество наблюдений возрастает по нелинейному закону, так что уже при довольно небольшом числе признаков, скажем 50, может потребоваться огромное число наблюдений. Эта проблема носит название «проклятие размерности».
Для большинства реальных задач бывает достаточным нескольких сотен или тысяч наблюдений. Для сложных задач может потребоваться большее количество, однако очень редко встречаются задачи, где требуется менее 100 наблюдений. Если данных мало, то сеть не имеет достаточной информации для обучения, и лучшее, что можно в этом случае сделать, – это попробовать подогнать к данным некоторую линейную модель.
После того как определено количество слоев сети и число нейронов в каждом из них, нужно назначить значения весов и смещений, которые минимизируют ошибку решения. Это достигается с помощью процедур обучения. Путем анализа имеющихся в распоряжении аналитика входных и выходных данных веса и смещения сети автоматически настраиваются так, чтобы минимизировать разность между желаемым сигналом и полученным на выходе в результате моделирования. Эта разность носит название ошибки обучения. Таким образом, процесс обучения – это процесс подгонки параметров той модели процесса или явления, которая реализуется нейронной сетью. Ошибка обучения для конкретной конфигурации нейронной сети определяется путем прогона через сеть всех имеющихся наблюдений и сравнения выходных значений с желаемыми, целевыми значениями. Эти разности позволяют сформировать так называемую функцию ошибок (критерий качества обучения). В качестве такой функции чаще всего берется сумма квадратов ошибок. При моделировании нейронных сетей с линейными функциями активации нейронов можно построить алгоритм, гарантирующий достижение абсолютного минимума ошибки обучения. Для нейронных сетей с нелинейными функциями активации в общем случае нельзя гарантировать достижения глобального минимума функции ошибки.