背景
大二开始接触机器学习,到现在也快大半年了,在这段时间中踩过一些坑,分享出来,希望能给那些刚刚接触机器学习的人一点儿启发。
犯过的错误
错误一
太迷信算法,一直学习各种算法。初次接触机器学习,感觉蛮有趣的。接下来就陷入了算法学习的深渊,总是想先多学一点儿算法。每天不停的推导算法公式,遇到数学上不懂的,就转而去学数学,然后又回过头来学习各类算法。
后果
- 算法太多,学不过来。写到这儿,突然想到一句话:哪有纵横七百里拒敌的。诸葛亮和司马懿都说过的一句话。学习这么多算法,没几个用上了,更没有几个产生了实际价值。
- 算法学了,没有深入,容易忘记,学得越多,忘得越多。
错误二
学习了算法缺少实践。有无实践,这或许也是不同人之间拉开差距的一个原因吧。举个简单的例子,经常在各种知识分享网站上看见别人分享的有关数据分析、预测的小demo,看着虽然简单,但这也是一种实践,可以把学习的算法知识用上,加深印象。同时还检验了知识是否学到位了。
后果
- 无法考察知识是否学习到位了
- 没有实践,知识学了,但并没有发挥出它的价值,不要等到以后再去实践,也不要等有了具体场景了,再用知识去创造价值。到了哪个时候,很多东西都已经忘了,而且实践场景是可以自己创造的,并不是等来的。
改变
改变一
不在一个劲的学习各类算法,而是把注意力转移到实际场景中来。先将一两个算法使用上,进行一次端到端的学习,先熟悉机器学习具体的应用过程,然后再找到一个点深入下去,并进行横向扩展。
具体切入点
- 可以到优达学城听一下google的深度学习的课程,简单并且有实际的数据,以及代码,跟着课程内容实践一遍,或许会收获许多。
- 参加kaggle的比赛,这是一个蛮好的平台,提供了一些具体的场景,可以在这个平台上找一个感兴趣的比赛,端到端的实践一次,然后改进自己的方案,并分享出来,不断的尝试,并进行扩展。
改变二
注重数据。找到一些实际的数据,培养一些数据的感觉。
具体切入点
- 在各个提供数据的网站上下载一些数据,用算法来对数据做处理,然后用处理过的数据集来训练算法,从实践中来学习数据处理。
- 自己写爬虫,在网上抓取一些数据,再进行数据处理,算法训练。
愿景
希望可以不在停留在表面上,而是使用计算机加上所学的知识创造出实际的价值。