Пред.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 След.
Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO
5.9. Пакет Fuzzy Logic Toolbox5.9.1. Общая характеристикаFuzzy Logic Toolbox используется в системе MATLAB и представляет собой пакет прикладных программ, относящихся к теории нечетких множеств и позволяющих конструировать так называемые нечеткие экспертные и/или управляющие системы. Основные возможности пакета: • построение систем нечеткого вывода (экспертных систем, нечетких регуляторов, аппроксиматоров зависимостей); • построение адаптивных нечетких систем (нечетких нейронных сетей); • интерактивное динамическое моделирование в Simulink. Пакет позволяет работать в режиме графического интерфейса, в режиме командной строки, а также с использованием блоков и примеров пакета Simulink. 5.9.2. Состав графического интерфейсаВ состав средств Fuzzy Logic Toolbox входят следующие основные программы, позволяющие работать в режиме графического интерфейса: • редактор Fuzzy Inference System Editor (FIS Editor или FIS-редактор) вместе со вспомогательными программами: редактором функций принадлежности (Membership Function Editor), редактором правил (Rule Editor), просмотрщиком правил (Rule Viewer) и про-смотрщиком поверхности отклика (Surface Viewer); • редактор нечетких нейронных систем ANFIS Editor или AN FIS-редактор); • программа нахождения центров кластеров (Clustering -кластеризация). Набор этих программ предоставляет пользователю максимальные удобства для создания, редактирования и использования различных систем нечеткого вывода. Далее остановимся только на вопросах построения, обучения и использования нечетких нейронных сетей с помощью пакета Fuzzy Logic Toolbox. 5.9.3. Создание нечеткой нейронной сетиГрафический интерфейс нечетких нейронных систем вызывается функцией anfisedit из режима командной строки. Исполнение функции приводит к появлению окна редактора нечетких нейронных систем (ANFIS Editor), вид которого приведен на рис. 5.87. С помощью данного редактора осуществляется создание или загрузка структуры нечеткой нейронной сети, просмотр структуры, настройка ее параметров, проверка качества функционирования такой сети. Рассмотрим пример создания нечеткой нейронной сети, отображающей зависимость
Рис. 5.87. Окно редактора нечеткой нейронной сети Таблица 5.4 Значения х и у
Создание структуры, настройка параметров и проверка осуществляются по обучающей (Training), проверочной (Checking) и тестирующей (Testing) выборкам, которые предварительно должны быть представлены в виде текстовых фалов (с расширением .dat и разделителями-табуляциями), первые колонки которых соответствуют входным переменным, а последняя - единственной выходной переменной; количество строк в таких файлах равно количеству образцов (примеров). Так, обучающая выборка, сформированная по табл. 5.4, представляется в следующем виде:
Строгих рекомендаций по объемам этих выборок не существует, поэтому следует исходить из принципа «чем больше, тем лучше». Обучающая и проверочная выборки непосредственно задействуются в процессе настройки параметров нечеткой нейронной сети. Проверочная выборка используется для определения переобучения сети, при котором ошибка для обучающей последовательности стремится к нулю, а для проверочной - возрастает. Тестовая выборка применяется для проверки качества функционирования обученной сети. Пункты меню File и View, идентичны пунктам FIS-редактора за тем исключением, что здесь работа может происходить только с алгоритмом нечеткого вывода Sugeno. Пункт меню Edit содержит единственный подпункт Undo (Отменить выполненное действие). Набор опций Load data (Загрузить данные) в нижней левой части окна редактора включает: • Туре - тип загружаемых данных (Training - для обучения, Testing - для тестирования, Checking - для проверки, Demo - демонстрационные); • Disk (Диск) или Workspace (Рабочая область) - место, откуда должны загружаться данные. К этим опциям относятся два действия: Load Data... (Загрузить данные) и Clear Data (Стереть введенные данные). Следующая группа опций ANFIS-редактора объединена под именем Generate FIS (Создание нечеткой системы вывода). Данная группа включает в себя опции: • Load from disk - загрузка структуры системы с диска; • Load from worksp. - загрузка структуры системы из рабочей области MATLAB, • Grid partition - разбиение областей определения входных переменных (аргументов) на подобласти независимо для каждого аргумента; Subtract clustering или Sub. clustering - разбиение всей области определения входных переменных (аргументов) на подобласти в комплексе для всех аргументов; • Generate FIS - создание нечеткой системы с точностью до ряда параметров. Следующая группа опций Train FIS (Обучение нечеткой системы вывода) позволяет определить метод обучения (Optim. Method) нечеткой нейронной сети: гибридный (Hybrid) или обратного распространения ошибки (Backpropagation); установить уровень текущей суммарной, по всем образцам, ошибки обучения (Error Tolerance), при достижении которого процесс обучения заканчивается; количество циклов обучения (Epochs). Процесс обучения заканчивается либо при достижении уровня ошибки, либо при проведении заданного количество циклов. Опция Train Now позволяет начать процесс обучения нечеткой нейронной сети В окне AN FIS-редактора выдаются данные (ANFIS Info ) о системе количество входов, выходов, функций принадлежности входов, нажатие кнопки Structure (Структура) позволяет увидеть структуру сети в виде, аналогичном представленному на рис. 3.18 Кнопка Clear (Очистить) позволяет стереть все результаты Опции Test FIS позволяют провести проверку и тестирование созданной и обученной системы с выводом результатов в виде графиков (для обучающей выборки - Training data, тестирующей выборки - Testing data и проверочной выборки - Checking data) Кнопка Test Now позволяет запустить указанные процессы Работу с редактором рассмотрим на примере восстановления зависимости 1) В окне ANFIS-редактора выберем тип загружаемых данных Training и нажмем кнопку Load data В окне диалога укажем местоположение и имя файла Его открытие приводит к появлению в графической части окна редактора набора точек, соответствующих введенным данным (рис. 5.88)
Рис. 5.88 Окно ANFIS-редактора после загрузки обучающей выборки 2) В группе опций Generate FIS по умолчанию активизирована опция Grid partition Не будем ее изменять и нажмем кнопку Generate FIS, после чего появится диалоговое окно (рис. 5.89) для задания числа и типов функций принадлежности Сохраним все установки по умолчанию, нажав ОК Произойдет возврат в основное окно ANFIS-редактора Теперь структура нечеткой нейронной сети создана, и ее графический вид можно просмотреть с помощью кнопки Structure (рис. 5.90)
Рис. 5.89 Окно задания функций принадлежности 3) Перейдем к опциям Train FIS Не будем менять задаваемые по умолчанию метод настройки параметров (Hybrid) и уровень ошибки (0), но количество циклов обучения изменим на 40, после чего нажмем кнопку начала процесса обучения (Train Now) Получившийся результат в виде графика ошибки сети в зависимости от числа циклов обучения, из которого следует, что обучение фактически закончилось после пятого цикла, представлен на рис. 5.91 4) Теперь нажатием кнопки Test Now можно начать процесс тестирования обученной сети, но, поскольку использовалась только обучающая выборка, ничего особенно интересного ожидать не приходится Действительно, выходы обученной сети практически совпадают со значениями обучающей выборки
(кликните для просмотра скана) 5) Сохраним разработанную нечеткую нейронную сеть с именем Probalfis и, для исследования разработанной системы средствами FIS-редактора, из командной строки MATLAB выполним команду Fuzzy, а затем через пункты меню File/Open FIS from disk... откроем созданный файл. С созданной сетью можно теперь выполнять все приемы редактирования и исследования. 5.9.4. Впечатления от работы с пакетомЧто можно сказать про эффективность использования нечетких нейронных сетей и AN FIS-редактора? В данном случае используется только один алгоритм нечеткого вывода - Sugeno (нулевого или первого порядков), может быть задана только одна выходная переменная, всем правилам приписывается один и тот же единичный вес. Кроме того, возникают значительные проблемы при количестве входных переменных большим, чем 5-6. Несомненными достоинствами пакета является практически полная автоматизация процесса создания нечеткой нейронной сети, возможность просмотра сформированных правил и придания им лингвистической интерпретации, что позволяет рассматривать аппарат нечетких нейронных сетей как средство извлечения знаний из баз данных и существенно отличает данные сети от классических нейронных. Рекомендуемые области применения: построение аппроксиматоров зависимостей по экспериментальным данным, систем классификации, извлечение знаний. 5.10. Совсем все простоХотелось бы, чтобы после прочтения данной главы у читателя сложилось бы совершенно правильное впечатление об относительной легкости работы с программами-нейроимитаторами. Если такую задачу авторам удалось решить, значит, их труд не пропал даром.
|
1 |
Оглавление
|