Эллиот 2 симметричных сигмоидальных передаточных функции
A = elliot2sig(N)
Передаточные функции преобразовывают сетевой вход слоя нейронной сети в его сетевой вывод. Эта функция является изменением на исходном Эллиоте сигмоидальная функция. Это имеет более крутой наклон, ближе к tansig, но не так сглаженно в центре.
A = elliot2sig(N) берет S-by-Q матрица S
N - элемент сетевые входные вектор-столбцы и возвращает S-by-Q матричный A выходных векторов, где каждый элемент N раздавлен от интервала [-inf inf] к интервалу [-1 1] с “S-образной” функцией.
Преимущество этой передаточной функции по другому sigmoids состоит в том, что это быстро, чтобы вычислить на простом вычислительном оборудовании, когда это не требует никаких показательных или тригонометрических функций. Его недостаток - то, что это вылетает от классической сигмоидальной формы вокруг нуля.
Вычислите слой вывод от одного сетевого входного вектора:
n = [0; 1; -0.5; 0.5]; a = elliot2sig(n);
Постройте передаточную функцию:
n = -5:0.01:5; plot(n, elliot2sig(n)) set(gca,'dataaspectratio',[1 1 1],'xgrid','on','ygrid','on')
Для сети вы уже задали, измените передаточную функцию для слоя i:
net.layers{i}.transferFcn = 'elliot2sig';