ML之RF:基于Matlab利用RF算法实现根据乳腺肿瘤特征向量高精度(better)预测肿瘤的是恶性还是良性

目录

输出结果

实现代码

输出结果

更新……

实现代码

%RF:RF实现根据乳腺肿瘤特征向量高精度(better)预测肿瘤的是恶性还是良性

load data.mat

a = randperm(569);

Train = data(a(1:500),:);

Test = data(a(501:end),:);

P_train = Train(:,3:end);

T_train = Train(:,2);

P_test = Test(:,3:end);

T_test = Test(:,2);

model = classRF_train(P_train,T_train);

[T_sim,votes] = classRF_predict(P_test,model);

count_B = length(find(T_train == 1));

count_M = length(find(T_train == 2));

total_B = length(find(data(:,2) == 1));

total_M = length(find(data(:,2) == 2));

number_B = length(find(T_test == 1));

number_M = length(find(T_test == 2));

number_B_sim = length(find(T_sim == 1 & T_test == 1));

number_M_sim = length(find(T_sim == 2 & T_test == 2));

disp(['病例总数:' num2str(569)...

'  良性:' num2str(total_B)...

'  恶性:' num2str(total_M)]);

disp(['训练集病例总数:' num2str(500)...

'  良性:' num2str(count_B)...

'  恶性:' num2str(count_M)]);

disp(['测试集病例总数:' num2str(69)...

'  良性:' num2str(number_B)...

'  恶性:' num2str(number_M)]);

disp(['良性乳腺肿瘤确诊:' num2str(number_B_sim)...

'  误诊:' num2str(number_B - number_B_sim)...

'  确诊率p1=' num2str(number_B_sim/number_B*100) '%']);

disp(['恶性乳腺肿瘤确诊:' num2str(number_M_sim)...

'  误诊:' num2str(number_M - number_M_sim)...

'  确诊率p2=' num2str(number_M_sim/number_M*100) '%']);

figure

index = find(T_sim ~= T_test);

plot(votes(index,1),votes(index,2),'r*')

hold on

index = find(T_sim == T_test);

plot(votes(index,1),votes(index,2),'bo')

hold on

legend('红色*是错误分类样本','蓝色空心圆是正确分类样本')

plot(0:500,500:-1:0,'r-.')

hold on

plot(0:500,0:500,'r-.')

hold on

line([100 400 400 100 100],[100 100 400 400 100])

xlabel('输出为类别1的决策树棵数')

ylabel('输出为类别2的决策树棵数')

title('随机森林分类器性能分析—Jason niu')

Accuracy = zeros(1,20);

for i = 50:50:1000

i

accuracy = zeros(1,100);

for k = 1:100

model = classRF_train(P_train,T_train,i);

T_sim = classRF_predict(P_test,model);

accuracy(k) = length(find(T_sim == T_test)) / length(T_test);

end

Accuracy(i/50) = mean(accuracy);

end

figure

plot(50:50:1000,Accuracy)

xlabel('随机森林中决策树棵数')

ylabel('分类正确率')

title('随机森林中决策树棵数对性能的影响—Jason niu')

相关文章

RF:RF实现根据乳腺肿瘤特征向量高精度(better)预测肿瘤的是恶性还是良性

matlab切割肿瘤算法,ML之RF:基于Matlab利用RF算法实现根据乳腺肿瘤特征向量高精度(better)预测肿瘤的是恶性还是良性...相关推荐

  1. ML之RF:基于Matlab利用RF算法实现根据乳腺肿瘤特征向量高精度(better)预测肿瘤的是恶性还是良性

    ML之RF:基于Matlab利用RF算法实现根据乳腺肿瘤特征向量高精度(better)预测肿瘤的是恶性还是良性 目录 输出结果 实现代码 输出结果 更新-- 实现代码 %RF:RF实现根据乳腺肿瘤特征 ...

  2. matlab凸轮转子泵型线设计坐标变换,基于Matlab的双头双螺杆泵转子型线设计

    ? 基于Matlab的双头双螺杆泵转子型线设计 基于Matlab的双头双螺杆泵转子型线设计 朱君,张帆,吴高捷,孙亚静 (扬州大学机械工程学院,江苏扬州 225127) 摘要:选用长幅外摆线加上外摆线 ...

  3. DL之SSD:基于tensorflow利用SSD算法实现目标检测(21类)

    DL之SSD:基于tensorflow利用SSD算法实现目标检测(21类) 目录 输出结果 SSD代码 输出结果 VOC_LABELS = {'none': (0, 'Background'),'ae ...

  4. DL之RNN:人工智能为你写代码——基于TF利用RNN算法实现生成编程语言代码(C++语言)、训练测试过程全记录

    DL之RNN:基于TF利用RNN算法实现生成编程语言代码(C语言).训练&测试过程全记录 目录 输出结果 监控模型 训练&测试过程全记录 训练的数据集展示 输出结果 1.test01 ...

  5. c语言排序算法 应用与实现,基于C语言排序算法改进与应用.doc

    基于C语言排序算法改进与应用 基于C语言排序算法改进与应用 摘 要:介绍了程序语言中排序的原理及应用,阐述了基于C语言的三种主要排序方法,提出了每种排序方法的改进,计算出改进后算法的时间复杂度,编写了 ...

  6. DL之RNN:人工智能为你写周董歌词——基于TF利用RNN算法实现【机器为你作词】、训练测试过程全记录

    DL之RNN:人工智能为你写周董歌词--基于TF利用RNN算法实现~机器为你作词~.训练&测试过程全记录 目录 输出结果 模型监控 训练.测试过程全记录 训练的数据集 输出结果 1.test0 ...

  7. DL之RNN:人工智能为你写小说——基于TF利用RNN算法训练数据集(William Shakespeare的《Coriolanus》)替代你写英语小说短文、训练测试过程全记录

    DL之RNN:基于TF利用RNN算法训练数据集(William Shakespeare的<Coriolanus>)替代你写英语小说短文.测试过程全记录 目录 输出结果 监控模型 训练过程全 ...

  8. 推荐算法(一)—— 基于内容的推荐算法

    推荐算法(一)--  基于内容的推荐算法 1 基于内容的推荐算法 基于内容的推荐系统本质是对内容进行分析,建立特征:基于用户对何种特征的内容感兴趣以及分析一个内容具备什么特征来进行推荐. 1.1 基于 ...

  9. 基于matlab的相干信号的doa 估计,基于空间平滑MUSIC算法的相干信号DOA估计(1)

    基于空间平滑MUSIC算法的相干信号DOA估计(1) 基于空间平滑MUSIC算法的相干信号DOA估计(1) 空间平滑MUSIC算法(1) 在上一篇博客中有提到,当多个入射信号相干时,传统MUSIC算法 ...

最新文章

  1. 系统服务-----Activity服务的获取getSystemService
  2. SAP里面 转储请求和转储单全称和缩写是什么
  3. 【萌味】小夕说,不了解动态空间增长的程序喵都是假喵(中)
  4. php 响应时间,PHP下解决ajax请求服务器响应时间过长问题
  5. 易语言写组合框内容MySQL_易语言组合框赋值的几种方法
  6. L2TP协议笔记2---L2TP主要协议报文分析
  7. python自带数据库是什么意思_原来Python自带了数据库,用起来真方便!
  8. 程序员面试题!亲身经历!持续更新!
  9. android 开发者模式 手机变慢,手机太卡?手机中的“开发者模式”你会用吗?试一下,瞬间流畅!...
  10. 04-Groovy-运算符
  11. 大招:召唤最优的多因素cox模型
  12. 线上jvm 内存飙高排查
  13. 【北大】计算机课程资料
  14. 服务器IIS6/IIS7、Nginx、Apache屏蔽垃圾爬虫UA禁止垃圾爬虫,屏蔽指定UA
  15. Python Pymysql实现数据存储
  16. python 华为交换机自动配置_对python连接华为交换机批量配置优化
  17. python实现图片压缩_python如何实现图片压缩
  18. 信号与系统—让我们来了解信号
  19. 调查显示,“大辞职潮”对经理层打击最为严重,工作倦怠成为离职的关键原因 | 美通社头条...
  20. 传输层之UDP头部解析、UDP特点TCP头部解析、TCP特点

热门文章

  1. android 动态contextmenu,Context-Menu.Android
  2. JDK8新特性(十一)之收集Stream流中的结果
  3. spring-beans下的BeanUtils.copyProperties
  4. Excel 中的日期格式变成时间戳
  5. Layui--弹出层layer
  6. 降序排序_排序简单,应用不易,使用Excel排序的几点建议
  7. c语言函数写巴德歌赫猜想,{转帖}我们还有创造力么
  8. java远程执行命令报错java.io.IOException: Cannot run program “ifconfig“: error=2, No such file or directory
  9. java基础的知识_Java基础知识点(一)
  10. mysql 索引修复_mysql数据库索引损坏及修复经验分享