所有提交的EM系统将被重定向到网上投稿系统.作者被要求将文章直接提交给网上投稿系统各自的日志。

利用神经网络和决策树预测心脏病发作风险

S.Florence1, n.g.布瓦内斯瓦里·阿玛2, G.Annapoorani2和K.Malathi2
  1. PG学者,印度信息技术研究所,斯里兰加姆,蒂鲁奇拉帕里,印度
  2. 教师,印度信息技术研究所,斯里兰加姆,蒂鲁奇拉帕里,印度
  3. 印度蒂鲁奇拉帕利理工学院工程学院助理教授
有关文章载于Pubmed谷歌学者

更多相关文章请访问国际计算机与通信工程创新研究杂志

摘要

医疗保健环境的数据越来越丰富,但由于缺乏数据分析工具,从这些数据中获得的知识量非常少。我们需要从数据中找出隐藏的关系。在医疗保健系统中,为了完美地预测心脏病发作,有一些技术已经在使用。在Naïve贝叶斯等可用的技术中,有一些缺乏准确性。在此,本文提出了一种利用神经网络和决策树(ID3)来预测心脏病发作的系统。这里使用具有6个属性的数据集来诊断心脏病发作。所使用的数据集为UCI机器学习库提供的acath心脏病发作数据集。预测结果比其他预测方法更准确。

关键字

Naïve贝叶斯,神经网络,决策树,ID3,心脏病发作

介绍

心脏病发作是30岁以上人群的通病。胆固醇水平是导致心脏病发作的另一个主要问题。数据库中的知识发现是一个定义良好的过程,包含几个不同的步骤以获得完美的准确性。数据挖掘是其中的核心步骤,其结果是发现隐藏的有用知识信息。这些发现的知识将被医疗管理人员用来预测一些疾病和问题,如心脏病发作。预测患者未来的行为是数据挖掘技术的主要应用。数据库中知识发现的正式定义如下:“数据挖掘是对数据中隐含的、以前未知的、潜在有用的信息的非平凡提取”[1]。
医学诊断是一项重要而复杂的工作,需要准确、高效地完成。该系统的自动化是非常必要的,以帮助医生更好地进行诊断和治疗。糟糕的临床决策可能导致灾难性的后果,因此是不可接受的。当今医疗保健系统的主要挑战是高质量地预测疾病。
医生做出的临床决策容易出错,给患者带来一些问题。该系统应实现自动化,以准确预测疾病。医疗保健系统的主要问题之一是预先预测患者的心脏病发作。有一些技术可以准确地预测这些事情。现有的数据挖掘技术没有被正确地用于预测医疗保健系统中的疾病。

相关工作

有许多方法和算法被用来预测心脏病发作。Hai等人在他们的工作中提出了基于神经学习的分类器系统对数据挖掘任务进行分类。他们对来自加州大学欧文分校(University of California, Irvine)数据库和一个人工数据集的13个不同数据集进行了实验。他们表明,基于神经的学习分类器系统在五个数据集上的表现与监督学习分类器系统相当,在六个数据集上表现显著较好,在三个数据集上表现显著较差[17]。
Shantakumar和Kumaraswamy在他们的工作中提出了一种使用数据挖掘和人工神经网络的智能有效的心脏病发作预测系统。他们还提出了提取心脏病预测的重要模式。他们使用k均值聚类从数据仓库中提取适合心脏病发作的数据。他们使用MAFIA算法来挖掘频繁模式[3][4]。Niti等人在他们的工作中提出了一种使用神经网络的心脏病诊断决策支持系统。他们用78个病人的记录训练他们的系统,在这个系统中避免了人为的错误[18]。
Anbarasi等人在他们的工作中提出了一种利用遗传算法的特征子集选择来增强心脏病预测的方法。他们更准确地预测了心脏病的存在,减少了属性的数量。他们使用Naïve贝叶斯、聚类和决策树方法来预测患者的诊断,其准确性与属性约简前相同。他们得出结论,决策树方法优于其他两种方法。
与上面讨论的工作相比,本工作不同于将神经网络和决策树算法结合起来预测心脏病发作,准确率很高[9]。

算法

有各种数据挖掘技术,它们的适用性取决于领域应用程序。统计为结果的量化和评价提供了强有力的基本背景。然而,基于统计的算法在应用于数据挖掘之前需要进行修改和扩展。我们现在描述一些分类数据挖掘技术,并举例说明它们在医疗保健中的应用。
决策树包括CART (Classification and Regression tree)、ID3 (Iterative dictomized 3)和C4.5。这些算法在选择分裂、何时停止分裂节点以及将类分配给非分裂节点[5]等方面有所不同。CART使用Gini指数来衡量一个分区或一组训练元组[6]的杂质。它可以处理高维分类数据。决策树也可以处理连续数据(如回归),但必须将它们转换为分类数据[16]。使用训练数据集对神经网络进行训练,然后使用测试数据对结果进行测试。它将显示高水平的准确性,因为实现了[15]的神经元数量。
由加州大学机器学习存储库[13]提供的心脏病发作数据集。数据集包含6个属性,如年龄、性别、心脏持续时间、信号、发作可能性。最后一个是类标签。根据数据集中出现的属性值,对应的类标签即预测发生在最后阶段。UCI存储库中可用的心脏病发作数据集用于实验目的[12]。预处理是知识发现过程中的一个重要步骤,因为现实世界的数据往往是不完整的、有噪声的和不一致的。数据预处理包括数据清洗、数据集成、数据转换和数据缩减。数据清理例程试图填充缺失值,消除噪声,同时识别异常值并纠正数据中的不一致。在这项拟议的工作中,最可能的值被用来填补缺失的值。数据转换例程将数据转换为适合挖掘的形式。
归一化对分类很有用。通过规范化训练元组中测量的每个属性的输入值,将加快学习过程。在这项工作中,使用的归一化技术是最小最大归一化。[17]中讨论的式(1)给出的min-max归一化定义如下:
方程(1)
替换缺失值过滤器将扫描所有(或选定的)标称和数值属性,并用模式和平均值替换缺失值。离散化滤波器用于将数值属性转换为标称属性;然而,当将实例分组在一起时,无监督版本不考虑类信息。在使用这样的过滤器时,总是存在一种风险,即与类相关的不同实例之间的区别可能会被消除。
所提出的工作框图如图1所示。用于训练和测试的数据集来自UCI机器学习库。对数据进行预处理并进行分类。数据集分为两部分。75%的数据用于训练,25%用于测试系统。从分类中获得的知识用于测试系统。为了分类,我们使用了神经网络和决策树。所提出的神经网络结构如图2所示。
输入层由6个节点组成,隐藏层由3个节点组成,输出层由2个节点组成。只有一个隐藏层是基于输入层进行处理的。最后它显示了两个输出,即心脏病发作的可能性。这种预测是使用名为Rapid Miner Studio的工具完成的。使用神经网络中可用的神经元接收输出。表1显示了心脏病发作数据集的摘要。数据集包含6个属性,包括类标签。

仿真结果

从UCI机器学习中获得的心脏病发作数据集用于训练和测试医疗诊断系统。这种预测是使用名为Rapid Miner Studio的工具完成的。

神经网络描述

图像
用于训练的激活函数是sigmoid函数。阈值和偏差是基于试验和错误设置的。由决策树生成的规则示例如下:
规则1:如果年龄大,性别是女性,胆固醇高,那么tvdlm是肯定的
规则2:如果年龄是年轻的,性别是女性,Sigdz是正常的,那么tvdlm是no
规则3:如果年龄大,性别是男性,胆固醇高,那么tvdlm是肯定的
心脏病发作数据集的统计分析见表2。该表给出了所有属性的最小值、最大值、平均值和标准差。生成的输出统计图如图3所示。
图4所示。所述工作的受试者工作特征(ROC)曲线。它是一个图形图,说明了二元分类器系统的性能,因为它的区分阈值是不同的。该曲线是通过绘制各种阈值设置下的真阳性率和假阳性率来创建的。

结论

研究了不同数据挖掘算法的约束和总结问题。我们专注于使用不同的算法来预测几个目标属性的组合。本文提出了一种基于数据挖掘的智能、有效的心脏病发作预测方法。在今后的工作中,可以进一步加强和拓展。为了有效地预测心脏病发作,列出了15个属性。除了医学文献中列出的15种,我们还可以结合其他数据挖掘技术,例如时间序列、聚类和关联规则。

表格一览

表的图标 表的图标
表1 表2

数字一览

图1 图2 图3 图4
图1 图2 图3 图4

参考文献



















全球科技峰会