AI分子预测夏令营学习笔记
一、直播概览
主持人介绍
- 姓名:徐翼萌
- 角色:DataWhale助教
- 活动目的:分享机器学习赛事经验,提升参赛者在分子预测领域的能力
嘉宾介绍
- 姓名:余老师
- 背景:Data成员,腾讯广告算法大赛冠军,著有《机器学习算法竞赛实战》
二、技术分享要点
数据预处理
- 数据清洗:包括处理缺失值、异常值和重复数据。缺失值可以通过均值、中位数填充,或使用预测模型预测缺失值。异常值可以通过箱型图等方法识别并处理。
- 数据标准化:对数据进行标准化或归一化处理,以消除不同量纲的影响。
- 探索性数据分析(EDA):使用统计图表来分析数据分布、中心趋势和分散程度。
特征工程
- 特征提取:从原始数据中提取有助于模型理解的特征,例如从化学结构中提取分子描述符。
- 特征选择:使用过滤法、包装法或嵌入法选择最有信息量的特征。
- 特征转换 :
- 连续特征:可能需要进行对数转换或Box-Cox转换来稳定方差。
- 类别特征:使用独热编码转换为虚拟变量,注意处理"一位有效"问题。
模型选择与训练
- 模型比较:评估不同模型的性能,包括但不限于决策树、随机森林、梯度提升机、支持向量机等。
- 超参数调优:使用交叉验证和自动化调参技术(如Hyperopt或Optuna)来找到最优的超参数组合。
- 模型正则化:使用L1或L2正则化防止模型过拟合。
预测与评估
- 性能指标 :
- 准确率、召回率和F1分数:评估模型在不同类别上的表现。
- ROC曲线和AUC:评估模型在不同阈值下的性能。
- 混淆矩阵:直观展示模型预测与实际标签之间的关系。
- 误差分析:分析模型预测错误的案例,找出潜在原因。
模型融合
- Bagging:通过自助采样和模型平均来减少方差。
- Boosting:通过关注被之前模型错误分类的样本来减少偏差。
- Stacking:结合多个模型的预测结果进行最终预测。
附加学习内容
- TF-IDF深入:理解TF-IDF的计算原理,如何影响文本特征的处理。
- 高级文本处理:学习词嵌入(Word Embedding)和主题建模(如LDA)等高级文本分析技术。
- CatBoost特性:探索CatBoost如何处理缺失值和类别特征,以及其在处理大数据集时的优势。
交叉验证方法
- K-Fold:将数据集平均分成K份,轮流使用其中一份作为验证集。
- Stratified K-Fold:在K-Fold的基础上,保持每个折叠中各类别的比例相同。
- Time Series Cross-Validation:特别适用于时间序列数据,保持数据的时间顺序。
处理类别不平衡
- 重采样:通过过采样少数类或欠采样多数类来平衡类别。
- 合成样本生成:使用SMOTE等技术生成新的合成样本。
- 阈值调整:根据类别分布调整分类阈值。
实用技巧
- 特征重要性评估:使用特征重要性图来识别关键特征。
- 模型解释性:使用SHAP、LIME等工具来解释模型预测。
- 代码优化:编写清晰、高效的代码,使用向量化操作代替循环。
实践建议
- 代码版本控制:使用Git等工具管理代码版本。
- 实验跟踪:使用MLflow或TensorBoard记录实验过程和结果。
- 结果可视化:使用Matplotlib、Seaborn等库创建直观的图表来展示结果
三、QA环节要点
- 讨论生成数据的局限性和对现有数据的有效利用。
- 指导如何查询比赛成绩和排名,根据反馈优化模型。
四、结束语与感悟
- 主持人徐翼萌对余老师的分享表示感谢,强调了学习活动的价值。
- 个人感悟:通过学习,对机器学习在分子预测领域的应用有了更深入的理解。
五、后续行动计划
- 独立完成代码实践,加深对理论知识的理解。
- 参与DataWhale的后续活动,获得更多实践经验。
- 持续跟踪最新的机器学习技术和研究进展。
六、备注
- 记录直播中遇到的理解难点,计划通过查阅资料或参与讨论来解决。
- 收集直播中提及的资源链接,如相关论文、工具库和学习材料。