2015-09-21 3 views
0

Я полный новичок в нейронных сетях. Я создал NN в matlab. Далее мне нужно знать точную структуру этого NN, потому что мне нужно реализовать его в Java (статические соединения и веса, без обучения). Можете ли вы объяснить, как подключать нейроны и какие математические операции выполняются в каждом элементе?Matlab Neural Network Structure

NN PARAMS имеют следующий (из Matlab):

IW {1,1} - Вес в слой 1 из intput 1

[2.8574 -1.9207; 
1.7582 -1.2549; 
-4.5925 0.23236; 
12.0861 12.3701; 
2.503 -1.9321; 
-2.1422 2.6928] 

ЛМ {2,1} - Вес к слою

[-0.51977 5.3993 3.4349 5.2863 3.1976 -0.67102] 

б {1} - смещения к слою 1

[-3.2811; 
-6.956; 
-3.0943; 
11.1103; 
0.14842; 
-3.3705] 

б {2} - Уклон к слою 2

[1.4657] 

Передаточная функция TANSIG enter image description here высоко ценим вашу помощь.

ответ

2

У вас есть NN, который имеет 2 входа, затем скрытый слой из 6 нейронов и выходной слой 1 нейрона.

Каждый из нейронов в каждом слое будет принимать все выходы из предыдущего и умножать их на число и смещать результат другим.

Номера, которые вы показываете, - это номера, которые я упомянул.

Например, нейрон 1 из скрытого слоя выдаст hidden1=2.8574*in1 -1.9207*in2-3.2811. Затем возьмите любую сигма-функцию, которую вы используете, и примените hidden1=sigma(hidden1).

В качестве другого примера, на выходе будет out=-hidden1*0.51977+hidden2*5.3993+...-hidden6*0.67102+1.4657

+0

Спасибо за ответ. Как насчет сигма-функции? Это игнорируется или как правильно рассчитать его (возможно, вы можете дать ссылку)? Я не упоминал, но есть параметр входных диапазонов при поездке nn в matlab, возможно, они использовались в сигме. – user2171669

+0

@ user2171669 Я только что предположил линейную сигма-функцию, так как вы даете любую информацию об этом. Просто возьмите тот, который вы используете, и введите результат каждого из нейронов. –

+0

Функция передачи TANSIG. Я нашел непрерывную Тан-сигмовидную функцию (сигма (t) = (e^t-e^-t)/(e^t + e^-t)), я надеюсь, что это так. – user2171669