Функция отрицательного веса расстояния
Z = negdist(W,P)
dim = negdist('size',S,R,FP)
dw = negdist('dz_dw',W,P,Z,FP)
negdist является весовой функцией. Весовые функции применяют веса к входу, чтобы получить взвешенные входы.
Z = negdist(W,P) принимает эти входы,
W |
|
P |
|
FP | Массив ячеек строк параметров функции (необязательно, проигнорировано) |
и возвращает S-by- Q матрица отрицательных векторных расстояний.
dim = negdist('size',S,R,FP) принимает размерность слоя S, входная размерность R, и параметры функции, и возвращает размер веса [S-by- R].
dw = negdist('dz_dw',W,P,Z,FP) возвращает производную Z относительно W.
Здесь вы задаете матрицу случайного веса W и входной вектор P и вычислите соответствующий взвешенный вход Z.
W = rand(4,3); P = rand(3,1); Z = negdist(W,P)
Можно создать стандартную сеть, которая использует negdist по вызову competlayer или selforgmap.
Чтобы изменить сеть, чтобы вес входа использовал negdist, задать net.inputWeights{i,j}.weightFcn на 'negdist'. Для веса слоя задайте net.layerWeights{i,j}.weightFcn на 'negdist'.
В любом случае звоните sim чтобы симулировать сеть с negdist.
negdist возвращает отрицательное евклидово расстояние:
z = -sqrt(sum(w-p)^2)
competlayer | dist | dotprod | selforgmap | sim