Коллекция тестовых задач

В данном разделе приводится обзор источников тестовых данных для нейросетевого моделирования, доступных в Интернет. Аналогичные исследования являются общепринятыми и в других областях (например, коллекция тестовых задач для алгоритмов многомерной оптимизации, собранная в Аргоннской национальной лаборатории США [Argonne99] или коллекция StatLog для статистических алгоритмов [StatLog99]).

Европейские исследовательские проекты по вопросам тестирования нейросетевых и статистических алгоритмов

Проект ELENA

ELENA (Enhanced Learning for Evolutive Neural Architectures - Улучшенные Методы Обучения для Эволюционирующих Нейронных Архитектур) - один из проектов ESPRIT в области фундаментальных исследований (Basic Research ESPRIT project Number 6891).

Проект ELENA ориентирован на изучение процессов обучения нейронных сетей задачам классификации, как на основе добавления/удаления нейронов, так путем адаптации синапсов. Проект включает теоретические исследования алгоритмов, моделирование и тестирование, особенно на реалистических и промышленных данных. И наконец, завершающей целью проекта является оценка возможности аппаратной реализации на СБИС (VLSI).

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

В результате проекта ELENA предложены методы, способные решать реалистичные задачи классификации. Это подтверждается тестами и сравнительными вычислительными экспериментами, на основе которых можно сделать вывод об эффективности нейросетей.

Проект ELENA базируется на "трех осях".

В контексте данной работы прежде всего представляет интерес направление B. Позже мы приведем описание некоторых баз данных, использовавшихся [ELENA] в проекте ELENA.

Проект SIENA

SIENA (Simulation Initiative for European Neural Applications - Инициатива по Моделированию для Нейросетевых Приложений в Европе) - также является проектом ESPRIT (ESPRIT project 9811). Основной задачей этого проекта [SIENA], предложенного в 1996 г., было устранение наметившегося отставания Европы от США и Японии в промышленных приложениях нейросетей.

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

Проект выполнялся в течение полутора лет шестью организациями из пяти Европейских стран (Великобритания, Испания, Франция, Нидерланды и Германия). Анализ охватывал около 40% всех приложений и разработок.

В итоге были получены статистические данные о характере интеграции Европы в этой области и распределении разработок по странам (UK - 32%, Нидерланды - 24%, Германия - 13%, остальные меньше 10%), по типам приложений (Контроль и управление - 31%, прогноз - 14%, распознавание и детектирование образов - 14%, обработка изображений - 10%) и по промышленным секторам (Производство - 39%, бизнес-услуги и маркетинг - 19%, финансы и банки - 12%)

Объем рынка в Европе в 1996 г. оценен масштаба 150 MUSD, что почти на порядок ниже значения, которое предсказывалось в 1992 г.

Для целей нашей работы представляет большой интерес описания успешных применений нейронных сетей в различных секторах экономики. В целом эти данные составляют серьезную базу для маркетинговых исследований. Подробнее с этими материалами можно ознакомиться на сайте проекта [SIENACases].

Проект NEUFODI

NEUFODI (Neural Networks in Diagnosis and Forecasting Applications - Нейронные Сети в Задачах Диагностики и Прогноза) - проект ESPRIT (ESPRIT project 5433). Этот один из первых Европейских проектов по нейронным сетям (1990-1993). Его целью было развитие нейросетевых методов принятия решений в условиях данных с низким разрешением [NEUFODI]. При этом были рассмотрены варианты приложений в различных областях.

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

Результатами проекта явились разработки новых нейроархитектур, know-how в некоторых предметных областях, а также прототипы нейросетевых систем для перечисленных приложений.

Для целей нашей работы представляет интерес методика тестирования нейросетевых алгоритмов (Canu, 1993), разработанная в рамках NEUFODI.

Другие проекты и задачи

Проект DELVE

DELVE (Data for Evaluating Learning in Valid Experiments - Данные для Оценки Обучения в Вычислительных Экспериментах) является исследовательским проектом [DELVE] Университета в Торонто. DELVE представляет собой стандартизованную среду для сравнительного анализа методов машинного обучения, основанных на эмпирических данных. DELVE позволяет провести эксперименты с использованием большого числа данных и сопоставить их результаты с хорошо документированными методиками.

DELVE состоит из трех частей:

Архив данных DELVE состоит из трех разделов. Первый раздел (Assessment - поддержка) рекомендован для апробации и публикации готовых методик. Второй раздел (Development - разработка) содержит базы данных, полезные при разработке новых методик или настройке параметров. Предполагается, что после настройки методики будут проверяться на данных из первого раздела. И, наконец, последний третий раздел (Historical - исторический) содержит несколько баз, представляющих в основном исторический интерес. Эти данные широко (и долго) цитируются в литературе, и имеется значительное количество опубликованных данных по испытаниям различных методик (в том числе не связанных с нейронными сетями).

Для целей данной работы из коллекции DELVE были использованы несколько баз данных.

Описание коллекции задач

Эти задачи весьма различаются по уровню сложности - от иллюстраций до реальных промышленных проблем. Некоторые из этих задач использовались автором в 1994-1998 г. в качестве тем студенческих курсовых работ. Часть задач изложены в виде учебных заданий.

В этом разделе собраны 25 тестовых информационных задач для тестирования нейросетевых алгоритмов. Задачи относятся к медицине, истории, экономике и социологии, лингвистике, электротехнике, финансам, биологии, криминалистике и другим прикладным областям. Ряд задач носит модельный геометрический характер.

Задача 1. Моделирование фрагмента электрической цепи.

Построить нейросетевую модель цепи постоянного тока, изображенной на рисунке. Входные параметры - значение напряжения U, сопротивления R, r. Выходные параметры - показания вольтметра V. Диапазоны значений U = 0..10 V, R=0.1..10, r=0.1,..10.

При каких значениях параметров резисторов наблюдается наихудшая аппроксимация решения? Почему?

Задача 2. Игра в крестики-нолики.

Обучение многослойного персептрона игре в крестики-нолики 3x3. Клетки доски закодированы позициями 1..9. Входным вектором является девятимерный вектор, в котором в соответствующей позиции задается 0, если в ней находится 0, 1 - если x и 0.5, если клетка пуста. На выходе нейросети получается новое положение после хода нейросети (нейросеть учится играть ноликами). Начинают крестики. Например:

Позиция на входе                ...         .X.         ...
Код входа                       0.5 0.5 0.5 0.5 1.0 0.5 0.5 0.5 0.5
Ответ нейросети                 0.5 0.5 0.5 0.5 1.0 0.0 0.5 0.5 0.5
Позиция после хода нейросети    ...         .XO         ...

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

Сколько всего Вам потребовалось примеров? Как это число соотносится с числом возможных непроигрышных партий? Попробуйте заставить компьютер играть сам с собой (для этого для одной из программ замените 0.0 на 1.0 в кодах позиции).

Задача 3. Определение злокачественности опухоли.

Построить диагностическую систему для различения злокачественных опухолей от незлокачественных образований по описанию клеток пробы (Wisconsin Breast Cancer Database).

Входные параметры (принимают значения от 1 до 10) - 9 величин (имеющих медицинскую специфику)

1 - толщина слоя
2 - степень однородности размеров клеток
3 - степень однородности формы клеток
4 - степень маргинальности спайки (слипание клеток)
5 - размер эпителиальных одиночных клеток
6 - количество свободных ядер
7 - хроматин
8 - нормальные ядра
9 - митозы

Выходной параметр - класс 0 - доброкачественная, 1 - злокачественная опухоль. Исходные данные (матрицы P, T) записаны в файле. Имеется 699 примеров, которые разбиваются на две группы - первые N примеров используются для обучения многослойного персептрона, остальные для тестирования.

Требуется построить зависимость ошибки прогноза (тестирования) от N. При каких N можно говорить о "надежном распознавании"?

Задача 4. Прогноз логистического стохастического процесса.

Построить нейросетевое предсказание стохастического временного ряда, представленного на рисунке. Имеется 100 наблюдений (точек) данного ряда, требуется предсказать следующее 101-е значение.

Для прогноза используйте метод погружения (предсказание i-го члена ряда по значениям i-1, i-2 .. i-k членов). При этом нейросеть будет иметь k входов и 1 выход. Соответствующие данные для k=2 имеются в файле.

Требуется не только предсказать следующее значение, но и оценить точность предсказания. Для этого выборку следует разбить на обучающую и тестирующую части, и оценить ошибку обобщения.

Задача 5. Две спирали.

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

Данные (582 точки) содержатся в файле. Использовать первые 388 точек для обучения, остальные для тестирования. Требуется построить многослойную нейросеть, решающую эту задачу и имеющую минимум связей. Подсказка - эта задача является весьма сложной. Возможно Вам потребуется нейросеть с 2 скрытыми слоями.

Задача 6. Обучение персептрона-ученика у персептрона-учителя.

Имеется 300 примеров, которые получены от персептрона-учителя с 3 входами, X нейронами на скрытом слое с сигмоидальной переходной функцией (logsig), и одним линейным выходом (purelin). Примеры записаны в файле. Требуется оценить "интеллект" учителя (число скрытых нейронов X) на основе попыток обучения данным нескольких учеников разных способностей (с разным числом нейронов на скрытом слое). Построить зависимость "обучаемости" учеников (ошибки обучения) от их "способностей".

Задача 7. Классификация в случае двух перекрывающихся классов (Clouds database, ELENA Project).

Цель данной задачи - построение нейросетевого классификатора для двух сильно перекрывающихся классов с нелинейной границей, разделяющей классы. Исходные данные (2 входа - действительные числа, 1 выход - номер класса) содержатся в файле. Файл содержит 5000 примеров (примеры одного класса изображены мелкими точками, второго - крупными). Для обучения используются первые 4000 примеров, остальные - для тестирования.

Требуется построить нейросеть, дающую минимальную ошибку при тестированиии.

Задача 8. Классификация в случае двух неперекрывающихся классов (Concentric database, ELENA Project).

В этой задаче исследуется построение нейросетевого классификатора для двух неперекрывающихся классов, которые являются линейно неразделимыми. Исходные данные (2 входа - действительные числа, 1 выход - номер класса) содержатся в файле. Файл содержит 2500 примеров (примеры одного класса изображены мелкими точками, второго - крупными). Для обучения используются первые 1800 примеров, остальные - для тестирования.

Требуется построить нейросеть, дающую минимальную ошибку при тестированиии.

Задача 9. Классификация в случае двух перекрывающихся гауссовых распределений (Gauss_nD database, ELENA Project).

Требуется исследовать возможность нейросетевой классификации для случая двух перекрывающихся гауссовых распределений в пространствах различной размерности. Исходные данные (k входов - действительные числа, 1 выход - номер класса) содержатся в различных файлах (для k=2, k=3 и k=8). Файлы содержат по 5000 примеров. Для обучения в каждом из 3-х вариантов используются первые 3500 примеров, остальные - для тестирования.

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

Задача 10. Классификация данных, полученных со спутника Landstat (Satimage database, ELENA Project, STATLOG ESPRIT project).

Исходные данные получены из наблюдений различных участков земной поверхности в различных спектральных диапазонах с использованием радаров (36 входных параметров - 4 спектральных диапазона для матрицы из 9 пикселов) спутником Landstat NASA. База данных содержит 6435 записей. Выход нейросети принимает одно из следующих значений:

1 - глинистая (красная) почва
2 - посевы технических культур (хлопок)
3 - серая почва
4 - увлажненная серая почва
5 - покос (стерня)
6 - смесь всех перечисленных покрытий (в базе данных отсутствует)
7 - очень влажная серая почва

Требуется построить нейросетевую классификационную систему (на выходном слое используется линейная переходная функция) с наименьшей ошибкой тестирования. Для обучения использовать первые 5000 записей, остальные для тестирования. Каковы преимущества и недостатки кодирования 7 классов одним выходным нейроном?

Задача 11. Распознавание типов текстур (Texture database, ELENA Project).

Целью данной задачи является построение нейросистемы - классификатора текстур поверхности для задач сегментации изображений. Для идентификации текстуры используются 40 параметров (коэффициенты сверток (моменты) фрагментов поверхности с различными полиномиальными базисными функциями). База данных содержит 500 записей для каждого из 11 классов текстур - всего 5500 записей . Выход нейросети принимает одно из следующих значений:

2 - травянистая лужайка
3 - прессованый переплет из телячьей кожи
4 - бумага
6 - плетение из соломки
7 - хлопчатобумажная парусина
8 - свиная кожа
9 - пляжный песок
10 - пляжный песок (другой образец)
12 - восточная одежда из соломки
13 - восточная плетеная одежда из соломки (другой образец)
14 - восточная плетеная одежда из травы

Требуется построить нейросетевую классификационную систему (на выходном слое используется линейная переходная функция) с наименьшей ошибкой тестирования. Для обучения использовать первые 4000 записей, остальные для тестирования. Каковы преимущества и недостатки кодирования 11 классов одним выходным нейроном?

Задача 12. Распознавание типов цветков ириса (Iris database, ELENA Project).

В данной задаче требуется построить нейросетевую классификацию типов цветков ириса (Iris Setosa - 0, Iris Versicolour - 1, Iris Virginica - 2) по 4 размерам их пестиков и тычинок. База данных содержит по 50 примеров каждого класса (всего 150 примеров). Первые 100 примеров используются для обучения, остальные - для тестирования.

Требуется построить нейросетевую классификационную систему (на выходном слое используется линейная переходная функция) с наименьшей ошибкой тестирования. Каковы преимущества и недостатки кодирования 3 классов одним выходным нейроном?

Задача 13. Распознавание фонем французского языка (Phoneme database, ELENA Project, ROADS ESPRIT project).

Цель данной задачи - распознавание типа фонемы (два класса - согласные - 0, гласные - 1) по величине Фурье коэффициентов в нескольких (5 входов) спектральных диапазонах, независимо от особенностей индивидуального произношения и контекста. База данных содержит 5404 записи, из которых первые 3500 используются для обучения, остальные для тестирования. Требуется построить нейросеть, дающую минимальную ошибку при тестировании.

Задача 14. Поиск незначимых параметров при многомерной классификации (add10 database, J.H. Friedman, DELVE benchmark collection)

Данная задача предложена в работе [Friedman88]. Требуется аппроксимировать функцию 10 переменных

f(x1,...,x10) = 10*sin(pi*x1*x2) + 20*(x3-0.5)^2 + 10*x4 + 5*x5 + n,

где n - Гауссовый шум. Входы x1...x10 выбираются случайно из отрезка [0; 1]. Поскольку в формировании функции участвуют явно только 5 из 10 переменных, то оставшиеся 5 не значимы с точки зрения построения аппроксимации. В файле столбцы данных расположены в случайном порядке. Требуется выделить 5 незначимых входов при помощи исключения входов нейросети. (При моделировании использовать линейную переходную функцию для выходного нейрона).

Задача 15. Прогноз стоимости недвижимости в районах Бостона (Boston database, DELVE benchmark collection).

В данной задаче требуется построить прогностическую систему для оценки стоимости жилья в Бостоне (США), основываясь на следующих 13 входных параметрах:

1  CRIM - уровень преступности на душу населения
2  ZN - доля жилых массивов на площади 25,000 кв. футов.
3  NDUS - доля предприятий, не связанных с розничной торговлей
4  CHAS - близость к реке Charles River (1 если район граничит с рекой, 0 - в противном случае)
5  NOX - концентрация окисей азота (в долях 1/10 миллионов)
6  RM - среднее число комнат в жилище
7  AGE - доля частных владений, построенных до 1940 года
8  DIS - взвешенное расстояние до 5 центров сосредоточения работы в Бостона
9  RAD - индекс доступности радиальных автострад
10 TAX - полный налог на недвижимость в расчете на $10,000
11 PTRATIO - доля школьных учителей в районе
12 B - коэффициент 1000(Bk - 0.63)^2, где Bk - доля чернокожего населения
13 LSTAT - процент населения ниже черты бедности

Выходной параметр

14 - MEDV средняя цена частного жилья в $1000's

База данных содержит 506 записей, из которых первые 400 используются для обучения, остальные - для тестирования. Требуется построить нейросетевую классификационную систему (на выходном слое используется линейная переходная функция) с наименьшей ошибкой тестирования.

Задача 16. Классификация типов узлов скрещивания в цепочках ДНК (Splice database, DELVE benchmark collection)

В данной задаче рассматриваются цепочки ДНК, состоящих из последовательностей аминокислот (A, C, T и G) длиной 60 каждая. В каждом примере середина цепочки является кандидатом на узел скрещивания (рассматриваются 3 класса - 0 - переход типа "интрон-эксон", 0.5 - незначимый переход, 1 - переход "эксон-интрон"). Аминокислоты закодированы целыми числами A - 0, C - 1, T - 2, G - 3.

Требуется построить нейросетевую систему классификации (60 входов, 1 выход). Данные (3175 примеров) содержатся в файле. 2500 первых примеров используются для обучения, остальные - для тестирования. Требуется построить нейросетевую классификационную систему с наименьшей ошибкой тестирования.

Задача 17. Оценка влияния социальных факторов на выживание пассажиров потерпевшего аварию судна "Титаник" (Titanic database, DELVE benchmark collection).

В этой задаче рассматривается печальная статистика трагедии 14 апреля 1912 года с океанским лайнером "Титаник". Среди 2201 пассажиров судна 711 удалось спастись. Требуется исследовать статистическое влияние на выживаемость людей следующих факторов:

1 CLASS - класс каюты 0-1й, 1 - 2й, 2 - 3й, 3 - член команды
2 AGE - возраст 0 - ребенок, 1 - взрослый
3 SEX - пол 0 - женщина, 1 - мужчина

Выходной параметр

4 SURVIVED - 0 - погиб, 1 - выжил.

Задача 18. Сжатие данных при помощи нейронных сетей с "узким горлом".

Целью данной задачи является анализ возможности сжатия данных (цепочек из 0 и 1) при помощи нейронных сетей "с узким горлом". Для набора цепочек длинны k (рассматривается случай k=16) строится нейронная сеть c k входами, h нейронами на скрытом слое и k выходами. Скрытый слой представляет собой "узкое горло" (h < k), через которое цепочка должна проходить без искажений (или с заданным уровнем искажений). Задача обучения состоит в подаче одинаковых сигналов на входы и выходы нейросети (т.е. обучение тождественному отображению).

Рассматриваются 3 базы случайных данных (по 2000 примеров в каждой) с различными вероятностями появления 1 (50%, 70% и 90%).

Требуется, варьируя h, изучить предельную возможность сжатия каждой из баз i) без потерь информации, ii) с потерей не более 1 бита информации в среднем в расчете на 1 пример, iii) с потерей не более 2 бит информации в среднем в расчете на 1 пример.

Рассмотрите сети с линейными и нелинейными переходными функциями нейронов. Объясните различия в предельной степени сжатия для каждой из баз данных.

Задача 19. Сжатие данных при помощи карты самоорганизации Кохонена.

В этой задаче требуется изучить качество сжатия данных с использованием нейросети Кохонена. Используются базы данных задачи 18 (см описание в задаче 18). Сжатие информации состоит в замене битовой цепочки на номер нейрона Кохонена, к которому она относится. Требуется исследовать зависимость ошибок, возникающих при такой замене, от размера карты Кохонена (числа нейронов в ней). Расчеты провести для карт 2x2, 2x3, 3x3, 3x4 (не менее 3 расчетов для каждого случая). Проанализировать полученную статистику.

Задача 20. Определение типа синдрома Кашинга (Cushings syndrome, Aitchison & Dunsmore (1975))

В данной задаче требуется построить классификационную систему для определения типа синдрома Кашинга. Для 27 пациентов известны медицинские данные (2 входа)

1 - Tetrahydrocortisone мг/сутки
2 - Pregnanetriol мг/сутки

Тип синдрома кодируется в одной выходной переменной a - 0, b - 1, c - 2. Данные содержатся в файле.

Требуется, проведя обучение нейронной сети на первых 21 пациентах, определить тип синдрома у остальных 6. Для двух из 6 тестовых примеров тип синдрома не совпадает ни с одним из a, b, c. Сможет ли нейронная сеть это определить?

Задача 21. Классификация вирусов-палочек, поражающих технические культуры (Viruses database, Fauquet et al. (1988)).

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

База данных содержит 61 пример вирусов следующих типов:

0 - Hordeviruses (3 примера)
1 - Tobraviruses (6)
2 - Tobamoviruses (39)
3 - furoviruses (13)

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

Задача 22. Классификация разновидностей крабов genus Leptograpsus (Crabs database, Campbell & Mahon (1974)).

База данных содержит по 50 примеров крабов genus Leptograpsus каждого пола (0 - женский, 1 - мужской) для двух разновидностей окраски (0 - голубая 1 - оранжевая), итого 200 примеров. Для каждого примера известны 5 входных параметров

1 - FL - размер передней губы панциря (mm)
2 - RW - ширина задней части панциря  (mm)
3 - CL - длина вдоль средней линии панциря (mm)
4 - CW - максимальная ширина панциря (mm)
5 - BD - толщина тела  (mm)

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

Задача 23. Классификация типов стекол по их физико-химическим свойствам в судебно-следственной практике (UCI machine-learning database collection (Murphy & Aha, 1995)).

Имеются данные по 214 образцам (крупицам и осколкам) стекла со следующими параметрами:

1 - RI - показатель преломления
2 - Na - весовая доля оксида(оксидов) натрия %
3 - Mg - весовая доля оксида(оксидов) марганца %
4 - Al - весовая доля оксида(оксидов) алюминия %
5 - Si - весовая доля оксида(оксидов) кремния %
6 - K - весовая доля оксида(оксидов) калия %
7 - Ca - весовая доля оксида(оксидов) кальция %
8 - Ba - весовая доля оксида(оксидов) бария %
9 - Fe - весовая доля оксида(оксидов) железа %

Выходная переменная - природа образца (один из 6 типов стекла)

1 (WinF) оконное стекло (float)
2 (WinNF) оконное стекло (non-float)
3 (Veh) автомобильное стекло
5 (Con) стеклянные сосуды
6 (Tabl) настольное стекло
7 (Head) стекло фар автомобиля

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

Задача 24. Диагностика заболеваний диабетом у женщин из индейских племен Pima (UCI machine-learning database collection (Murphy & Aha, 1995)).

База данных содержит результаты медицинских наблюдений за 532 женщинами старше 21 года, кровей индейцев племени Pima, проживающих около Финикса (штат Аризона). Наблюдения проведены по критериям Всемирной Организации Здоровья (World Health Organization) и выполнены американским Институтом диабета и заболеваний почечно-пищеварительного тракта (Smith et al, 1988).

Входные параметры включают:

1 - npreg - число беременностей
2 - glu - концентрация плазма-глюкозы в стоматическом тесте
3 - bp - диастолическое давление крови (mm Hg)
4 - skin - толщина кожи на складке трехглавой мышцы (mm)
5 - ins - содержание сыворотки инсулина (микро-U/ml)
6 - bmi - индекс веса тела (вес в килограммах/(рост в метрах)2)
7 - ped - наличие диабета в роду
8 - age - возраст (в годах)

Выходная переменная - наличие диабета (0 - да, 1 - нет)

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

Задача 25. Статистика забастовок в развитых странах.

Данные содержат ежегодные наблюдения за объемом забастовок (потерянных дней на 1000 занятых) и экономическими показателями в 18 странах в 1951-1985 годах.

Входные параметры

(1) - код страны
(2) - год
(3) - уровень безработицы
(4) - уровень инфляции
(5) - уровень представленности в парламентах социально-демократических и лейбористских партий
(6) - степень централизации союза OECD, к которому принадлежат страны

Коды стран: [1] Австралия, [2] Австрия, [3] Бельгия, [4] Канада, [5] Дания, [6] Финляндия, [7] Франция, [8] Германия, [9]Италия, [10] Ирландия, [11] Япония, [12] Нидерланды, [13] Новая Зеландия, [14] Норвегия, [15] Швеция, [16]Швейцария, [17] Великобритания, [18] США.

Выходной параметр

(1) - объем забастовок

База данных содержит 625 примеров. Требуется оценить связь экономических и социальных факторов с уровнем забастовок. Для обучения нейросети используются первые 550 записей, остальные - для тестирования.

Задача Nettalk - синтезатор речи

В заключении приведем некоторые оригинальные результаты моделирования для реалистической задачи Nettalk.

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

Нейронная сеть прямого распространения обучалась произношению английских слов. База данных Nettalk содержит информацию по 20008 наиболее употребительных слов английского языка, [Nettalk, Sejnowski87]. Для проведения нейросетевых расчетов каждое слово из n букв было преобразовано в n строк из 7 символов (см. пример на рис. 2). При необходимости слева и справа от слова в строке добавлялись пробелы. Таким образом, входной алфавит модели состоял из 26 букв английского языка и символа пробела. Нейросеть училась воспроизводить произношение центральной (4-ой) буквы в такой строке. Произношение включало в себя некоторую фонему, а также условный знак, обозначающий один из 5 вариантов интонации. Алфавит фонем насчитывал 52 символа. Всего имелось около 150000 примеров, которые использовались для обучения и тестирования нейронной сети.

___neur  =>  n, >
__neuro  =>  Y, 1
_neuron  =>  -, >
neuron_  =>  r, >
euron__  =>  a, 2
uron___  =>  n,._

Рис. 2 Предобработка базы данных Nettalk на примере слова neuron

Непосредственно на вход нейросети поступали унарные коды 7 символов по 27 бит каждый. Выходной образ для нейросети кодировался по схеме 1 в 52 (фонема) и 1 в 5 (интонация). Таким образом, у нейронной сети было 189 входов и 57 выходов. Рассматривались сети с 1 и 2 скрытыми слоями по 40-120 нейронов. При обучении применялся алгоритм RProp. Наилучшие результаты были получены для сети с одним скрытым слоем из 120 нейронов.

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

Сеть обучалась сначала на 5000 примерах. За несколько десятков эпох обучения была достигнута точность около 76% на тестовом множестве. Далее нейросеть дообучалась на других обучающих примерах. В результате была построена сеть, которая распознавала обучающие примеры с точностью 95-97%, а тестовые данные - с точностью не менее 90-92 %. Это неплохо согласуется с результатами, полученными для базы данных Nettalk другими авторами, [Sejnowski87].

Итоги

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



Главная страница   |   Наверх   |   Содержание   |   Литература

Hosted by uCoz