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

Математические методы и модели искусственного интеллекта: нечеткая логика, генетические алгоритмы, нейронные сети и др

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

⇐ ПредыдущаяСтр 10 из 21Следующая ⇒

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

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

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

Обратите внимание

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

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

Нечетким множеством A в непустом четком пространстве X называется множество пар вида A={ х / MF(x) }, где MF(x) – функция принадлежности нечеткого множества A. Эта функция приписывает каждому элементу x є Х степень его принадлежности к нечеткому множеству A.

Знак “/” в данном случае не означает деление, а означает присваивание конкретным элементам множества соответствующих степеней принадлежности. Основными потребителями нечеткой логики являются банкиры и финансисты, а также специалисты в области политического и экономического анализа.

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

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

Прежде чем решиться на использование новой системы в реальных условиях, ее протестировали на двухлетней выборке финансовых данных (1987-1989 г). Система с блеском выдержала испытание.

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

Важно

Хотя скептики могут привести и другие примеры – например, ни одна из банковских систем не смогла предсказать падение биржевого индекса Nikkei весной 1992 года. Можно привести и другие примеры применения нечеткой логики в бизнесе. Удачный опыт Ганса по использованию экспертной системы с нечеткими правилами для анализа инвестиционной активности в городе Аахене (ФРГ) привел к созданию коммерческого программного пакета для оценки кредитных и инвестиционных рисков. На рынке коммерческих экспертных систем на основе нечеткой логики в России наиболее известным является экспертная система CubiCalc.

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

Мутация оценивается с точки зрения полезности для улучшения качества системы.При построении таких систем ИИ задается только исходная организация,список переменных и критерии качества.

Эти модели служат в основном для прогнозирования поведения и структуры систем( в процессе их построения участие человека сведено к минимуму).

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

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

Генетические алгоритмы-эвристические оптимизационные методы, предложенные Дж.Холландом(1975) и основанные на идее эволюции путем естественного отбора, выдвинутой Ч.Дарвином (1875). Генетический алгоритм представляет собой мощное поисковое средство, эффективное в различных предметных областях.

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

Совет

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

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

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

Входной слой реализует связь с входными данными, выходной- с выходными. Внутренних слоев может быть несколько.Любое изменение входов ведет к изменению ее выходов. Искусственная нейронная сеть используется,когда неизвестны виды связей между входами и выходами.

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

В общем случае архитектуру нейронной сети можно разделить на однослойную и многослойную модель:                  

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

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

Основное использование-прогнозирование.

⇐ Предыдущая567891011121314Следующая ⇒

Круглов В.В., Дли М.И., Голубов Р.Ю. Нечеткая логика и искусственные нейронные сети

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

Как известно, аппарат нечетких множеств и нечеткой логики уже давно (более 10 лет) с успехом применяется для решения задач, в которых исходные данные являются ненадежными и слабо формализованными. Сильные стороны такого подхода: – описание условий и метода решения задачи на языке, близком к естественному;

– универсальность: согласно знаменитой теореме FAT (Fuzzy Approximation Theorem), доказанной Б.Коско (B.Kosko) в 1993 г., любая математическая система может быть аппроксимирована системой, основанной на нечеткой логике.

Вместе с тем для нечетких экспертных и управляющих систем характерны и определенные недостатки: 1) исходный набор постулируемых нечетких правил формулируется экспертом-человеком и может оказаться неполным или противоречивым;

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

Обратите внимание

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

Гибридная нейронная сеть формально по структуре идентична многослойной нейронной сети с обучением, например, по алгоритму обратного распространения ошибки, но скрытые слои в ней соответствуют этапам функционирования нечеткой системы. Так: – 1-й слой нейронов выполняет функцию введения нечеткости на основе заданных функций принадлежности входов; – 2-й слой отображает совокупность нечетких правил; – 3-й слой выполняет функцию приведения к четкости.

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

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

Особое внимание уделено программной реализации моделей указанных подходов инструментальными средствами математической системы MATLAB 5.2/5.3.

Нечеткие и гибридные нейронные сети

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

Аннотация: Рассматриваются: математические основы нечетких систем, преимущества и алгоритмы обучения нечетких нейронных сетей, нечеткие сети с генетической настройкой, экспертные системы на основе гибридных НС.

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

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

  • сложных технических систем;
  • систем экономического планирования;
  • социальных систем большой размерности;
  • систем принятия решений и т.п.

Выходом является использование систем, основанных на мягких вычислениях, которые включают в себя:

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

Эти составные части не конкурируют друг с другом, а создают эффект взаимного усиления (гибридные системы). Наряду с термином “мягкие вычисления” используется термин “вычислительный интеллект” – научное направление, где решаются задачи искусственного интеллекта на основе теории нечетких систем, нейронных сетей и эволюционных (генетических) вычислений.

Нечеткие нейронные сети с генетической настройкой параметров (гибридные системы) демонстрируют взаимное усиление достоинств и нивелирование недостатков отдельных методов:

  • Представление знаний в нейронных сетях в виде матриц весов не позволяет объяснить результаты проведенного распознавания или прогнозирования, тогда как в системах вывода на базе нечетких правил результаты воспринимаются как ответы на вопросы “почему?”.
  • Нейронные сети обучаются с помощью универсального алгоритма, т.е. трудоемкое извлечение знаний заменяется сбором достаточной по объему обучающей выборки. Для нечетких систем вывода извлечение знаний включает в себя сложные процессы формализации понятий, определение функций принадлежности, формирование правил вывода.
  • Нечеткие нейронные сети обучаются как нейронные сети, но их результаты объясняются как в системах нечеткого вывода.
  • Понятие нечетких множеств (fuzzy sets) как обобщение обычных (четких) множеств было введено Л.Заде в 1965 г.. Традиционный способ представления элемента множествасостоит в применении характеристической функции, которая равна 1, если элемент принадлежит множеству, или равна 0 в противном случае.

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

    Конкретное значение функции принадлежности называется степенью или коэффициентом принадлежности.

    Принципы нечеткой логики на примере нечетких нейронных сетей – современные проблемы науки и образования (научный журнал)

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

    1Мищенко В.А. 1 Коробкин А.А. 21 Воронежский государственный педагогический университет, Воронеж2 Воронежский государственный университет, ВоронежВ данной статье рассмотрены принципы построения систем, основанных на нечеткой логике, кроме того, определен принцип построения логического вывода.

    Также рассматривается структура организации нечетких нейронных сетей на примере сети Ванга – Менделя. Описывается схема организации такой сети, ее структура, в частности, определены слои нейронной сети и описаны принципы функционирования каждого слоя.

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

    Также в статье проведен сравнительный анализ различных типов архитектур интеллектуальных систем.1. Аксенов С.В., Новосельцев В.Б. Организация и использование нейронных сетей (методы и технологии) / Под общ. ред. В.Б. Новосельцева. – Томск: Изд-во НТЛ, 2006. – 128 с.2. Батыршин И.З. Нечеткие гибридные системы. Теория и практика / Под ред. Н.Г. Ярушкиной. – М.ФИЗМАТЛИТ, 2007. – 208 с.3.

    Важно

    Осовский С. Нейронные сети для обработки информации / Пер. с польского И.Д. Рудинского. – М.: Финансы и статистика, 2002. – 344 с.4. Хайкин С. Нейронные сети: полный курс: Пер. с англ. 2-е изд. – М.: Издательский дом “Вильяме”, 2006. – 1104 с.: ил. – Парад, тит. англ.5. Яхъева Г.Э. Нечеткие множества и нейронные сети: Учебное пособие / Г.Э. Яхъева. – М.

    : Интернет-Университет Информационных технологий; БИНОМ. Лаборатория знаний, 2006. – 316 с.Используемая в различных видах систем модель на основе нечеткой логики представляет собой базу знаний, построенную специалистами предметной области как множество нечетких правил вида:

     если x есть A1, то y есть B1 ,

     если x есть A2, то y есть B2,

     если x есть An, то y есть Bn,

    где х и y- входная и выходная переменная соответственно, а А и В- функции принадлежности [2].

    Нечеткий логический вывод формируется в несколько шагов:

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

    На этих принципах построено большое количество сетей, рассмотрим подробнее одну из них – сеть Ванга – Менделя.

    Структура такой сети представляет собой четырехслойную нейронную сеть, в которой первый слой выполняет фазификацию входных переменных, второй – агрегирование значений активации условия, третий – агрегирование М правил вывода (первый нейрон) и генерацию нормализующего сигнала (второй нейрон), тогда как состоящий из одного нейрона выходной слой осуществляет нормализацию, формируя выходной сигнал [1,3].

    В этой сети первый и третий слой являются параметрическими: первый слой содержит M*N*2 параметров функции Гаусса, а третий – М параметров wi.

    Выходной сигнал сети Ванга – Менделя рассчитывается по формуле:

     , (1)

    где wi – весовой коэффициент, μij() – функция Гаусса с параметрами математического ожидания, которое определяет центр cij и параметрами разброса, которые определяются средним квадратическим отклонением dij,

    – функция Гаусса.

    Рис. 1. Структура сети Ванга – Менделя

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

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

    , где p – количество обучающих пар (x, d).

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

    • для фиксированных значений параметров cij и dij первого слоя вычисляются значения параметров wi третьего слоя сети;
    • при зафиксированных значениях параметров wi третьего слоя уточняются параметры cij и dij первого слоя сети.

    Таким образом, на первом этапе для K обучающих выборок, k=1, 2, … K, получаем систему K линейных уравнений , где W – вектор, составленный из линейных коэффициентов wi, D – вектор эталонных ответов сети, .

      Количество строк K матрицы PV значительно больше количества ее столбцов.

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

    На втором этапе фиксируются значения коэффициентов полиномов третьего слоя и осуществляется уточнение (обычно многократное) коэффициентов функции Гаусса для первого слоя сети стандартным методом градиента: ,, где k  – номер очередного цикла обучения, vc – скорость обучения для коэффициентов cij, vd – скорость обучения для коэффициентов dij, – ошибка сети, где L – общее число обучающих выборок, yl- выход сети Ванга-Менделя для данной выборки, – эталонное значение выхода сети Ванга – Менделя [1,2].

    Производные  и вычисляются по формулам:

    ,   .

    Производные и можно найти по формулам:

    ,,

    где   функция Гаусса

    Совет

    Поскольку в череде этапов этап уточнения параметров функции Гаусса имеет много меньшую скорость сходимости, то в ходе обучения реализацию этапа 1, как правило, сопровождает реализация нескольких этапов 2.

    Часто требуется найти «решение» системы, которая решений (в обычном смысле) не имеет. Выходом из ситуации является нахождение таких значений неизвестных параметров, что все условия системы выполняются «в некоторой степени».

    Матрица  A+ называется псевдообратной матрицей для матрицы A, если. Отсюда сразу вытекает, что если матрица A имеет размер m x n, то псевдообратная матрица A+ имеет размер n x m .

    Опишем и другой, часто встречающийся в литературе подход к определению этого понятия. Сначала введём понятие псевдорешения системы уравнений. Пусть нам дана система уравнений

    Ax = b,   (2)

    где A – матрица размера m x n, b – вектор из m элементов.

    Любое решение этой системы является также и решением системы

         (3)

    Псевдорешением системы (2) называется решение системы (3) с минимальной нормой среди всех столбцов, имеющих минимальную невязку (норма вектора равна квадратному корню из суммы квадратов компонент вектора, а невязкой решения системы (2) называется норма вектора Ax-b).

    Псевдообратной матрицей для матрицы A размера m x n называется матрица A+, столбцы которой – псевдорешения систем вида Ax=ei,

    где ei – i-ый столбец единичной матрицы порядка m.

    К универсальным способам нахождения псевдообратной матрицы относятся рекуррентные алгоритмы Гревиля и Фадеева. В данной работе приведем алгоритм Гревиля для псевдообращения матриц.

    Пусть дана матрица A ∈ R min и ak – ее k-й столбец, k = 1, . . ., n.

    Пусть Ak – матрица, составленная из k первых столбцов матрицы A:

    При k = 1: A1 = a1, а при k = 2, . . . , n:; An=A.

    Матрица  A+∈ Rmin может быть вычислена с помощью рекуррентного алгоритма:

    1. Инициализация.

    2. Цикл по k=2, …, n.

    , где I – единичная матрица порядка m,  

    Обратите внимание

    Полученная на последнем шаге матрица A+n и есть псевдообратная матрица, которая является искомым решением.

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

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

    Однако, такой организации нейронных сетей присущ и ряд недостатков:

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

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

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

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

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

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

    Такие сети строят решение на основе аппарата нечеткой логики, однако функции принадлежности настраиваются с помощью алгоритмов обучения искусственных нейронных сетей [3,5]. Кроме того, такие сети не только могут обучаться, но и способны учитывать априорную информацию.

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

    Рецензенты:

    • Шашкин А.И., д.ф.-м.н., зав. кафедрой математического и прикладного анализа ФГБОУ ВПО «Воронежский государственный университет», г. Воронеж.
    • Кургалин С.Д., д.ф.-м.н., зав. кафедрой цифровых технологий ФГБОУ ВПО «Воронежский государственный университет», г. Воронеж.

    Библиографическая ссылка

    Мищенко В.А., Коробкин А.А. ПРИНЦИПЫ НЕЧЕТКОЙ ЛОГИКИ НА ПРИМЕРЕ НЕЧЕТКИХ НЕЙРОННЫХ СЕТЕЙ // Современные проблемы науки и образования. – 2012. – № 1.;
    URL: http://science-education.ru/ru/article/view?id=5321 (дата обращения: 26.02.2019).

    Оцените статью
    Просто о технологиях
    Добавить комментарии

    ;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: