• ДонНТУ
  • Портал магистров ДонНТУ

 

ПРОБЛЕМЫ ЭФФЕКТИВНОЙ АППРОКСИМАЦИИ МНОГОМЕРНЫХ ФУНКЦИЙ С ПОМОЩЬЮ НЕЙРОННЫХ СЕТЕЙ

 

Автор: Коробкова С.В.

Научно-исследовательский институт автоматической аппаратуры им. В.С. Семенихина, МГУ, г. Москва

 

Источник: http://elibrary.ru/item.asp?id=12795093

 

Введение

Введение Работа посвящена проблемам эффективной аппроксимации многомерных функций.

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

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

 

Вопросы эффективной нейросетевой аппроксимации

Разработку всякого приложения можно разбить на несколько этапов. Поэтапная реализация имеет ряд преимуществ, таких как удобство разработки в части проектирования и тестирования каждого этапа, параллельная разработка этапов и т.п.

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

Следование предложенному маршруту проектирования нейросетевого приложения позволяет получить качественное решение задачи, где каждый шаг обоснован. Это дает также возможность при неудовлетворительной точности или времени решения задачи найти узкие места алгоритма и программы.

При выполнении шагов приведенной схемы проектирования нейросетевого приложения перед разработчиком встают следующие вопросы:

  1. Какую архитектуру сети выбрать для решения заданной задачи.
  2. Каким образом определить начальные значения параметров нейронной сети, чтобы улучшить сходимость алгоритма обучения и качество решения, полученного обученной нейронной сетью.
  3. Как выбрать размер обучающей выборки
  4. Какова для данной задачи стоимость ошибок первого и второго рода
  5. Какую аппаратную реализацию метода выбрать.
  6. Как оценить качество работы алгоритма в сравнении с другими методами.

Выбор архитектуры нейронной сети

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

Выбор начальных условий нейронной сети

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

Выбо размера выборки и работа с выборками малого размера

Еще одной проблемой при разработке нейросетевых решений для решения задачи аппроксимации является выбор размера обучающей выборки. Так как нейронные сети надо обучать и качество решения зависит от качества обучающей выборки, то выборка должна представлять собой репрезентативную выборку для аппроксимируемой функции. Существуют две проблемы, связанные с обучающей выборкой. Одна из них – переобучение нейронных сетей. В этом случае нейронная сеть просто запоминает примеры обучающей выборки и не может обобщать данные.Поэтому ошибка на тестовой выборке, неизвестной нейронной сети, может быть велика по сравнению с ошибкой обучения. Эту проблему можно решить подбором соответствующей архитектуры нейронной сети. В некоторых случаях для подбора размера нейронной сети можно использовать размерность ВапникаЧервоненкиса. Но отношения, полученные Вапником и Червоненкисом могут быть применены только к очень узкому классу задач. Для того, чтобы иметь возможность применить оценку Вапника-Червоненкиса надо, чтобы распределение данных было известно разработчику. Но очень часто данные слабо поддаются описанию и для них невозможно найти распределение или даже оценить его. Второй проблемой при обучении нейронных сетей является тот факт, что часто сложно или невозможно иметь выборку достаточного размера для обучения нейронной сети до требуемого качества. Более того, исходная выборка данных должна быть разделена на две части – обучающую и тестирующую выборки. Если исходная выборка мала, то для тестирования можно использовать метод перекрестной валидации, чтобы не разделять ее на две части. Идея этого метода состоит в следующем: из выборки исключается один пример и нейронная сеть обучается на оставшихся. После этого считается ошибка для исключенного примера. Так повторяется для каждого примера исходной выборки данных. После этого вычисляется среднеквадратичная ошибка на тестовых примерах. Этот метод дает более точную оценку, чем прямое тестирование, когда тестирующая выборка совпадает с обучающей. Прямое тестирование дает оптимистичную оценку качества работы нейронной сети. Еще одним способом оценки качества работы нейронной сети в случае малой выборки данных является метод bootstrap. При его использовании искусственно генерируются новые примеры и некоторые примеры исходной выборки заменяются ими. После этого ошибка нейронной сети вычисляется по уравнению, связывающему ошибку и смещение примеров. Использовании вышеперечисленных методов позволяет несколько увеличить обучающую выборку за счет тестирующей. Но исходная выборка может быть настолько мала, что невозможно достигнуть требуемого качества работы нейронной сети даже при использовании ее в качестве обучающей выборки полностью. Тогда следует применять методы работы с малой обучающей выборкой:

Ниже представлены некоторые методы работы с данными, позволяющие улучшить качество нейросетевого решения задачи с малым объемом исходной выборки:

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

Таким образом, недостаток экспериментальной информации может быть частично скомпенсирован дополнительными вычислительными затратами.

Эффективный выбор вида функционала оптимизации нейронной сети

Перед разработчиком нейросетевого алгоритма решения некоторой прикладной задачи может стоять проблема стоимости ошибки, которая часто неодинакова для ошибок первого и второго рода. Ошибка первого рода – отношение количества объектов, ложно распознанных как желаемые объекты, к общему количеству желаемых объектов, а ошибкой второго рода называется отношение количества пропущенных желаемых объектов к общему их количеству.

Эту проблему можно проиллюстрировать следующим примером:

Предположим, решается задача распознавания мин. Если мина была принята за камень – то человек погибнет, а если камень был принят за мину, то будет затрачено время (порядка 10-30 минут) на его выкапывание.

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

Аппаратная реализация нейросетевых алгоритмов

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

Оценка качества работы нейронных сетей и сравнение различных методов аппроксимации

В настоящее время сравнение различных алгоритмов нейросетевой аппроксимации производится с помощью теста CATS. Тест состоит из 5000 точек, 100 из которых пропущены. Пропущенные точки находятся в 5 блоках с 981 по 1000 элементы, с 1981 по 2000, с 2981 по 3000, с 3981 по 4000, с 4981 по 5000. Цель этого соревнования – найти наилучшую модель для восстановления пропущенных элементов. В работе [28] были проведены исследования данных этого теста. Было показано, что данные не содержат в себе каких-либо повторяющихся элементов. Далее были рассмотрены разностные данные – ряд разниц между предыдущими и последующими значениями. В них также не было замечено закономерностей. Но разностный ряд ограничен небольшим интервалом значений. Преобразование Фурье ряда CATS показало, что в нем уровень шума очень высок, и нельзя выделить такую частоту, которая оказывала бы существенно большее влияние на поведение ряда, чем остальные. Применение функции автокорреляции к разностному ряду показало, что его для более эффективной работы можно разделить на два ряда (по четным и нечетным номерам).

Но этот тест нельзя считать универсальным, так как нейросетевые решения, разработанные под некоторую конкретную практическую задачу могут показывать плохие результаты для теста CATS [8].

Существуют и другие тесты, разработанные для сравнения различных методов аппроксимации: тест SantaFe, тест EUNITE, тест М3 и другие.

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

БИБЛОГРАФИЧЕСКИЙ СПИСОК

  1. Галушкин А.И. Теория нейронных сетей. – М., ИПРЖР, 2000.
  2. Галушкин А.И., Судариков В.А., Шабанов Е.Н. Нейроматематика: методы решения задач на нейрокомпьютерах. – Математическое моделирование. М., 1991, Т. 3, N8. С.101–106.
  3. Нейроматематика (коллективная монография). – М., ИПРЖР, 2002.
  4. Steven W. Smith “The Scientist and Engineer's Guide to Digital Signal Processing” California Technical Publishing, 1997
  5. Галушкин А.И. Синтез многослойных систем распознавания образов. – М.: Энергия 1974.
  6. Rosenblatt F. The principles of neurodynamics, Mir, 1965.
  7. Головко В.А. Нейронные сети: обучение, организация и применение. Кн. 4: Учеб. посо- бие для вузов / Общая ред. А.И. Галушкина. - М.: ИПРЖР, 2001. - 256 с.: ил. (Нейро- ).
  8. Cameron Potter, Michael Negnevitsky ANFIS Application to Competition on Artificial Time Series (CATS) IJCNN 2004 Proceedings.
  9. Zhiheng Huang, Qiang Shen Scale and Move Transformation-Based Fuzzy Interpolative Rea- soning: A Revisit IJCNN 2004 Proceedings.
  10. Xiao-Jun Zeng, Johm A. Keane Approximation Capability Analysis of Hierarchical Takagi– Sugeno Fuzzy Systems IJCNN 2004 Proceedings.
  11. Sheng-Tun Li, Yeh-Peng Chen Natural Partitioning-based Forecasting Model for Fuzzy Time- Series IJCNN 2004 Proceedings.
  12. Istvan Szite, Andras Lorincz Simple algorithm for recurrent neural networks that can learn sequence completion IJCNN 2004 Proceedings.
  13. Baranov Segey N. On the Approach to Synthesis of Forecasting Markov Networks. IJCNN 2004 Proceedings.
  14. Pablo Zegers, Malur K. Sundareshan Systematic Testing of Generalization Level During Training in Regression-Type Learning Scenarios. IJCNN 2004 Proceedings.
  15. Seong G. Kong Time Series Prediction with Evolvable Block-based Neural Networks IJCNN 2004 Proceedings.
  16. Solomatine Dmitri P., Michael Baskara L. A. SIEK Semi-optimal Hierarchical Regression Models and ANNs IJCNN 2004 Proceedings.
  17. Iulian Nastac, Adrian Costea A Retraining Neural Network Technique for Glass Manufactur- ing Data Forecasting IJCNN 2004 Proceedings.
  18. Makiko Saito, Yoshitsugu Kakemoto Demand Forecasting by the Neural Network with Fourier Transform IJCNN 2004 Proceedings.
  19. Vitabile S., Pernice M., Gaglio S. Daily Peak Temperature forecasting with Elman Neural Networks IJCNN 2004 Proceedings.
  20. Gao Daqi, Ji Yan, Li Changwu Frequency Domain Analysis Based RBF Networks and their Applications to Function Approximations IJCNN 2004 Proceedings.
  21. Amaury Lendasse, Vincent Wertz, Geoffroy Simon, Michel Verleysen Fast Bootstrap applied to LS-SVM for Long Term Prediction of Time Series IJCNN 2004 Proceedings.
  22. Oliveira A.L.I., Neto F.B.L., Meira S.R.L. Improving Novelty Detection in Short Time Series through RBF-DDA Parameter Adjustment IJCNN 2004 Proceedings.
  23. Fausto Acernese, Antonio Eleuteri, Leopoldo Milano, Roberto Tagliaferri A Hierarchical Bayesian Learning Scheme for Autoregressive neural networks: application to CATS Bench- mark IJCNN 2004 Proceedings.
  24. Federico Palacios-Gonzalez A SVCA Model for the Competition on Artificial Time series (CATS) Benchmark IJCNN 2004 Proceedings.
  25. Shuichi Kurogi, Takamasa Ueno, Miho Sawa Batch Learning Competitive Associative Net and Its Application to Time Series Prediction IJCNN 2004 Proceedings.
  26. Verdes P.F., Granitto P.M., Szeliga M.I., Rebola A., Ceccatto H.A. Prediction of the CATS Benchmark Exploiting Time-Reversal Symmetry IJCNN 2004 Proceedings.
  27. Yen-Ping Chen, Sheng-Nan Wu, Jeen Shing Wang A Hybrid Predictor for Time Series Predic- tion IJCNN 2004 Proceedings.
  28. Herrera L.J., Pomares H., Rojas I., Gonzalez J., Awad M., Herrera A. MultiGrid-Based Fuzzy Systems for Time Series Prediction: CATS Competition IJCNN 2004 Proceedings.
  29. Xiao Hu, Donald C. Wunsch II Time Series Prediction with a Weighted Bidirectional Multi- stream Extended Kalman Filter IJCNN 2004 Proceedings.
  30. Xindi Cai, Nian Zhang, Ganesh K. Venayagamoorthy, Donald C. Wunsch IITime Series Pre- diction with Recurrent Neursl Networks Using a Hybrid PSO-EA Algorithm IJCNN 2004 Pro- ceedings.
  31. Geoffroy Simon, John A. Lee, Michel Verleysen, Marie Cottrell Double Quantization Fore- casting Method for Filling Missing Data in the CATS Time Series IJCNN 2004 Proceedings.
  32. Jorg D. Wichard, Maciej Ogorzalek Time Series Prediction with Ensemble Models IJCNN 2004 Proceedings.
  33. Robrt Kozma, Beliaev Igor Time series Prediction Using Chaotic Neural Networks: Case Study of IJCNN CATS Benchmark Test IJCNN 2004 Proceedings.
  34. Yoshiko H., Shunji U., Taiko K. evaluation of artificial neural network classifiers in small sample size situations, Pros. Int. It. Conf. Neural Networks, Nagoya. Oct. 25-29, 1993, (1731- 1735).
  35. Zador Anthony M., Pearlmutter Barak A. VC dimension of an integrate-and-fireneuron model. Neural Comput. 1996, 8, №3 -624
  36. Hole A. Some variants on a theorem of Vapnik. Prepr. Ser. Pure Math., Inst. Math. Univ. Oslo 1995, №30 – 1-11
  37. Hole Arne. Vapnik-Chervonenkis generalization bounds for real valued neural networks. Neural Comput. 1996, 8, №6 – 1277-1299.
  38. Chakraborty Goutam, Shiratori Norio, Noguchi Shoichi. Optimization of overtraining and overgeneralization. Proc. Int. Jt. Conf. Neural Networks, Nagoya, Oct. 25-29, 1993. Vol. 3, 2257-2262.
  39. Tzafestas S.G., Dalianis P.J., Anthopoulos G.C. On the overtraining phenomenon of back- propagation neural networks. Math. And Comput. Simul. 1996, 40, №5 – 6, 507 – 520.
  40. Галушкин А.И. Нейронные сети и проблема малой выборки. V Всероссийская конференция «Нейрокомпьютеры и их применение», 1999.
  41. Archer Norman P., Wang Shonhong Learning bias in neural networks and an approach to controlling its effects in monotonic classifications, IEEE Trans. Pattern Anal. And Mach. In- tell., 1993, 15, v9 (962-966).
  42. Naonori Ueda, Ryohei Nakano Estimating expected error rates of neural network classifiers in small sample set size situations: a comparison of cross-validation and bootstrap. IJCNN 1995.
  43. Sean B. Holden How practical are VC dimension bounds? IJCNN 1994.
  44. Byoung-Tak Zhang An incremental algorithm that optimizes network size and sample size in one trial. IJCNN 1994.
  45. Yoshihiko Hamamoto, Shunji Uchimura, Taiho Kanaoka, Shingo Tomita Evaluation of artifi- cial neural network classifiers in small sample size situations. Pros. Int. It. Conf. Neural Net- works, Nagoya. Oct. 25-29, 1993, (1731-1735).