数据确认
提示:当上传的数据超过5000列时,只展示前5000列的数据。
不良反应预测结果展示
              
            
本功能基于已知药品不良反应和药品化学分子结构数据,通过广义协同过滤方法进行药品不良反应预测。
假设共有 \(m\) 种药物, \(n\) 种不良反应,假设药物集合为 \(\cal{D}=\{d_1, d_2, ..., d_m\}\) ,不良反应集合为 \(\cal{S}=\{s_1, s_2, ..., s_n\}\) ,药物-不良反应共现矩阵为 \(Y\in \mathbb{R}^{m \times n}\) ,其中
$$ y_{ij} = \begin{cases} 1, 药物 d_i 产生了不良反应 s_j \\ 0, 药物 d_i 没有产生不良反应 s_j \end{cases} $$
药物的生化信息集合为 \(X=\{x_i|i=1,\ldots,m\}\)。 \(p_i\) 表示药物 \(d_i\) 的嵌入向量, \(q_j\) 表示不良反应 \(s_j\) 的嵌入向量。
本方法发表在了人工智能顶级会议 RecSys 上 [1],在两个真实世界数据集 LIU [2] 与 AEOLUS [3] 上分别达到 92.23 和 91.20 的 AUC。本方法的代码实现开源在 https://github.com/haoxuanli-pku/ADRnet. 本方法共包含三个预测模块,分别为深层药物表征提取预测模块、浅层特征协同过滤预测模块和药物协同过滤模块,详述如下。
本模块将每种药物的生化信息输入深层神经网络 [4],得到该药物的表征向量。之后将该表征向量输入 sigmoid 激活层得到药物 \(d_i\) 会发生不良反应 \(s_j\) 的概率 \(y_{ij}^D\)。对于有 L 层的深层神经网络,该过程可表示为
$$ Z_1^D=a_1(W_1^Dx_i+b_1^D), \ Z_2^D=a_2(W_2^DZ_1^D+b_2^D), \ …, \ Z_L^D=a_L(W_L^DZ_{L-1}^D+b_L^D), \ \hat{y}_{ij}^D=\hat{y}_i^D=\sigma(h^DZ_L^D), $$
其中 \(W_l^D\) 和 \(h^D\) 表示神经网络中的权重矩阵, \(b_l^D\) 表示神经网络中的偏差向量, \(a_l^D(\cdot)\) 表示神经网络中的激活函数, \(\sigma(\cdot)\) 表示 sigmoid 函数。
本模块将药物的嵌入向量与不良反应的嵌入向量做堆叠,然后共同输入深层神经网络,之后将结果再输入到 sigmoid 激活层得到药物 \(d_i\) 会发生不良反应 \(s_j\) 的概率 \(y_{ij}^{CF}\)。对于有 K 层的深层神经网络,该过程可表示为
$$ Z_1^{CF}=\begin{bmatrix}p_i,q_j\end{bmatrix}, \ Z_2^{CF}=a_2(W_2^{CF}Z_1^{CF}+b_2^{CF}), \ …, \ Z_K^{CF}=a_S(W_K^{CF}Z_{K-1}^{CF}+b_S^{CF}), \ \hat{y}_{ij}^{CF}=\sigma(h^{CF}Z_L^{CF}), $$
其中 \(W_k^{CF}\) 和 \(h^{CF}\) 表示神经网络中的权重矩阵, \(b_k^{CF}\) 表示神经网络中的偏差向量, \(a_k^{CF}(\cdot)\) 表示神经网络中的激活函数, \(\sigma(\cdot)\) 表示 sigmoid 函数。
本模块将深层药物表征提取预测模块提取的药物的特征与不良反应的嵌入向量逐元素相乘,之后将结果再输入到 sigmoid 激活层得到药物 \(d_i\) 会发生不良反应 \(s_j\) 的概率 \(y_{i,j}^{DCF}\)。该过程可表示为
$$ \hat{y}_{ij}^{DCF}=\sigma\left(h^{DCF}(Z_L^D\odot q_j)\right) $$
其中 \(h^{DCF}\) 表示神经网络中的权重矩阵, \(\sigma(\cdot)\) 表示sigmoid函数。
本方法将前三个模块得到的预测概率做加权,然后可以得到药物 \(d_i\) 会发生不良反应 \(s_j\) 的概率 \(\hat{y}_{ij}\),其公式为
$$ \hat y_{ij}=\sigma(\sigma^{-1}(\hat y_{ij}^D)+\sigma^{-1}(\hat y_{ij}^{CF})+\sigma^{-1}(\hat y_{ij}^{DCF})) $$
其中 \(\sigma(\cdot)\) 表示 sigmoid 函数。
在本方法中采用 ROC 曲线下的面积(AUC)[5] 来衡量预测的准确性。AUC 表示 ROC 曲线与坐标轴围成的区域面积,其取值范围为 0-1。AUC 值约接近 1,分类方法越准确。此外,本方法支持阈值输入,当用户只输入一个药物的结构时,用户可以输入阈值,获得对于该药物,预测结果大于阈值的不良反应。
示例数据来源于 Liu’s [2]与 AEOLUS [3],其中包含药物类别以及不良反应类别等信息。药物的生化信息来源于 PubChem [6] 与 Bio2RDF [7]。其中 PubChem 包含 881 比特(维度)的 PC-descriptors 信息,Bio2RDF 包含 6,712 比特(维度)的 BIO-descriptors。
[1] Li, H., Hu, T., Xiong, Z., Zheng, C., Feng, F., He, X. and Zhou, X.H. ADRNet: A generalized collaborative filtering framework combining clinical and non-clinical data for adverse drug reaction prediction. In RecSys, 2023.
[2] Liu, M., Wu, Y., Chen, Y., Sun, J., Zhao, Z., Chen, X.W., Matheny, M.E. and Xu, H. Large-scale prediction of adverse drug reactions using chemical, biological, and phenotypic properties of drugs. Journal of the American Medical Informatics Association, 2012.
[3] Banda, J.M., Evans, L., Vanguri, R.S., Tatonetti, N.P., Ryan, P.B. and Shah, N.H. A curated and standardized adverse drug event resource to accelerate drug safety research. Scientific data, 2016.
[4] LeCun, Y., Bengio, Y. and Hinton, G. Deep learning. nature, 2015.
[5] Hanley, J.A. and McNeil, B.J. A method of comparing the areas under receiver operating characteristic curves derived from the same cases. Radiology, 1983.
[6] Kim, S., Thiessen, P.A., Bolton, E.E., Chen, J., Fu, G., Gindulyte, A., Han, L., He, J., He, S., Shoemaker, B.A. and Wang, J. PubChem substance and compound databases. Nucleic acids research, 2016.
[7] Belleau, F., Nolin, M.A., Tourigny, N., Rigault, P. and Morissette, J. Bio2RDF: towards a mashup to build bioinformatics knowledge systems. Journal of biomedical informatics, 2008.
数据确认
提示:当上传的数据超过5000列时,只展示前5000列的数据。