『壹』 matlab神經網路求權重
1. 上面寫的好像是6個指標
2. 給一個簡單的函數擬合代碼吧。你不說更多的要求回我也不能更細化了。
clearall;closeall;
x=[123456789;123212112;...
133455542;211221221;...
111222231;121221211];
t=[133455542];
net=feedforwardnet(10);%隱層答節點數
net=configure(net,x,t);
net.divideParam.trainRatio=0.7;
net.divideParam.valRatio=0.15;
net.divideParam.testRatio=0.15;
net=train(net,x,t);
y2=net(x);
x_axis=1:length(t);
plot(x_axis,t,x_axis,y2)
legendtargetprediction
『貳』 怎麼用matlab做評價指標的權重賦值
A=[1,2,3,3;1/2,1,2,3;1/3,1/2,1,3;1/3,1/3,1/3,1]; [x,y]=eig(A)%求得x為特徵向量矩陣,y為特徵值矩陣 [m m]=find(y==max(max(y)))%找到y中對應最大的特徵值所在列m w=x(:,m)/sum(x(:,m)) %w即為矩陣A的權重!
『叄』 如何matlab求矩陣權重,請給出必要的語句
b=[1 1/3 1/3 1/5 3 1 1 3/5 3 1 1 3/5 5 5/3 5/3 1]
[x,y]=eig(b)
得x為特徵向量矩陣 y為特徵值矩陣
找到y中對應最大的特徵值所在列m
w=x(:,m)/sum(x(:,m))
w就是權重!
『肆』 求熵值法計算權重的matlab代碼,並且舉個例子算一下,發送到[email protected],謝謝!
x=[1 2 3 56 7
2 3 5 45 8
1 2 4 56 8
];
[n,m]=size(x);
k=1/log(n);
X=zeros(n,m);
for j=1:m
for i=1:n
c=sort(x(:,j));
big=x(n,j);
small=x(1,j);
X(i,j)=(x(i,j)-small)/(big-small)+1;
end
end
p=[];
for j=1:m
th=0;
for t=(X(:,1))'
th=th+t;
end
Ph=X(:,j)/th;
p=[p Ph];
end
e=[];
for j=1:m
eg=0;
for i=1:n
eh=-k*p(i,j)*log(p(i,j));
eg=eg+eh;
end
e=[e,eg];
end
E=0;
for j=1:m
E=E+e(j);
end
g=[];
for j=1:m
gh=(1-e(j))/(m-E);
g=[g,gh];
end
Eh=0;
for nh=g
Eh=Eh+nh;
end
w=[];
for j=1:m
wh=g(j)/Eh;
w=[w,wh];
end
s=[];
for i=1:n
sh=w(i)*p(i,:);
shen=0;
for she=sh
shen=shen+she;
end
s=[s ,shen];
end
『伍』 求助,用matlab怎麼計算權重
A=[1,2,3,3;1/2,1,2,3;1/3,1/2,1,3;1/3,1/3,1/3,1];
[x,y]=eig(A)%求得x為特徵向量矩陣,y為特徵值矩陣
[m m]=find(y==max(max(y)))%找到y中對應最大的特徵值所在列m
w=x(:,m)/sum(x(:,m)) %w即為矩陣A的權重!
『陸』 怎麼用matlab權重
clear;clc;
A=[100284727]
B=[83456977]
C=[55667788]
w=C/[A;B]%最小二乘解
『柒』 如何使用matlab計算加權平均分
根據加權平均分的定義,計算加權平均分只需使用matlab兩個知識點:
sum()函數可以對參數(矩陣、向量)求和
matlab的點運算符(.)表示對矩陣中每個元素的運算
計算加權平均分的示例代碼如下:
>>
x
=
[80
92
83
67];
%
各科成績
>>
w
=
[2.5
1.0
1.5
3.0];
%
各科學分
>>
y
=
sum(x.*w)/sum(w)
%
加權成績
y
=
77.1875
『捌』 matlab求權重系數
你這個用excel就能實現
當然也可以用matlab編程實現
系數是多少是根據第5列數據來的還是固定的
『玖』 如何使用matlab計算加權平均分
計算加權平均分的示例代碼如下:
>> x = [80 92 83 67]; % 各科成績
>> w = [2.5 1.0 1.5 3.0]; % 各科學分
>> y = sum(x.*w)/sum(w) %加權成績
y =77.1875
(9)matlab計算權重代碼擴展閱讀:
Matlab常用函數和命令
size 矩陣的大小
slice 立體切片圖
solve 求代數方程的符號解
spalloc 為非零元素配置內存
sparse 創建稀疏矩陣
spconvert 把外部數據轉換為稀疏矩陣
semilogx: x軸為對數刻度,y軸為線性刻度
semilogy: x軸為線性刻度,y軸為對數刻度
floor(x):下取整,即捨去正小數至相鄰整數
ceil(x):上取整,即加入正小數至相鄰整數
『拾』 matlab怎麼用
判斷矩陣一致性檢驗的Matlab源程序代碼
Matlab源程序代碼如下:
clc
clear
disp('請輸入判斷矩陣A')
A=input('A=');
[n,n] = size(A)
%方法1: 算術平均法
Sum_A = sum(A);
SUM_A = repmat(Sum_A,n,1);
Stand_A = A ./ SUM_A;
Stand_A = A ./ Sum_A; % 這樣也可以的
disp('算術平均法求權重的結果為:');
disp(sum(Stand_A,2)./n)
%方法2: 幾何平均法
Prct_A = prod(A,2);
Prct_n_A = Prct_A .^ (1/n);
disp('幾何平均法求權重的結果為:');
disp(Prct_n_A ./ sum(Prct_n_A))
%方法3: 特徵值法求權重
[V,D] = eig(A);
Max_eig = max(max(D))
[r,c]=find(D == Max_eig , 1);
disp('特徵值法求權重的結果為:');
disp( V(:,c) ./ sum(V(:,c)) )
%計算一致性比例CR
CI = (Max_eig - n)/(n-1);
RI=[0 0.0001 0.52 0.89 1.12 1.26 1.36 1.41 1.46 1.49 1.52 1.54 1.56 1.58
1.59];
% 這里n=2時,一定是一致矩陣,所以CI = 0,為了避免分母為0,將這里的第二個元素改為了很接近0的正數
CR=CI/RI(n);
disp('一致性指標CI=');disp(CI);
disp('一致性比例CR=');disp(CR);
if CR<0.10
disp('因為CR<0.10,所以該判斷矩陣A的一致性可以接受!');
else
disp('注意:CR >=
0.10,因此該判斷矩陣A需要進行修改!');
end