基于机器学习的肠道菌群数据建模与分析研究综述

疾病预测建模是利用有标记的肠道菌群数据对机器学习模型进行训练,生成一个具备根据输入的肠道菌群数据判断宿主患病情况的预测模型,所以究其本质,疾病预测建模是一个有监督的分类问题。本文结合课题组在该领域的长期研究成果和近年来肠道菌群研究领域中疾病预测建模方面取得的进展,对常用的几种疾病预测建模算法进行分析和比较。

SVM是一种有监督二分类器,当数据线性可分时,SVM通过在原始特征空间中构建一个最优分割超平面并将其作为决策面,最大化正负样本之间的边缘距离。当数据线性不可分时,SVM使用核函数将样本数据映射到一个高维空间,然后寻找一个最优分类超平面隔离不同类别样本数据,从而进行分类。

KNN算法也是一种在肠道菌群分析中广泛应用的算法,该方法的基本原理是根据邻近样本来推断待测样本的类别。主要步骤包括:(1)计算每个测试样本和每个训练样本之间的距离。(2)找到距离最近的k个训练样本作为测试样本的最近邻居。(3)根据k个训练样本类别的众数作为测试样本进行分类。

RF算法是一种集成学习方法,通过自助法重采样技术,从原始训练样本集N中有放回地重复随机抽取n个样本生成新的训练样本集合训练决策树,然后按以上步骤生成m棵决策树组成随机森林,新数据的分类结果按分类树投票多少形成的分数而定。

ANN是一种模仿生物神经网络(动物的中枢神经系统,特别是大脑)结构和功能的计算模型,其具有自学习、自组织、自适应能力,主要包括多层感知机(MultipleLayerPerception,MLP)、卷积神经网络(ConvolutionNeuralNetwork,CNN)、循环神经网络(RecursiveNeuralNetwork,RNN)、深度置信网络(DeepBeliefNetwork,DBN)等。

由于原始数据可能存在缺失值、样本不均衡、数据的形式不规范等问题,这会对模型的性能产生不利影响,严重的可能使得模型无法收敛,从而导致训练失败。在肠道菌群分析中,通过数据预处理过程对数据进行整理,从而使其满足模型训练要求,确保训练过程正常进行。常用的数据预处理操作包括了操作分类单元(OperateTaxonomyUnit,OTU)生成、样本均衡以及改变数据组织形式等。

在基于肠道菌群数据构建预测模型时,利用特征提取手段获取丰富的数据特征是提升模型性能的重要手段。一般而言,特征提取的存在形式有2种:(1)特征提取作为单独一个步骤存在,按照研究人员的预先计划获取相应的特征信息,以这些信息作为模型训练数据进行训练。(2)将特征提取结合到模型训练阶段,通过这种方式获取的特征不会作为数据输出,而是直接由训练算法进行处理,无单独的特征提取阶段。本节主要讨论第一种特征提取形式。

(1)根据数据特点选取建模算法。数据特点包括数据组织形式、数据完备性、数据冗余情况、数据均衡、数据量大小等。如数据存在较多缺失值时,则应优先选取对于数据缺失不敏感的算法,包括ANN、KNN等;如存在样本不均衡问题时可优先选取RF;如若数据量较少则应选择适合小样本训练的算法SVM。

(2)根据模型性能需求选取建模算法。模型的性能需求包括模型处理的是二分类还是多分类问题,模型可解释性、模型处理速度、模型泛化能力等。如针对某一种疾病进行预测建模时,应选择适合处理二分类问题的算法包括SVM等;而在对多种疾病进行预测建模时,则应优先考虑ANN算法。

总而言之,在选取建模算法时需要针对特定的疾病预测建模问题,综合考虑所选算法在多分类能力、可解释性、泛化能力、时空复杂度、数据容错性等方面的情况,并结合现有的研究成果,考虑算法在运用已有研究成果这一问题上的兼容性,选取合适的算法,使所选取的算法能够发挥其在构建特定疾病模型时的性能优势。

(1)正确率(Accuracy),表示所有预测样本中估计正确的样本个数。

(2)错误率(ErrorRate),表示所有预测样本中估计错误的样本个数。

(3)准确率(Precision),表示所有判断为正的样本中实际样本为真的比例。

(4)召回率(Recall),表示所有实际为真的样本中被估计为真的比例。

(5)F1分数(F1Score),表示准确率和召回率的调和平均值。

(6)操作者操作特征曲线(ReceiverOperatingCharacteristic,ROC曲线)反映敏感性和特异性连续变量的综合指标,适用于二分类的情况,ROC曲线上的每个点反映着对同一信号刺激的感受性。横坐标是假正率(FalsePositiveRate),纵坐标是真正率(TruePositiveRate),又称作召回率。

(7)AUC值(AreaUnderCurve),定义为ROC曲线下的面积,适用于二分类的情况,表示当随机挑选一个正样本以及一个负样本,当前的分类算法根据计算得到的Score值将这个正样本排在负样本前面的概率就是AUC值。当然,AUC值越大,当前的分类算法越有可能将正样本排在负样本前面,即能够更好地分类。

在运用机器学习进行疾病预测建模过程中,通常的做法是将数据分为训练集和测试集。测试集是与训练独立的数据,完全不参与训练,用于最终模型的评估。在训练过程中,经常会出现过拟合的问题。如果此时就使用测试数据来调整模型参数,就相当于在训练时已知部分测试数据的信息会影响最终评估结果的准确性。通常的做法是在训练数据中再分出一部分作为验证(Validation)数据,用来评估模型的训练效果。

验证数据取自训练数据,但不参与训练,这样可以相对客观地评估模型对于训练集之外数据的匹配程度。模型在验证数据中的评估常用的是K倍交叉验证,又称循环验证。其将原始数据分成K组(K-Fold),将每个子集数据分别做一次验证集,其余的K-1组子集数据作为训练集,这样会得到K个模型。这K个模型分别在验证集中评估结果,最后的误差MSE(MeanSquaredError)加和平均就得到交叉验证误差。交叉验证有效利用了有限的数据,并且评估结果能够尽可能地接近模型在测试集上的表现,是肠道菌群数据建模中的主要验证手段。

过去的研究已证实,机器学习在解决肠道菌群分类识别的问题上表现出了很好的性能,随着研究的深入,许多科研团队开始探索将机器学习用于构建基于肠道菌群数据的疾病预测模型,根据所采用算法的特点可将其大致分为两类:(1)基于传统机器学习算法的预测模型;(2)基于深度学习算法的预测模型。

在基于机器学习构建的预测模型的发展历程中,最早采用传统的机器学习算法进行模型构建,这些算法包括SVM、RF、KNN等。这类算法普遍的特点是简便易操作、处理速度快。

在大数据时代,将肠道菌群大数据转化为有价值的知识是肠道菌群研究中面临的重要挑战之一。深度学习是机器学习的分支,其特点是具有强大的学习能力和灵活性。近年来,深度学习得到了迅速发展,在各个领域都展现出了巨大的性能优势。

通过横向比较可得出以下分析结果:(1)基于DeepMicro构建的模型在性能上优于基于MetAML构建的模型。(2)基于DeepMicro构建的模型性能稳定性更高,预测性能基本维持在较高水平,而基于MetAML构建的模型性能稳定性较低,会因为数据集的不同而产生较大的变化。(3)存在个别数据集上(如ColorectalCancer)MetAML构建的模型性能优于DeepMicro构建的模型。

本文从肠道菌群数据分析的角度入手,主要针对基于肠道菌群数据构建疾病预测模型这一问题,梳理了肠道菌群研究的发展历程和重要里程碑;根据过往的研究工作,整理出肠道菌群数据分析中常用的7个基准数据集;总结出基于肠道菌群数据构建疾病预测模型的基本流程;重点阐述了近年来传统机器学习和深度学习在构建疾病预测模型中的典型应用。

近年来,图卷积神经网络取得了突破性的进展,其在处理图数据的分类和预测时展现出了强大的性能优势,目前在交通预测、人体行为识别、生物分类等领域均取得了诸多成果。在肠道菌群研究中,系统进化生成树的结构以及菌群之间的关联均可通过图结构进行表示,那么是否可以考虑将肠道菌群分析与图神经网络进行结合,利用图卷积特性分析肠道菌群数据,以此推动肠道菌群分析领域的研究和发展。

综上所述,在未来,机器学习和深度学习方法应该被视为分析肠道菌群的一个重要工具,我们应该积极探索这二者间恰当的结合点,借助计算机科学上的研究成果推动肠道菌群分析的发展,实现将肠道菌群的分析作为临床上诊断、治疗和预防疾病的有力工具。

THE END
1.《算法(第4版)》学习总结我个人感觉,学习这一章最好的方法是结合visualgo网站的动态演示来学习,非常直观,大大降低了学习难度。 紧接着,作者讲了__归并排序和快速排序__。这两种算法中都用到了递归,二者的不同之处在于,归并排序是先递归,再归并,而快速排序是先切分,再递归。我认为这部分是本书最出彩的地方,作者分别用了一个小例子,用https://zhuanlan.zhihu.com/p/296199621
2.《算法(第4版)(中文版)》PDF本书作为算法领域经典的参考书,全面介绍了关于算法和数据结构的必备知识,并特别针对排序、搜索、图处理和字符串处理进行了论述。 第4版具体给出了每位程序员应知应会的50个算法,提供了实际代码,而且这些 Java 代码实现采用了模块化的编程风格,读者可以方便地加以改造。https://www.jianshu.com/p/f3e4614b8998
3.算法第四版学习总结(超赞!!!)计算方法引论第四版pdf算法 第四版学习总结(超赞!!!) 我是技术搬运工,好东西当然要和大家分享啦.原文地址 第一章 基础 栈 数组实现 publicclassResizeArrayStack<Item>implementsIterable<Item>{privateItem[] a=(Item[])newObject[1];privateintN=0;publicvoidpush(Itemitem) {if(N>=a.length) {https://blog.csdn.net/FanceFu/article/details/79356876
4.高中人工智能教育应该教什么和如何教——基于四本《人工智能初步(4)人工智能核心算法方面,教科版花了较大篇幅重点介绍了知识表示和机器学习,人教版、浙教版、粤教版则只是简述知识表示,而重点讲解了人工智能的核心算法,如逻辑推理、决策树、启发式搜索(A*算法)、聚类、贝叶斯、知识图谱、机器学习、神经网络与深度学习。(5)系统设计与开发方面,四本教材都提到了国内的四大开放平台https://zhjy.sxnu.edu.cn/info/1007/1107.htm
5.关于机器学习,这可能是目前最全面最无痛的入门路径和资源!至于如何获取这些资源的下载链接呢?在本文结尾的地方,我会分享给大家:) 下面内容,会从四个方面展开: 1、机器学习第一语言Python 2、机器学习中数学基础 3、机器学习算法基础 4、深度学习框架基础 再次强调,我本文中提及所有知识点和资源,仅仅是让你入门机器学习,如果想要走更远,那肯定是远远不够的,我们还是要继续https://www.36kr.com/p/5109465.html
6.不可错过的十本Python好书python关注如何利用Python编程有效地解决问题,关注如何构建良好的Python应用程序。 Python参考手册(第4版?修订版) Python编程经典著作。 Python程序员案头必备。 涵盖Python2和Python3共有特性。 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。https://www.jb51.net/article/118053.htm
7.重磅!花书《深度学习》,这份精炼笔记可能是最全面的完整版: https://zhuanlan.zhihu.com/p/39063974 4. 逻辑回归 继续花书第五章机器学习基础部分总结,接下来是经典监督学习算法,不过Ian对于逻辑回归和支持向量机一笔带过,解释的不是很详细,我准备结合Andrew Ng的cs229内容将逻辑回归(logistic regression)与支持向量机(support vector machine)分两篇https://blog.51cto.com/u_14481745/5706537
8.零基础小白如何入门人工智能?《人工智能(第3版)》是这一领域的经典著作,被誉为“人工智能的大百科全书”。这应该是每个小白进入人工智能世界要读的第一本书。 我们来看一下本书涵盖的内容:人工智能的历史、思维和智能之辩、图灵测试、搜索、博弈、知识表示、产生式系统、专家系统、机器学习、深度学习、自然语言处理、自动规划、遗传算法、模糊https://www.douban.com/note/856962437/
9.趣学算法(第2版)本书是用轻松有趣的方法学习算法的入门指南。按照算法策略分为8章。第1章以算法之美、趣味故事引入算法,讲解算法复杂度的计算方法,以及爆炸性增量问题。2~7章讲解经典算法,包括贪心算法、分治算法、动态规划算法、回溯法、分支限界法、网络流算法。第8章讲解实际应用中的算法和高频面试算法,包括启发式搜索、敏感词https://www.epubit.com/bookDetails?id=UB7d85fa69dcbd8
10.MindSpore官网全新的昇思MindSpore全场景AI框架1.6版本已发布,此版本中昇思MindSpore全场景AI框架易用性不断改进,提升了开发效率,控制流性能提升并支持副作用训练,与此同时,昇思MindSpore全场景AI框架发布高效易用的图学习框架昇思MindSpore Graph Learning,高性能可扩展的强化学习计算框架昇思MindSpore Reinforcement,提供支持第三方框架https://www.mindspore.cn/news/newschildren?id=967
11.Java后端开发学习路线(修订版)腾讯云开发者社区推荐书籍:《阿哈算法》、《算法设计与分析基础》适合入门;《算法第四版》、《算法导论》、《编程之美》适合进阶 视频:这种还是挺建议看书,我没看过视频,,这里就不介绍了。 3、保持算法的学习 算法的学习,真的是靠积累的,而刷题是必须的。而且学校都会举办一些比赛,这里还是比较建议大家去参见的,这样也能让你更https://cloud.tencent.com/developer/article/1933965
12.科学网—[转载]基于容器云技术的典型遥感智能解译算法集成此外,以往遥感领域的深度学习算法往往是基于单一的深度学习环境开发的,不同环境之间兼容性低,算法集成难度大。如何使深度学习代码无须重写,一次编写、到处运行(write once, run everywhere),具备良好的可移植性和复用性,成为一大挑战。传统的深度学习流程中算法在不同机器间进行环境迁移非常复杂,基于Conda包管理技术解决https://blog.sciencenet.cn/blog-3472670-1339282.html
13.算法数据结构体系学习班马士兵教育官网注意原“算法与数据结构基础班”已经过期。所有内容都被现在的“算法数据结构体系学习班”重新讲述,还增加了内容,增加了题目练习。原“算法与数据结构基础班”的所有内容,对应现在的“算法数据结构体系学习班”的1-23节。 注意原“算法与数据结构进阶班”已经过期。所有内容已经被现在的“算法数据结构体系学习班”和“https://www.mashibing.com/course/339
14.如何选择机器学习算法Python 入门(第 1 天) 训练和部署图像分类 构建训练管道 (Python) 与Azure 机器学习交互 处理数据 自动化机器学习 训练模型 使用基础模型 负责任地开发和监视 使用管道协调工作流 概述 设计器(拖放 ML) 什么是设计器 算法备忘单 如何选择算法 转换数据 https://docs.microsoft.com/zh-cn/azure/machine-learning/studio/algorithm-choice
15.二年级数学上册优秀教案推荐作为一位杰出的教职工,有必要进行细致的教案准备工作,通过教案准备可以更好地根据具体情况对教学进程做适当的必要的调整。那么应当如何写教案呢?下面是小编收集整理的二年级数学上册优秀教案,欢迎阅读与收藏。 二年级数学上册优秀教案1 学习内容: 人教版《义务教育课程标准实验教科书·数学(二年级上册)》第五单元“观察https://www.unjs.com/jiaoan/shuxue/20230318091758_6681303.html