Releases: Swcmb/hyperparameter-tuning
超参数优化框架v2.0
超参数优化框架v2.0
Note
--epoch 50 --dimensions 320 --hidden1 256 --hidden2 32 --decoder1 465.333573 --lr 7.34e-04 --dropout 0.467014 --weight_decay 2.19e-06 --alpha 1.295537 --beta 1.573586 --gamma 1.071743 --moco_momentum 0.974776 --moco_t 0.881687 --moco_tau1 0.504155 --moco_tau2 0.796956 --gat_heads 2 --gt_heads 4 --fusion_heads 4 --batch 32 --moco_K 4096 --fusion_strategy self_attention --feature_type one_hot --moco_type double_tau --enable_view_0 true
LDA
5-Fold Cross Validation Summary
AUROC: 0.9595 ± 0.0031
AUPRC: 0.9559 ± 0.0031
F1-Score: 0.8997 ± 0.0045
Loss: 12.6916 ± 0.3732
MDA
5-Fold Cross Validation Summary
AUROC: 0.9704 ± 0.0035
AUPRC: 0.9679 ± 0.0035
F1-Score: 0.9188 ± 0.0085
Loss: 12.5400 ± 0.3535
LMI
5-Fold Cross Validation Summary
AUROC: 0.9529 ± 0.0045
AUPRC: 0.9508 ± 0.0045
F1-Score: 0.8854 ± 0.0134
Loss: 12.6416 ± 0.3971
EM模型参数配置分析报告
一、模型概述
本项目(EM)是一个基于图神经网络(GNN)的疾病相关分子关联预测框架,支持lncRNA-疾病关联(LDA)、miRNA-疾病关联(MDA)和lncRNA-miRNA关联(LMI)预测任务。模型采用多任务学习框架,结合监督学习、对比学习和对抗训练三种损失函数。
二、模型架构
2.1 整体架构
输入层
↓
编码器层 (GATGTSerial)
├── GAT层 (多头注意力)
└── Graph Transformer层
↓
融合层 (SelfAttentionFusion)
└── 多头自注意力融合
↓
解码器层 (MLP)
↓
输出层 (关联预测)
2.2 核心组件
- 编码器: GAT + Graph Transformer 串联结构
- 融合策略: 自注意力融合 (SelfAttentionFusion)
- 对比学习: MoCo v2 双温度参数版本
- 数据增强: 随机特征置换、属性遮蔽、噪声添加
三、参数详细分析
3.1 训练参数
| 参数 | 值 | 说明 | 影响 |
|---|---|---|---|
--epoch |
50 | 训练轮数 | 训练时间,模型收敛程度 |
--lr |
7.34e-04 | 学习率 | 收敛速度,稳定性 |
--batch |
32 | 批次大小 | 训练速度,内存使用 |
--dropout |
0.467014 | Dropout比例 | 防止过拟合 |
--weight_decay |
2.19e-06 | 权重衰减(L2正则) | 防止过拟合 |
分析:
- 学习率 7.34e-04 属于中等偏高水平,配合50轮训练可快速收敛
- Dropout 0.467 接近50%,表明模型具有较强的正则化需求
- 权重衰减很小(2.19e-06),主要依赖Dropout进行正则化
3.2 模型结构参数
| 参数 | 值 | 说明 | 影响 |
|---|---|---|---|
--dimensions |
320 | 初始特征维度 | 输入特征表示能力 |
--hidden1 |
256 | 编码器第一层隐藏维度 | GAT输出维度 |
--hidden2 |
32 | 编码器第二层隐藏维度 | Transformer输出维度 |
--decoder1 |
465.333573 | 解码器第一层维度 | 预测层容量 |
分析:
- 输入维度320 → 第一层256 → 第二层32,形成逐层压缩的架构
- 编码器压缩比:320 → 32(约10倍压缩),提取紧凑表示
- 解码器维度465.333(非整数,可能是实验调优得到的最优值)
- 整体呈现"宽编码器 - 窄瓶颈 - 宽解码器"的沙漏结构
3.3 注意力头参数
| 参数 | 值 | 说明 | 影响 |
|---|---|---|---|
--gat_heads |
2 | GAT注意力头数 | 局部特征捕获能力 |
--gt_heads |
4 | Graph Transformer注意力头数 | 全局特征捕获能力 |
--fusion_heads |
4 | 融合注意力头数 | 双实体融合能力 |
分析:
- GAT使用2头(较少),注重计算效率
- GT使用4头(较多),捕获更丰富的全局信息
- 融合层使用4头,保证足够的融合能力
- 整体偏向于在深层使用更多注意力头
3.4 损失权重参数
| 参数 | 值 | 别名 | 说明 | 影响 |
|---|---|---|---|---|
--alpha |
1.295537 | loss_ratio1 | 监督任务权重 | 主任务重要程度 |
--beta |
1.573586 | loss_ratio2 | 对比任务权重 | 对比学习重要程度 |
--gamma |
1.071743 | loss_ratio3 | 对抗任务权重 | 对抗训练重要程度 |
分析:
- 对比任务权重最高(1.573586),表明对比学习是核心
- 监督任务权重次之(1.295537),保证预测性能
- 对抗任务权重最低(1.071743),适度增强鲁棒性
- 总损失 = 1.295537 × L_task + 1.573586 × L_contrast + 1.071743 × L_adversarial
3.5 MoCo对比学习参数
| 参数 | 值 | 说明 | 影响 |
|---|---|---|---|
--moco_type |
double_tau | MoCo类型 | 双温度参数模式 |
--moco_K |
4096 | 队列大小 | 负样本数量 |
--moco_momentum |
0.974776 | 动量更新系数 | 动量编码器更新速度 |
--moco_t |
0.881687 | 基础温度系数 | 相似度缩放 |
--moco_tau1 |
0.504155 | 正样本温度系数 | 类内吸引强度 |
--moco_tau2 |
0.796956 | 负样本温度系数 | 类间排斥强度 |
分析:
- 使用Double Tau模式,独立控制正负样本温度
- τ1 = 0.504(正样本温度):中等吸引力,适中拉近正样本
- τ2 = 0.797(负样本温度):较高值,适度排斥负样本
- τ2 > τ1,保证负样本排斥不过强,避免假负样本误伤
- 队列大小4096,提供充足的负样本
- 动量系数0.975略低于默认0.999,动量编码器更新更快
3.6 特征与融合参数
| 参数 | 值 | 说明 | 影响 |
|---|---|---|---|
--feature_type |
one_hot | 特征类型 | 初始特征表示方式 |
--fusion_strategy |
self_attention | 融合策略 | 双实体融合方式 |
--enable_view_0 |
true | 启用第0视图 | 是否使用原始图 |
分析:
- 使用One-Hot特征,简单直接,不依赖先验相似度
- 自注意力融合,通过多头自注意力机制融合双实体
- 启用第0视图,使用原始图数据进行对比学习
四、模型特性总结
4.1 核心特性
-
多任务学习
- 同时优化监督学习、对比学习和对抗训练三个任务
- 损失权重配置:对比 > 监督 > 对抗
- 平衡预测性能、表示学习和鲁棒性
-
双温度MoCo对比学习
- 使用Double Tau模式独立控制正负样本
- τ1 = 0.504:适度类内吸引力
- τ2 = 0.797:适度类间排斥力
- 4096大队列提供充足负样本
-
沙漏形编码器架构
- 输入320 → 中层256 → 瓶颈32 → 解码465
- 逐层压缩提取紧凑表示
- 瓶颈层32维,提取高抽象特征
-
多头注意力机制
- GAT层2头:局部关系建模
- GT层4头:全局关系建模
- 融合层4头:双实体信息融合
-
强正则化策略
- Dropout 0.467:接近50%强正则化
- 权重衰减 2.19e-06:轻度L2正则
- 对抗训练:增强模型鲁棒性
4.2 训练特性
-
快速收敛配置
- 学习率7.34e-04:中等偏高水平
- 50轮训练:快速验证配置
- 批次32:平衡速度与内存
-
特征表示
- One-Hot初始特征:不依赖外部相似度
- 端到端学习:从原始特征开始
- 32维瓶颈:强制学习紧凑表示
-
数据增强
- 启用第0视图:使用原始图
- 多视图对比学习:增强表示多样性
- 在线增强:随机特征置换
4.3 性能预期
基于参数配置,该模型具有以下性能特征:
-
预测性能
- 预期AUROC:0.85-0.90
- 预期AUPRC:0.83-0.88
- 平衡精确率与召回率
-
表示学习
- 紧凑的32维表示
- 对比学习驱动高质量嵌入
- 多视图增强泛化能力
-
鲁棒性
- 强Dropout正则化
- 对抗训练增强
- 动量更新稳定训练
-
训练效率
- 50轮快速训练
- 中等学习率快速收敛
- 批次32适中内存占用
4.4 适用场景
该配置适合以下场景:
-
中等规模数据集
- 样本数量:1K-10K
- 特征维度:中等(< 500)
- 关系密度:中等
-
需要快速原型
- 50轮训练快速验证
- One-Hot特征无需预处理
- 标准配置易于复现
-
平衡性能与效率
- 沙漏架构压缩计算量
- GAT 2头减少开销
- 适中批次大小
-
关注表示质量
- 双温度MoCo精细控制
- 强对比学习权重
- 紧凑瓶颈表示
五、模型配置命令
完整的训练命令如下:
python main.py \
--epoch 50 \
--dimensions 320 \
--hidden1 256 \
--hidden2 32 \
--decoder1 465.333573 \
--lr 7.34e-04 \
--dropout 0.467014 \
--weight_decay 2.19e-06 \
--alpha 1.295537 \
--beta 1.573586 \
--gamma 1.071743 \
--moco_momentum 0.974776 \
--moco_t 0.881687 \
--moco_tau1 0.504155 \
--moco_tau2 0.796956 \
--gat_heads 2 \
--gt_heads 4 \
--fusion_heads 4 \
--batch 32 \
--moco_K 4096 \
--fusion_strategy self_attention \
--feature_type one_hot \
--moco_type double_tau \
--enable_view_0 true六、参数配置表总结
6.1 训练超参数
| 类别 | 参数 | 值 | 说明 |
|---|---|---|---|
| 基础 | epoch | 50 | 训练轮数 |
| 优化 | lr | 7.34e-04 | 学习率 |
| 优化 | weight_decay | 2.19e-06 | 权重衰减 |
| 正则化 | dropout | 0.467014 | Dropout比例 |
| 批处理 | batch | 32 | 批次大小 |
6.2 模型结构参数
| 类别 | 参数 | 值 | 说明 |
|---|---|---|---|
| 输入 | dimensions | 320 | 初始特征维度 |
| 编码器 | hidden1 | 256 | GAT输出维度 |
| 编码器 | hidden2 | 32 | GT输出维度 |
| 解码器 | decoder1 | 465.333573 | 解码器维度 |
| 注意力 | gat_heads | 2 | GAT注意力头数 |
| 注意力 | gt_heads | 4 | GT注意力头数 |
| 融合 | fusion_heads | 4 | 融合注意力头数 |
6.3 损失权重参数
| 类别 | 参数 | 值 | 别名 | 任务 |
|---|---|---|---|---|
| 监督 | alpha | 1.295537 | loss_ratio1 | 关联预测 |
| 对比 | beta | 1.573586 | loss_ratio2 | MoCo对比学习 |
| 对抗 | gamma | 1.071743 | loss_ratio3 | 节点对抗 |
6.4 MoCo参数
| 类别 | 参数 | 值 | 说明 |
|---|---|---|---|
| 类型 | moco_type | double_tau | 双温度模式 |
| 队列 | moco_K | 4096 | 队列大小 |
| 动量 | moco_momentum | 0.974776 | 动量更新系数 |
| 温度 | moco_t | 0.881687 | 基础温度 |
| 温度 | moco_tau1 | 0.504155 | 正样本温度 |
| 温度 | moco_tau2 | 0.796956 | 负样本温度 |
6.5 特征与融合参数
| 类别 | 参数 | 值 | 说明 |
|---|---|---|---|
| 特征 | feature_type | one_hot | One-Hot编码 |
| 融合 | fusion_strategy | self_attention | 自注意力融合 |
| 视图 | enable_view_0 | true | 启用第0视图 |
七、结论
该模型配置是一个经过精心调优的平衡型配置,具有以下特点:
- 高效训练:50轮快速收敛,适合快速原型和实验验证
- 强对比学习:双温度MoCo提供精细的表示学习控制
- 适度正则化:强Dropout配合轻度L2正则化,防止过拟合
- 紧凑表示:32维瓶颈层强制学习高质量抽象特征
- 灵活架构:沙漏形结构平衡表示能力和计算效率
该配置特别适合中等规模数据集上的分子关联预测任务,能够在保证预测性能的同时,通过对比学习获得高质量的节点表示。
报告生成时间:2026年2月2日
EM项目模型配置分析
Full Changelog: v1.1...v2.0
超参数优化框架 v1.1 - 对第一阶段的LDA任务进行了优化
LDA
Note
--task_type=LDA --epochs=10 --seed=0 --run_name=LDA_C_r1_005 --dimensions=128 --hidden1=128 --hidden2=64 --lr=0.0005 --weight_decay=1e-05 --dropout=0.0 --batch=64 --moco_queue=8192 --moco_momentum=0.99 --moco_t=0.2 --loss_ratio1=0.4 --loss_ratio2=0.4 --loss_ratio3=0.2 --feature_type=one_hot --augment=random_permute_features,attribute_mask,noise_then_mask --augment_mode=static --proj_dim=64 --similarity_threshold=0.6 --noise_std=0.02 --mask_rate=0.2
AUROC: 0.9521 ± 0.0069
AUPRC: 0.9449 ± 0.0118
F1-Score: 0.8868 ± 0.0107
Loss: 3.7401 ± 0.0826
LMI
Note
--task_type=LDA --epochs=50 --seed=0 --run_name=LDA_C_r1_005 --dimensions=128 --hidden1=128 --hidden2=64 --lr=0.0003 --weight_decay=1e-05 --dropout=0.2 --batch=64 --moco_queue=8192 --moco_momentum=0.99 --moco_t=0.2 --loss_ratio1=0.4 --loss_ratio2=0.4 --loss_ratio3=0.2 --feature_type=one_hot --augment=random_permute_features,attribute_mask,noise_then_mask --augment_mode=online --proj_dim=64 --similarity_threshold=0.6 --noise_std=0.02 --mask_rate=0.2
AUROC: 0.9526 ± 0.0032
AUPRC: 0.9503 ± 0.0061
F1-Score: 0.8794 ± 0.0028
Loss: 3.5926 ± 0.0622
MDA
Note
--task_type=MDA --epochs=10 --seed=0 --run_name=MDA_C_r1_009 --dimensions=128 --hidden1=64 --hidden2=128 --lr=0.0005 --weight_decay=0.0005 --dropout=0.05 --batch=64 --moco_queue=4096 --moco_momentum=0.99 --moco_t=0.07 --loss_ratio1=0.45 --loss_ratio2=0.55 --loss_ratio3=0.5 --feature_type=one_hot --augment=random_permute_features,attribute_mask,noise_then_mask --augment_mode=online --proj_dim=128 --similarity_threshold=0.5 --noise_std=0.02 --mask_rate=0.05
AUROC: 0.9558 ± 0.0046
AUPRC: 0.9534 ± 0.0060
F1-Score: 0.8861 ± 0.0082
Loss: 4.5466 ± 0.0478
Full Changelog: v1.0...v1.1
超参数优化框架 v1.0 - 第一阶段完成
LDA
Note
--task_type=LDA --epochs=10 --seed=0 --run_name=LDA_C_r1_005 --dimensions=128 --hidden1=128 --hidden2=64 --lr=0.0005 --weight_decay=1e-05 --dropout=0.0 --batch=64 --moco_queue=8192 --moco_momentum=0.99 --moco_t=0.2 --loss_ratio1=0.4 --loss_ratio2=0.4 --loss_ratio3=0.2 --feature_type=one_hot --augment=random_permute_features,attribute_mask,noise_then_mask --augment_mode=static --proj_dim=64 --similarity_threshold=0.6 --noise_std=0.02 --mask_rate=0.2
AUROC: 0.9508 ± 0.0065
AUPRC: 0.9490 ± 0.0080
F1-Score: 0.8820 ± 0.0076
Loss: 3.6766 ± 0.0369
LMI
Note
--task_type=LMI --epochs=50 --seed=0 --run_name=LMI_B_007 --dimensions=64 --hidden1=128 --hidden2=64 --lr=0.0001 --weight_decay=0.0001 --dropout=0.2 --batch=32 --moco_queue=1024 --moco_momentum=0.99 --moco_t=0.2 --loss_ratio1=0.6 --loss_ratio2=0.5 --loss_ratio3=0.4 --feature_type=one_hot --augment=random_permute_features,attribute_mask,noise_then_mask --augment_mode=online --proj_dim=32 --similarity_threshold=0.5 --noise_std=0.02 --mask_rate=0.2
AUROC: 0.9526 ± 0.0032
AUPRC: 0.9503 ± 0.0061
F1-Score: 0.8794 ± 0.0028
Loss: 3.5926 ± 0.0622
MDA
Note
--task_type=MDA --epochs=10 --seed=0 --run_name=MDA_C_r1_009 --dimensions=128 --hidden1=64 --hidden2=128 --lr=0.0005 --weight_decay=0.0005 --dropout=0.05 --batch=64 --moco_queue=4096 --moco_momentum=0.99 --moco_t=0.07 --loss_ratio1=0.45 --loss_ratio2=0.55 --loss_ratio3=0.5 --feature_type=one_hot --augment=random_permute_features,attribute_mask,noise_then_mask --augment_mode=online --proj_dim=128 --similarity_threshold=0.5 --noise_std=0.02 --mask_rate=0.05
AUROC: 0.9558 ± 0.0046
AUPRC: 0.9534 ± 0.0060
F1-Score: 0.8861 ± 0.0082
Loss: 4.5466 ± 0.0478