🍠Python药物副作用生物图分析算法和矩阵降维算法

🏈指点迷津 | Brief

🎯要点

🎯人体疾病模块网络结构位置与病理生物学关系 | 🎯药物与药物靶点相互作用 | 🎯细胞和蛋白质之间的作用分层 | 🎯疾病和症状之间的联系 | 🎯药物与副作用之间的联系 | 🎯生物学分析

📜图分析用例

📜Python鲁汶意外莱顿复杂图拓扑分解算法

🍪语言内容分比

​Python药物副作用数学矩阵降维算法

预测药物效应在药物研发中非常重要,而药物研发是制药科学的主要目标。关于已批准药物的安全性、有效性和耐受性,有大量信息可用,这可以最大限度地减少预测新药效应所需的费用和时间。

药物数据准备

  • 药物蛋白质矩阵

  • 药物疾病矩阵

  • 药物和蛋白质相似性核

在本研究中,观察到的标签矩阵用YRm×nY \in R ^{m \times n}表示,其中mmnn分别是药物和靶标的数量。每个元素用yij{1,0,+1}y_{i j} \in \{-1,0,+1\}表示,其中+1表示正标签,-1表示负标签,0表示缺失标签。我们将交互矩阵 Y 分解为两个低秩潜在特征矩阵 URm×kVRn×kU \in R ^{m \times k} 和 V \in R ^{n \times k},其中 k 是潜在特征向量的维度。我们假设Y可以用U和V的乘积来表示,如下:

argminU,VR(YUVT)F2\underset{ U , V }{\arg \min }\left\| R ^{\circ}\left( Y - U V ^T\right)\right\|_F^2

其中F \|\cdot\|_F 表示 Frobenius 范数,{ }^{\circ} 表示两个矩阵的 Hadamard 乘积。设RRm×nR \in R ^{m \times n}为指示矩阵,其中当yij=1y_{i j}=1rij=pwr_{i j}=p w,当yij=1y_{i j}=-1时,rij=nwr_{i j}=n w,否则为0。请注意, pwp_wnwn w 分别是正标签和负标签的权重,默认值都是 1 。由于R的存在,我们只关注正标签和负标签,缺失标签并不会导致任何损失。

药物邻域信息采用邻接矩阵𝐀表示,其元素定义如下:

Ai,μ={Si,μd if dμN(di)0 否则 A _{i, \mu}=\left\{\begin{array}{cc} S_{i, \mu}^d & \text { if } d _\mu \in N\left(d_{ i }\right) \\ 0 & \text { 否则 } \end{array}\right.

其中 N(di)N\left(d_{ i }\right) 是通过选择 K1K_1 个与 did _{ i } 最相似的药物来构建的。药物靶标效应邻域信息B可以类似地定义如下:

Bj,v={Sj,vt if dvN(tj)0 否则 B _{j, v}=\left\{\begin{array}{cc} S_{j, v}^t & \text { if } d _v \in N\left( t _{ j }\right) \\ 0 & \text { 否则 } \end{array}\right.

最小化潜在空间中 did _{ i }与其最近邻 N(di)N\left(d_{ i }\right) 之间距离的目标函数如下:

α2i=1mμ=1mAi,μuiuμF2=α2tr(UTLdU)\frac{\alpha}{2} \sum_{i=1}^m \sum_{\mu=1}^m A _{i, \mu}\left\| u _i- u _\mu\right\|_F^2=\frac{\alpha}{2} \operatorname{tr}\left( U ^T L ^d U \right)

Python伪码算法实践:

  • 预测副作用的化合物

  • 预测某种化合物产生的副作用

Last updated

Was this helpful?