Эллиот симметричная сигмоидальная передаточная функция
A = elliotsig(N)
Передаточные функции преобразовывают сетевой вход слоя нейронной сети в его сетевой вывод.
A = elliotsig(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 = elliotsig(n);
Постройте передаточную функцию:
n = -5:0.01:5; plot(n, elliotsig(n)) set(gca,'dataaspectratio',[1 1 1],'xgrid','on','ygrid','on')
Для сети вы уже задали, измените передаточную функцию для слоя i:
net.layers{i}.transferFcn = 'elliotsig';elliot2sig | logsig | tansig