| |
|
开发:
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图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/27 8:35:42- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |