最近读了华盛顿大学教授Pedro Domingos在2012年发表的《A Few Things to Know about Machine Learning》,文中总结了在机器学习过程中常会遇到12个问题进行了总结。这些问题从理论出发,紧密联合实际。看完之后感触很深,其中很多知识点是也是实践经验后丰富之后才能够有所体会,现在结合自己在医疗临床领域进行数据分析时遇到的情况进行总结和分享吧。
转变思维:从”工具“到”套路“
还记得在刚开始接触机器学习时,最大的挑战莫过于去学习各种令人眼花缭乱的算法和模型了,让人应接不暇。很多的机器学习教材在介绍具体知识的时候通常会按照模型的表示形式去划分不同的章节,却忽视了模型之间的相关性。这就造成初学者难以从全局的角度去看待机器学习的问题,疲于掌握不同的“小工具”而不是用模型实际问题的“套路”。文中开篇就列出了机器学习问题的通用公式:
Learning = Representation + Evaluation + Optimization
这个公式为我们在解决具体问题时提供了一个很好的框架:首先根据具体场景和问题选择具体的模型表示;再根据具体情况确定评价方式,即损失函数;最后再根据损失函数的形式去选择高效适当的优化算法。
对于新手来说,最需要做的是形成对于机器学习的知识体系,而不是纠结于某些具体的算法,完成思维的转变。
泛化即”正义“
机器学习的模式是在训练数据上训练模型,同时在测试数据上完成模型性能的评价,因此我们最需要关注的就是训练好的模型在测试数据上的泛化能力如何,其中最需要避免的就是过拟合(Overfitting)。
文中关于泛化讨论了三个问题&#