㈠ bp神經網路 激活單元相關問題sigmoidmatlab
我的手機要激活賬號才能打開
㈡ BP神經網路用sigmoid激活函數進行多分應該怎麼設置目標向量,怎麼設置輸出啊
輸出的數量取決於你的target怎麼設置,比如你的輸入是一個5行n列的數據,輸出是一個4行n列的數據,你用這個數據初始化並且訓練神經網路,得到的當然是5個輸入值4個輸出值的神經網路。
函數怎麼寫的話,去看matlab 幫助,搜索newff,你就能看到用法了。
㈢ Bp神經網路用tansig做為隱含層激活函數,用logsig做為輸出層激活函數,這可以嘛
招式是死的,靈活運用才是活的。
log sig一般不做,但是如果在這個問題上,這樣做效果更好,那就是可以做輸出層激活函數。
㈣ 我有個BP神經網路的C++實例,但是只能輸出0或1,這是因為什麼呢激活函數用的是Sigmoidal
#include <stdio.h>
#include <stdlib.h>
static int i = 0;
void Timer(double t)
{
t -= 0.0000002*int(t/2.4); //為了精度修正,這個數值不一定準確,但是為了下面計算準確,必須修正
int tmp;
switch(int(t)) //整數部分
{
case 0:
case 1:
i = 600; break; //整數部分0或者1
case 2: //上面的部分是 t<2 的部分
{
tmp = ( t - int(t) ) * 10; //小數第一位,用這一位足夠確定數值范圍
switch(tmp)
{
case 0:
case 1:
case 2:
case 3: //這部分是2~2.4
i += 850;
if(i >= 4000)i = 4000;
break;
case 4: //從這里開始是2.4~4.4
case 5:
case 6:
case 7:
case 8:
case 9:
㈤ BP神經網路的傳遞函數選擇有什麼特定要求我使用高斯函數作為其傳遞函數(激活函數)可行麽
既然是BP神經網路,當然激勵函數就已經基本確定,因為,BP神經網路的隱含層一般是logsig函數,而輸出層為線性函數。
㈥ bp神經網路選擇激活sigmoid函數,還有tansig函數的優缺點求告知
(1)對於深度神經網路,中間的隱層的輸出必須有一個激活函數。否則多個隱層的作用和沒有隱層相同。這個激活函數不一定是sigmoid,常見的有sigmoid、tanh、relu等。
(2)對於二分類問題,輸出層是sigmoid函數。這是因為sigmoid函數可以把實數域光滑的映射到[0,1]空間。函數值恰好可以解釋為屬於正類的概率(概率的取值范圍是0~1)。另外,sigmoid函數單調遞增,連續可導,導數形式非常簡單,是一個比較合適的函數
(3)對於多分類問題,輸出層就必須是softmax函數了。softmax函數是sigmoid函數的推廣
㈦ bp神經網路matlab實現時,newff函數中的網路各層神經元的激活函數怎麼選
由於各個網路層的作用的不同,選擇的激活函數的不同結果將會有恆大的區別
所以要注意
輸出層一般採用
logsig purelin
隱含層採用
tansig logsig
同時要注意設置其他屬性如最小梯度min_grad
等等
㈧ matlab訓練BP神經網路,nntool中如何設置,權值,激活函數的修改等問題
net1=newff(minmax(pX),[16,1],{'tansig','purelin'},'trainlm');
這個是激活函數的語句,但是一般不需要修改。
BP神經網路是計算機自主學習的一個過程,程序員要做的就是確定隱含層神經元的數量以及訓練精度,訓練步數以及學習速率等參數。
隱含層神經元數量的公式:
㈨ bp神經網路matlab實現時,newff函數中的網路各層神經元的激活函數怎麼選啊
BP網路要求激活函數處處可微,因此一般選S型函數(Sigmoid),常見的為對數S型函數(logsig)和正切S型函數(tansig)。