%% 神经网络二分类问题

clc,clear,close all

%% 对照组指标数据 0组

p1=[0.739.9512.60.00048834194.23

0.5813.3105.50.00028624123.86

0.5212.8596.40.000898535105.47

0.4112.7621.90.003519715110.65

0.5193420.001070026123.61

0.7311.7237.40.000592125103.07

0.7210.6670.10.001646966108.40

0.6111.2210.80.000714758125.00

0.67.1614.70.002473218112.82

0.626234.80.011008547128.19

0.67.3126.50.001716387118.42

0.538506.60.002412081140.29

0.69.9254.80.00047552124.17

0.5811.9376.70.001550388112.13

0.6210.7570.50.001077933125.78

0.798.5105.90.000389824105.67

0.817.6137.80.000960825112.74

0.565.7148.60.001310584117.40

0.637.5970.001244019119.11

]; %归为0

%% 实验组指标数据 1组

p2=[0.8814.1168.90.00319027104.30

0.677.2141.20.00068529790.61

0.99.4298.50.00482039390.46

0.6810.870.30.00039507398.36

1.259.21614.60.07647287587.21

0.59.2210.20.001139238115.26

0.7212.6132.40.0010268881.74

0.648.6243.90.000489883114.94

0.9716.9581.40.00576357868.53

0.6710.6242.80.0010191795.64

0.547372.60.002005217123.43

0.8610.1172.40.00208870385.23

0.6813.6213.10.001856427115.22

2.1637.12206.60.02730895733.12

1.0221.575.30.01036686370.40

0.7311.8100.80.000373529109.38

3.1422.11727.20.9426250539.11

0.779.8103.30.001319323119.84

0.6410.8100.10.028400355120.72

1.8518.44761.60.23214891531.60

0.847.793.30.00171084696.96

1.39.8410.10.57099157574.78

]; %归为1

%% 结果标签

flag = [ones(size(p1,1),1); zeros(size(p2,1),1)];

%% 神经网络

p=[p1;p2]';

pr=minmax(p);

goal=[ones(1,size(p1,1)),zeros(1,size(p2,1));zeros(1,size(p1,1)),ones(1,size(p2,1))];

% plot(p1(:,1),p1(:,2),'h',p2(:,1),p2(:,2),'o')

net=newff(pr,[3,2],{'logsig','logsig'});  % 3个隐层,2种传递方式

net.trainParam.show = 10;

net.trainParam.lr = 0.05;

net.trainParam.goal = 1e-10;    % 容忍误差

net.trainParam.epochs = 1000;  % 迭代次数

net = train(net,p,goal);

%% 训练结果

outcome = sim(net,p) ;%给p1和p2分类作用,分为0和1

train_predict(outcome(1,:) >= 0.5,1) = 1;

train_predict(outcome(1,:)

true = sum(1 - abs(flag - train_predict)) / size(flag,1)

%% 预测

%{

x = [550.892.891.161.03

461.70.971.131.370.47

148.30.491.560.710.66

]'; % 指标数据

y = sim(net,x) %给待鉴定样本分类

test_predict(y(1,:) >= 0.5,1) = 1;

test_predict(y(1,:)

%}

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐