Смекни!
smekni.com

Нейроинформатика и ее приложения (стр. 2 из 3)

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

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

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

Термин «правдоподобные» взят нами из книги Дж. Пойя «Математика и правдоподобные рассуждения». Любая, даже самая строгая математическая конструкция сначала создается всего лишь как правдоподобная гипотеза. Правдоподобными мы называем те выводы, которые еще не прошли испытания на достоверность и строгость, однако именно так совершаются открытия. Кроме того, напомним, что утверждения о статистической достоверности базируются на весьма ограничительных гипотезах о статистической природе эмпирического материала (согласно этой природе данные представляют собой результаты независимых статистических испытаний выбора из фиксированной генеральной совокупности).

Задача классификации также может рассматриваться как задача заполнения пропусков в таблицах: для каждого класса в таблице есть поле, в котором указывается, принадлежит объект данному классу или нет. В эти поля могут помещаться численные значения, например, 1, если объект принадлежит классу, и 0 (или -1) в противном случае.

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

Построение отношений на множестве объектов одна из загадочных и открытых для творчества самых перспективных областей применения искусственного интеллекта. Первый и самый распространенный пример этой задачи классификация без учителя. Допустим, задан набор объектов, причем каждому объекту сопоставлен вектор значений признаков (строка таблицы). Требуется разбить эти объекты на классы эквивалентности. Зачем нужно строить отношения эквивалентности между объектами? В первую очередь для фиксации знаний. Мы накапливаем знания о классах объектов это практика многих тысячелетий, зафиксированная в языке: знание относится к имени класса (пример стандартной древней формы: «люди смертны», «люди» имя класса). В результате классификации появляются новые имена и правила их присвоения. Для каждого нового объекта мы должны сделать две вещи:

1. найти класс, к которому он принадлежит;

2. использовать новую информацию, полученную об этом объекте, для исправления (коррекции) правил классификации.

Какую форму могут иметь правила отнесения к классу? Традиционно класс представляют его «типичные», «средние», и т.п. элементы. Такой типичный объект является идеальной конструкцией, олицетворяющей класс. Объект относят к какому-либо классу в результате сравнения с типичными элементами разных классов и выбора ближайшего. Правила, использующие типичные объекты, очень популярны и служат основой для нейросетевой классификации без учителя.

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

Технология получения явных знаний из данных с помощью обучаемых нейронных сетей выглядит довольно просто и вроде бы не вызывает затруднений. Ее реализация включает несколько этапов.

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

Второй этап: исключая наименее значимые связи (и доучивая сети чаще всего, неоднократно), приводим нейронную сеть к логически прозрачному виду так, чтобы полученный навык можно было «прочитать».

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

Простой пример: нейронная сеть обучалась предсказывать результаты выборов президента США по ряду экономических и политических показателей. Обученные сети были минимизированы по числу входных параметров и связей. Оказалось, что для надежного предсказания исхода выборов в США достаточно знать ответы всего на пять вопросов, приведенных ниже в порядке значимости:

1. Была ли серьезная конкуренция при выдвижении от правящей партии?

2. Отмечались ли во время правления существенные социальные волнения?

3. Был ли год выборов временем спада или депрессии?

4. Произвел ли правящий президент значительные изменения в политике?

5. Была ли в год выборов активна третья партия?

От использования остальных признаков нейросеть отказалась. Более того, эти пять «симптомов» политической ситуации в стране входят в распознающее правило двумя «синдромами». Пусть ответы на вопросы кодируются числами: +1 «да» и -1 «нет». Первый синдром есть сумма ответов на вопросы 1, 2, 5. Его естественно назвать синдромом политической нестабильности (конкуренция в своей партии плюс социальные волнения плюс дополнительная оппозиция). Чем он больше, тем хуже для правящей партии. Второй синдром разность ответов на вопросы 4 и 3 (политическое новаторство минус экономическая депрессия). Его наличие означает, что политическое новаторство может, в принципе, уравновесить в глазах избирателей экономический спад. Результаты выборов определяются соотношением двух чисел значений синдромов. Простая, но достаточно убедительная политологическая теория, чем-то напоминающая концепцию то ли Маккиавелли, то ли Ленина («единство партии прежде всего, оно является важнейшим слагаемым политической стабильности»).

Именно нейросетевая технология производства знаний, по-моему, является «точкой роста», которая по-новому развернет нейроинформатику, преобразует многие разделы информатики и создаст новые.

Примеры приложений

Насколько мы можем судить по открытой печати, приложения нейронных сетей распределены примерно следующим образом: более 60% рынка занимают финансовые и военно-технические приложения; медицинские приложения тоже находятся на весьма почетном месте около 10%.

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

Основные пользовательские преимущества нейросетевого ПО перед другими системами его «демократичность» (врачи практически самостоятельно создавали себе экспертные системы) и универсальность, способность справиться с большим спектром задач. Кроме того, нейроимитаторы с успехом могут использоваться и в медицинских исследованиях.

Вот несколько характерных примеров построенных систем.

Пример 1. Измерение накопленной дозы радиоактивного облучения