Нейрокомпьютерные системы

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

Показывать лекцию целиком

Интеллектуальные информационные системы в условиях неопределенности и риска

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

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

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

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

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

    Понятие нечетких множеств (fuzzy sets) как обобщение обычных (четких) множеств было введено Л.Заде в 1965 г.. Традиционный способ представления элемента множества $$A$$ состоит в применении характеристической функции $$\mu_A(x)$$, которая равна 1, если элемент принадлежит множеству $$A$$, или равна 0 в противном случае. В нечетких системах элемент может частично принадлежать любому множеству. Степень принадлежности множеству $$A$$, представляющая собой обобщение характеристической функции, называется функцией принадлежности $$\mu_A(x)$$, причем $$\mu_A(x)\in [0,1]$$, и $$\mu_A(x)=0$$ означает отсутствие принадлежности $$x$$ множеству $$A$$, а $$\mu_A(x) = 1$$ - полную принадлежность. Конкретное значение функции принадлежности называется степенью или коэффициентом принадлежности.

    Лингвистические переменные

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

    Пусть $$x$$ обозначает температуру. Можно определить нечеткие множества "отрицательная", "близкая к нулю", "положительная", характеризуемые функциями принадлежности $$\mu_\text{отриц}(x)$$, $$\mu_\text{бнул}(x)$$, $$\mu_\text{полож}(x)$$. Лингвистическая переменная "температура" может принимать значения "отрицательная" "близкая к нулю", "положительная". Функция нечеткой принадлежности является непрерывным приближением пороговой функции точной принадлежности.

    Нечеткие правила вывода

    Правило вывода

    если $$x$$ это $$A$$, то $$y$$ это $$B$$

    называется нечеткой импликацией $$A \longrightarrow B$$, если $$A$$ и $$B$$ - лингвистические значения (значения лингвистической переменной), идентифицированные нечетким способом через соответствующие функции принадлежности для переменных.

    Часть " $$x$$ это $$A$$ " называется условием (предпосылкой), а " $$y$$ это $$B$$ " - следствием (заключением).

    Обобщение для $$N$$ -мерного вектора $$x$$:

    если $$x_1$$ это $$A_1$$ и $$x_2$$ это $$A_2$$ и $$\ldots$$ и $$x_N$$ это $$A_N$$, то $$y$$ это $$B$$, $$A_1, A_2,\ldots$$, $$A_N, B$$ обозначают величины соответствующих коэффициентов принадлежности $$\mu_A(x_i), i=1,2, \ldots, N, \mu_B(y)$$.

    Возможна интерпретация $$\mu_A(x)$$

  • в форме логического произведения$$\mu_A(x) = min_{i=1,\ldots,N} \mu_A(x_i)$$
  • в форме алгебраического произведения$$\mu_A(x) = \prod_{i=1,\ldots,N} \mu_ A(x_i)$$ (агрегирование предпосылки).
  • Каждой импликации $$A\to B$$ можно приписать значение функции принадлежности $$\mu_{A\to B}(x,y)$$:

  • форма логического произведения$$\mu_{A\to B} = min\{\mu_ A (x), \mu_B(y)\}$$
  • форма алгебраического произведения$$\mu_{A\to B} = \mu_ A (x)\mu_B(y)$$ агрегирование на уровне импликации).
  • Системы нечеткого вывода Мамдани-Заде

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

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

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

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

    (рис 1) Вывод в нечеткой системе при наличии M правил

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

    В модели вывода Мамдани-Заде присутствуют следующие операторы:

  • оператор логического или арифметического произведения для определения результирующего уровня активации, в котором учитываются все компоненты вектора условия;
  • оператор логического или арифметического произведения для определения значения функции принадлежности для всей импликации $$A \longrightarrow B$$ ;
  • оператор логической суммы как агрегатор равнозначных результатов импликации многих правил;
  • оператор дефазификации, трансформирующий нечеткий результат $$\mu(y)$$ в четкое значение $$y$$.
  • (рис 2) Пример системы вывода Мамдани-Заде

    На рис. 2 представлен способ агрегирования при двух входных переменных $$x_1,x_2$$.

    Логическое произведение (оператор $$min$$ ) используется как для агрегирования нечетких правил относительно конкретных переменных $$x_i$$, $$i=1,2$$, образующих вектор $$x$$, так и на уровне импликации $$A \longrightarrow B$$ для одиночных правил вывода. Агрегирование импликаций, касающихся правил $$1$$ и $$2$$, проводится с использованием логической суммы (оператор $$max$$ ).

    Фазификатор

    Фазификатор преобразует $$N$$ -мерный вектор $$x = [x_1, x_2, \ldots, x_N]$$ в нечеткое множество $$A$$, характеризуемое функцией принадлежности $$\mu_A(x)$$.

    Наибольшей популярностью пользуются функции гауссовского типа, треугольные и трапецеидальные функции:

  • Общая форма гауссовской функции $$\begin{align*} \mu_A(x) = \exp[-(x-c)^2/\sigma^2] \end{align*}$$

    $$c$$ - центр нечеткого множества,

    $$\sigma$$ - коэффициент широты.

  • Симметричная треугольная функция $$\begin{align*} \mu_A(x) = \{1 - |x-c|/d, \text{ при } x \in [c-d, c+d];\\ 0, \text{ для остальных } x\}, \end{align*}$$

    $$c$$ - центр,

    $$d$$ - ширина.

  • Трапецеидальная функция $$\begin{align*} \mu_A(x) = \{0, \text { при } x /gt z \text { и } x /lt y;\\ 1, \text { при } c - t/2 \leqslant x \leqslant c + t/2;\\ s(z-x), \text { при } c+t/2 \leqslant x \leqslant z;\\ s(x-y), \text { при } y \leqslant x \leqslant c-t/2;\}, \end{align*}$$ $$s$$ - угол наклона.
  • При $$t = 0$$ получаем треугольную функцию.

    Дефазификатор

    Трансформировать нечеткое множество $$\mu(y) = \mu_{A \longrightarrow B}(y)$$ в точечное решение $$y$$ можно многими способами:

    1. Дефазификация относительно центра области

    $$\begin{align*} y_c = \int \mu(y)\cdot y \cdot dy/ \int \mu(y)dy \end{align*} $$

    или

    $$\begin{align*} y_c = \sum_i \mu(y_i) \cdot y_i / \sum_i \mu (y_i) \end{align*} $$

    2. Дефазификация относительно среднего центра

    $$\begin{align*} y_c = \sum_{i=1,M} \mu(c_i) \cdot c_i / \sum_{i=1,M} \mu (c_i) \end{align*} $$

    где $$c_i$$ - центр $$i$$ -го нечеткого правила,

    $$\mu(c_i)$$ - соответствующая функция принадлежности.

    3. Дефазификация относительно среднего максимума

    $$\begin{align*} y_M = \sum_{i=1,m} y_i /m, \end{align*} $$

    где $$m$$ - количество точек, в которых $$\mu (y_i)$$ достигает максимального значения. Если функция $$\mu(y)$$ имеет максимальное значение только в одной точке, то

    $$\begin{align*} y_M = y_max. \end{align*} $$

    4. выбирается минимальное из максимальных значений $$y$$:

    $$y_s$$ - наименьшее из $$y$$, для которых $$\mu(y) = max$$.

    5. выбирается максимальное из максимальных значений:

    $$y_l$$ - наибольшее из $$y$$, для которых $$\mu(y) = max$$.

    Модель Мамдани-Заде как универсальный аппроксиматор

    Модели нечеткого вывода позволяют описать выходной сигнал многомерного процесса как нелинейную функцию входных переменных $$x_i$$, $$i=1,2, \ldots, N$$ и параметров нечеткой системы, например, при использовании в качестве агрегатора оператора алгебраического произведения с последующей дефазификацией относительно среднего центра. В модели Мамдани-Заде каждое из $$M$$ правил определяется уровнем активации условия

    $$\begin{align*} \mu(y_i)= \prod_{j=1}^M \mu_{Ai}(x_j) \end{align*} $$

    где $$y_i$$ - значение $$y$$, при котором значение $$\mu(y_i)$$ максимально. Пусть $$y_i$$ — центр $$C_i$$ нечеткого множества заключения $$i$$ -го правила вывода. Тогда дефазификация относительно среднего центра дает

    $$\begin{align*} y=(\sum_{i=1}^M C_i[\prod_{j=1}^N \mu_{Ai}(x_j)])/ \sum_{i=1}^M \prod_{j=1}^N \mu_{Ai}(x_j) \end{align*} $$

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

    Нечеткие сети TSK (Такаги-Сугено-Канга)

    Схема вывода в модели TSK при использовании $$M$$ правил и $$N$$ переменных $$x_j$$ имеет вид $$(i=1,2, \ldots M)$$

    $$\begin{align*} \text { if } (x_1 \text { is } A_1^{(i)})\ (x_2 \text { is } A_2^{(i)})\ \ldots \ (x_N \text { is } A_N^{(i)})\\ \text { then } y_i = p_{i0} + \sum_{j=1}^N p_{ij} x_j. \end{align*} $$

    Условие $$(x_i \text { is } A_i)$$ реализуется функцией фазификации

    $$\begin{align*} \mu_A(xi) = 1/(1+((x_i-c_i)/\sigma_i)^{2bi}). \end{align*} $$

    При $$M$$ правилах агрегированный выходной результат сети имеет вид

    $$\begin{align*} y(x) = \sum_{i=1}^M w_i y_i(x)/ \sum_{i=1}^M w_i,\\ y_i(x) = p_{i0} + \sum_{j=1}^N p_{ij} x_j. \end{align} $$

    Веса $$w_i$$ интерпретируются как значимость компонентов $$\mu_A^{(i)}(x)$$. Тогда формуле (1) можно поставить в соответствие многослойную нейронную сеть рис. 3.

    (рис 3) Нечеткая нейронная сеть TSK

    1. Первый слой выполняет фазификацию каждой переменной. Это параметрический слой с параметрами $$c_j^{(i)}, \sigma_j^{(i)}, b_j^{(i)}$$, подлежащими адаптации в процессе обучения.

    2. Второй слой выполняет агрегирование отдельных переменных, определяя результирующее значение коэффициента принадлежности $${w_i = \mu_A^i(x)}$$ для вектора $$x$$ (непараметрический слой).

    3. Третий слой - генератор функции TSK, рассчитывает значения

    $$\begin{align*} y_i(x) = p_{i0} + \sum_{j=1}^N p_{ij} x_j. \end{align*} $$

    В этом слое также производится умножение $$y_i(x)$$ на $$w_i$$, сформированные в предыдущем слое. Здесь адаптации подлежат веса $$p_{ij}, i = 1,2, \ldots, M, j = 1,2, \ldots, N$$, определяющие функцию следствия модели TSK.

    4. Четвертый слой составляют два нейрона-сумматора, один из которых рассчитывает взвешенную сумму сигналов $$y_k(x)$$, а второй - сумму весов $$w_i, i = 1,2, \ldots M$$ (непараметрический слой).

    5. Пятый слой из одного нейрона - это нормализующий слой, в котором выходной сигнал сети агрегируется по формуле (1).

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

    Гибридный алгоритм обучения нечетких сетей

    Параметры, подлежащие адаптации, разделяются на две группы:

  • первая состоит из параметров $$p_{ij}$$ линейного третьего слоя;
  • вторая состоит из параметров нелинейной функции принадлежности первого слоя.
  • Уточнение параметров проводится в два этапа.

    На первом этапе при фиксации определенных значений параметров функции принадлежности путем решения системы линейных уравнений рассчитываются параметры $$p_{ij}$$ полинома TSK.

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

    $$\begin{align*} y(x) = \sum_{i=1}^M w_i(p_{i0} + \sum_{j=1}^N p_{ij} x_j).\\ w_i =[\prod_{j=1}^N \mu_A^{(i)}(x_j)] / \sum_{k=1}^N [\prod_{j=1}^N \mu_A^{(k)}(x_j)] = const. \end{align*} $$

    При $$p$$ обучающих выборках $$(x^{(l)}, d^{(l)}), l = 1,2, \ldots, p$$ и замене выходного сигнала сети ожидаемым значением $$d^{(l)}$$ получим систему из $$p$$ линейных уравнений вида

    $$\begin{align*} W \cdot P = d, \end{align*} $$

    где

    $$\begin{align*} W = \begin{Vmatrix} w_{11}' w_{11}'x_1^{(1)} \ldots w_{11}'x_N^{(1)} \ldots w_{1M}' w_{1M}'x_1^{(1)} \ldots w_{1M}'x_N^{(1)}\\ w_{21}' w_{21}'x_1^{(2)} \ldots w_{21}'x_N^{(2)} \ldots w_{2M}' w_{2M}'x_1^{(2)} \ldots w_{2M}'x_N^{(2)}\\ \ldots \ldots \ldots \ldots \ldots \ldots \\ w_{p1}' w_{p1}'x_1^{(p)} \ldots w_{p1}'x_N^{(p)} \ldots w_{pM}' w_{pM}'x_1^{(p)} \ldots w_{pM}'x_N^{(p)} \end{Vmatrix} \end{align} $$ $$\begin{align*} P = \| p_{10} \ldots p_{1N} \ldots p_{M0} \ldots p_{MN}\|^T, \end{align*} $$

    $$w_{ki}'$$ - уровень активации (вес) $$i$$ -го правила при предъявлении $$k$$ -го входного вектора $$x^{(k)}$$.

    Размерность матрицы $$W$$ равна $$p \times (N+1)M$$, при этом обычно количество строк (количество выборок) значительно больше количества столбцов. Решение этой системы уравнений можно получить за один шаг при помощи псевдоинверсии матрицы $$W$$:

    $$\begin{align*} P = W^{+}d. \end{align*} $$

    Псевдоинверсия матрицы заключается в решении задачи минимизации

    $$\begin{align*} \min \|W^{+}W - E\|, \end{align*} $$

    где $$E$$ - единичная матрица.

    На втором этапе (линейные параметры $$p_{ij}, i = 1, \ldots M$$ - фиксированы) рассчитываются фактические выходные сигналы $$y_k$$, $$k = 1,2, \ldots, p$$:

    $$\begin{align*} y = Wp, \end{align*} $$

    вектор ошибки

    $$\begin{align*} \varepsilon = y - d, \end{align*} $$

    и градиент целевой функции $$E(n)$$ по параметрам первого слоя. Если применяется метод наискорейшего спуска, то формулы адаптации принимают вид

    $$\begin{align*} c_j^{(i)}(n+1) = c_j^{(i)}(n) - \alpha_c \partial E(n)/ \partial c_j^{(i)}\\ \sigma_j^{(i)}(n+1) = \sigma_j^{(i)}(n) - \alpha_\sigma \partial E(n)/ \partial \sigma_j^{(i)}\\ b_j^{(i)}(n+1) = b_j^{(i)}(n) - \alpha_b \partial E(n)/ \partial b_j^{(i)} \end{align*} $$

    где $$n$$ обозначает номер очередной итерации.

    После уточнения нелинейных параметров вновь запускается процесс адаптации линейных параметров TSK (первый этап) и нелинейных параметров (второй этап). Этот цикл повторяется вплоть до стабилизации всех параметров процесса.

    Мягкая экспертная система

    Рассмотрим архитектуру и основные структурно-функциональные решения мягкой экспертной системы (МЭС). Для определения МЭС сопоставим понятия нечеткой и мягкой экспертных систем. В описании архитектуры МЭС будем использовать три признака: способ извлечения знаний; представление знаний; обработку знаний. Перечисленные признаки создают общую "координатную" сетку описания.

    Определение мягкой экспертной системы. Сравнение нечеткой и мягкой экспертных систем

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

  • использует статистические данные, которые интерпретирует как обучающие выборки для нечетких нейронных сетей;
  • представляет знания в виде лингвистических переменных (функций принадлежности - ФП), нечетких продукций и обученных нейронных сетей. Редукция множества нечетких продукций,настройка ФП и базы правил выполняется с помощью генетических алгоритмов (ГА).
  • Мягкими называют вычисления, сочетающие теорию нечетких систем, нейронные сети, вероятностные рассуждения и генетические алгоритмы, и обладающие синергическим эффектом; следовательно, мягкой экспертной системой называют ЭС, сочетающую перечисленные теории ради того же эффекта взаимного усиления.

    Рассмотрим возможные применения МЭС в автоматизированном проектировании. Обобщенной моделью проектирования является иерархически-блочный метод, сущность которого сводится к декомпозиции функций с последующим выделением иерархий систем и подсистем. Проектируемая система формируется с помощью синтеза таких подсистем. Анализ в ходе автоматизированного проектирования обычно заключается в том, что необходимо рассмотреть условия эксплуатации будущей системы или ее окружения, которое является сложной системой (например, для экономических информационных систем окружающая среда - это социально-экономическая среда). Кроме анализа окружающей среды в ходе проектирования приходится выполнять анализ результатов физических или численных экспериментов и имитационного моделирования. Можно выделить два основных принципа экспертной деятельности в ходе проектирования.

    1. Исходные данные для анализа представляются в виде качественного описания структурно-функционального решения и в виде совокупности временных рядов системных переменных окружения.

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

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

    Представление знаний в мягкой экспертной системе. Содержание баз знаний и данных мягкой экспертной системы

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

    База знаний МЭС должна содержать следующие части:

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

    Вернуться к учебному плану