IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> MLP神经网络,GRNN神经网络,SVM神经网络以及深度学习神经网络对比识别人体健康非健康数据 -> 正文阅读

[人工智能]MLP神经网络,GRNN神经网络,SVM神经网络以及深度学习神经网络对比识别人体健康非健康数据

目录

一、理论基础

二、案例背景

1.问题描述

2.思路流程

三、部分MATLAB程序

四、仿真结论分析

五、参考文献


一、理论基础

??? MLP多层感知器神经网络(Multi-layer perceptron neural networks),其结构由输入层、一个或多个隐藏层、输出层构成,其结构框图如下图所示:

? ? ? ?GRNN广义回归神经网络的网络结构如图6所示,整个网络包括四层神经元:第一层为GRNN神经网络的输入层、第二层为GRNN神经网络的模式层、第三层为GRNN神经网络的求和层,第四层为GRNN神经网络的输出层。

? ? ? ? SVM支持向量机方法Vapnik等人根据统计相关理论提出的一种新的机器学习方法,其基本思想是在线性可分的情况下,在原空间寻找两类样本的最优分类超平面。在线性不可分的情况下,加入了松弛变量进行分析,通过使用非线性映射将低维输入空间的样本映射到高维属性空间使其变为线性情况,从而使得在高维属性空间采用线性算法对样本的非线性进行分析成为可能,并在该特征空间中寻找最优分类超平面。SVM通过使用结构风险最小化原理在属性空间构建最优分类超平面,使得分类器得到全局最优,并在整个样本空间的期望风险以某个概率满足一定上界。

? ? ? ? 目前,几乎所有的神经网络技术都是基于一种浅层结构的网络构架,基于浅层结构的学习模型其主要特点是其结构简单,且中间的学习过程不可观察。单这种技术,其最大的缺陷在于在处理涉及自然信号如人类语言对话,图像和视觉等复杂的现实应用时,无法获得较好的学习效果。而人类对于这种复杂信息的处理,则通过深度构架来提取其内部结构,并通过丰富的感官输入建立内部的表现形式。因此,研究一种深层结构的神经网络构架将有助于复杂信号的学习训练和测试。而深度学习神经网络就是基于这种背景下研究出来的,深度神经网络,主要包括基于受限玻尔兹曼机的网络结构和基于卷积运算的网络结构,Deep Learning神经网络的整体结构如下图所示:?

?

二、案例背景

1.问题描述

? ? ?特征选择是机器学习领域的一个难题,本质上是一个组合优化问题,求解组合优化问题最直接的方法就是搜索,理论上可以通过穷举法来搜索所有可能的特征组合,选择使得评价标准最优的特征子集作为最后的输出,但是通过穷举法的运算量将随着特征数量的增加而呈指数级增加。因此,需要通过特定的特征集合搜索策略进行特征选择,其基本步骤如下框图所示:

2.思路流程

? ? ? ?机器学习是计算机智能算法领域的一个重要组成部分。机器学习的研究是根据生理学、认知科学等对人类学习机理的了解,建立人类学习过程的计算模型或认识模型,发展各种学习理论和学习方法,研究通用的学习算法并进行理论上的分析,建立面向任务的具有特定应用的学习系统。对四种常用的机器学习算法,分为是MLP神经网络,GRNN神经网络,SVM神经网络以及深度学习神经网络进行识别性能的对比,而使用的特征数据为一组健康人群和非健康人群的身理特征数据,针对这些特征数据,本文同时提出了一种特征选择方法,从大量的特征数据中获得最为有效的特征数据作为健康人群和非健康人群的特征识别数据。最后通过MATLAB对四种算法进行测试,仿真结果表明,通过特征选择之后,基于深度神经网络的识别算法可以达到96%以上的识别率。

三、部分MATLAB程序

MLP

for i = 1:k
    [ Traindata,Trainaim,Testdata,Testaim] = func_crossvalidation(data_random, indices,i,row,col);
    Testdata  = [Testdata;Testdata(30:end,:)];
    Testaim   = [Testaim;Testaim(30:end,:)];
    Traindata = Traindata(1:30,:);
    Trainaim  = Trainaim(1:30,:);
    %%
    %特征不选择
    [Ftrain,Ftest]                        = func_feature_selection0(Traindata,Testdata);
    %%
    %MLP识别
    [Preaim,Preaim2,Rate]                 = func_machine_Learing_method(Ftrain,Trainaim,Ftest,Testaim);
    %ROC&PR
%     draw_prc(2*Testaim'-1, 2*Preaim2'-1,2);
end

GRNN

for i = 1:k
    [ Traindata,Trainaim,Testdata,Testaim] = func_crossvalidation(data_random, indices,i,row,col);
    Testdata  = [Testdata;Testdata(30:end,:)];
    Testaim   = [Testaim;Testaim(30:end,:)];
    Traindata = Traindata(1:30,:);
    Trainaim  = Trainaim(1:30,:);
    %%
    %特征不选择
    [Ftrain,Ftest]                        = func_feature_selection0(Traindata,Testdata);
    %%
    %MLP识别
    [Preaim,Preaim2,Rate]                 = func_machine_Learing_method(Ftrain,Trainaim,Ftest,Testaim);
    %ROC&PR
%     draw_prc(2*Testaim'-1, 2*Preaim2'-1,2);
end

SVM

for i = 1:k
    [ Traindata,Trainaim,Testdata,Testaim] = func_crossvalidation(data_random, indices,i,row,col);
    Testdata  = [Testdata;Testdata(30:end,:)];
    Testaim   = [Testaim;Testaim(30:end,:)];
    Traindata = Traindata(1:30,:);
    Trainaim  = Trainaim(1:30,:);
    %%
    %特征不选择
    [Ftrain,Ftest]                        = func_feature_selection0(Traindata,Testdata);
    %%
    %MLP识别
    [Preaim,Preaim2,Rate]                 = func_machine_Learing_method(Ftrain,Trainaim,Ftest,Testaim);
    %ROC&PR
%     draw_prc(2*Testaim'-1, 2*Preaim2'-1,2);
end

Deep learning

for i = 1:k
    [ Traindata,Trainaim,Testdata,Testaim] = func_crossvalidation(data_random, indices,i,row,col);
    Testdata  = [Testdata;Testdata(30:end,:)];
    Testaim   = [Testaim;Testaim(30:end,:)];
    Traindata = Traindata(1:30,:);
    Trainaim  = Trainaim(1:30,:);
    %%
    %特征不选择
    [Ftrain,Ftest]                        = func_feature_selection0(Traindata,Testdata);
    
 
    %%
    %MLP识别
    [Preaim,Preaim2,Rate]                 = func_machine_Learing_method(Ftrain,Trainaim,Ftest,Testaim);
    %ROC&PR
%     draw_prc(2*Testaim'-1, 2*Preaim2'-1,2);
end

四、仿真结论分析

MLP

???? 对比图ROC图和PR图可知,通过特征筛选处理之后,其具有更优的识别正确率。最后对比对比本文所介绍的Forward和Backward特征选择仿真,其特征识别率分别为93.6709%和69.6203%

GRNN

? ? ? 对比ROC图和PR图可知,通过特征筛选处理之后,其具有更优的识别正确率。最后对比对比本文所介绍的Forward和Backward特征选择仿真,其特征识别率分别为89.8734%和74.6835%

SVM

? ? ? ?对比ROC图和PR图可知,通过特征筛选处理之后,其具有更优的识别正确率。最后对比对比本文所介绍的Forward和Backward特征选择仿真,其特征识别率分别为88.6076%和71.3241%

深度学习:

? ? ? ?ROC图和PR图可知,通过特征筛选处理之后,其具有更优的识别正确率。

? ? ? ?通过上述四种算法的最终结果对比可知,其最终的识别率分别为:

? ? ? ?通过对四种算法的对比可知,在特征数据中,第3个特征,第23个特征,第19个特征和第64个特征具有较强的区分能力,通过这四种类型的特征,可以获得较高的识别率。此外,从性能上看,深度学习神经网络性能优于GRNN神经网络性能,优于MLP神经网络性能,优于SVM神经网络的性能。

五、参考文献

[01]Langley P, Simon H A. Applications of machine learning and rule induction. Communications of the ACM, 1995, 38(11): 55–64.

[02]Aha D W, Kibler D, Albert M K. Instance based learning algorithms. Machine Learning, 1991, 6:37–66. A05-42

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-08-06 10:44:55  更:2022-08-06 10:47:09 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年4日历 -2024/4/20 22:27:52-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码