基于机器学习的miRNA与疾病关系预测系统的设计与实现

2023-06-04 08:32夏岱婷彭荧荧
黑龙江科学 2023年8期
关键词:相似性高斯关联

夏岱婷,彭荧荧

(湖南中医药大学,长沙 410001)

MicroRNA(以下简称miRNA)是一类由22~24个核苷酸组成的非编码RNA[1],可通过对miRNA的研究来进一步了解疾病的发病机制,区分疾病类型,还可根据其与疾病之间的相关性来预测和防治疾病。越来越多的人开始使用生物信息学的计算方法对miRNA-疾病关联关系进行预测。基于“功能相似的miRNA往往与相似的疾病相关且反之亦然”[2]的假设,研究人员提出了许多模型。

尽管已出现了不少先进的预测方法,但对潜在的miRNA-疾病关联关系进行预测时,部分方法利用高斯核函数计算高斯核相互作用谱相似性,未对状态相同但意义相反的情况[(0,0)和(1,1)]进行区分,缺少预测系统进行展示。

1 数据

miRNA-疾病关联数据。人类miRNA疾病关联数据库(the Human microRNA Disease Database,HMDD)[3]始建于2007年(Lu等[4]),本研究采用V 2.0版本数据。

1)miRNA功能相似性数据。Wang等在计算miRNA之间功能相似性时分别考虑了与miRNA相关的相似疾病的影响,提出了MISIM计算方法[5],将其应用于HMDD中记录的miRNA,计算出所有miRNA之间的功能相似性,并建立了对应的网站。miRNA功能相似性数据可直接从网站上下载(http://www.cuilab.cn/files/images/cuilab/misim.zip)。

2)疾病语义相似性数据。Wang等根据美国国家医学图书馆MeSH(https://www.ncbi.nlm.nih.gov/)中对疾病类别的描述信息,提出基于疾病关系结构的疾病语义相似性度量方法[5],用有向无环图(DAG)描述疾病之间的关系,节点表示疾病术语,分为表示更宽泛的父节点和表示更具体的子节点,边表示疾病之间存在关联。

2 miRNA-疾病关联预测模型

提出了一个半监督学习的预测模型(RGM)。对已知的关联关系进行预处理,去除冗余数据,得到只含有miRNA信息和疾病信息的关联矩阵。针对部分方法存在的问题,运用高斯核函数获取高斯核相互作用谱相似性信息时,区分了状态相同但意义相反的情况,利用谱相似性矩阵,结合miRNA功能相似性矩阵和疾病语义相似性矩阵得到新的矩阵。在新的矩阵和miRNA-疾病关系矩阵中,利用标签传播算法得到最终的预测结果。以下主要对获取高斯核相互作用谱相似性进行说明。

基于“功能相似的miRNA往往与相似的疾病存在关联关系”的假设[6],根据Liu[6]等的方法,从关联矩阵中获取高斯核相互作用谱相似性时,对状态相同但意义相反的情况加以区分。以疾病信息为例,关联矩阵A作为高斯核相互作用分布图,矩阵中的每一列看作表示每一个疾病的特征向量D,D可以表示疾病与miRNA之间的关联关系,D中仅包含0和1两种数值,0表示疾病与对应的miRNA存在未知的关联关系,1表示疾病与对应的miRNA存在已知的、经实验验证的关联关系,因此可以通过式(1)和式(2)获取疾病的高斯核相互作用谱相似性矩阵KD。

(1)

其中,γd用来控制高斯核的带宽参数,计算方法如下:

其中

(2)

式中,δd[6]是一个新的带宽参数,原则上可以通过交叉验证实验来进行设置,根据Liu等的研究,将δd简单地设置为1。nm表示关联矩阵中miRNA的种类数,yik表示第i列疾病与第k行miRNA对应的数值,yik表示第j列疾病与第k行miRNA对应的值。

同理,根据公式(3)、(4)可以得到miRNA的高斯核相互作用谱相似性矩阵KM。

(3)

其中

(4)

基于HMDD v2.0版本数据库中已知的miRNA-疾病关联关系,采用全局留一法对模型性能进行评估。为了排除实验数据的偶然性,使实验数据更具说服力,取5次全局留一法实验的数据平均值作为最后的实验结果,结果显示,新模型的AUC值高于其他模型。

如图1所示,在全局留一法实验中,IMCMDA[7]、QIMCMDA[8]、MCLPMDA[9]和RGM,分别取得了0.839、0.924、0.966和0.972的AUC值。

图1 全局留一法实验中各模型的ROC曲线及AUC值Fig.1 ROC curve and AUC value of each model in the experiment of global leave-one method

3 预测系统的设计与实现

3.1 需求分析

本系统将用户分为普通用户和管理员两大类。

1)功能性需求。用户可查看系统中收录的疾病、miRNA、miRNA-疾病预测结果,可根据miRNA名称或疾病名称进行模糊查询,也可通过疾病和miRNA的组合进行精确查询。上传头像、更新昵称、修改密码等功能需打开“个人中心”页面,点击页面中的头像,实现上述功能。管理员可根据用户名对用户进行查询、新增、修改、删除等操作,对疾病信息和miRNA信息进行查询、收录、新增、修改等操作,对预测结果进行管理,预测结果以关系图形式进行可视化展示。

2)非功能性需求。可靠性:系统前后端均采用成熟的开发框架,同时考虑了响应速度,避免出现长时间不响应导致不满足用户需求的情况。安全性:采用路由拦截,用户无法在未登录状态下通过路由地址访问系统。用户密码在前端采用SHA256进行加密,数据库中存储加密后的密码。易用性:采用成熟的组件库进行开发,风格统一,界面美观,用户视觉感官好。界面中包含操作说明,可操作性强。

3.2 系统总体设计

系统架构采用前后端分离技术,耦合程度低,前端基于Vue框架进行开发,后端基于SpringBoot和MyBatis实现,主要包括表示层、业务层、数据层。

系统功能模块划分为普通用户模块和管理员模块。普通用户可对系统收录疾病、miRNA和miRNA-疾病关联关系的预测结果进行查询,还可对个人信息进行修改。管理员可对普通用户、疾病、miRNA及miRNA-疾病关联关系预测结果进行管理,实现对相关数据的新增、修改和删除。

数据库设计。采用MySQL数据库,主要存储用户个人信息、疾病信息、miRNA信息、miRNA-疾病关联关系预测结果信息等。

3.3 系统实现

系统开发环境如下:操作系统:windows10;开发语言:Java、JavaScript、Matlab;开发环境:Visual Studio Code、IntelliJ IDEA;数据库:MySQL;数据库可视化工具:Navicat Premium。通过Navicat Premium对存储系统数据的MySQL数据库进行可视化管理。Matlab主要用来进行数据处理,通过预测模型从已知的少量miRNA-疾病关联关系、miRNA功能相似性信息及疾病语义相似性信息得到潜在的miRNA-疾病关联关系预测结果。

目前系统已成功部署在阿里云服务器上,可通过http://47.106.112.145:8080/login进行访问。部分关键界面如下:

1)系统收录疾病页面。主要用于展示系统中收录的所有miRNA,包括miRNA编号及miRNA名称。用户可在输入框中输入某一特定的 miRNA名称,点击“搜索”按钮。若系统中存在该种miRNA,则在表格中显示相关信息,否则不进行显示。也可在输入框中输入miRNA的部分名称信息,点击“搜索”按钮,查询系统中所有包含该部分的miRNA信息。也可不进行输入,直接点击“搜索”按钮,查询系统中所有miRNA的信息。图2为系统收录疾病页面截图。

图2 系统收录miRNA页面截图Fig.2 MiRNA page snapshots included in the system

2)预测结果展示页面。主要用于展示系统中收录的所有预测结果,包括预测结果编号、疾病名称及miRNA名称。以本模型中3种疾病的部分预测结果为例进行可视化展示,使用户更直观地感受miRNA-疾病关联关系。可根据疾病或miRNA名称对预测结果进行模糊查询,也可通过输入疾病与miRNA的组合对预测结果进行精确查询。图3为预测结果可视化截图。

图3 预测结果可视化截图Fig.3 Visual screenshot of prediction results

3.4 系统测试

对本系统进行业务功能和性能测试,均达到预期。

猜你喜欢
相似性高斯关联
一类上三角算子矩阵的相似性与酉相似性
不惧于新,不困于形——一道函数“关联”题的剖析与拓展
浅析当代中西方绘画的相似性
数学王子高斯
“一带一路”递进,关联民生更紧
天才数学家——高斯
奇趣搭配
智趣
低渗透黏土中氯离子弥散作用离心模拟相似性
有限域上高斯正规基的一个注记