| 
 | |
| 
 | 
| 开发:
C++知识库 
Java知识库 
JavaScript 
Python 
PHP知识库 
人工智能 
区块链 
大数据 
移动开发 
嵌入式 
开发工具 
数据结构与算法 
开发测试 
游戏开发 
网络协议 
系统运维 教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 | 
| -> 人工智能 -> 华为杯中国研究生数学建模竞赛D题-抗乳腺癌候选药物的优化建模-思路 -> 正文阅读 | 
|  | 
| [人工智能]华为杯中国研究生数学建模竞赛D题-抗乳腺癌候选药物的优化建模-思路 | 
| 
  问题 
  1. 
  根据文件“
  Molecular_Descriptor.xlsx
  ”和“
  ERα_activity.xlsx
  ”提供的数 
  
  据,针对 
  1974 
  个化合物的 
  729 
  个分子描述符进行变量选择,根据变量对生物活 
  
  性影响的重要性进行排序,并给出前 
  20 
  个对生物活性最具有显著影响的分子描 
  
  述符(即变量),并请详细说明分子描述符筛选过程及其合理性。 
  
 问题一难度较低,主要是找出对生物活性最具有显著影响的分子描述符,具有影 
 
 响意味着该分子描述符与生物活性的相关性越高,因此可以构建相关性分析模型 
 
 来分别计算各分子描述符与生物活性的关系,找出相关性最大的 
 20 
 个变量即可。 
 
 在 
 matlab 
 中使用 
 corrcoef 
 函数可以求两个序列的相关度 
 
 corrcoef
 (
 
 x
 ,
 y
 )表示序列 
 x 
 和序列 
 y 
 的相关系数,得到的结果是一个 
 2*2 
 矩阵, 
 
 其中对角线上的元素分别表示 
 x 
 和 
 y 
 的自相关,非对角线上的元素分别表示 
 x 
 
 与 
 y 
 的相关系数和 
 y 
 与 
 x 
 的相关系数,两个是相等的。
 
  问题 
  2. 
  请结合问题 
  1
  ,选择不超过 
  20 
  个分子描述符变量,构建化合物对 
  ERα
  生 
  
  物活性的定量预测模型,请叙述建模过程。然后使用构建的预测模型,对文件 
  
  “
  ERα_activity.xlsx
  ”的 
  test 
  表中的 
  50 
  个化合物进行 
  IC
  50 
  值和对应的 
  pIC
  50 
  值预 
  
  测,并将结果分别填入“
  ERα_activity.xlsx
  ”的 
  test 
  表中的 
  IC50_nM 
  列及对应的 
  
  pIC50 
  列。
  
   该问题主要是构建生物活性与 
   20 
   个分子变量之间的逻辑关系,主要有两种思路, 
   
   第一种是构建多元线性模型,及构建 
   y=a1x1+a2x2+...+a20x20 
   关系,然后求解 
   
   a1,a2,...a20 
   系数即可;第二种思路是构建神经网络模型,建立变量与生物活性之 
   
   间的非线性拟合关系,这里最好别用 
   BP 
   神经网络,因为输入数据的参数较多, 
   
   很容易陷入局部最优解,可采用遗传算法优化的 
   BP 
   神经网络模型或粒子群算法 
   
   优化的神经网络模型等,建立上述逻辑关系后将 
   test 
   表中数据带入即可。
   
    %
    程序一:
    GA 
    训练 
    BP 
    权值的主函数 
    
    function net=GABPNET(XX,YY) 
    
    %-------------------------------------------------------------------------- 
    
    % GABPNET.m 
    
    % 
    使用遗传算法对 
    BP 
    网络权值阈值进行优化,再用 
    BP 
    算法训练网络 
    
    %-------------------------------------------------------------------------- 
    
    %
    数据归一化预处理 
    
    nntwarn off 
    
    XX=[1:19;2:20;3:21;4:22]';
    
     YY=[1:4]; 
     
     XX=premnmx(XX); 
     
     YY=premnmx(YY); 
     
     YY
     
     %
     创建网络 
     
     net=newff(minmax(XX),[19,25,1],{'tansig','tansig','purelin'},'trainlm'); 
     
     %
     下面使用遗传算法对网络进行优化 
     
     P=XX; 
     
     T=YY; 
     
     R=size(P,1); 
     
     S2=size(T,1); 
     
     S1=25;%
     隐含层节点数 
     
     S=R*S1+S1*S2+S1+S2;%
     遗传算法编码长度 
     
     aa=ones(S,1)*[-1,1]; 
     
     popu=50;%
     种群规模 
     
     save data2 XX YY % 
     是将 
     xx,yy 
     二个变数的数值存入 
     data2 
     这个 
     MAT-file
     , 
     
     initPpp=initializega(popu,aa,'gabpEval');%
     初始化种群 
     
     gen=100;%
     遗传代数
     
      %
      下面调用 
      gaot 
      工具箱,其中目标函数定义为 
      gabpEval 
      
      [x,endPop,bPop,trace]=ga(aa,'gabpEval',[],initPpp,[1e-6 1 1],'maxGenTerm',gen,... 
      
      'normGeomSelect',[0.09],['arithXover'],[2],'nonUnifMutation',[2 gen 3]); 
      
      %
      绘收敛曲线图 
      
      figure(1) 
      
      plot(trace(:,1),1./trace(:,3),'r-'); 
      
      hold on 
      
      plot(trace(:,1),1./trace(:,2),'b-'); 
      
      xlabel('Generation'); 
      
      ylabel('Sum-Squared Error'); 
      
      figure(2) 
      
      plot(trace(:,1),trace(:,3),'r-'); 
      
      hold on 
      
      plot(trace(:,1),trace(:,2),'b-'); 
      
      xlabel('Generation'); 
      
      ylabel('Fittness'); 
      
      %
      下面将初步得到的权值矩阵赋给尚未开始训练的 
      BP 
      网络 
      
      [W1,B1,W2,B2,P,T,A1,A2,SE,val]=gadecod(x);
      | 
|  | 
|  | 
| 上一篇文章 下一篇文章 查看所有文章 | 
| 
 | 
| 开发:
C++知识库 
Java知识库 
JavaScript 
Python 
PHP知识库 
人工智能 
区块链 
大数据 
移动开发 
嵌入式 
开发工具 
数据结构与算法 
开发测试 
游戏开发 
网络协议 
系统运维 教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 | 
| 360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年11日历 | -2025/11/1 7:03:04- | 
| 
 | 
| 网站联系: qq:121756557 email:121756557@qq.com IT数码 |