自学机器学习的一些建议

 

最近收到一封网友来信如下:“梁博,你好。我有个对未来发展的一些想法向您请教一下。我是今年毕业的,刚入职了三个...



最近收到一封网友来信如下:

“梁博,你好。我有个对未来发展的一些想法向您请教一下。我是今年毕业的,刚入职了三个月是做java开发。我的岗位偏向搞大数据简单的预处理和大数据的存储。我发现公司有几个互联网的产品都被裁了,感觉自己做系统这块越来越没前途。我一个部门的同事是做算法,机器学习这块,我感觉这方面挺有意思的。自己学了一些算法也感觉挺不错的,而且这个方向未来是很火热的。我自己想自学,你觉得像我这样还来得及么?谢谢了”

回答这个问题不能简单说有前途,还是没有前途,支持或者反对。今天我想结合自己的经历说说我整机器学习的一些过程。

机器学习这个东西我最早接触是在搜狗的时候,我们听说百度那边用机器学习的方法改进了广告点击率,于是开始琢磨起这个事情。后来读了博士后在有道短期打工,他们也在把机器学习用于广告改善点击率的工作上,都是边学边做,有一个场景。因此我想有一个场景是非常非常关键的,大多数人停留在一些理论的研究和一些开源工具的使用,享受不到什么乐趣,于是没有坚持下去,或者没有出什么大成果。

后来离开有道后,失去了这个场景,但是机器学习的方法怎么引用,怎么show呢?首先第一个问题就是需要抓数据,离开了大厂,数据是个大麻烦。那会就用还在有道写的爬虫抓新浪微博数据,做了个微博寻人,闺蜜搜索这样的东西,其中就用到了机器学习的一些基本方法,训练完一个模型马上上线,效果有改进这个感觉是很好的,后来边学边做,更多的一些方法应用在做词库和分词上,可以说这是在博士苦逼期间,最让我欣慰的工作。因此我建议你要是搞机器学习,要么进大厂,要么自己折腾一个场景,做好了在微博上展示,会有很多人给你转发和支持的。我当时做的这些东西获得了很多人脉,包括冯大辉,蒋涛等一票大佬就是这个时候认识的,并给了很多帮助。做东西并且立即展示是一个可以借鉴的思路。

其次,搞机器学习还是需要一些具体的刺激,不能靠认识大佬获得自己牛逼的成就感来支撑,这个也长久不了。还是需要有一些具体的经济收入。比如你做的东西是否在大厂能真正用起来。能不能想到一些能挣钱的机会,这个很重要。或者能发发论文,也可以。总之要有用,持续的有用,有价值,否则也长久不了。我搞机器学习还是捞了不少钱的,这就是一些现实的刺激,也在微博上炫耀了不知道多少次了,这算是精神上的刺激。这些都是能够支持你长期学习的一些动力。

另外,可能是最后一个非常关键的因素就是多交领域的朋友,我最近想搞搞毛笔字,浅尝辄止放弃了,身边没有搞这个并且喜欢这个的人。自己一个人搞,独乐乐,玩不长久。建议要多参加一些机器学习的论坛,技术交流大会。多和搞这个领域的人交朋友。当然交朋友的前提是得有一些基本基础,否则别人讲什么都听不懂,也不会带你玩。

至于具体机器学习范畴很大,本质上就是解决最优化问题,我老板曾经这么说,人类世界也好,自然界也好,任何改进的方向(有效的改进方向)都是向着能量最小化去改进的,所以本质整个世界演进的过程就是一个最优化过程,适应外部环境的过程,需要高代价适应环境的都灭绝了。而低代价适应环境的有可能存活了。我们的很多创业也都是改善现在既有的一些东西,让成本更低,效率更高。而这一切都蕴含在数据中,机器学习就是把一堆杂乱无章的数据抽象成一个个具体的模型(相对于数据,模型是高度压缩的)。我搞的pullword分词的神经网络模型(实体上)也就几十KB,这个都让我惊讶,就这么几十KB的东西就能知道分词该怎么分,通过机器学习对数十万条训练语料的训练最后就浓缩成这么几十KB。这是多么神奇。

最后送你一个参考,这是我学习的时候,随手记录的一些简单sample code

https://github.com/pennyliang/MachineLearning-C---code

希望对你有启发,也建议你能有些心得,想法或者代码分享给更多人,加油。

(完)

最后说一下,之前的本栏目邮箱pennyjob@qq.com 或者jobpenny@gmail.com 我已经很少上去看信了。有需要联系我的,请直接留言。重要的生意可以给我发邮件(mgigabyte@gmail.com),谢谢大家。


    关注 程序员招聘


微信扫一扫关注公众号

0 个评论

要回复文章请先登录注册