Сложные модели Тут нечто очень незаконченное, смысл которого в том, что в качестве модели аппроксимируемой зависимости можно взять некоторое семейство параметрических функций, к примеру, рациональных. Мы привыкли, что , скажем, рациональная функция с полиномами четвёртой степени в числителе и знаменателе и этим всё сказано. Но на сампом деле там углядывается целый зоопарк различных моделей, каждая из которых при заданном алгоритме поиска коэффициетов достигает свой индивидуальный локальный минимум. Таким образом может быть лучше перебирать не минимумы. А модели? Где-то это уже было… . Да-да, очень давно у Ивахненко, которого я поначалу совершенно не воспринял Multiple
smart neurons network. Lemma 1. Any multi-variable rational function power >=2 can be decomposed into set of no more than power 2 rational functions. Prove: Let fm(x,y,z…) = Pm(x,y,z…)/Qm(x,y,z…). Qm(x,y,z…) = b0+b1x+b2y+b3xy+b4x2+b5y2+…. По каждой
переменной это есть полином степени <=m.
Такой полином может быть разложен в произведение если .... Не так. Пусть M,N – модели. Будем говорить, что MМN если из fОM следует fОN. Т.е. что
модель M покрывает
более широкий класс функций чем N,
включая все функции из N. Пусть M
= Qm – полный
полином нескольких переменных степени m
по переменной x, N
= Qn*Qk, wheren+k=m
– произведение двух полных полиномов степеней в суиие дающих m
. ThenMМN. Prove: Любой моном ximОMможет быть представлен произведениемxinОQn и xikОQk. Легко и
очевидно. Следствие: Произведение m
линейных сомножителей(bi0+bi1*x++bi2*y+bi3*z+…), I=1,…,m
покрывает полный полином степени m.
Иначе (m)М(1)(1)(1)...(1). Следствие: 1/(m) М
1/(1)(1)(1)…(1) Сдедствие: (m)/(m) М (m)/(1)(1)(1)…(1) и (m)/(m) М (1)/(1)+ (1)/(1)+ (1)/(1)+… +(1)/(1). Отсюда
и доказательство основной теоремы: Модель
полной рациональной функции степени m
покрывается суммой рациональных функций первой степени. Таким
образом возможно управлять усложнением модели постепенно добавляя новые
слагаемые рациональные функции первой степени. f(x,y,…) = е (P(1)/Q(1)), i=1,…, I. Проблема
как тренировать коэффициенты такой модели. Я имею плохой опыт: сумма двух
одинаковых рациональных моделей получила одинаковые коэффициенты. По всей
видимости виноват сам тренинг. Надо либо 1.Начинать
тренировку с существенно разными начальными значениями коэффициентов. В
таком случае целесообразно провести предварительный случайный разброс значений
коэффициентов и поискать локальные минимумы. Положения локальных минимумов
каждый инициализируют начальные значения параметров.
2.Начинать
тренировку одного нейрона. Затем из тренировочной последовательности вычитать
полученные значения: новая последовательность – это разность исходного
и полученного.
Схема:
SNs
Hidden level has new unusual structure. Тренировка
начинается с первого нейрона. Он представляет из себя дробно-линейную или
дробно-квадратичную функцию со свободными коэффициентами – модель. Тренировка
идет на последовательности (x,y,z,….., fi). Коэффициенты
определяются до того момента как: -либо
достигнута желаемая точность, -либо
точность практически не меняется определенное время. В таком
случае начинается тренировка второго нейрона наданных,
определенных с учетом результата тренинга первого нейрона (x,y,z,….., fi
– g1(x,y,z,…..)).
Т.е. на разности исходных значений и результатов моделирования первым нейроном.
Потому и вертикальная стрелочка – поправка входного сигнала. Прелесть
ситуации состоит в том, что при этом первый нейрон достиг локльного минимума
и второй нейрон в него уже не попадет. Он может застрять только в следующем
локальном минимуме. Третий
нейрон тренируется уже на разности (x,y,z,….., fi – g1(x,y,z,…..)
– g2(x,y,z,…..)). Соответственно,
он может попасть только в третий локальный минимум. И т.д.
до достижения требуемой точности или исчерпании лимита нейронов. Т.о. сложность
модели увеличивается постепенно по мере надобности и останавливается там
где это надо. Нейроны задействуются по мере необходимости. На Outputlayer
– выходном уровне при выполнении происходит простое суммирование сигналов
от всех нейронов. Т.е. при выполнении все они равнозначны. Example. Кривая
с двумя простыми пиками должна аппроксимироваться рациональной функцией
4-й степени. Однако на практике такая модель быстро находит один пик и
потом долго не может обнаружить второй. При малом шаге так и остается с
одним пиком. Если взять
в качестве модели сумму двух рациональных второй степени, то она отлавливает
только один пик, а все коэффициенты у обеих функций оказываются равны. Если вести
тренировку сначала одного слагаемого, а затем другого по новой схеме, то
второй нейрон на входе получит данные с одним пиком и легко его аппроксимирует. |