Вид РИД
Изобретение
Изобретение относятся к области компьютерных систем, основанных на биологических моделях, более точно к компьютерным моделям искусственных нейронных сетей (ИНС), предназначенных для решения задач классификации объектов, описываемых наборами числовых признаков (векторами), а именно к способам их обучения.
Известно (патент 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() языка программирования «Паскаль», под материальным носителем - бумажная распечатка. Визуальные образы, наглядно описывающие объекты, задаваемые сгенерированными обучающими векторами, выводятся на монитор компьютера.