СПОСОБ ОБУЧЕНИЯ ИСКУССТВЕННОЙ НЕЙРОННОЙ СЕТИ
Изобретение относится к искусственным нейронным сетям (ИНС) и может быть использовано для обучения ИНС. Техническим результатом является осуществление обучения ИНС при отсутствии статистически достаточного ряда наблюдений исследуемых объектов. Способ содержит этапы: определяют необходимое число обучающих векторов; ограничивают пространство входных векторов некоторой областью О; указывают М векторов, описывающих наиболее типичных представителей каждого из исследуемых классов объектов, принадлежащих области О; генерируют K обучающих векторов входных сигналов ИНС, вначале вблизи окрестности М векторов, с последующим расширением до области О; создают визуальные образы, наглядно описывающие объекты, задаваемые сгенерированными обучающими векторами; определяют один из М классов, к которому относится каждый из K сгенерированных обучающих векторов входных сигналов ИНС; записывают сгенерированные обучающие векторы и эталонные сигналы, соответствующие классам объектов, к которым относятся сгенерированные вектора, в виде пар; считывают записанные пары и подают на входы ИНС; корректируют вектор синаптических весов нейронов w(n) с шагом коррекции η до завершения обучения ИНС. 1 з.п. ф-лы, 3 ил.
Изобретение относятся к области компьютерных систем, основанных на биологических моделях, более точно к компьютерным моделям искусственных нейронных сетей (ИНС), предназначенных для решения задач классификации объектов, описываемых наборами числовых признаков (векторами), а именно к способам их обучения.
Известно (патент RU 2424561 С2; МПК G06F 15/18, G06K 9/66, G06N 3/08, опубликован 20.07.2011 г.), что некоторые компьютерные задачи, например задачи классификации, хорошо решаются методами машинного обучения.
Главный из них связан с использованием ИНС, представляющих собой математические модели, а также их программные и/или аппаратные реализации, построенные по принципу организации и функционирования сетей нервных клеток живых организмов.
Нейронные сети базируются на концепции взаимосвязанных нейронов. В ИНС нейроны содержат значения данных, каждое из которых влияет на значение присоединенного нейрона согласно связям с заранее заданными весами и на то, отвечает ли сумма связей с каждым конкретным нейроном заранее заданному порогу. Определяя надлежащие веса связей (процесс называется обучением), ИНС может добиться эффективного решения задач классификации.
Рассмотрим способ обучения ИНС, называемый «обучение с учителем», на примере случая двухклассовой классификации линейно сепарабельных объектов, когда число классов М равняется двум, который может служить основой для решения более сложных задач.
Одной из моделей ИНС, решающих эту задачу, является нейронная сеть, называемая персептрон (Рутковская Д. Нейронные сети, генетические алгоритмы и нечеткие системы: пер. с польск. И.Д.Рудинского / Д.Рутковская, М Пилиньский, Л.Рутковский / - М.: Горячая линия - Телеком, 2006? стр.21-25). На фиг.1 представлена структура персептрона.
В персептроне в качестве функции f в модели нейрона МакКаллока-Питтса применяется биполярная функция активации:
в которой
где u1, …, uN - входные сигналы ИНС;
w1, …, wN - синаптические веса;
y - выходной сигнал ИНС;
ν - пороговое значение.
Сигнал x на выходе линейной части персептрона задается выражением:
где w0=ν,u0=-1.
Задача персептрона заключается в классификации вектора u=[u1,…,uN]T в смысле отнесения его к одному из двух классов (М=2), обозначаемых символами L1 и L2. Персептрон относит вектор u к классу L1, если выходной сигнал у принимает значения 1, и к классу L2, если выходной сигнал у принимает значение -1. После этого персептрон разделяет N-мерное пространство входных векторов u на два полупространства, разделяемые (N-1)-мерной гиперплоскостью, задаваемой уравнением:
Гиперплоскость (4) называется решающей границей (decision boundary). Если N=2, то решающая граница - это прямая линия, задаваемая уравнением:
Любая точка (u1, u2), лежащая над этой прямой, показанной на фиг.2, относится к классу L1, тогда как точка (u1, u2), лежащая под этой прямой, относиться к классу L2.
Как правило, веса wi, i=0, 1, …, N в уравнении гиперплоскости (4) неизвестны, тогда как на вход персептрона последовательно подаются так называемые обучающие векторы (сигналы) u(n), n=1, 2, …, где u(n)=[u1(n),…,uN(n)]T.
Неизвестные значения весов определяются в процессе обучения персептрона. Такой подход получил название «обучение с учителем» или «обучение под надзором». Роль «учителя» заключается в корректном отнесении сигналов u(n) к классам L1 или L2 несмотря на неизвестность весов уравнения решающей границы (4). По завершении процесса обучения персептрон должен корректно классифицировать поступающие на его вход сигналы, в том числе и те, которые отсутствовали в обучающей последовательности u(n), n=1, 2, …, K. Кроме того, примем, что множества векторов u(n), n=1, 2, …, K, для которых выход персептрона принимает соответственно значения 1 и -1, линейно отделены, т.е. лежат в двух различных полупространствах, разделенных гиперплоскостью (4). Иначе говоря, допускается разделение обучающей последовательности {u(n)} на две последовательности {u1(n)} и {u2(n)} так, что {u1(n)}∈L1 и {u2(n)}∈L2.
В n-й момент времени сигнал на выходе линейной части персептрона определяется выражением:
где u(n)=[-1, u1(n), u2(n), …, uN(n)]T;
w(n)=[v(n), w1(n), w2(n), …, wN(n)]T.
Обучение персептрона заключается в рекуррентной коррекции вектора весов w(n) согласно формулам:
и
где параметр η при 0<η<1 - шаг коррекции, тогда как начальные значения компонент вектора весов устанавливаются равными нулю, т.е.
Зависимости (7) и (8) можно представить в более сжатом виде. Для этого определим так называемый эталонный (заданный) сигнал d(n) в форме:
Кроме того, отметим, что выходной сигнал персептрона может быть описан выражением:
С учетом введенных обозначений рекурсии (7) и (8) принимают вид:
Разность d(n)-y(n) можно интерпретировать как погрешность ε(n) между эталонным (заданным) сигналом d(n) и фактическим выходным сигналом y(n).
С учетом принятого выше условия линейной сепарабельности входных сигналов алгоритм (12) сходится, т.е.
По завершении обучения решающая граница персептрона определяется выражением:
и персептрон корректно классифицирует как сигналы, которые принадлежат к обучающей выборке {u(n)}, так и не входящие в это множество, но выполняющие условие линейной сепарабельности.
Обучение других моделей ИНС для решения более сложных задач способом «обучение с учителем», в целом, происходит аналогично описанному выше.
Известно (Пучков, Е.В. Разработка нейросетевой системы управления технологическими процессами на сортировочных горках: дисс. на соискание ученой степени кандидата технических наук по спец-ти 05.13.06, - Ростов-на-Дону, 2011 г.), что для формирования обучающей выборки для обучения ИНС способом «обучение с учителем» обычно используют данные, получаемые из следующих источников:
1. локальные данные организаций (базы данных, табличные файлы и т.д.);
2. внешние данные, доступные через Интернет (курсы акций, сведения о погоде и т.д.);
3. данные, получаемые от различных устройств (датчики оборудования, видеокамеры и т.д.).
Недостатком описанного способа является невозможность его применения в случае отсутствия статистически достаточного ряда наблюдений исследуемых объектов, что не позволяет сформировать достаточного числа обучающих векторов для корректного обучения ИНС способом «обучение с учителем».
Технической задачей, решаемой в патентуемом изобретении, является расширение класса задач, решаемых с помощью технологии ИНС, на случай отсутствия статистически достаточного ряда наблюдений исследуемых объектов.
Поставленная техническая задача достигается тем, что обучающие векторы формируют на основе знаний эксперта в рассматриваемой области, причем эксперт последовательно определяет классы исследуемых объектов, к которым относятся сгенерированные с помощью генератора псевдослучайных чисел обучающие векторы входных сигналов ИНС, принадлежащие некоторой рассматриваемой области, и созданные компьютером визуальные образы, наглядно описывающие объекты, задаваемые сгенерированными обучающими векторами.
Под экспертом, в контексте данного изобретения, понимается человек, обладающий специальными знаниями об исследуемых объектах, компетентный в рассматриваемой области.
Реализуемый с использованием компьютера порядок выполнения действий патентуемого способа содержит следующие этапы:
1. определение необходимого числа K обучающих векторов u(n), n=1, 2, …, K для обучения ИНС, т.е. числа точек на N-мерном пространстве входных векторов u;
2. указание диапазона изменения входных сигналов ИНС, т.е. ограничение всего N-мерного пространства входных векторов и некоторой рассматриваемой областью О (на фиг.3. показана штриховкой);
3. указание М векторов, описывающих наиболее типичных представителей каждого из М исследуемых классов объектов L1, L2, …, Lj, j=1, 2, …, М, принадлежащих области О;
4. генерация компьютером с помощью генератора псевдослучайных чисел K обучающих векторов u(n), n=1, 2, …, K входных сигналов ИНС, принадлежащих области О, вначале вблизи окрестности точек, указанных экспертом на этапе 3 рассматриваемого способа, т.е. вблизи окрестности точек М векторов, описывающих наиболее типичных представителей каждого из М исследуемых классов объектов L1, L2, …, Lj, с последующим последовательным равномерным расширением этой окрестности до указанной ранее области О;
5. создание компьютером визуальных образов, наглядно описывающих объекты, задаваемые сгенерированными обучающими векторами;
6. демонстрация эксперту сгенерированных обучающих векторов и визуальных образов, наглядно описывающих объекты, задаваемые сгенерированными обучающими векторами;
7. определение экспертом, на основе своих знаний об исследуемых объектах, в пределах рассматриваемой области О, одного из М классов, к которому относится каждый из K сгенерированных обучающих векторов u(n) входных сигналов ИНС;
8. запись сгенерированных обучающих векторов u(n) и эталонных сигналов dj(n), соответствующих классам Lj(n) объектов, к которым, по мнению эксперта, относятся сгенерированные вектора, в виде пар <u(n), dj(n)> на материальный носитель;
9. считывание записанных пар вида <u(n), dj(n)> с материального носителя и подача на входы ИНС считанных сигналов обучающих векторов u(n) и соответствующих эталонных сигналов dj(n),
10. коррекция вектора синаптических весов нейронов w(n) ИНС в соответствии с (12) с шагом коррекции η до завершения обучения.
Описанный способ может быть улучшен тем, что эксперт в случае затруднения с определением принадлежности какого-либо из K сгенерированных обучающих векторов u(n) входных сигналов ИНС к тому или иному из М классов (этап 7 описанного выше порядка действий) имеет возможность отказаться от работы с данным вектором и повторно генерировать новые обучающие векторы (возврат к этапу 4) без определения их принадлежности до тех пор, пока он не сможет корректно определить принадлежность одного из вновь сгенерированных векторов.
Изобретение поясняется следующими графическими материалами:
фиг.1 - структура персептрона;
фиг.2 - двумерное пространство входных векторов (гиперплоскость);
фиг.3 - ограничение двумерного пространства входных векторов и некоторой рассматриваемой областью О.
Использование патентуемого способа обучения ИНС обеспечивает по сравнению с известным способом следующие технические преимущества:
а) расширение класса задач, решаемых с помощью технологии ИНС, на случай отсутствия статистически достаточного ряда наблюдений исследуемых объектов;
б) ИНС содержит в себе знания конкретного, участвовавшего в обучении, эксперта об исследуемых объектах и может имитировать его интеллектуальную деятельность при решении задач классификации объектов, описываемых наборами числовых признаков (векторами).
В среде «Delphi 7» была создана, исполняемая на компьютере, программа, используемая в описываемом способе обучения ИНС. Под генератором псевдослучайных чисел, в данном случае, понимается применение стандартных функций Randomize и Random() языка программирования «Паскаль», под материальным носителем - бумажная распечатка. Визуальные образы, наглядно описывающие объекты, задаваемые сгенерированными обучающими векторами, выводятся на монитор компьютера.
Формула изобретения
1. Способ обучения искусственной нейронной сети (ИНС), предназначенной для решения задач классификации объектов, описываемых наборами числовых признаков (векторами), содержащий N-мерное пространство обучающих векторов u(n)=[u1(n), …, uN(n)]T, n=1, 2, …, K для обучения ИНС; М исследуемых классов объектов L1, L2, …, Lj, j=1, 2, …, М;
эталонные сигналы dj(n), соответствующие исследуемым классам Lj(n) объектов; вектор синаптических весов нейронов w(n) ИНС; шаг коррекции η, 0<η<1; выходные сигналы ИНС y(n) отличающийся тем, что обучающие векторы u(n), n=1, 2, …, K формируют на основе знаний человека, компетентного в рассматриваемой области (эксперта). В случае отсутствия статистически достаточного ряда наблюдений исследуемых объектов, причем эксперт последовательно определяет классы исследуемых объектов, к которым относятся сгенерированные с помощью генератора псевдослучайных чисел обучающие векторы входных сигналов ИНС, принадлежащие некоторой рассматриваемой области, и созданные компьютером визуальные образы, наглядно описывающие объекты, задаваемые сгенерированными обучающими векторами, при этом реализуемый с использованием компьютера порядок выполнения действий патентуемого способа содержит следующие этапы: определяют необходимое число К обучающих векторов u(n), n=1, 2, …, K для обучения ИНС; ограничивают N-мерное пространство входных векторов u некоторой рассматриваемой областью О;
указывают М векторов, описывающих наиболее типичных представителей каждого из М исследуемых классов объектов L1, L2, …, Lj, j=1, 2, …, М, принадлежащих области О; генерируют компьютером с помощью генератора псевдослучайных чисел K обучающих векторов u(n), n=1, 2, …, K входных сигналов ИНС, принадлежащих области О, вначале вблизи окрестности указанных М векторов, описывающих наиболее типичных представителей каждого из М исследуемых классов объектов L1, L2, …, Lj, с последующим последовательным равномерным расширением этой окрестности до указанной ранее области О;
создают компьютером визуальные образы, наглядно описывающие объекты, задаваемые сгенерированными обучающими векторами; демонстрируют эксперту сгенерированные обучающие векторы и визуальные образы, наглядно описывающие объекты, задаваемые сгенерированными обучающими векторами; определяют, на основе знаний эксперта об исследуемых объектах, в пределах рассматриваемой области О, один из М классов, к которому относится каждый из K сгенерированных обучающих векторов u(n) входных сигналов ИНС; записывают сгенерированные обучающие векторы u(n) и эталонные сигналы dj(n), соответствующие классам Lj(n) объектов, к которым, по мнению эксперта, относятся сгенерированные вектора, в виде пар <u(n), dj(n)> на материальный носитель; считывают записанные пары вида <u(n), dj(n)> с материального носителя и подают на входы ИНС считанные сигналы обучающих векторов u(n) и соответствующие эталонные сигналы dj(n); корректируют вектор синаптических весов нейронов w(n) с шагом коррекции η до завершения обучения ИНС.
2. Способ обучения искусственной нейронной сети (ИНС), предназначенной для решения задач классификации объектов, описываемых наборами числовых признаков (векторами) по п.1, отличающийся тем, что в случае затруднения эксперта с определением принадлежности какого-либо из K сгенерированных обучающих векторов u(n) входных сигналов ИНС к тому или иному из М классов, имеют возможность отказаться от работы с данным вектором и повторно генерируют новые обучающие векторы без определения их принадлежности до тех пор, пока не смогут корректно определить на основе знаний эксперта об исследуемых объектах принадлежность одного из вновь сгенерированных векторов.