Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
курсовая.doc
Скачиваний:
49
Добавлен:
11.04.2015
Размер:
663.55 Кб
Скачать

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

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

Для решения задачи будем использовать нейронную сеть с одним скрытым слоем. Число нейронов во входном слое равно количеству факторов, влияющих на значение ВВП, и составляет 13 нейронов. Так как необходимо осуществить прогнозирование одной величины – значения ВВП – следовательно, достаточно одного нейрона в выходном слое.

Для определения числа нейронов в скрытом слое L воспользуемся следующими рекомендациями:

где n – размерность входного сигнала;

m – размерность выходного сигнала;

Lw – число синаптических весов, определяемое неравенством:

где N – число элементов обучающей выборки.

Из представленных формул следует, что число нейронов в скрытом слое может быть от 5 до 375.

На основании этих результатов примем число нейронов скрытого слоя равным 5.

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

Рисунок 6 – Структура нейронной сети

Обучение многослойной нейронной сети производится по алгоритму обратного распространения ошибки. Блок-схема данного алгоритма представлена в приложении А.

2.4 Прогнозирование ввп на основе многослойной нейронной сети

Для прогнозирования ВВП с использованием приложения NeuroPro необходимо подготовить исходные данные. Для этого, используя таблицу 1, следует подготовить в Microsoft Excel обучающую выборку в виде таблицы 2 и сохранить эти данные как файл базы данных в формате DBF4 (dBASE IV) с названием «ВВП.dbf».

Создание нейронной сети в приложении NeuoPro и работа с ней возможна только в рамках некоторого нейропроекта. Для его создания необходимо выбрать пункт меню «Файл-Создать». В появившемся окне открыть файл с обучающими данными (ВВП.dbf) и нажать на кнопку «Новая сеть». В появившемся окне «Создание нейронной сети» на вкладке «Выходы и входы» установим тип значений – количественный и определим с помощью переключателя входные поля Х1, …, Х13 и выходное поле Y (рисунок 7).

Таблица 2 - Обучающая выборка

X1

X2

X3

X4

X5

X6

X7

X8

X9

X10

X11

X12

X13

Y

109

287

75

17

11

5,9

4,3

4,73

59

204

654

37,3

6,4

148

114

271

71

18

13

6,9

5,3

4,81

55

189

684

36,6

6,5

150

121

289

79

22

16

7,7

5,3

4,85

59

179

745

35,9

6,5

168

122

279

78

24

16

7,2

5,7

4,94

61

168

746

35,4

6,6

175

110

284

77

24

17

7,2

5,4

5,01

60

158

779

34,9

6,7

169

110

273

73

27

21

7,1

5,2

5,1

61

150

837

34,6

6,7

181

111

274

74

27

22

7,3

5,5

5,19

62

144

842

34,0

6,7

188

113

271

76

27

20

7,1

5,2

5,34

63

137

831

33,5

6,8

200

116

272

76

30

22

7,3

4,8

5,39

65

132

848

33,2

6,8

201

127

291

79

32

20

8,3

5,2

5,45

65

127

843

33,0

6,9

205

124

282

74

48

21

8,4

4,9

5,51

66

124

835

32,9

7,0

198

132

292

72

76

21

8,7

5,5

5,56

75

122

1017

32,5

7,2

217

119

283

68

19

14

7,0

4,7

5,62

68

120

812

31,9

7,1

172

122

266

67

20

15

6,7

5,0

5,67

64

118

821

31,7

7,5

175

134

288

76

26

18

7,3

5,6

5,72

67

117

903

31,6

7,6

194

130

272

73

25

16

6,9

6,2

5,76

69

115

901

31,3

7,8

202

125

267

72

25

18

6,5

5,5

5,77

68

114

920

31,5

7,9

205

128

255

71

29

22

6,6

5,5

5,78

68

114

993

31,1

7,9

213

130

259

74

29

23

7,0

5,2

5,79

69

114

999

30,9

7,9

222

132

256

76

29

22

7,2

6,3

5,83

71

114

982

30,9

7,9

241

132

261

75

32

23

6,9

6,2

5,86

74

114

1026

31,0

8,0

252

140

274

79

33

22

8,2

6,2

5,88

75

112

1006

31,0

8,1

242

136

279

74

53

22

8,2

5,8

5,91

76

111

997

31,1

8,1

226

142

286

74

84

22

9,2

7,7

5,96

89

111

1214

30,7

8,2

238

На вкладке «Структура сети» установим число слоёв нейронов равное 3, число нейронов для первого слоя – 13, для второго слоя – 5, для третьего слоя – 1 (рисунок 8).

Далее необходимо задать имя нейронной сети «Прогнозирование ВВП» и нажать кнопку «Создать». После выполненных действий имя созданной сети появится в списке сетей нейропроекта и становится активной.

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

Рисунок 7 – Задание входов и выходов нейронной сети

Рисунок 8 – Задание структуры нейронной сети

Рисунок 9 – Окно обучения нейронной сети

В результате обучения нейронной сети происходит настройка её весовых коэффициентов.

По окончании обучения можно вычислить значимость входных сигналов сети выбором пункта меню «Нейросеть-Значимость входных сигналов сети». Вычисленные показатели выводятся в отдельное окно в виде гистограммы, где наиболее значимому входу соответствует самый длинный столбец (рисунок 10).

Рисунок 10 – Значимость входных сигналов

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

Тестирование нейронной сети можно провести с целью выявления её прогностических возможностей. Для этого нужно выбрать пункт меню «Нейросеть-Тестирование». Результат тестирования выводится в отдельное окно и представляет собой выходные данные для нейронной сети (желаемый результат), а также значения прогноза этих полей (вычисленное сетью значение выхода) (рисунок 11).

Рисунок 11 – Результаты тестирования нейронной сети

С помощью специальных алгоритмов, вызываемых командами меню «Нейросеть», можно упростить структуру спроектированной нейросети. При этом можно:

- сократить число входных сигналов;

- сократить число нейронов;

- равномерно упростить сеть;

- сократить число синапсов;

- сократить число неоднородных входов;

Из всех доступных методов упрощения нейросети воспользуемся сокращением числа входных сигналов, нейронов и синапсов. Результаты упрощения нейронной сети представлены на рисунках 12, 13, 14.

Рисунок 12 – Результат сокращения числа входных сигналов

Рисунок 13 – Результат сокращения нейронов сети

Рисунок 14 – Результат сокращения синапсов сети

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

Для решения задачи прогнозирования ВВП с помощью спроектированной нейронной сети необходимо подготовить тестовый пример. Для этого в приложении Microsoft Excel создадим файл базы данных с именем Прогноз.dbf, в котором отразим характеристики признаков за прогнозируемый период, например, за декабрь 2000 года (таблица 3). Значение Y при этом не указывается, так как сеть должна спрогнозировать это значение.

Таблица 3 – Данные для тестирования

X1

X2

X3

X4

X5

X6

X7

X8

X9

X10

X11

X12

X13

Y

189

286

74

84

22

9

8

25

89

111

1214

31

8

Опрос обученной сети происходит в окне нейропроекта. При этом необходимо открыть тестовый файл исходных данных Прогноз.dbf и выполнить команду «Нейросеть-Тестирование». Результат тестирования показан на рисунке 15.

Рисунок 15 – Результат тестирования сети

Полученный при тестировании нейронной сети результат говорит о том, что на декабрь 2000 года прогнозировалось значение внутреннего валового продукта порядка 246 млрд. рублей. Как показывают статистические данные за указанный период, прогнозируемые данные совпадают с реальными.