福州网站建设香港网站建设/阳城seo排名
内容一览:疟疾是严重危害人类生命健康的重大传染病,研究人员一直在致力于寻找新的植物源性抗疟疾化合物,以研发相关药物。近期英国皇家植物园利用机器学习 算法 有效预测了植物抗疟性,该研究成果目前已发表在《Frontiers in Plant Science》期刊上。
关键词:植物学 抗疟疾 支持向量
作者 | 缓缓
编辑 | 三羊
本文首发自 HyperAI 超神经微信公众平台~
疟疾是一种肆虐全球的寄生虫病,它通过蚊媒传播,其发病率以及致死率始终在虫媒传播疾病中居高不下。根据最新的《世界疟疾报告》,2021 年全球疟疾流行进一步加剧,全年共有 2.47 亿例新发病例,预计死亡病例 61.9 万人。
目前全球仍以药物治疗作为主要的疟疾防治手段,并且很多药物的抗疟疾活性天然分子都来源于植物之中,因此,研究人员们一直致力于寻找新的植物源性抗疟疾化合物,不过,为了达到这个目的,需要对大量的植物进行筛选和测试,这个过程非常耗时且昂贵。
近期,英国皇家植物园 (Royal Botanic Gardens, Kew) 及圣安德鲁斯大学 (University of St Andrews) 的研究人员证明了机器学习算法能够有效预测植物抗疟性,且准确率为 0.67,相较传统试验方法的 0.46,已有了明显提升。目前,该研究成果已发表在《Frontiers in Plant Science》期刊上,标题为《Machine learning enhances prediction of plants as potential sources of antimalarials》。
该研究成果已发表在《Frontiers in Plant Science》上
数据集及抽样偏差校正
本实验重要目标之一是评估是否可以用植物特征数据训练机器学习模型来预测植物抗疟活性。首先,研究人员提供了一个数据集,该数据集基于龙胆目的 3 个花卉植物科——夹竹桃科、马钱科和茜草科的 21,100 个植物物种。 这些植物已被发现含有许多生物碱,如抗疟生物碱奎中的奎宁以及其异构体奎尼丁等。
图 1:夹竹桃、马钱和茜草科中含有抗疟疾生物碱的实例
A:在夹竹桃科植物中发现的一种生物碱:Aspidocarpine。
B:在马钱子科植物中发现的一种生物碱:Strychnogucine。
C:在茜草科植物中发现的、现被广泛用于抗疟药物中的生物碱:Quinine(奎宁)。
数据集具体包括植物形态特征、生物化学特征、生长环境条件以及地理位置等信息,下图展现了这份数据集中二元特征之间(只有两种取值的特征,如有毒/无毒)的关系。
图 2:数据集中二元特征间的关系
X 轴:二元特征。
Y 轴:每个特征的平均值,其中每个特征代表了不同的植物属性,如是否有毒、是否被用作传统药物等。
如图所示,所有植物物种中有 10% 被用作传统药物,而有毒植物物种有 77% 被用作传统药物,研究人员将这种差异称为抽样偏差,并且提出抽样偏差是由民族植物法 (ethnobotanical approach) 造成的。
民族植物学是指通过寻找和研究当地居民用于治疗疾病的植物来寻找药用植物,但因为不同地区和不同文化之间存在差异, 就可能会出现某一种或几种具有抗疟性的植物频繁地在数据集里出现,而导致其他可能具有抗疟性的植物被忽略,这就是所谓的抽样偏差。
为了更好地训练模型,研究人员对抽样偏差进行了校正,**具体方式是对每个植物物种进行重新加权,即使用了反向概率加权 (Inverse Probability Weighting) ,**这样每个物种样本都能在模型训练中被平等对待,从而提高数据集的代表性和模型的性能。
实验成果展示
模型训练及验证
本次实验中,研究人员训练了基于支持向量 (SVC)、逻辑 回归 (Logit)、XGBoot (XGB) 以及贝叶斯神经网络 (BNN) 的 4 种机器学习模型,并将这些模型与 2 种民族植物学方法——寻找传统抗疟植物和寻找传统药用(不特定于疟疾)植物进行比较。
对于基于 Logit、SVC 和 XGB 的 3 个模型,**研究人员的训练方法是通过 GridSearchCV 算法对模型的超参数进行调整,并使用 F0.5 指标来评估模型性能。**其中,研究人员对基于 Logit、SVC 的两个模型调整了 正则化 参数 C 和 class_weight 参数;对基于 XGB 的模型,则调整了 max_depth 参数。
对于基于 BNN 的模型,研究人员使用了两层分别有 10 个和 5 个的神经网络以及 tahn 激活函数 (activation function),又通过 100,000 个马尔可夫链蒙特卡洛迭代 (Markov chain Monte Carlo iterations) 来训练模型。
在验证阶段,研究人员在两种情况(没有进行抽样偏差校正和进行抽样偏差校正)下采用 10 次迭代的 10 折分层交叉验证 (10 iterations of 10-fold stratified cross validation) 方法对模型性能进行评估。
实验结果
首先是没有进行抽样偏差校正情况下,研究人员对筛选植物源性抗疟化合物的实验结果如下:
图 3:没有进行偏差校正情况下机器学习模型与 2 种民族植物法对比
如图所示,总体来看,机器学习模型的平均得分比 2 种民族植物法都要高, 并且能从数据特征中预测抗疟活性 (BNN: 0.66,XGB: 0.66,Logit: 0.62,SVC:0.65,Ethno (M): 0.57,Ethno (G): 0.50)。
进行了偏差校正情况下,研究人员对筛选植物源性抗疟化合物的实验结果如下:
图 4:进行了偏差校正情况下机器学习模型与 2 种民族植物法对比
如图所示,虽然由于对训练和测试集增加了 权重 ,使得模型性能的方差较高,但机器学习模型表现仍然比民族植物学方法要好。 研究人员将传统植物选择法的准确率估计为 0.47,而机器模型的预测准确率则普遍高于这个数字 (BNN: 0.59,XGB: 0.63,Logit: 0.66,SVC: 0.67)。
不过,虽然此实验成果展示了机器学习模型可以相对准确地筛选出具有抗疟活性的植物,但研究人员称,该实验仍有需要改进的部分:
-
增加训练数据: 目前训练数据集相对较小,需要增加更多的植物物种数据来进一步提高模型的性能。
-
解决抽样偏差问题: 虽然本实验中已经试图解决抽样偏差问题,但仍需要发掘更多的偏差校正方法。
-
优化特征选择:需要进行更多的植物特征选择和优化。
-
进一步测试物种数量过少或样本分布不均衡的植物物种: 对于现有数据中代表性不足的物种,需要进行更多的测试,以获得更准确的结果。
英国皇家植物园:发现植物的力量
对于本项研究成果,英国皇家植物园院长表示:「我们的研究结果显示了植物在生产新药方面拥有巨大潜力。 据估计,目前已知的维管植物物种有 34,300 种,但很多并没有得到深入的科学研究。我们希望机器学习方法能够应用在这方面,以寻找新的药用化合物。 并且这些成果也凸显了保护生物多样性和可持续发展自然资源的重要性。」
闻名于世的英国皇家植物园 (Royal Botanic Gardens, Kew) 通常被简称为「邱园」(Kew Gardens) 。邱园是国际知名植物研究与教育机构,由英国政府环境食品和乡村事务部 (Department for Environment, Food and Rural Affairs, UK) 资助,它是一个非政府部门性质的公立团体。邱园的目标是:「保护生物多样性,研发基于自然的解决方案,来应对人类面临的全球性挑战。」
大约在几个月之前,有新闻报道致力于可持续发展的基金 Greensphere Capital 计划对邱园投资 1 亿英镑,该笔投资将用于可持续农业以及招聘新的研究人员来研究植物和真菌科学、栖息地保护、农业及林业等项目。
本文首发自 HyperAI 超神经微信公众平台~
相关文章:

英国皇家植物园采用机器学习预测植物抗疟性,将准确率从 0.46 提升至 0.67
内容一览:疟疾是严重危害人类生命健康的重大传染病,研究人员一直在致力于寻找新的植物源性抗疟疾化合物,以研发相关药物。近期英国皇家植物园利用机器学习 算法 有效预测了植物抗疟性,该研究成果目前已发表在《Frontiers in Plant…...

基于Locust实现MQTT协议服务的压测脚本
一、背景简介 业务背景大概介绍一下,就是按照国标规定,车辆需要上传一些指定的数据到ZF的指定平台,同时车辆也会把数据传到企业云端服务上,于是乎就产生了一些性能需求。 目前我们只是先简单的进行了一个性能场景的测试…...

AURIX TC3XX Cached PFLASH与Non-Cached PFLASH的区别
Cached ? Non-Cached? 在阅读TC3XX的用户手册时,在内存映射表中,有两个segment都是Program Flash,而且大小都一样是3M,一个是segment 8 另一个是segment10 这难免让人产生疑惑,二者区别在哪? …...

uniapp开发小程序-显示左滑删除效果
一、效果图: 二、代码实现: <template><view class"container"><view class"myorderList"><uni-swipe-action><uni-swipe-action-item class"swipe-action-item" :right-options"option…...

FPGA 的数字信号处理:Verilog 实现简单的 FIR 滤波器
该项目介绍了如何使用 Verilog 实现具有预生成系数的简单 FIR 滤波器。 绪论 不起眼的 FIR 滤波器是 FPGA 数字信号处理中最基本的模块之一,因此了解如何将具有给定抽头数及其相应系数值的基本模块组合在一起非常重要。因此,在这个关于 FPGA 上 DSP 基础…...

使用粒子群优化算法(PSO)辨识锂电池二阶RC模型参数(附MATLAB代码)
目录 一、原理部分 二、代码详解部分 三、结果及分析 一、原理部分 PSO算法由美国学者于 1995 年提出,因其算法简单、效果良好,而在很多领域得到了广泛应用。该算法的起源是模拟鸟群的觅食过程,形成一种群体智能搜索算法。 其核心是&#…...

如何利用地面控制点实现倾斜摄影三维模型数据的几何坐标变换和纠正?
如何利用地面控制点实现倾斜摄影三维模型数据的几何坐标变换和纠正? 倾斜摄影是一种在空中拍摄地表物体的技术,可以获得高分辨率、高精度的三维模型数据,广泛应用于城市规划、建筑设计、土地管理等领域。然而,由于航拍时无法避免姿…...

设计规则之里氏替换原则
tip: 作为程序员一定学习编程之道,一定要对代码的编写有追求,不能实现就完事了。我们应该让自己写的代码更加优雅,即使这会费时费力。 相关规则: 推荐:体系化学习Java(Java面试专题) 1.6大设…...

【叠高高】叠蛋糕游戏的微信小程序开发流程详解
记得小时候玩过的搭积木游戏吗,和叠高高游戏原理差不多的,与之类似的还有盖高楼游戏,就是看谁盖的(叠的)最高,这里讲一下比较基础的叠高高游戏小程序实现过程,对编程感兴趣的同学可以参考学习一…...

收集关键词的方法有哪些?(如何查找精准的行业流量关键词)
关键词的收集通常可以通过以下几种方法: 关键词收集方法 1.根据市场价值、搜索词竞争性和企业实际产品特征进行筛选:确定您的关键词列表之前,建议先进行市场分析,了解您的竞争对手、行业状况和目标受众等信息,以更好地了解所需的特…...

【GreenDao】RxQuery查询并修改GreenDao数据库,完成后更新UI
GreenDao是一个轻量级的ORM(对象关系映射)数据库,而RxJava是一个响应式编程库,可以帮助我们更轻松地处理异步事件。在 Android 应用程序中,您可以使用这两个库一起处理数据库查询和更新,并使用观察者模式来…...

Modifier ‘public‘ is redundant for interface methods错误
java中接口的方法默认是 public abstract 的 所以放心的删掉public即可,如果改为protected 或者 private还会报错 接口的方法及变量的默认修饰符 1.接口中每一个方法也是隐式抽象的,接口中的方法会被隐式的指定为 public abstract (只能是 public abst…...

Redis缓存击穿及解决问题
缓存击穿的意思是对于设置了过期时间的key,缓存在某个时间点过期的时候,恰好这时间点对这个 Key有大量的并发请求过来,这些请求发现缓存过期- -般都会从后端DB加载数据并回设到缓存,这个时候大并发的请求可能会瞬间把DB压垮。 解决方案有两种…...

环境感知算法——2.CenterNet基于KITTI数据集训练
1. CenterNet简介 CenterNet采用了一种新的检测思路,即以目标中心点为基础,直接回归出目标的位置和大小。而传统的目标检测算法通常会先产生大量候选框(Anchor),再通过分类器进行筛选,这种方法比较复杂。C…...

JUC 高并发编程基础篇
JUC 高并发编程基础篇 • 1、什么是 JUC • 2、Lock 接口 • 3、线程间通信 • 4、集合的线程安全 • 5、多线程锁 • 6、Callable 接口 • 7、JUC 三大辅助类: CountDownLatch CyclicBarrier Semaphore • 8、读写锁: ReentrantReadWriteLock • 9、阻塞队列 • 10、ThreadPo…...

【十二】设计模式~~~行为型模式~~~命令模式(Java)
命令模式-Command Pattern【学习难度:★★★☆☆,使用频率:★★★★☆】 1.1. 模式动机 在软件设计中,我们经常需要向某些对象发送请求,但是并不知道请求的接收者是谁,也不知道被请求的操作是哪个…...

可再生能源的不确定性和储能系统的时间耦合的鲁棒性和非预期性区域微电网的运行可行性研究(Matlab代码实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...

Revit中如何使创建的族文件内存变小
族文件的大小直接影响到项目文件的大小和软件运行速度,如何将族文件做的最小并且满足项目需求呢? 方法一:清除未使用项 1. 族制作完成可以把族文件中未用到的外部载入族或其他多余数据删掉,点击“管理”选项卡下拉的“清除未使用项”命令; 2…...

ClassLoader源码
介绍 ClassLoader 顾名思义就是类加载器 ClassLoader 是一个抽象类 没有父类 作用 1.负责将 Class 加载到 JVM 中 2.审查每个类由谁加载(父优先的等级加载机制) 3.将 Class 字节码重新解析成 JVM 统一要求的对象格式 常量&变量 //注册本地方法…...

Kafka分区消息积压排查指南
针对某个TOPIC只有几个分区积压的场景,可以采用以下方法进行排查: 消息生产是否指定key? 如果指定了消息key,那么消息会指定生产到hash(key)的分区中。如果指定了key,那么有下列几种可能: 生产该key的消息体…...

数据库 期末复习(4) 概念数据库的设计
第一部分 为啥要引入概念数据库 感觉只有一个重点 实体联系模型----ER模型 第二部分-----实体联系模型 这个例子可以全看完之后再来看 举个例子:根据COMPANY数据库的需求来构造数据库模式:The company is organized into DEPARTMENTs. Each department has a name, number …...

WuThreat身份安全云-TVD每日漏洞情报-2023-05-26
漏洞名称:Barracuda Email Security Gateway TAR文件命令注入 漏洞级别:严重 漏洞编号:CVE-2023-2868,CNNVD-202305-2128 相关涉及:Barracuda Email Security Gateway 5.1.3.001 漏洞状态:在野 参考链接:https://tvd.wuthreat.com/#/listDetail?TVD_IDTVD-2023-12949 漏洞名称…...

关于Idea的一些常用设置项
1. 输出中文不乱码 设置工程项目编码 file -> settings -> Editor -> File Encodings-> 如下图通通UTF-8 2. 创建文件自动设置本文模板 File–>settings–>Editor–>File and Code Templates–>Includes -> 输入类注释模板 /*** Classname ${N…...

Python使用WMI模块获取Windows系统的硬件信息,并使用pyinstaller库编译打包成exe的可执行文件
引言 今天给大家分享一篇有关Python和Windows系统的文章。你有没有想过如何获取Windows系统的硬件信息?或者你是否曾经尝试过将Python脚本编译打包成可执行文件?如果你对这些问题感兴趣,那么这篇文章一定适合你。 背景 由于公司现阶段大多…...

JavaScript语句(七)
JavaScript语句 1、条件语句2、循环语句3、break 和 continue 语句4、异常处理语句4.1、抛出异常4.2、捕获异常4.3、处理异步代码块中的异常4.3.1、Promise4.3.2、async/await try-catch 4.4、处理未捕获的异常4.5、总结 1、条件语句 名称描述if当指定条件为 true 时…...

孪生诱捕网络在欺骗防御领域的应用
信息化在给人们带来便利的同时,网络信息安全问题也日益凸显。尤其是随着网络攻击由传统的盲目、直接、粗暴的方式转变为目前的精确化、持久化、隐匿式的恶意攻击,攻击过程中只需发现并利用一个未被修复的漏洞或不安全配置即可击破边界防御,试图将攻击者拒之门外的安全防护方…...

【性能测试】Jenkins+Ant+Jmeter自动化框架的搭建思路
前言 前面讲了Jmeter在性能测试中的应用及扩展。随着测试的深入,我们发现在性能测试中也会遇到不少的重复工作。 比如某新兴业务处于上升阶段,需要在每个版本中,对某些新增接口进行性能测试,有时还需要在一天中的不同时段分别进行…...

ARM体系结构与异常处理
目录 一、ARM体系架构 1、ARM公司概述 ARM的含义 ARM公司 2.ARM产品系列 3.指令、指令集 指令 指令集 ARM指令集 ARM指令集 Thumb指令集 (属于ARM指令集) 4.编译原理 5.ARM数据类型 字节序 大端对齐 小端对齐 …...

招聘网站—Hive数据分析
招聘网站—Hive数据分析 第1关:统计最热门的十种职业(招聘人数最多) #进入hive hive#在hive中创建数据库 mydb create database mydb;#使用数据库 mydb use mydb;#创建表 recruitcleaned 并使用"/t"分割字段 create table re…...

双指针滑动窗口整理1——长度最小的子数组、水果成篮
209. 长度最小的子数组 这篇文章主要是想针对这题 209. 长度最小的子数组,总结一下双指针或是滑动窗口的小细节。对于暴力算法,我们就不再阐释了。 算法原理: 滑动窗口主要是通过控制循环终止节点j,并移动i来缩放窗口。具体而言…...