机器学习算法竞赛考察的内容

来源:14-2 学习完这个课程以后怎样继续深入机器学习的学习?

Suspendz

2019-03-19

老师能不能讲一下,kaggle算法竞赛里面主要是要考察什么东西。是模型选择、参数选择、预测准确度这些常规指标么?还是说考察同一个问题手写模型的准确度速度这些?因为我想的,既然都是参加比赛的,那么常规sklearn还有TensorFlow调包调参的经验一定都是不差的,如果只是模型选择+调包网格搜索超参数,那这么多选手一定会有很多相同答案的,所以要想取得好成绩应该都是需要使用自己写的模块的吧?
因为我现在只是学完了算法内容,但是工程实践还有算法竞赛没有任何经验,不知道具体算法落地实施时候会经常面对什么困难,麻烦老师讲解一下。

写回答

1回答

liuyubobobo

2019-03-19

首先,指标都是常规指标。比如分类问题,就是拼准确率。


但是,要想达到高的准确率,并不容易。这其中,最关键的是,其实是特征工程。关于此,可以参考这里:https://coding.imooc.com/learn/questiondetail/40722.html


这里,我的介绍还是抽象的,我建议你看一些实际的竞赛问题,然后看看优秀的解答。在kaggle上,所有的结束的比赛,都有课N多公开的kernel可以参考。从中,你可以看出大家在拼什么。特征工程是很大的一块儿。


其次,就是你说的模型的选择和调整。首先,模型的选择和调整可能会比你想象的困难。尤其当介入深度学习的算法之后,一个模型有成千上万的参数都是家常便饭。网格搜索是不可行的。此时,如何综合各种其他指标,更加有效地进行调参,是很重要的。


其次,和算法一样,很多调参的方式,很多指标,并非是在各个标准库中就存在的。最简单的例子,在这个课程中介绍了PR曲线。但是根据PR曲线如何调参?这不是一个标准库中内置的方式。更不用提更多在机器学习,统计学习和统计学中所设计的其他各种方法:)


最后,是的,就是工程难度。写出一套根据实际问题,可以灵活调参,高效获得最佳结果的代码,并不容易:)


依然是,我这么说,你可能并没有感觉。我建议你实际参考一些真实的竞赛问题,再仔细体会一下:)


加油!:)

0
1
Suspendz
非常感谢!
2019-03-20
共1条回复

Python3入门机器学习 经典算法与应用  

Python3+sklearn,兼顾原理、算法底层实现和框架使用。

5893 学习 · 2454 问题

查看课程