文摘

心脏疾病的治疗往往是受到大量的采集和分析数字心脏数据。这些数据可用于各种有益的目的。这些数据的利用变得更重要的是,当我们处理重要疾病如心脏病病人生活往往是岌岌可危的地方。机器学习和深度学习是两个著名的技术正在帮助使原始数据有用。一些最大的问题来自上述的使用技术是大规模的资源利用率,广泛的数据预处理,特征工程的需要,确保可靠性分类结果。拟议的研究工作提供了一个具有成本效益的解决方案与精度高和可靠性预测心脏病发作。它使用一个UCI数据集通过各种机器学习算法预测心脏病不参与工程的任何功能。此外,给定数据集有一个积极的和消极的类分配不均,会降低性能。拟议的工作使用少数合成过采样技术(杀)来处理给定的不平衡数据。提出系统丢弃的需要工程对给定的数据集的分类特征。 This led to an efficient solution as feature engineering often proves to be a costly process. The results show that among all machine learning algorithms, SMOTE-based artificial neural network when tuned properly outperformed all other models and many existing systems. The high reliability of the proposed system ensures that it can be effectively used in the prediction of the heart attack.

1。介绍

机器学习和深度学习目的是过滤掉不为人知的关系和数据驻留在模式。此外,这些模式是用于各种预测模型的建设。自动化技术的进步导致了各种功能单元的多个领域。卫生保健是一个域,产生了大量的复杂的相互关联的数据关于医院、患者和疾病通过各种电子设备。这个原始数据可以是一个关键的资源,但它需要妥善处理。可以处理这些数据中提取有用的信息。机器学习和深度学习是两个主要的技术,可以完成上述任务。

世界卫生组织(世卫组织)强调的一个核心原因死亡的世界人口是心血管疾病。它包括问题从异常在心脏动脉,静脉,心脏肌肉和畸形。这导致了迫切需要准确地检测心脏疾病。

机器学习和数据挖掘技术的应用在卫生保健领域导致了一个新的计算时代的出现。不同的数据挖掘技术已经被广泛地用于检测心脏疾病有效1]。机器学习模型的主要问题是,它经常需要功能工程的有效实施往往成为烦人的任务(2]。为了满足以上问题,深度学习已经广泛使用了各种分类任务在卫生领域特别是在心血管疾病(3]。然而,深度学习的主要问题是,它通常需要一个大型数据集的学习和消耗大量的资源。

一个有效的算法来预测心脏病发作对于一个给定的数据集。现有文献的主要限制是需要大量昂贵的特性在整个分类过程工程。此外,特别不平衡数据集的性质可以阻碍的总体性能分类算法的准确性和可靠性。该算法的目标是最小化成本与工程特性。它是基于端到端学习预处理数据分类,没有任何功能工程。此外,探讨了给定数据集的不平衡性质,并提出了一个有效的方法来提高分类结果的可靠性。

拟议的研究主要集中于心脏数据集来自UCI数据存储库。数据预处理,然后,各种应用机器学习算法。该研究工作的主要贡献如下:(1)迎合不平衡给定数据集的性质。打之前把数据传输到应用这些机器学习模型,给定数据集的不平衡问题可以解决。(2)确定一个合适的分类算法,准确给定的数据集进行分类。(3)不执行功能的工程。更多的重点是优化分类模型,以便它可以产生精确的结果。所以,努力取得了给定数据集生成一个具有成本效益的解决方案。(4)确保在分类结果可靠性,提出工作正在评估所有最先进的评价矩阵。此外,K-fold验证应用于提高结果的可靠性。(5)最近的结果进行评估并与现有系统强调,提出研究工作已经超过许多现有系统结果不执行任何功能的工程在给定的数据集。

剩下的纸被组织在以下方式:部分2强调了文献综述部分强调最近的进步在给定域。部分3描述该框架被提出了给定数据集的分类。部分4探讨和分析获得结果的分类结果提出方法的应用。部分5得出的结果提出了在一个有效的工作方式。

2。文献综述

科技的进步导致了需要各个领域的创新。巨大的医疗数据的可用性导致了可怕的有效利用。卫生保健数据往往是关键,很难理解时手动处理。机器学习和数据挖掘技术广泛用于探索医疗数据为给定的目的。这些技术被证明是非常有效的生死攸关的疾病在生成解决方案。心脏病是威胁生命的疾病,已经成为一个主要的死亡原因在发展中国家(4]。如此高的死亡率的主要原因是由于身份不明的风险和模式与心脏相关的数据。机器学习算法是克服上述问题,提取有用的模式从给定的数据集在一个有效的方法。一些有用的技术正在被广泛使用支持向量机(SVM)、神经网络、决策树、朴素贝叶斯分类器,和回归(5]。此外,关联分类已被用于改善心脏病的分类预测。

现有的研究利用合奏的方法提高分类模型的准确性。(6]。一个人工神经网络也被用于心脏病发作的预测可以有效地提高预测的准确性(7]。此外,许多分析研究表明,混合动力系统基于关联挖掘规则也被用于预测心脏病发作(8]。在这种方法中,模式是提取后规则构造基于这些模式。一些方法(9)使用心率变异性分析探讨心脏信号以及它们的相对自然的本质,同时识别正常和异常信号。此外,近年来,许多IOT-based提出了卫生保健系统(10)它需要使用心脏病人的有效的监测数据。此外,许多研究[11)强调大数据的决策支持系统的重要性。它突显出大数据的核心角色,以及它如何可以用于各种有益的目的。提出了一个系统利用大数据分析和处理大脑信号(12)进一步显示了深度学习在医疗保健领域的有效性。

此外,遗传算法(13)已被用于预测心脏病发作的神经网络。这些混合动力系统使用遗传算法的全局优化方法对神经网络权值的初始化。此外,使用模糊系统和机器学习算法(14心脏病)的预测。这些系统使用模糊规则的方法的协助下决策树预测心脏病发作。此外,大多数的努力在过去已经完成从一个给定的数据集提取相关特性以提高算法的准确性。提出了一种clustering-based方法(15提取的相关特性更对分类结果的影响。为了避免聚类的不确定性,K-mean集群和谱聚类用于集群的建设。

虽然各种方法用于预测心脏病发作,只有一些方法能够准确预测心脏病发作。大多数的这些算法使用混合学习方法来生成预测。现有的大部分工作已经破坏了UCI数据集是有点不平衡,消极的例子是数量少而积极的例子。这种不平衡是经常得到低精度的一个重要原因在执行K-fold验证给定的数据集。少数类的整体预测结果的贡献超过了作为正面例子相比,由于存在一个小的实例数量在整个数据集。因为这个原因,许多次,少数类的结果并没有被正确记录由于nonsignificance。这是不能接受的,当你处理一个重要的医学数据集,每个实例都有它的意义在预测疾病。此外,许多现有的系统只能测量性能的准确性。准确性往往成为误导评价基质在处理不平衡数据集。提出工作强调了不平衡UCI数据集的性质。 An effective approach has been proposed which would overcome the problems that arise while generating predictions from the given imbalance dataset. Furthermore, more standard evaluation matrices are used for the evaluation of results. In the generation of results, more emphasis has been done on evaluating the performance of minority class contribution on the overall performance of the model. On contrary to most existing literature, no feature engineering has been used for generating predictions. Feature engineering often proves to be a very costly process as it involves manual extraction of significant features from the dataset which becomes a tiresome job [16当数据集是巨大的。此外,获得相关的功能涉及到深刻理解相关领域的17)的分类。在大多数情况下,有相当数量的资源用于工程进行功能。特性工程的主要目的是提高结果的准确性,可能导致增加biasness内的模型。独特的方面提出了研究工作,预处理数据没有任何功能工程被美联储模型和结果仍与许多先进的现有系统工程特征用于分类这进一步强调了该模型的有效性具有成本效益的解决方案提出了高可靠性。

3所示。提出了框架

缺失值的数据预处理,然后使用标准的标量技术规范化。之后,将技术应用于给定数据集处理数据驻留在数据集内的不平衡问题。此外,各种机器学习算法应用于给定的数据集,和他们的结果进行评估。主要目的是识别算法能够以最好的方式给定的数据集进行分类。以下部分彻底详细讨论了拟议的框架及其组件。

3.1。数据集

已经使用的数据集是心脏病UCI数据集。UCI数据集包含303条记录有76属性。大多数发表的研究工作已经使用14属性的子集。选择上述属性的主要原因是,这些属性被认为是最重要的,而预测特定病人心脏病。这些属性是专门提到了UCI库,同时为公众发布数据集。所有在这个数据集使用这些14日发表的研究工作,因为他们是最相关的属性的输出类(参见文献[18])。因为这个原因,这些14属性选择提出研究工作表所示1。表1进一步强调了相对属性数据集内存在的意义。这些属性及其相应的值显示一个特定的属性可以与心脏病有关。其中14个属性,13个属性用于预测心脏病。一个属性“目标”作为输出变量的值确定心脏病的存在与否。数据预处理是在给定的数据集分类模型的应用。申请数据预处理的主要步骤如下:数据标准化在0和1之间增加一个模型的性能。缺失值与平均值取代相应的列。输出类“目标”是由多级转变成二进制类,1代表心脏病和0代表没有心脏病。

3.2。不平衡数据集的性质

给定数据集包含164个积极类的实例(1)和139年负类的实例(0)。有一个分配不均类在数据集内。这种分配不均的主要原因之一是减少分类模型的准确性。主要原因是大多数机器学习模型不能正面和负面两种学习模式类有效,因为它们不平衡数据集。此外,正如少数类,即。,negative class is less in number, so results generated by this class often become ineffective because of its less number. Most literature studies do not document minority class contribution toward producing overall classification results. One of the key contributions of the proposed work is the imbalanced nature of the given dataset is handled effectively via SMOTE technique. Furthermore, results for the majority and minority classes are documented separately in order to evaluate the performance of each class’s contribution in generating overall prediction results.

3.3。合成少数抽样技术

杀是一个著名的方法(19)用于建设失衡数据集的分类器。不平衡数据集由底层输出类分配不均。击杀大量用于失衡数据集的分类问题20.]。击杀预处理技术被认为是最可靠的技术在处理不平衡数据集。发布以来,众多变体的击杀已经提出和部署,以提高现有击打技术而言,更多的在不同情况下的可靠性和适应性。击杀被认为是其中一个最强大的预处理技术在机器学习和信息挖掘域(21]。击杀的目的是在少数类样本的数据进行插值,这样可以增加它们的数量。这有助于实现分类泛化。它是使用最广泛的方法之一,应用于满足问题出现由于不平衡数据集的分类实例数量(20.]。在击杀,少数类通常是由生成人工采样过量的例子。特征空间的少数类是用于生成这些例子。关于抽样需要要求的基础上,选择邻居。构造线以及少数类数据点通过使用这些邻居。打是一种非常有效的技术在处理不平衡数据集。它平衡的数量多数和少数类瞬间训练例子。

在该算法中,imblearn图书馆(22)已被用于实施打为了处理不平衡数据集。图1首先显示该流的实验数据集处理去除null值。之后,将技术应用于给定的数据集,这样同等数量的正面和负面的例子。此外,在最后阶段,各种机器学习算法应用于给定的数据集,得到了相应的结果。分层K-Fold验证应用于给定的数据集,以确保结果的可靠性。

3.4。工具和技术

该算法工作张量流、Keras和蟒蛇平台作为一种工具用于提出的实现工作。张量流作为后端库来实现神经网络。它使用一个图形处理单元(GPU)和中央处理单元(CPU)来处理和分析大型数据集,以实现神经网络。它是由机器学习技术的大量支持。Keras是张量流的增强版图书馆广泛应用于深度学习由于其简单性和Jupyter笔记本作为开发平台面向发展援助。

随着数据集的大小相对较小,所需的机器学习算法的机器上运行是由英特尔酷睿i5 - 3320米(3理查德·道金斯创)处理器。它有4 GB内存,500 GB硬盘存储。快速执行特别是神经网络,谷歌colab也随着本地机器上使用。

3.5。机器学习模型

预处理后的数据,应用各种机器学习算法。最基本的目的是理解的影响每一个给定的数据集的分类算法。

3.5.1。再邻居(资讯)

再邻居是一种监督机器算法用于标签数据集进行分类。该算法通过提取邻居为特定的数据点。此外,从这些邻居可以用于预测为一个未知的数据点生成预测的标签。

在拟议的研究工作,scikit学习库用于资讯的实现。邻居的hyperparameter和数量k设置为3调优后给定的数据集。

3.5.2。支持向量机(SVM)

SVM是一个监督机器学习算法和资讯一样,但它是更有效的比它的成本和精度。在支持向量机,而不是计算每个数据点的距离,在决策支持向量计算边界。然后该支持向量用于给定数据集的分类。

在拟议的研究工作,scikit学习库用于支持向量机的实现。“衬”内核用于给定数据集的分类。

3.5.3。逻辑回归

逻辑回归是另一个监督学习算法,使依赖和独立变量之间的映射。这prediction-based算法有一个变量的线性组合预测一个特定的输出变量。

在拟议的工作,scikit学习库是用于实现逻辑回归和相应的输出变量的值“目标”。

3.5.4。随机森林

随机森林是另一个监督学习算法,包括结合多个决策树。这些树创建使用不同的训练集样本。之后,多数表决的预测是基于这些决策树。该算法往往受到过度拟合。

在拟议的工作,从scikit合奏图书馆学习包是用于实现随机森林hyperparameters调谐的数量估计= 100,最大深度= 16分钟样本分割= 2,和标准=基尼。

3.5.5。朴素贝叶斯分类器

朴素贝叶斯分类器是监督的机器学习分类器适用于贝叶斯定理。probability-oriented分类器是工作在考虑所有功能的数据集有条件地独立这意味着之间不存在关联特性。它是有用的为稀疏数据集。

在拟议的工作,scikit学习库用于朴素贝叶斯的实现和相应的输出变量的值“num”。

3.5.6。整体学习

集成学习技术弱分类器结合,和他们的结果是聚合到一个更好的和更准确的结果。在拟议的工作中,各种集成技术被用于生成更精确的努力结果给定的数据集进行分类。

(我)提高。提高整体学习算法用于实现。该算法通过将数据集划分为不同的块。然后训练分类器在这些大块的数据集。之后,使用创建新的数据集的子集分类错误的数据点之前的迭代。通过这种方式,创建了一个更深刻的模型生成更精确的预测结果。

(2)装袋。装袋是著名的形式引导聚合技术。在这种方法中,每个数据集分为许多的子集。这些子集选择随机替换。这可以确保每个组都有相同数量的模式作为训练集。分类器训练这些样品。结果使用多数投票产生。装袋往往导致增加个体弱分类器的精度。

(3)多数投票。这是一个类型的多个分类器的分类器组合通过元模型。所有分类器堆积成层。每一层通过预测下一层。底层需要输入数据集的形式和传递到上层。最上面的一层预测下面所有层存在聚合后的最终输出结果。meta-classifier用于叠加模型的优化结果。最后的类标签的类标签已经被大多数的预测分类器。

3.5.7。神经网络模型

建议使用三层神经网络模型。一层是输入层神经元包含12“relu”作为激活函数。内隐层,用于建设模型,包含8个神经元有“relu”作为激活函数。“Relu”功能映射所有积极的输入值,如果值是负的,这是更改为0。输出层包含“乙状结肠”作为输出函数。这一层区分总值从内心获得隐藏层分为两类,1和0否。避免过度拟合的架构设计大大减少了机器学习算法的效率。hyperparameters是调整与批处理大小为10,150年时代价值,和隐藏层的数量被设置为1。hyperparameters调到达到最优的学习。已经被用于减少误差之间的训练集和测试集。

每个神经元变得很多x值(从1到编号n)作为输入和过程预期 价值。每个神经元单位通常被称为有其特性 (权向量)和b(偏见),改变在学习过程中所示的方程(1)。在每个迭代中,神经元计算其输出乘以”x“重量和偏见添加到最终结果。最后,结果是通过非线性激活输出结果所示的生成方程(2)。这些权重调整后不时估算错误实际产出和预测输出的区别:

激活功能将得到 在哪里 是激活函数应用于方程的结果(1)。

建议的体系结构的神经网络是完全连接这意味着每个神经元在一层连接到其他神经元层。出于这个原因,更应该强调一个特定生成一个输出从一个特定的输入。代的输出的一般方程为特定层可以概括如下:

这个方程适用于单层但建议的体系结构,使用一个隐藏层除了一个输入和一个输出层。第二层,这 将被视为输入和一个类似的计算将由隐层吗 这是一个输入一个隐藏层。损失函数,二叉叉损失函数已经可以用于keras见方程(4)。它是最适合当我们有两个输出二进制类预测。它被建议的体系结构中使用的是我们正在处理的二进制分类: 在哪里y标签(1为心脏病的正面例子和0的负面例子心脏病), 点的预测概率是心脏病的积极的例子吗N点。最后,亚当优化器(23)已被用于重量的升级。亚当优化器是一个基于随机梯度的自适应预测1秩序和2nd订单的时刻。它是计算效率,消耗更少的资源,通常适合大型的数据和参数的问题。图2显示了使用神经网络模型。

的重要方面之一,机器学习中分类问题是关于如何调优的hyperparameters分类模型。这些hyperparameters高影响整体分类结果的精度和可靠性(24]。虽然各种方法定义hyperparameter调优(25),但到目前为止,没有先进的算法目前hyperparameter调优。在拟议的研究工作中,网格搜索技术(26)部署在调优hyperparameters不同的算法。网格中的搜索技术,给出了一些随机值作为hyperparameter值。之后,算法找到最佳值在所有可能的值的最佳分类结果。表2总结了各种价值观的hyperparameters发现后应用网格搜索技术在不同的算法。

4所示。结果和讨论

在给定的数据集上执行实验,得到了相关结果。分层K-fold为每个实验进行验证,这样的结果是不受任何biasness。在拟议的研究工作,没有特性工程完成。的主要目的是避免任何biasness结果特性工程往往导致疏忽的一些特性可能影响整体预测结果。此外,该功能工程过程往往是非常昂贵的。原始数据经过预处理被送入机器学习算法。之后,获得的结果并与现有的系统。

4.1。评价矩阵对不平衡数据集

的一个主要的误解有关机器学习模型的评价是,每个数据集都可以使用相同的测量评价矩阵的性质无关。大多数机器学习模型倾向于被评估的准确性。这种方式常常被证明是具有误导性的,当我们在处理不平衡数据集(27]。著名的不平衡数据集上可用的欺诈检测Kaggle [28]在展示的弱点很有名的“准确性”指标评价的不平衡数据集。这个数据集有两个类,积极的和消极的。的积极类包含99%的数据集,包括负类的1%。如果一台机器每预测模型预测的积极类,那么它的精度将达到99%。这个值没有被证明是一个真正的评估一个特定的机器学习模型。大部分的现有文献只集中在UCI数据集的评价的准确性。这是一个误导性的方法由于不平衡UCI数据集的性质。因为这个原因,使用不同的标准评价矩阵以及准确性。精度,记得,F1测量,ROC曲线已被用于提出的评估工作。准确的比例是正确的预测的数量除以总数量的输入。所产生的混淆矩阵计算真阳性(TP),真阴性(TN),假阳性(FP),假阴性(FN)。敏感性和特异性是计算两项措施为TP / (FN + TP)和FP / (FP + TN),分别。接收机操作曲线(ROC)是另一个指标,被广泛用于评估给定模型的分类精度。

特别关注也被用来评估数据集的少数类的结果。这样做的好处是,可以准确测量的有效性提出的工作。

4.2。实验工作的结果

实验与应用程序执行各种机器学习算法对给定的数据集。表3显示了各种算法的结果应用于给定的数据集。它表明SMOTE-based人工神经网络优于所有其他机器学习技术的精度,精度,记得,F测量,中华民国的价值。击打技术提出了机器学习模型与数据有积极和消极类的平均分配。这允许各自的模型学习少数类的模式,即。-类和应用这个学习看不见的测试数据。安提出的高价值的评价矩阵模型与击打技术表明,它已经超过所有其他机器学习模型用于实验。此外,计算时间与每个机器学习算法的关联也强调了在表3。尽管深度学习模型往往会花费相当大的时间执行,提出了神经网络已经只有69秒的执行。该神经网络可以很容易地在任何机器上运行没有太多困难,其他机器学习算法可能花费更少的时间来执行;然而,他们的研究结果并不是很好。这说明神经网络模型的有效性在给定的数据集。最重要的方面提出了研究涉及安一起击杀是没有功能的工程已经完成对给定的数据集。原始数据被送入所有机器学习模型,并得到相应的结果。这进一步证明了提出研究工作的有效性,因为许多现有的文学作品都强调功能工程最终带来更多成本预测更好的结果。这可以减少给定的预测模型的有效性。我们建议的研究工作对整个数据集没有任何feature-engineered数据。 Owing to this, the proposed model has still outperformed many of the existing models, without taking too much computational time.

后获得的平均精度的应用该模型是96%,比现有最先进的系统。少数类的测量对分类的影响是非常重要的在处理不平衡数据集。机器学习模型往往会忽视少数类的贡献在学习模式失衡数据集。提出工作特制强调少数类的贡献对整个评价结果的准确性产生的机器学习模型。表4显示了每个类的贡献。,积极的和消极的类。结果表明,该模型支持少数类来表达它对整个分类过程的影响在一个有效的方法。值精度高,回忆,f1测量正负类显示的可靠性模型在测量结果为每个类单独显示在表4。图3显示了8 ROC曲线不同的机器学习算法用于不同的算法。图4显示了中华民国的价值提议SMOTE-based神经网络取得了100%的准确率。

4.3。与现有系统

拟议的工作成果被与其他先进的现有系统,这样的结果可以验证拟议的工作的可靠性。拟议中的SMOTE-based工程人工神经网络模型没有特性是与七种不同系统发展近年来给定UCI数据集。表5显示了该模型的基准性能与现有系统7。该模型已超过所有现有的系统。此外,正如前面强调的,大多数现有文献只专注于评估结果的“准确性”,这可能成为一个误导性的度量在处理不平衡数据集。正是出于这一原因,提出工作评估了所有最先进的评价矩阵。表5强调了这样一个事实,大多数现有文献评价结果准确性的基础上,对于给定的框架,精度,精度,记得,F测量和ROC曲线用于评估目的。它进一步加强分类结果的有效性的评价矩阵用于评估结果。结果获得了每个指标表明,该系统在各个方面表现非常好。此外,一个更重要的方面是,大多数现有文献feature-engineered数据集用于预测的结果,往往成为一个昂贵的过程。工程特性的问题是,它经常需要领域知识为其执行。此外,有时,重要信息丢失而做的工程特性。很多时候,特征选择是增加biasness结果,这样可以增加分类模型的精度。该模型生成的结果在整个数据集工程没有任何功能。结果表明,我们提出的方法优于现有技术,工程,所以不参与任何功能。

4.4。ROC曲线分析

执行该技术是另外评估使用商标(ROC)曲线分析。图3显示相对民国值获得从各种机器学习算法应用于实验。ROC曲线绘制真阳性率和假阳性率。图4显示该SMOTE-based人工神经网络实现了最大ROC值1时应用于给定的数据集。图5展示了各种算法的计算时间。然而,深度学习模型可能消耗相当数量的资源执行。相反,该神经网络已经只有69秒,和它产生了高度可靠的结果优于许多现有的系统。其他机器学习算法可能花费更少的时间来执行;然而,他们的研究结果并不是很好。这说明神经网络模型的有效性在给定的数据集。

5。结论

研究工作提出了一项战略预测心脏病从给定的数据集。提出的神经网络是一个最好的预测算法可以有效地对数据集进行分类,没有任何明显的数据预处理。此外,在执行时间,少花了相当时间,但产生了高度可靠的结果。神经网络的性能取决于hyperparameters的选择仍然是一个有争议的话题在神经网络的建设。未来的发展,神经网络模型等对抗性的神经网络和引起神经网络可以应用于给定数据集以进一步提高分类的准确性。类似的预测系统可以开发其他糖尿病或癌症等疾病。此外,物联网技术可能与该模型嵌入这病人的健康参数远程监控发展一个有效的医疗体系。

数据可用性

这项工作利用是一个开放的标准数据集访问。它可以从UCI机器学习库(https://archive.ics.uci.edu/ml/datasets/heart +疾病)。

的利益冲突

作者宣称没有利益冲突。