| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 2021SC@SDUSC软件工程应用与实践----原码中CNN模块分析 -> 正文阅读 |
|
[人工智能]2021SC@SDUSC软件工程应用与实践----原码中CNN模块分析 |
2021SC@SDUSC 一,简述:在对数据集进行标准化处理之后,第一步就是通过CNN学习化合物和药物的特征,因此要分析这部分需要CNN相关知识,接下来将分为 1,CNN综述 2,实验分析 3,原码分析 三个部分。 二,CNN综述1,概念卷积神经网络(Convolutional Neural Network, CNN) 是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,[1]对于大型图像处理有出色表现。 卷积神经网络由一个或多个卷积层和顶端的全连通层(对应经典的神经网络)组成,同时也包括关联权重和池化层(pooling layer)。这一结构使得卷积神经网络能够利用输入数据的二维结构。与其他深度学习结构相比,[2]卷积神经网络在图像和语音识别方面能够给出更好的结果。这一模型[3]也可以使用反向传播算法进行训练。相比较其他深度、前馈神经网络,卷积神经网络需要考量的参数更少,使之成为一种颇具吸引力的深度学习结构。 ?2,基本流程? ?3,基本计算? ①卷积?②池化 ???③全联结 4,损失函数①最小二乘法 ?②极大似然估计法 ?③交叉熵(计算思路和极大似然估计法不同,但化简后公式一致) ?5,反向传播使用方法:梯度下降法 ①梯度定义 ?②层次分析 下面展示了如何从最后一层,依次修改上一层的参数,直到第一层 主要分为三种情况。 1)output->l层 ?2)l层->l-1层 3)2层->1层 ?? 三,试验分析试验流程图如下,这里我们仅关注红色框的内容 本次试验引入了两个CNN模块,每个块都旨在从 SMILES 字符串和蛋白质序列中学习表示。对于每个 CNN 块,我们使用了三个连续的 1D 卷积层,并增加了过滤器的数量。 第二层有两倍,第三层卷积层的过滤器数量是第一层的三倍。 卷积层之后是最大池化层。 最大池化层的最终特征被连接并馈入三个 FC 层。 本次试验使用了两个数据集合的输入: Davis 数据集:输入为化合物和蛋白质的 (85,128) 和 (1200, 128) 维矩阵。 KIBA 数据集:输入为化合物的 (100,128) 维矩阵和蛋白质的 (1000, 128) 维矩阵。 输出: 化合物和蛋白质矩阵卷积后的结果仍然是矩阵,连接后传下DeepDTA块中。 (截取自论文DeepDTA: Deep Drug-Target Binding Affinity Prediction ) ?四,代码分析1,读取蛋白质和化合物文件,并初始化为相应的矩阵 分析:两个read,分别读入蛋白质和化合物文件数据,if os.path.exists(XXX),判断文件是否存在,后面的if test,这里可以用是否使用test数据集,这里可以改成自己的其他数据集。
2,读取化合物文件,得到一个化合物对象 分析:python语法with打开文件,用到了两个for循环遍历,对数据规范处理后其次填入矩阵中
3,读取蛋白质文件,得到一个蛋白质对象 ?分析:和上文规范处理化合物对象操作一致
4,选定数据集,将化合物和蛋白质分别规范化成相应规格的矩阵 分析:调用内置的charseqset_size和charsmiset_size方法初始化FLAGS的charseqset_size和charsmiset_size参数。
5,部分运行结果 分析: 如图:训练药物数据集大小11902,蛋白质大小1353,本次测试用2批次的药物和2批次的蛋白质进行试验 五,总结因为CNN提取特征仅为该项目的第一部分,且在计算之前,需要对数据进行处理,由于CNN本身系统知识比较多,本周主要花时间先去学习了CNN先关知识,而项目中本段仅为一个中间值,并未有太多过程结果的输出。 在接下来的博客中,将会对项目中更多的关键代码进行分析。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/27 10:41:22- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |