导图社区 机器学习论文脑图
本图梳理了如何写出一篇不水的机器学习论文,包括建模前准备、建出可靠的模型、稳健的评估模型、公平的比较模型、报告结果等。
社区模板帮助中心,点此进入>>
论语孔子简单思维导图
《傅雷家书》思维导图
《童年》读书笔记
《茶馆》思维导图
《朝花夕拾》篇目思维导图
《昆虫记》思维导图
《安徒生童话》思维导图
《鲁滨逊漂流记》读书笔记
《这样读书就够了》读书笔记
妈妈必读:一张0-1岁孩子认知发展的精确时间表
如何写一篇不水的机器学习论文
1.建模前的准备
1、确保花时间研究你要用的数据集,来源可靠、质量有保证。
2、但不要查看测试数据,防止先入为主做出某些假设导致最终模型通用性差。
3、保证数据量足够大
4、要和相关领域专家谈谈,防止研究脱离实际,并且他们也可以帮助你向最合适的期刊/受众发表。
5、搜遍相关文献,虽然发现别人已经研究过了很沮丧,但是写论文时你该怎么解释为什么要覆盖相同的领域。
6、一定要提前考虑模型部署的问题:大部分学术研究最终都是要落地吧?好好考虑落地场景的资源、时间限制等问题来设计模型。
2.建出可靠的模型
1、不要让测试数据参与到训练过程中(这点前面也已强调过)。
2、尝试不同的 ML 模型,别套用,具体问题具体分析找出最适合解决你的问题的那个。
3、一定要优化模型的超参数。使用某种超参数优化策略比较好,这样在写论文时也好整。除了数据挖掘实践之外,可以使用 AutoML 技术优化模型及其超参数的配置。
4、在执行超参数优化和特征选择要小心:防止测试集“泄漏”,不要在模型训练开始之前对整个数据集进行特征选择。理想情况下应使用与训练模型所用数据完全相同的数据。
3.稳健地评估模型
1、一个模型在训练集上的表现几乎毫无意义,保证测试集与训练集之间的独立。
2、在连续迭代多个模型,用前面的数据指导下一个的配置时使用验证集,千万不要让测试集参与进来。
3、对模型多次评估,防止低估/高估性能。
4、保留一些测试数据以无偏评估最终的模型实例。
5、不要对不平衡的数据集使用准确度(accuracy)指标。
4.公平地比较模型
1、一个更大的数字不意味着一个更好的模型。应将每个模型优化到同等程度,进行多次评估,然后使用统计测试确定性能差异是否显著。
2、要想让人相信你的模型好,一定要做统计测试。
3、进行多重比较时进行校正:如果你以 95% 的置信水平做 20 个成对测试,其中一个可能会给你错误的答案。这被称为多重性效应。最常见的解决方法是 Bonferroni 校正。
4、不要总是相信公共基准测试的结果。
5、考虑组合模型。
5.报告结果
1、保持你所做所发现的成果透明,这会方便其他人更容易地在你的工作基础上扩展。共享你的代码也会让你在 coding 的时候更认真。
2、提供多个测试集上的报告,为每个数据集报告多个度量指标(如果你报告 F 值,请明确这是 F1 得分还是精度和召回率之间的其他平衡;如果报告 AUC,请指出这是 ROC 曲线下的面积还是 PR 下的)
3、不要在结果之外泛化,不要夸大,意识到数据的局限性。
4、报告统计显著性时一定要小心:统计人员越来越多地认为,最好不要使用阈值,而只报告 p 值,让读者来解释这些值。
5、最后,再回过头完整的看一眼你的模型,除了报告性能指标,看看它能解决多少实际问题。