Разное

Нечеткие нейронные сети: Разработка нечеткой нейронной сети NEFClass M / Хабр

Содержание

Разработка нечеткой нейронной сети NEFClass M / Хабр

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

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

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


Аргументом численной оптимизации, направленной на уменьшение среднеквадратичной ошибки по обучающей выборке, является совокупный вектор параметров a и b всех нечетких множеств сети. В качестве конкретного метода может выступать любой метод безусловной оптимизации, как, например, градиентный метод или метод сопряженных градиентов.
Алгоритм обучения нечеткой нейронной сети NEFClass M
Этап 1 — генерация базы правил

Для первого этапа данного алгоритма – обучения базы правил ис-пользуется первый этап базового алгоритма NEFClass.
Этап 2 — обучение нечетких множеств

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

Проведение экспериментов с ННС NEFClass М
Исходные данные

В качестве образцов для сети были выбраны сотрудники МГОУ и занесены в базу данных(Рис.1.). Фотографии содержат изменения ракурса, масштаба и освещения. База данных имеет 100 изображений: 10 человек по 10 лиц. Размер изображений – 112×92. Формат — один байт на пиксель, в виде значений градаций серого [0; 255]. Для ускорения обучения изображения были уменьшены в 4 раза по объему (46×56).


рис.1.

Базы данных перед обучением были разделены на 2 части. Нечетные изображения человека использовались для обучения, а четные — для тестирования. Эксперименты с нечеткой нейронной сетью проводились в математическом редакторе Mathcad 14.0.

Эксперименты с ННС NEFClass M
Параметры обучения ННС NEFClass M






ПараметрЗначение
Алгоритм генерации правиллучший для класса
Алгоритм обучениясопряженных градиентов
Функция агрегациивзвешенная сумма
Количество термов для каждого признака5

Исследуем зависимость качества обучения от количества правил, которые генерируются на первом этапе. В качестве проверки будем проводить тестирование на проверочной выборке. Для этого зададим количество правил 1, 2, 3 или 4 (из 5) на каждый класс. Конфигурация сети: 40 выходных нейронов, 5 термов на каждый признак.
Результаты экспериментов

Таблица 1 — Зависимость качества обучения от количества правил











Входных нейроновНейронов правилРаспознавание (обучающая выборка)Распознавание (проверочная выборка)
OkErr?OkErr?
2004073.526.50.070.030.00.0
2008092.57.50.086.018.00.0
20012098.51.50.091.09.00.0
200160100.00.00.093.56.50.0
4004076.522.01.567.532.01.5
4008092.07.01.082.516.51.0
40012098.02.50.597.50.51.5
400160100.00.00.098.50.01.5

где «Err» — ошибки второго рода, «?» – нераспознанные образы (ошибка первого рода).

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

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

Вывод

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

1. количество коэффициентов Фурье для качественного соотнесения изображения к определенному классу: 80-200, в зависимости от количества классов;

2. количество скрытых нейронов: 80-200, в зависимости от количества выходных нейронов;

3. наиболее оптимальные функции активации слоев – гиперболический тангенс;

4. алгоритм обучения – градиентный с адаптацией шага обучения

P.S Моя первая статья на хабре. Моя работа по аспирантуре.

НОУ ИНТУИТ | Лекция | Нечеткие и гибридные нейронные сети

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

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

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

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

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

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

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

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

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

Нечеткие множества

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

НОУ ИНТУИТ | Лекция | Нечеткие и гибридные нейронные сети

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

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

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

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

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

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

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

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

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

Нечеткие множества

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

Как мы анализируем уязвимости с помощью нейронных сетей и нечеткой логики

Изображение: Daniel Friedman, Flickr

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

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

Немного теории

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

Диаграмма Эйлера-Венна для задачи классификации уязвимостей

Для решения широкого класса задач классификации предлагается использовать несколько теорий:

  • теорию нечетких множеств;
  • инструмент для нечеткой оценки свойств объектов: нечеткие шкалы;
  • теорию нейронных сетей.

Теория нечетких множеств

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

Нечеткие шкалы

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

S = {Min, Low, Med, High, Max}

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

Нейронные сети

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

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

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

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

Автоматизация классификации

Для автоматизации процесса классификации объектов мы разработали специальный инструмент — FuzzyClassificator. Это нечеткий нейроклассификатор, в основе которого лежит нейронная сеть, обрабатывающая четкие и нечеткие величины. Код этого инструмента доступен на GitHub, для его работы требуется Pyzo и PyBrain (подробнее по ссылке).

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

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

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

Что в итоге

Ранее нам приходилось заниматься разбором уязвимостей вручную — только так можно было понять, корректно ли сработали наши продукты, существует ли действительно найденная ими уязвимость и настолько ли она серьезна. Нейронная сеть помогает экономить до 70% времени на разбор. В частности, это позволило увеличить число сканируемых CMS и анализируемых сканеров безопасности для конкурентного анализа.

Этот процесс был автоматизирован в использующейся нами системе TeamCity. Тестировщики используют специальный интерфейс для запуска FuzzyClassificator и использования нейросети в режиме обучения и классификации.

Пример отчета системы на этапе обучения выглядит так:

Он включает данные по качеству обучаемой нейронной сети — насколько сильно может ошибаться сеть при анализе. Отчет в «боевом» режиме разбора уязвимостей выглядит так:

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

Ограничения и доработки

Как и любой инструмент, наш FuzzyClassificator имеет свои ограничения. Корректная классификация с его помощью:

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

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

  • перевод инструмента на CPython;
  • реализация исполнения кода на GPU.

Материалы по теме:
P.S. Рассказ о нашем опыте создания нечеткого классификатора был представлен в рамках DevOps-митапа, который состоялся осенью 2016 года в Москве.

Видео:

Слайды:

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

Автор: Тимур Гильмуллин

Нечеткая нейронная сеть архитектуры ANFIS





⇐ ПредыдущаяСтр 8 из 8

ANFIS – адаптивная НС, основанная на системе нечёткого вывода(adaptive network based Fuzzy Inference System). Часто структура гибридной нейронной сети зависит от области применения. Так как архитектура часто используется как контроллер в реальных устройствах управления, то правая часть правила представлена чёткой линейной комбинацией переменных. Реализация логической функции «И» выполнена не с помощью функции min, а с помощью операции произведения. Обучается данная архитектура стандартным алгоритмом обратного распространения ошибки.

Приведем структуру ANFIS – адаптивной НС для двух правил:

ЕСЛИ x1 = A1 И x2 = B1 ТО y1 = c11x1 + c12x2

ЕСЛИ x1 = A2 И x2 = B2 ТО y2 = c21x1 + c22x2

Выход ННС формируется по формуле:

y = ( w1 y1 + w2 y2) / ( w1 + w 2)

Слои ННС ANFIS выполняют следующие функции.

1. Слой 1 представлен радиальными базисными нейронами и моделирует функции принадлежности.

2. Слой 2 – это слой И-нейронов, которые моделируют логическую связку И произведением

wi = mAi(x1) mBi(x2).

3. Слой 3 вычисляет нормированную силу правила:

<wi> = wi / (w1 + w2)

4. Слой 4 формирует значение выходной переменной:

y(x1, x2) = <wi> yi = <wi> (ci1 x1 + ci2 x2).

5. Слой 5 выполняет дефазификацию:

y = <w1> y1 + <w2> y2.

При разработке прикладного интеллектуального контроллера используют следующую процедуру проектирования:

1. Анализ проблемной области. Определяют значимые входные и выходные параметры, значения параметров, лингвистические шкалы.

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

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

4. Формируется стандартная архитектура ННС, например, ANFIS.

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

Пример функционирования нечеткого нейронного контроллера



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

Нечёткий контроллер (регулятор, управляющее устройство) – регулятор, построенный на базе нечёткой логики.

Сущности управляемого процесса – «входные переменные» и «выходные переменные», относящиеся к классу лингв-их переменных.

Управление – манипулирование процессом в контуре обратной связи для получения оптимальных значений определенных выходных переменных.

Управляющие переменные – их значения возвращаются на объект управления.

Управление:

1.определить текущие значения значимых выходных переменных

2.сравнить текущие выходные значения с заданными целевыми

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

4.повторять п1-3 пока не будут получены целевые значения.

Для реализации нечёткого контроллера необходимо:

Определить входные переменные.

2. преобразовать четкие значения входных переменных в нечёткиеиспользовать правила преобразования нечётких выходных значений в нечёткие значения управляющих переменных. (Правила в виде если … то …, например, если давление высокое, то кран закрыть. Подчеркнуто – имена объектных переменных, курсив – нечёткие значения переменных)

3. преобразовать нечёткие значения управляющих переменных в четкие.

Пример. Нечёткий регулятор для стиральной машины (архитектура ANFIS)

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

Рассмотрим простой контроллер с тремя нечёткими правилами вывода в БЗ.

R1: ЕСЛИ <количество_белья> = <много> И <температура_воды> = <высокая> И <загрязненность> = <высокая>

ТО <длительность> = <высокая>;

R2: ЕСЛИ <количество_белья> = <много> И <температура_воды> = <высокая> И <загрязненность> = <низкая>

ТО <длительность> is <низкая;




R3: ЕСЛИ <количество_белья> = <мало> И <температура_воды> = <низкая> И <загрязненность> = <низкая>

ТО <длительность> = <малая>;

Зададим следующие функции формы для правил.

1.Пусть выражение <количество_белья> = <мало> соответствует функции L1(x), а <количество_белья> = <много> – функции H1(x).

L1(x) = 1/(1 + exp(b1(x — c1)),

H1(x) = 1/(1+exp(-b1(x — c1)),

причем L1(x) + H1(x) = 1.

2.Аналогично для выражения <температура_воды> = <высокая> будем использовать функцию L2(t), а для <температура_воды> = <низкая> – функцию H2(t).

L2(t)= 1/(1 + exp(b2(t — c2)),

H2(t)= 1/(1 + exp(-b2(t — c2)),

причем L2(t) + H2(t) =1.

3.Для выражения <загрязненность> = <высокая> определим функцию L3(z) и для <загрязненность> = <низкая> – функцию H3(z).

L3(z)= 1/(1 + exp(b3(z — c3)),

H3(z)= 1/(1 + exp(-b3(z — c3)),

L3(z) + H3(z) =1.

4.Для выходов <длительность> = <высокая> и <длительность> = <низкая> аналогично определим функции

L4(y)= 1/(1 + exp(b4(y — c4)),

H4(y)= 1/(1 + exp(-b4(y — c4)),

то есть L4(x) + H4(x) = 1.

Для четких значений <количество_белья>, <температура_воды> и <загрязненность>: A1, A2, A3 определим релевантность (силу) правил a:

a1 = H1 Ù H2 Ù H3,

a2= H1 Ù H2 Ù L3,

a3= L1 Ù L2 Ù L3.

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

Y1= H4-1(a1 ),

Y2= H4-1(a2 ),

Y2= L4-1(a3 ).

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

y0 = (a1 y1 + a2 y1 + a3 y1)/ ( a1 + a2 + a3).

Далее построим нечёткую нейронную сеть, идентичную системе нечёткого вывода и обучим функции принадлежности анцедента (причина) и консеквента(следствие) правил.

1. Слой 1. Выходы узлов – это степени, c которыми заданные входы удовлетворяют функциям принадлежности, ассоциированным с этими узлами.

2. Слой 2.Каждый узел вычисляет силу правила.

Выход верхнего нейрона a1 = H1 Ù H2 Ù H3 ,

выход среднего нейрона a2 = H1 Ù H2 Ù L3,

а выход нижнего нейрона a3 = L1 Ù L2 Ù L3.

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

3. Слой 3.Каждый узел помечен N, чтобы показать, что узлы нормализуют силу правил bi= ai /(a1 +a2 + a3).

4. Слой 4. Выход нейронов – это произведение нормализованной силы правила и индивидуального выхода соответствующего правила.

b1Y1 = b1H4-1(a1 ), b2Y2 = b2H4-1(a2), b3Y2 = b3L4-1(a3).

5. Слой 5. Одиночный выходной нейрон вычисляет выход сети

y0 = b1Y1 + b2Y2 + b3Y2.

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

Пусть задана четкая обучающая выборка

{(x1 ,t1, z1, y1),…(xk, tk, zk, yk)}, где x, t, z – входные условия количества белья, температуры воды и загрязненности, а y – длительность стирки. Ошибку на k-ом образце определим как обычно

Ek =1/2( Oi -Yi )2.

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

b4(t + 1) = b4(t) — zE/¶b4), c4(t + 1) = c4(t) — zE/¶c4), c1(t + 1) = c1(t) — zE/¶c1).

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

Примеры интеллектуальных систем.

1.Системы проверки грамматики и правописания при подготовке текстов

2.Системы распознавания текстов (Cuneform, FineReader)

3.Системы распознавания речи (Горыныч)

4.Поисковые системы в Internet, к которым можно обращаться с запросами на естественном языке (Апорт, Яндекс)

5.Автопилоты взлета/посадки

6.Программы перевода.

7.Экспертные системы.

Понятия И и ИЛИ — нейрона.


См. вопрос 25


Архитектура нечеткой нейронной сети.


Понятие данных и знаний.

Технология обработки данных является базовой технологией для создания ЭИС. Основным инструментом такой технологии является СУБД. Если система использует базу знаний, то такая система является интеллектуальной системой (Пр. база знаний – база правил «если…то»).

Знания отличаются от данных возможностью интерпретации. Заголовок любой реляционной таблицы является элементом знаний в отличии от содержимого таблицы. Резкой границы между БД и БЗ не существует. Современные развитые СУБД такие как Oracle объединяют 2 технологии, используемые как реляционные БД, так и базы бизнес-правил.

Обработка данных и знаний

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

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











Нечеткая логика и нейронные сети

Замечание 1

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

Введение

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

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

Готовые работы на аналогичную тему

  • Нечёткая логика в самом общем смысле. Рассматривается в теории приближённых вычислений.
  • Нечёткая логика в узком понимании это нечёткая логика в символическом смысле.

Нечёткие нейронные сети

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

  1. Слой определения фаз входных переменных.
  2. Слой агрегирования величин активации условия.
  3. Слой агрегирования нечётких правил.
  4. Слой выхода.

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

Адаптивные нечёткие системы

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

  1. Стадия генерации лингвистического правила.
  2. Стадия коррекции функциональной принадлежности.

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

Существенная часть способов обучения нечётких систем применяет алгоритмы генетики. В западных технических работах этот алгоритм определяется как Genetic Fuzzy Systems.

Нейронные сети в экономике

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

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

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

Также непрерывно возрастает их применение в области формирования прогнозов и маркетинга.

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

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

  1. Выполнение прогноза поведенческих аспектов клиента.
  2. Выполнение прогноза по реализации финансовой сделки и оценки её рисков.
  3. Выполнение прогноза вероятных действий мошенников.
  4. Прогноз вероятного остатка финансов на корреспондентском счёте в банке.

Разработка нечеткой нейронной сети NEFClass M


NEFClass (сокращение от NEuro-Fuzzy CLASSification) — нейро-нечеткая классификация, используется для анализа данных в нейро-нечетких сетях. В статье приводятся эксперименты с применением такой сети для распознавания изображения.


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


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


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


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


Алгоритм обучения нечеткой нейронной сети NEFClass M 
Этап 1 — генерация базы правил


Для первого этапа данного алгоритма – обучения базы правил используется первый этап базового алгоритма NEFClass.


Этап 2 — обучение нечетких множеств


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


Проведение экспериментов с ННС NEFClass М
Исходные данные


В качестве образцов для сети были выбраны сотрудники МГОУ и занесены в базу данных (Рис.1.). Фотографии содержат изменения ракурса, масштаба и освещения. База данных имеет 100 изображений: 10 человек по 10 лиц. Размер изображений – 112×92. Формат — один байт на пиксель, в виде значений градаций серого [0; 255]. Для ускорения обучения изображения были уменьшены в 4 раза по объему (46×56). 



рис.1.

 


Базы данных перед обучением были разделены на 2 части. Нечетные изображения человека использовались для обучения, а четные — для тестирования. Эксперименты с нечеткой нейронной сетью проводились в математическом редакторе Mathcad 14.0. 


Эксперименты с ННС NEFClass M
Параметры обучения ННС NEFClass M







Параметр

Значение

Алгоритм генерации правил

лучший для класса

Алгоритм обучения

сопряженных градиентов

Функция агрегации

взвешенная сумма

Количество термов для каждого признака

5


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


Результаты экспериментов


Таблица 1 — Зависимость качества обучения от количества правил












Входных нейронов

Нейронов правил

Распознавание (обучающая выборка)

Распознавание (проверочная выборка)

Ok

Err

?

Ok

Err

?

200

40

73.5

26.5

0.0

70.0

30.0

0.0

200

80

92.5

7.5

0.0

86.0

18.0

0.0

200

120

98.5

1.5

0.0

91.0

9.0

0.0

200

160

100.0

0.0

0.0

93.5

6.5

0.0

400

40

76.5

22.0

1.5

67.5

32.0

1.5

400

80

92.0

7.0

1.0

82.5

16.5

1.0

400

120

98.0

2.5

0.5

97.5

0.5

1.5

400

160

100.0

0.0

0.0

98.5

0.0

1.5


где «Err» — ошибки второго рода, «?» – нераспознанные образы (ошибка первого рода).

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


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


Вывод


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


1. количество коэффициентов Фурье для качественного соотнесения изображения к определенному классу: 80-200, в зависимости от количества классов;

2. количество скрытых нейронов: 80-200, в зависимости от количества выходных нейронов;

3. наиболее оптимальные функции активации слоев – гиперболический тангенс;

4. алгоритм обучения – градиентный с адаптацией шага обучения


искусственные нейронные сети нейро-нечеткие сети

Нечеткая нейронная сеть — Scholarpedia

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

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

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

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

Таблица 1: Сравнение нейронного управления и нечеткого управления
Нейронные сети Нечеткие системы
математическая модель не требуется математическая модель не требуется
обучение с нуля априорные знания необходимы
несколько алгоритмов обучения не умеет учиться
поведение черного ящика простая интерпретация и реализация

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

Характеристики

По сравнению с обычной нейронной сетью, веса соединений, а также функции распространения и активации нечетких нейронных сетей сильно различаются. Хотя существует множество различных подходов к моделированию нечеткой нейронной сети (Buckley and Hayashi, 1994, 1995; Nauck and Kruse, 1996), большинство из них согласны с некоторыми характеристиками, такими как следующие:

Рисунок 1: Архитектура нейронечеткой системы

  • Нейро-нечеткая система, основанная на базовой нечеткой системе, обучается с помощью метода обучения на основе данных, основанного на теории нейронных сетей.Эта эвристика учитывает только локальную информацию, чтобы вызвать локальные изменения в фундаментальной нечеткой системе.
  • Его можно представить в виде набора нечетких правил в любой момент процесса обучения, то есть до, во время и после.
    • Таким образом, система может быть инициализирована с предварительным знанием или без знания нечетких правил.
  • Процедура обучения ограничена, чтобы гарантировать семантические свойства базовой нечеткой системы.
  • Нейро-нечеткая система аппроксимирует n-мерную неизвестную функцию, которая частично представлена ​​обучающими примерами.
    • Нечеткие правила, таким образом, можно интерпретировать как нечеткие прототипы обучающих данных.
  • Нейронечеткая система представлена ​​в виде специальной трехуровневой нейронной сети прямого распространения, как показано на рисунке 1.
    • Первый уровень соответствует входным переменным.
    • Второй слой символизирует нечеткие правила.
    • Третий уровень представляет выходные переменные.
    • Нечеткие множества преобразуются в (нечеткие) веса связи.
    • Некоторые подходы также используют пять уровней, где нечеткие наборы кодируются в единицах второго и четвертого уровня соответственно. Однако эти модели могут быть преобразованы в трехуровневую архитектуру.

В принципе, можно различить три разных типа нечетких нейронных сетей: кооперативные, параллельные и гибридные FNN (Nauck et al., 1997).

Кооперативная нечеткая нейронная сеть

Рисунок 2: Различные совместные нечеткие нейронные сети

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

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

Верхняя правая нейронечеткая система определяет нечеткие правила на основе данных обучения нейронной сети. Здесь также нейронные сети обучаются в автономном режиме до инициализации нечеткой системы. Изучение правил обычно осуществляется путем кластеризации на самоорганизующихся картах признаков (Bezdek et al., 1992; Vuorimaa, 1994). Также возможно применение методов нечеткой кластеризации для получения правил.

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

Нижний правый определяет веса правил для всех нечетких правил нейронной сетью. Это можно сделать онлайн и офлайн. Вес правила интерпретируется как влияние правила (Kosko, 1992). Они умножаются на результат правила. В (Nauck et al., 1997) авторы утверждают, что семантика весов правил четко не определена.Их можно заменить модифицированными функциями принадлежности. Однако это могло разрушить интерпретацию нечетких множеств. Более того, идентичные языковые ценности могут быть по-разному представлены в разных правилах.

Гибридная нечеткая нейронная сеть

Рисунок 3: Гибридная нечеткая нейронная сеть

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

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

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

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

Другой подход (Hayashi et al., 1992) — сгруппировать данные обучения \ (\ {(\ mathbf x_i, y_i) \; | \; x_i \ in \ mathcal X, \; y_i \ in \ mathcal Y, \; i = 1, 2, \ ldots, l \} \) в \ (M \) кластеры. Каждый кластер представляет собой правило \ (R_m \), где \ (m = 1, 2, \ ldots, M \.\) Следовательно, эти правила определены не лингвистически, а скорее точными точками данных \ (\ mathbf x = (x_1, x_2, \ ldots, x_n) \. \) Таким образом, нейронная сеть с \ (n \) блоками ввода, скрытыми слоями и \ (M \) единицы вывода могут применяться для обучения на заранее определенных кластерах. Для тестирования в обученную нейронную сеть предъявляется произвольный шаблон \ (x \). Каждая единица вывода \ (m \) будет возвращать степень, в которой расширение \ (x \) может соответствовать антецеденту правила \ (R_m \. \)

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

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

Кроме того, существуют некоторые дополнительные ограничения, например следующие:

  • Нечеткие множества должны оставаться симметричными.
  • Сумма членских степеней должна составлять до 1.

Важная гибридная нечеткая нейронная сеть была представлена ​​в (Berenji, 1992). ARIC (приблизительное интеллектуальное управление на основе рассуждений) представлен как нейронная сеть, в которой заранее определенная база правил настраивается путем обновления прогноза сети.Таким образом, преимущества нечетких систем и нейронных сетей легко объединить, как показано в таблице 1.

ARIC представлен двумя нейронными сетями с прямой связью, сетью оценки состояния действия (AEN) и сетью выбора действия (ASN). ASN — это многослойное нейросетевое представление нечеткой системы. Затем он снова состоит из двух отдельных. Первый представляет собой нечеткий вывод, а второй вычисляет меру достоверности на основе текущего и следующего состояния системы.Обе части в конечном итоге объединяются в вывод ASN.

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

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

AEN (которая также представляет собой трехуровневую нейронную сеть с прямой связью) предназначена для прогнозирования поведения системы. Скрытый слой получает в качестве входных данных как состояние системы, так и сигнал ошибки от базовой системы.Выходные данные сетей должны представлять собой прогноз следующего подкрепления, который зависит от весов и состояния системы. Веса изменяются с помощью процедуры усиления, которая учитывает выходы обеих сетей ASN и AEN соответственно. ARIC был успешно применен для решения проблемы балансировки опор тележки.

В то время как модель ARIC можно легко интерпретировать как набор правил нечеткого «если-то», сеть ASN для корректировки весов довольно трудна для понимания.Это рабочая архитектура нейронной сети, в которой используются аспекты нечетких систем. Однако семантическая интерпретация некоторых шагов обучения невозможна.

Беренжи и Хедкар (1992) представили усовершенствование своего прежнего подхода под названием GARIC (обобщенный ARIC). Эта идея больше не страдает от различных интерпретаций лингвистических ценностей из-за отказа от взвешенных связей в ASN. Вместо этого нечеткие множества представлены как узлы в сети. Более того, процедура обучения изменяет параметры этих узлов и, следовательно, форму функций принадлежности.GARIC также может использовать в заключении любые функции принадлежности, поскольку используются другой дефаззификатор и дифференцируемая функция мягкого минимума.

Обратите внимание, что модель ANFIS (Jang, 1993) также реализует нечеткую систему, подобную Сугено, в сетевой структуре. Здесь для обучения системы используется смесь простого обратного распространения ошибки и процедуры наименьших средних квадратов. И модель ANFIS, и модель GARIC не так легко интерпретировать, как, например, нечеткие системы типа Мамдани. Поэтому такие модели, как NEFCON (Nauck, 1994), NEFCLASS (Nauck and Kruse, 1996) и NEFPROX (Nauck and Kruse, 1997), были разработаны для нейро-нечеткого контроля, классификации и регрессии соответственно.Все они реализуют нечеткие системы типа Мамдани и поэтому используют специальные алгоритмы обучения.

Список литературы

  • Беренджи, Х. Р. (1992). Архитектура на основе обучения с подкреплением для управления нечеткой логикой. Международный журнал приблизительных рассуждений 6 , 267-292.
  • Беренджи, Х. Р. и Хедкар, П. (1992). Изучение и настройка контроллеров нечеткой логики с помощью подкреплений, IEEE Trans. Нейронные сети , 3 , стр.724-740.
  • Bezdek, J. C., Tsao, E. C.-K. и Пал, Н. Р. (1992). Нечеткие кластерные сети Кохонена, в Proc. IEEE Int. Конф. on Fuzzy Systems, 1992, (Сан-Диего), стр. 1035-1043.
  • Бакли, Дж. Дж. И Хаяси, Ю. (1994). Нечеткие нейронные сети: обзор, Нечеткие множества и системы 66 , стр. 1-13.
  • Бакли, Дж. Дж. И Хаяси, Ю. (1995). Нейронные сети для нечетких систем, Нечеткие множества и системы 71 , стр.265-276.
  • Хаяси И., Номура Х., Ямасаки Х. и Ваками Н. (1992). Построение правил нечеткого вывода с помощью NFD и NDFL. Международный журнал приблизительного рассуждения , 6 , стр. 241-266.
  • Jang, J.-S. Р. (1993). ANFIS: Системы нечеткого вывода на основе адаптивных сетей, IEEE Transaction on Systems, Man, and Cybernetics 23 , pp. 665-685.
  • Коско Б. (1992). Нейронные сети и нечеткие системы. Подход динамических систем к машинному интеллекту (Prentice-Hall, Englewood Cliffs).
  • Наук, Д. (1994). Нечеткий персептрон как общая модель для нейронечетких подходов, в Proc. Fuzzy-Systeme 94 (Мюнхен).
  • Наук, Д. и Круз, Р. (1996). Нейро-нечеткая классификация с помощью NEFCLASS, в П. Кляйншмидт, А. Бахем, У. Деригс, Д. Фишер, У. Леопольд-Вильдбургер и Р. Меринг (ред.), Operations Research Proceedings 1995 , (Берлин), стр. 294-299.
  • Наук, Д. и Круз, Р. (1997). Аппроксимация функций по NEFPROX, в Proc.Второй европейский семинар по анализу нечетких решений и нейронным сетям для управления, планирования и оптимизации (EFDAN’97), , (Дортмунд), стр. 160-169.
  • Номура, Х., Хаяси, И. и Ваками, Н. (1992). Метод обучения правил нечеткого вывода методом спуска, в Proc. IEEE Int. Конф. on Fuzzy Systems 1992 (Сан-Диего), стр. 203-210.
  • Вуоримаа П. (1994). Нечеткая самоорганизующаяся карта, Нечеткие множества и системы 66 , стр. 223-231.

Внутренние ссылки

  • Роберт Бабушка и Эбрагим Мамдани (2008) Нечеткое управление. Академия наук, 3 (2): 2103.
  • Милан Марес (2006) Нечеткие множества. Академия наук, 1 (10): 2031.
  • Теуво Кохонен и Тимо Хонкела (2007) Сеть Кохонена. Академия наук, 2 (1): 1568.
  • Родольфо Ллинас (2008) Нейрон. Scholarpedia, 3 (8): 1490.

Рекомендуемая литература

  • Клавонн, Ф.Наук Д. и Круз Р. (1997). Основы нейро-нечетких систем (Вили, Чичестер, Соединенное Королевство).
  • Klawonn, F., Kruse R., Nauck, D. and Borgelt, C. (2003). Neuro-Fuzzy-Systeme (Vieweg, Висбаден).

.

Что такое нечеткие нейронные сети?

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

Человек держит компьютер

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

Подсчитано, что средний человеческий мозг выполняет 10000000000000000 инструкций каждую секунду, используя свою нейронную структуру, которая аналогична работе микропроцессоров.Напротив, средняя компьютерная система в 1999 г. была в 24 000 раз медленнее, чем эта, а ранняя модель 1981 г. была в 3 500 000 раз медленнее, чем человеческий мозг при выполнении вычислений. Потребовалось бы 8000 персональных компьютеров, соединенных в сеть вместе с процессорами 2,1 гигагерца, доступными на рынке 2011 года, чтобы приблизиться к скорости среднего человеческого мозга. Однако суперкомпьютер, способный выполнять вычисления с такой же скоростью, как человеческий мозг, не будет иметь такой же силы рассуждений для анализа противоречивых данных реального мира, и именно здесь в игру вступают нечеткие нейронные сети.

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

Программное обеспечение Fuzzy основано на правилах программирования, которые позволяют оценивать уровни истинности при возникновении противоречий в данных, очевидных с человеческой точки зрения.Определение того, кто в группе людей «высокий», а кто «невысокий», например, с использованием традиционной компьютерной обработки, позволит создать четкую линию, в которой обе группы были отделены друг от друга, и промежуточного диапазона не было. Кто-то ростом 6 футов (1,83 метра) будет отнесен к категории невысоких, если ниже среднего, тогда как кто-то ростом 6 футов и 1 дюйм (1,85 метра) будет отнесен к категории высоких. При нечеткой обработке диапазон того, что считается высоким по сравнению с коротким, будет постоянно меняться по мере изменения группы, и решения будут приниматься в соответствии с более разумным градиентом.

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

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

.

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

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

1. Введение

Управление человеческим мозгом инвалидных колясок для людей с ограниченными физическими возможностями привлекло большое внимание из-за их удобства и относительно низкой стоимости, высокой мобильности и быстрой настройки. Измерение сигналов человеческого мозга и преобразование их в управляющие сигналы требуют разработки интерфейса между мозгом и компьютером. Система интерфейса мозг-компьютер (BCI) обеспечивает связь между компьютером и сознанием учеников. Этот интерфейс может быть основан на активности мозга во время мышечных движений или изменении ритмов сигналов мозга [1].Эту активность мозга можно обнаружить с помощью сигналов электроэнцефалографии (ЭЭГ). BCI преобразует сигналы ЭЭГ, производимые мозговой активностью, в управляющие сигналы, которые впоследствии можно использовать для управления креслом-коляской без использования каких-либо физических средств управления. Поскольку сигналы мозга очень слабые, нам необходимо применить усилители и некоторые пространственные и спектральные фильтры к сигналам ЭЭГ, чтобы выделить особенности этих сигналов. Обнаруженные сигналы ЭЭГ основаны на изменении частот и амплитуд.Например, во время произвольных мыслей частота сигналов изменяется, а во время движения происходит синхронизация / десинхронизация мозговой активности, которая включает изменение амплитуды ритма μ . Эта важная характеристика делает BCI на основе ритма подходящим для использования.

Недавно были проведены некоторые исследовательские работы по разработке многих приложений BCI для инвалидных колясок. Основная функция BCI — преобразовывать и передавать намерения человека в соответствующие команды движения для инвалидных колясок, роботов, устройств и так далее.BCI позволяет улучшить качество жизни пациентов с ограниченными возможностями и дать им возможность взаимодействовать с окружающей средой. В [2] представлено применение BCI и управления инвалидной коляской в ​​экспериментальной ситуации. В исследовании рассматривается вождение моделируемой инвалидной коляски в виртуальной среде до использования BCI в реальной ситуации. Виртуальная реальность (VR) снижает количество опасных ситуаций за счет использования приложений для обучения и тестирования. В [3] описана система BCI, которая управляет инвалидной коляской, которая движется только в одном направлении: двигаться вперед.В [4, 5] BCI предназначен для управления креслом-коляской с использованием трех возможных команд: повернуть налево, повернуть направо и двигаться вперед. В [6] BCI разработан с использованием сигнала ЭЭГ, захваченного восемью электродами. Вейвлет-преобразование использовалось для выделения признаков, а радиальные базисные сети использовались для классификации предопределенных перемещений. В [7] для управления всенаправленным роботом используется контроллер, основанный на алгоритме эмоционального обучения мозга. В [8] представлена ​​конструкция системы управления на основе асинхронного BCI для навигации роботов-гуманоидов с использованием ЭЭГ.В [9] рассматривается неинвазивная система интерфейса мозг-компьютер на основе ЭЭГ для достижения стабильного управления низкоскоростным беспилотным летательным аппаратом для поиска цели в помещениях. В источниках [10–15] рассматривается конструкция кресла-коляски с управляемым мозгом. Рассматривается создание жизнеспособной инвалидной коляски с приводом от мозга, которая сочетает в себе BCI с коммерческой инвалидной коляской через уровень управления. Сочетание BCI с архитектурой общего управления [11] позволяет динамически создавать интуитивно понятные и плавные траектории.Процессы выделения и классификации признаков очень важны при проектировании BCI и сильно влияют на производительность системы BCI. Выполнен комплекс исследовательских работ по усовершенствованию алгоритмов выделения и классификации признаков [12–19]. В ссылках [16, 17] рассматриваются алгоритмы извлечения признаков для BCI. В [17] используются адаптивные общие пространственные шаблоны для выделения признаков.

Для классификации сигналов мозга применяются различные алгоритмы кластеризации, основанные на машинах опорных векторов, линейном дискриминантном анализе и нейронных сетях.В [18] используются функции, оптимизированные в смысле статистически значимых и потенциально дискриминационных когерентностей на определенной частоте, и применяется линейный дискриминантный анализ (LDA) для целей классификации. SVM [19] и LDA [20] используются для классификации сигналов мозга.

В последнее время для распознавания активности мозга используются несколько методов мягких вычислений [21–23]. В [21] используется нечеткая логика, а в [22] нейронные сети с оптимизацией роя нечетких частиц для проектирования BCI.В [23] непрерывное вейвлет-преобразование используется для извлечения очень репрезентативных признаков, а затем для классификации применяется адаптивная система нечеткого вывода нейронов (ANFIS). Системы, основанные на нечеткой логике, могут делать классификации, используя расплывчатую, неточную, зашумленную или отсутствующую входную информацию. По данной проблеме процесс человеческого восприятия может быть эффективно смоделирован с использованием нечеткой логики.

Как показано, извлечение признаков и классификация играют важную роль в разработке управления на основе мозга для получения высокой точности классификации.В дизайне BCI очень важна высокая степень классификации. В противном случае наличие ошибки может стать причиной подачи неправильной команды, что может привести к опасным ситуациям. Таким образом, низкий уровень ошибок обеспечивает безопасность пользователей. Для классификации сигналов мозга применяются различные алгоритмы кластеризации, основанные на машинах опорных векторов, линейном дискриминантном анализе и нейронных сетях [18]. Нечеткая классификация представляет знания более естественным образом для человеческого мышления и более устойчиво переносит неточности, конфликты и недостающую информацию.В этой статье нечеткая структура нейронной сети предлагается для разработки BCI, чтобы обеспечить эффективное управление инвалидной коляской на основе мозга. В литературе предлагаются разные нейронные и нечеткие сети для решения различных задач [23–29]. В [23–26] структура FNN предназначена для управления динамическими объектами. В [27–29] системы нейро-нечеткого вывода разработаны для целей классификации и управления. Системы, разработанные в этих статьях, используются для специальных целей. В нейрочетких структурах правила строятся с использованием всех возможных комбинаций входных данных и центров кластеров.Проблемы, которые характеризуются множеством входов и множественных выходов, будут иметь огромное количество нечетких правил. Конструкции таких систем малоэффективны и имеют огромное количество параметров. В этой статье количество правил выбирается с использованием результатов кластеризации, которое равно количеству центров кластеров. В этой статье для повышения производительности системы классификации предлагается нечеткая нейронная система (FNS) с множеством входов и выходов, основанная на правилах TSK, для классификации сигналов ЭКГ.

Работа организована следующим образом. В разделе 2 представлена ​​архитектура системы BCI на основе FNN. Описаны этапы обработки сигнала и выделения признаков. В разделе 3 представлен алгоритм классификации на основе FNN. В разделе 4 представлено правило обновления параметров, используемое для FNN. Для обновления параметров FNN применяются алгоритмы классификации нечетких средних и градиентного спуска. В разделе 5 представлены экспериментальные результаты, полученные для системы BCI на основе FNN. В разделе 6 представлены выводы статьи.

2. Архитектура системы BCI

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

Система управления на основе BCI обычно состоит из пяти основных блоков: блока сбора сигналов, блока предварительной обработки сигналов, блока выделения признаков, блока классификации и блока действий, который управляет двигателями кресла-коляски. Основные блоки системы принятия решений представлены на рисунке 1.В блоке сбора сигналов сигналы ЭЭГ фиксируются с помощью гарнитуры Emotiv. Emotiv EPOC — это гарнитура для ЭЭГ, которая предоставляет 14-канальные данные ЭЭГ (рис. 2) и 2 гироскопа для двумерного контроля. Его функции подходят для полезного BCI (разрешение и полоса пропускания). Наша система использует жесты верхнего лица для выполнения команд; Поскольку большинство датчиков Emotiv расположены во фронтальной коре головного мозга, они являются наиболее надежными сигналами для обнаружения. Входные сигналы ЭЭГ отправляются в блок предварительной обработки сигналов для фильтрации и масштабирования и отправляются в блок выделения признаков.В этом блоке основные характеристики извлекаются и отправляются в систему классификации. Блок классификации обрабатывает входные сигналы и выдает команды управления. Позже эти команды управления отправляются на двигатели инвалидной коляски.

Сигналы ЭЭГ, измеренные гарнитурой Emotiv, сначала обрабатываются блоками предварительной обработки сигналов и выделения признаков. Блок предварительной обработки сигналов фильтрует шумы и масштабирует сигналы в определенном интервале. Эти сигналы очень длинные и требуют определенного времени для обработки.Поэтому метод выделения признаков применяется для уменьшения размера сигнала и выделения более важных признаков для классификации. В работе мы использовали быстрое преобразование Фурье (БПФ) для извлечения особенностей входных сигналов ЭЭГ. На рисунке 3 представлены операции, используемые на этапе извлечения признаков. Входной сигнал, полученный от гарнитуры, разбивается на окна с временным интервалом 2 секунды с 50% перекрытием. Использование перекрывающихся окон позволяет повысить точность классификации.Каждое двухсекундное окно соответствует 256 выборкам данных. Каждая вторая гарнитура возвращает 128 выборок данных. Полученные сигналы от каналов, сохраненные в виде окон, затем отправляются в блок нормализации. Каждый канал нормализуется, чтобы центрировать каждый канал на нуле путем вычисления среднего значения каждого канала для окна и последующего вычитания его из каждой точки данных в канале. После нормализации окно Хэмминга применяется к каждому каналу в окне. Сигналы ЭЭГ обычно не повторяются точно в течение любого заданного временного интервала, но математика преобразования Фурье предполагает, что сигнал является периодическим в течение временного интервала.Это несоответствие приводит к ошибкам преобразования, называемым спектральной утечкой. Окно Хэмминга используется для смягчения этой проблемы. Затем к каждому каналу в окне применяется быстрое преобразование Фурье (БПФ) для определения частотных составляющих сигнала. Каждая частотная составляющая используется как функция, в результате чего создаются функции. Чтобы повысить эффективность классификации, функции ранжируются путем оценки ценности частоты путем измерения прироста информации по отношению к классу.Ожидаемый информационный выигрыш — это изменение информационной энтропии () от предыдущего состояния к состоянию, которое принимает некоторую информацию как данность.

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

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

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

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

3. Классификация на основе FNN

Признаки, извлеченные из сигналов ЭЭГ, используются для классификации и определения управляющего воздействия. В этой статье мы предлагаем новый подход, основанный на FNN для классификации сигналов мозга. Извлеченные признаки являются входными сигналами классификатора на основе FNN. Классификатор, основанный на извлеченных функциях, классифицирует сигналы по следующим шести классам: движение вперед, движение назад, поворот налево, поворот направо, включение и выключение переключателя.Дизайн FNN включает разработку нечетких правил, которые имеют форму IF-THEN. Это реализуется путем оптимального определения предпосылки и последующих частей нечетких правил IF-THEN для системы классификации посредством обучения нечетких нейронных сетей. В статье используются типы Takagi-Sugeno-Kang (TSK) правил IF-THEN, которые имеют нечеткую антецедент и четкие последующие части. Нечеткая система типа TSK аппроксимирует нелинейную систему линейными системами и имеет следующий вид: Здесь и — входные и выходные сигналы системы, соответственно, — количество входных сигналов, — количество правил.- входные нечеткие множества; и являются коэффициентами.

Структура нечетких нейронных сетей, используемых для классификации сигнала ЭЭГ, основана на правилах нечеткости типа TSK и представлена ​​на рисунке 4. FNN состоит из шести уровней. Первый слой используется для распределения входных сигналов. Второй уровень включает функции принадлежности. Здесь каждый узел представляет один лингвистический термин. Здесь для каждого входного сигнала, поступающего в систему, вычисляется степень принадлежности, при которой входное значение принадлежит нечеткому множеству.В статье для описания лингвистических терминов используется гауссовская функция принадлежности. где — центр и ширина гауссовских функций принадлежности соответственно. — функция принадлежности th входной переменной для члена j . м — количество входных сигналов; r — это ряд нечетких правил (скрытые нейроны в третьем слое).

Третий уровень — это уровень правил. Здесь количество узлов равно количеству правил. Здесь представлены правила.Выходные сигналы этого слоя вычисляются с использованием операции t-norm min (AND): где — операция min.

Эти сигналы являются входными сигналами для пятого уровня. Четвертый слой — это последующий слой. Он включает линейные системы. Здесь значения выходных правил определяются как

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

На шестом уровне выходные сигналы FNN определяются как Здесь — выходные сигналы FNN (

.

Прогнозирование племенной ценности молочного скота с использованием искусственных нейронных сетей и нейронечетких систем

Развитие машинного обучения и методов мягких вычислений предоставило исследователям множество возможностей для разработки новых аналитических методов в различных областях науки. Целью этого исследования является изучение потенциала двух типов интеллектуальных методов обучения, искусственных нейронных сетей и нейронечетких систем, для оценки племенной ценности (EBV) иранского молочного скота.Первоначально племенная ценность лактирующих коров голштинской породы по молоку и удоям жира оценивалась с использованием общепринятого наилучшего линейного несмещенного прогноза (BLUP) на животной модели. Как только это было установлено, многослойный перцептрон был использован для построения ИНС для прогнозирования племенных значений на основе данных о производительности кандидатов для отбора. Впоследствии нечеткая логика была использована для формирования NFS, гибридной интеллектуальной системы, которая была реализована с помощью алгоритма дерева локальной линейной модели. Для надоев корреляция между EBV и EBV, предсказанная ИНС и NFS, была равна 0.92 и 0,93 соответственно. Соответствующие корреляции для выхода жира составили 0,93 и 0,93 соответственно. Корреляции между предсказаниями ВЭБ для многопоточности для удоя молока и жира при одновременном прогнозе ИНС составили 0,93 и 0,93, соответственно, тогда как соответствующие корреляции с эталонным ВЭБ для множественного NFS составили 0,94 и 0,95 соответственно для производства молока и жира.

1. Введение

Методы машинного обучения, такие как деревья решений и искусственные нейронные сети (ИНС), все чаще используются в сельском хозяйстве, поскольку они являются быстрыми, мощными и гибкими инструментами для приложений классификации и прогнозирования, особенно тех, которые связаны с нелинейными системами. [1].Эти методы использовались для выявления мастита [2], выявления течки [3] и выявления причин выбраковки [1]. Деревья решений и связанные с ними методы также использовались для анализа кривых лактации [4], интерпретации данных о количестве соматических клеток [5] и оценки эффективности репродуктивного управления [6, 7]. Кроме того, ИНС использовались для прогнозирования общей молочной продуктивности фермы [8], прогнозирования надоев за 305 дней [9, 10] и выявления мастита [11, 12].

Нечеткая логика, которая включает в себя классификацию переменных в нечеткие множества со степенью принадлежности от 0 до 1, недавно нашла свое применение в сельскохозяйственных исследованиях [13, 14]. Приложения включали разработку систем поддержки принятия решений для анализа данных по надоям в контрольные дни из программ улучшения молочного стада (DHI) [15]. Выявление мастита и течки с помощью автоматизированных систем доения [16, 17] и определение современных групп с целью генетической оценки [18].Ключевой проблемой при использовании нечетких множеств является разработка соответствующих функций принадлежности (MF). Из-за относительной простоты построения ИНС их можно использовать для сокращения времени и вычислительных затрат, связанных с определением MF. Фактически, развитие нечеткого управления, управляемого нейронными сетями, предполагает, что эти технологии могут дополнять друг друга [19]. В моделях многомерного прогнозирования ИНС может использоваться для разработки MF для нечетких наборов на основе входных переменных, таких как удой, количество детей или стадия лактации.Такие инструменты использовались для разработки программного обеспечения для поддержки принятия решений по выбраковке и замене [20], а также для качественной оценки производства молока [21] у молочного скота.

С точки зрения молочного скотоводства, точное и своевременное прогнозирование удоя потомства в период лактации является ключевым условием для отбора генетически превосходящих самцов. В программе разведения генетический прогресс может быть максимальным за счет точной идентификации превосходных животных, которые будут выбраны в качестве родителей следующего поколения и, следовательно, могут быть достигнуты цели разведения.Ключевым компонентом этого процесса является быстрое и надежное прогнозирование племенной ценности для отбора кандидатов. Однако прогнозирование племенной ценности часто является сложной вычислительной и трудоемкой задачей, поэтому в большинстве стран оно выполняется только периодически (например, ежеквартально или раз в полгода). Быстрые и недорогие альтернативы, которые могут обеспечить приблизительный прогноз племенной ценности с приемлемой точностью, могут позволить племенным компаниям или производителям молока более своевременные решения по отбору и выбраковке.Быстрая идентификация самцов высшего качества может привести к более раннему сбору и распределению спермы и более быстрому генетическому прогрессу [21, 22]. В нескольких исследованиях алгоритмы обратного распространения использовались для разработки ИНС для прогнозирования 305-дневного количества молока, жира и белка [21, 23]. Однако опубликованных исследований по применению нейро-нечетких сетей и ИНС для прогнозирования ВЭБ у дойных коров не проводилось.

Целью данного исследования было изучить потенциал гибридной интеллектуальной системы, которая сочетает в себе искусственные нейронные сети и нечеткую логику, также известную как нейро-нечеткая система (NFS) или нейро-нечеткая сеть (NFN), для вычисления племенная ценность коров голштинской породы по производству молока и жира, основанная на их продуктивности и ВЭБ их родителей.

2. Материал
2.1. Сбор и предварительная обработка данных

Данные были предоставлены Центром животноводства Ирана (ABCI, Тегеран) и включали 119 899 записей о лактации коров голштинской породы первого оплодотворения, отелившихся в возрасте от 22 до 36 месяцев в период с 1990 по 2005 год. Рекорды надоев молока и жира были предварительно скорректированы с учетом частоты доения. Данные, касающиеся условий окружающей среды, включали температуру окружающей среды, влажность окружающей среды и продолжительность светового периода.Стада, включенные в настоящее исследование, были репрезентативными для крупных товарных молочных стад в Иране. В Иране для производства молока используются традиционные молочные фермы, которые состоят примерно из 6 миллионов местных и гибридных молочных коров, и крупные коммерческие фермы, в которых содержится примерно 0,8 миллиона коров голштинской породы. Стада в последней группе практикуют интенсивное управление и кормят общим смешанным рационом, содержащим концентраты (кукурузное зерно, соевый шрот, рыбная мука, семена хлопка, хлопковая мука, зерно ячменя, рапсовый шрот, свекольный жом, жирный порошок, витамины и минералы). люцерна и кукурузный силос.Эти стада содержат до 3000 лактирующих коров, которые содержатся в свободных стойлах и доятся в доильных помещениях. Средняя надойность в этих стадах колеблется от 8000 до 10 000 кг на 305 дней лактации, что превышает средний показатель по стране, составляющий около 6300 кг для иранских голштинов. Искусственное осеменение используется более чем в 75% стад, и большинство коров осеменяются импортным семенем или семенем, предоставленным ABCI. Вообще говоря, ABCI отвечает за регистрацию данных, вычисление генетических оценок и разработку стратегий разведения.Данные о производственных признаках (молочность, жир и выход белка), функциональных признаках (долголетие, легкость отела, количество соматических клеток и фертильность самок) и признаках физического строения регистрируются на большинстве крупных коммерческих ферм, а также ВЭБ для молока и Урожай жира и процентное содержание жира предоставляются фермерам дважды в год.

2.2. Генетический анализ

Данные были подготовлены с использованием Visual FoxPro v6.0 (Microsoft, Редмонд, Вашингтон, США). Следующая модель животных с несколькими признаками для наилучшего линейного непредвзятого прогноза (BLUP) была использована для расчета EBV для надоев молока и жира:

где наблюдение надоя молока или жира на th животном на th уровне количества дней в молоке, уровне возраста отела и классе года стада и сезона года, фиксированный эффект класса года года в стаде, фиксированный эффект -й уровень возраста первого отела, фиксированный эффект -й уровень количества дней в молоке, = случайный генетический эффект -ое животное, распределенный как, и является случайным остаточным эффектом, распределенным как.Генетический анализ проводили с использованием программы PEST [24]. В последующих анализах с использованием ИНС и NFS в качестве входных переменных использовались ВЭБ быка и матери из этого генетического анализа, тогда как ВЭБ отдельных коров использовался в качестве эталонного ВЭБ для расчета прогнозирующей способности сетей.

2.3. Искусственные нейронные сети

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

Обучение ИНС часто способствует обнаружению ранее неизвестных взаимосвязей между входными и выходными переменными, и эти взаимосвязи успешно использовались как в задачах классификации, так и в задачах прогнозирования [26]. Распознавание паттернов в ИНС происходит посредством обучения с выборками данных и не зависит от конкретной формы информации [27].Однако способность сетей распознавать образы может быть улучшена с помощью различных методов. Общие подходы к повышению производительности сети включают в себя: поиск оптимальной сетевой архитектуры, определение подходящего количества циклов обучения, изменение комбинаций входных переменных [28], настройку значений параметров обучения [23], а также предварительный выбор или предварительную обработку данных [ 27].

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

.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *