42220

Комитетные методы обучения нейронных сетей

Лабораторная работа

Информатика, кибернетика и программирование

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

Русский

2013-10-27

109.5 KB

9 чел.

Федеральное государственное бюджетное образовательное учреждение

Высшего профессионального образования

«Национальный исследовательских Томский политехнический университет»

Институт кибернетики

Кафедра вычислительной техники

Цой Ю.Р.

Методические указания

к выполнению лабораторной работы

«Комитетные методы обучения нейронных сетей»

по курсу «Методы вычислительного интеллекта»

Томск, 2012 г.


Цель работы
: Ознакомиться с основами комитетных методов обучения искусственных нейронных сетей для решения задач классификации. Сравнить результаты работы алгоритмов бэггинга и бустинга.

Комитетные методы классификации

К классу комитетных методов классификации относятся методы, в которых при принятии решения о том, к какому классу относится предъявленное описание объекта, участвует несколько классификаторов.

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

Отметим, что нейронная сеть также может изначально считаться комитетным методом, если считать, что каждый нейрон – это отдельный классификатор, который умеет распознавать два класса. Тогда вся сеть, это многоуровневая композиция таких бинарных классификаторов. Однако, в данной лабораторной работе будем рассматривать ИНС как классификатор «целиком».

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

Далее приводится описание двух распространенных методов комитетной классификации: бэггинг и бустинг.

Бэггинг (Bagging)

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

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

Бустинг (Boosting)

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

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

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

,            (1)

где  – вес i-го обучающего примера;  и  – соответственно фактический и требуемый сигнал на выходе ИНС;  – индикаторная функция:

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

,

которая отражает нормализованную ошибку m-го классификатора, не зависящую от масштаба весов. Вес («качество») m-го классификатора вычисляется как:

.         (2)

Таким образом, чем меньше нормализованная ошибка, тем больше вес классификатора. На основании величины веса m-го классификатора производится обновление весов примеров для обучения m+1 классификатора:

.               (3)

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

В алгоритме бустинга как правило используются так называемые «слабые» алгоритмы классификации, для которых достаточно точности классификации лишь немногим лучше случайной классификации. Учитывая, что выше описан вариант алгоритма для задачи бинарной классификации, для слабого классификатора достаточно точности распознавания больше 50%. Т.е.  теоретически должно быть меньше 0.5, и у сложных для распознавания примеров вес должен увеличиваться.

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

  1.  Инициализация весов обучающих примеров: , N – количество обучающих примеров.
  2.  Для каждого из M обучаемых классификаторов:
    1.  Обучение классификатора с использованием целевой функции (1)
    2.  Вычисление веса классификатора по формуле (2).
    3.  Обновление весов обучающих примеров (3).
  3.  Принятие решения с использованием выражения

где  – выходной сигнал m-го классификатора для входного вектора .

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

Поскольку (1) существенно отличается от среднеквадратичной функции ошибки, часто используемой при обучении ИНС, то для применения бустинга для обучения комитета ИНС необходимо сделать одно из двух:

  1.  Внести изменения в формулы для обратного распространения ошибки, т.к. эти формулы напрямую зависят от вида целевой функции.
  2.  Адаптировать алгоритм бустинга.

Здесь мы рассмотрим второй вариант, он менее очевиден. Первый можно оставить в качестве упражнения.

Изменениям подвергнутся целевая функция и формирование обучающей выборки для m-го классификатора.

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

,            (4)

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

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

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

.

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

Ход работы

  1.  Определите свой вариант в соответствии с номером в журнале, ознакомьтесь с задачей.
  2.  Реализуйте и отладьте алгоритмы бэггинга и бустинга.
  3.  Выберите несколько значений количества классификаторов к комитете для экспериментов. Например, , , , . Постарайтесь, чтобы были как малые, так и сравнительно большие комитеты.
  4.  Проведите эксперименты по тестированию точности классификации для алгоритмов бэггинга и бустинга для комитетов различного размера

Заполните таблицу:

Размер комитета

Бэггинг

Бустинг

значениями вида , где  – средняя точность классификации не тестовом множестве,  – среднеквадратичное отклонение, полученные по результатам не менее 10 запусков.

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

Варианты

  1.  cancer1.
  2.  card1.
  3.  diabetes1.
  4.  heart1.
  5.  cancer2.
  6.  card2.
  7.  diabetes2.
  8.  heart2.
  9.  cancer3.
  10.  card3.
  11.  diabetes3.
  12.  heart3.

Дополнительные баллы

  1.  (+5 баллов) Реализация алгоритма обратного распространения ошибки, работающего с целевой функцией (1) и применение этого алгоритма для обучения комитета нейронных сетей по алгоритму бустинга.
  2.  (+2 балла) Отчет в формате LaTeX.

Литература

  1.  Bishop C. Pattern recognition and machine learning. – Springer, 2006.
  2.  Воронцов К.В. Лекции по алгоритмическим композициям. 2010. www.MachineLearning.ru
  3.  Хайкин С. Нейронные сети: полный курс, 2-е изд., испр. : Пер. с англ. – М. : 000 "И.Д. Вильяме", 2006. – 1104 с. : ил. – Парал. тит. англ.

1 Напоминает рулеточный отбор.


 

А также другие работы, которые могут Вас заинтересовать

10821. Туристский потенциал Челябинской области 135 KB
  Основная цель данной работы заключается в том, чтобы показать и доказать необходимость развития туризма в Челябинской области. Ведь это не только промышленный регион, но еще и место, где сосредоточены огромные туристские ресурсы, такие как Аркаим, Ильменский государственный заповедник и другие.
10822. Людина серед людей 101 KB
  Outline for the lesson of English for 11thgraders. Lesson 6 Планконспект уроку з англійської мови для учнів 11х класів. Урок 6 Підтема: Людина серед людей. Мета: Обговорити в групах та в процесі аудіювання тексту положення та якості особистості в суспіл Систематизувати та повторити тему
10823. Видатні люди. Люди, які самі себе зробили. (Self-Made People.) 50 KB
  Outline for the lesson of English for 11thgraders. Lesson 7 Планконспект уроку з англійської мови для учнів 11х класів. УРОК 7 Тема. Повторення. Я моя сімя і друзі Підтема: Видатні люди. Люди які самі себе зробили. SelfMade People. Мета: Систематизувати матеріал Plural of Nouns та тренувати учнів у ...
10824. Люди, робота і професія. Діагностичне тестування 52.5 KB
  Outline for the lesson of English for 11thgraders. Lesson 8 Планконспект уроку з англійської мови для учнів 11х класів. УРОК 8 Тема: Люди робота і професія. Підтема: Діагностичне тестування. Мета: Проконтролювати розуміння та обговорити текст для домашнього читання. Провести контроль на
10825. Люди, робота і професія. Друзі. для учнів 11-х класів 53.5 KB
  УРОК 9 Тема: Люди робота і професія. Підтема: Друзі Мета: Проаналізувати та обговорити результати діагностичного тесту. Формувати в учнів уміння висловлювати свою думку за темою уроку адекватно реагувати в ситуації спілкування. Практикувати учнів у вживанні видоча
10826. Дорога в житті. Люди, робота і професія 43 KB
  Outline for the lesson of English for 11thgraders. Lesson 10 Планконспект уроку з англійської мови для учнів 11х класів. УРОК 10 Тема: Люди робота і професія. Підтема: Дорога в житті. Мета: Провести вводну бесіду про важливість вибору життєвого шляху. Практикувати учнів у читанні тексту за
10827. Праця - обовязок кожного. Люди, робота і професія 24.02 KB
  УРОК 11 Тема: Люди робота і професія. Підтема: Праця обовязок кожного. Мета: Практикувати учнів у читанні тексту за темою з добуванням основної інформації. Узагальнити у вправах вживання Present Perfect. Обладнання: підручник In the Hospital HO таблиця Present Perfect H02. ХІД У
10828. Різноманітність професій 51.5 KB
  УРОК 12 Тема: Люди робота і професія. Підтема: Різноманітність професій. Мета: Ознайомити учнів зі списком професій та тренувати їх в описанні різних професій. Формувати навички працювати за моделлю. Обладнання: підручник список професій Occupation HO. ХІД УРОКУ I. П...
10829. Вибір професії. Люди, робота і професія 51.5 KB
  УРОК 13 Тема: Люди робота і професія. Підтема: Вибір професії. Мета: Практикувати учнів в аудіюванні тексту за темою. Націлити учнів на оптимальну оцінку своїх можливостей у виборі професії. Підготувати учнів до написання есе про професію. Обладнання: підручник т...