云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 推荐数学建模matlab方法整理

推荐数学建模matlab方法整理

  • 62 次阅读
  • 3 次下载
  • 2025/6/26 19:20:22

神经网络用于分类

Function compnn(Tc, P, B, Z, n) clear

% Convert indices to vectors T = ind2vec(Tc);

% Setting spread factor spread =n;

% Constructing a new network net = newpnn(P,T,spread); % Network simulation A = sim(net,B);

% Convert vectors to indices A=vec2ind(A); Q=Z-A

% Calculating correlation between Z and A R=corrcoef(Z,A) Result

(1) newpnn建立神经网络

Tc是类别索引, P是输入向量 T是目标向量

spread是径向基函数传播系数

(2)sim是对任意参考或扰动求开环或闭环响应 net为建立的神经网络 B为仿真步数

(3)corrcoef是计算相关系数的

数据归一化

一、max-Min标准化

max-Min标准化方法是对原始数据进行线性变换。设minA和maxA分别为属性A的最小值和最大值,将A的一个原始值x通过max-Min标准化映射成在区间[0,1]中的值'x,其公式为:

新数据=(原数据-极小值)/(极大值-极小值) 二、z-score 标准化

这种方法基于原始数据的均值(mean)和标准差(standard deviation)进行数据的标准化。将A的原始值x使用z-score标准化到x'。

z-score标准化方法适用于属性A的最大值和最小值未知的情况,或有超出取值范围的离群数据的情况。

新数据=(原数据-均值)/标准差

spss默认的标准化方法就是z-score标准化。

用Excel进行z-score标准化的方法:在Excel中没有现成的函数,需要自己分步计算,其实标准化的公式很简单。 步骤如下:

1.求出各变量(指标)的算术平均值(数学期望)xi和标准差si ; 2.进行标准化处理: zij=(xij-xi)/si

其中:zij为标准化后的变量值;xij为实际变量值。 3.将逆指标前的正负号对调。

标准化后的变量值围绕0上下波动,大于0说明高于平均水平,小于0说明低于平均水平。

三、Decimal scaling小数定标标准化

这种方法通过移动数据的小数点位置来进行标准化。小数点移动多少位取决于属性A的取值中的最大绝对值。将属性A的原始值x使用decimal scaling标准化到x'的计算方法是:

x'=x/(10*j)

其中,j是满足条件的最小整数。

例如 假定A的值由-986到917,A的最大绝对值为986,为使用小数定标标准化,我们用1000(即,j=3)除以每个值,这样,-986被规范化为-0.986。

注意,标准化会对原始数据做出改变,因此需要保存所使用的标准化方法的参数,以便对后续的数据进行统一的标准化。

除了上面提到的数据标准化外还有对数Logistic模式、模糊量化模式等等: 对数Logistic模式:新数据=1/(1+e^(-原数据))

模糊量化模式:新数据=1/2+1/2sin[派3.1415/(极大值-极小值)*(X-(极大值-极小值)/2) ] X为原数据

Svm

这个实现是线性可分支持向量分类机,不考虑非线性分类引入核函数的情况,也不考虑推广条件下引入Penalty Loss的情况。

问题描述: 平面上有如下点A = [1 1.5;2 1.5;3 1.5;4 1.5;1 0.5;2 0.5;3 0.5;4 0.5]及其对应的标号flag = [1 1 1 1 -1 -1 -1 -1];用SVM方法构造一个决策函数实现正确分类。

如果我们在二维坐标上描点,就会发现这是个很简单的线性可分问题。实现方法,用SVM的对偶问题,转换为Matlab的有约束非线性规划问题。 构建m文件: function f = ffsvm(x)

A = [1 1.5;2 1.5;3 1.5;4 1.5;1 0.5;2 0.5;3 0.5;4 0.5]; flag = [1 1 1 1 -1 -1 -1 -1]; for i=1:1:length(A) for j=1:1:length(A) normA(i,j) = A(i,:)*A(j,:)'; normFlag(i,j) = flag(1,i)*flag(1,j); end end f = 0;

for i=1:1:length(A) for j=1:1:length(A)

f = f + 1/2*(normA(i,j)*x(i)*x(j)*normFlag(i,j)); end f = f - x(i); end

在命令窗口输入: Aeq = [1 1 1 1 -1 -1 -1 -1]; beq = 0;

lb = [ 0 0 0 0 0 0 0 0];

调用MatLab内置优化函数fmincon;

[x,favl,exitflag] = fmincon(@ffsvm,x0,[],[],Aeq,beq,lb,[])

得到如下结果:

Optimization terminated successfully:

Magnitude of directional derivative in search direction less than 2*options.TolFun and maximum constraint violation is less than options.TolCon

Active Constraints: 1 x =

0.5000 0.5000 0.5000 0.5000 0.5000 0.5000 0.5000 0.5000 favl = -2.0000 exitflag = 1

x的分量都不为0,说明这些点都是支持向量; 计算w; w = [0 0];

for i = 1:1:length(A) w = w + flag(i)*x(i)*A(i,:); end 结果: w =[0,2]; 计算b; b = 0; for i=1:1:8

b = b-flag(i)*x(i)*normA(i,1); end

b = flag(1) + b; 结果: b = -2;

搜索更多关于: 推荐数学建模matlab方法整理 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

神经网络用于分类 Function compnn(Tc, P, B, Z, n) clear % Convert indices to vectors T = ind2vec(Tc); % Setting spread factor spread =n; % Constructing a new network net = newpnn(P,T,spread); % Network simulation A = sim(net,B); % Convert vectors to indices A=vec2ind(A); Q=Z-A % Calculating correlation between Z and A R=corrcoef(Z,A) Result (1) newpnn建立神经

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com