Aron 数据科学小菜/励志当大厨
2 人赞同
在实际的工作中,从事机器学习相关工作的有四种角色(不一定对,算抛砖引玉吧)
1. 初级工具侠,在了解一定基础甚至没有基础的情况下,按照模型训练需要的格式处理好数据,输入, 然后调优,最后离线跑全量数据或者在线实时调用模型
2. 高级工具侠,了解模型,知道多模型融合,模型调优和特征工程功底炉火纯青
3. 工具创造者,跟进最新的研究进展,结合公司具体数据规模和计算资源,将该模型进行工业化,实现大体量数据的快速训练
4. 模型改造,结合具体业务,对实际的模型的优化目标和优化算法进行调整,如排序时考虑综合指标,可以构造多目标排序模型
那么,题主如果仅仅是想停留在1-2,完全可以在ACM加大气力,代码能力提升必然有益于实际的工程能力,再者拿到ACM奖牌对于进顶级互联网公司也大有裨益,此时本科毕业即可投身业界~
如果想去从事大规模分布式机器学习模型的研究开发,或者将业务和模型玩味的游刃有余,可以考虑在ML领域加大投入,当然ACM也不要放弃(代码能力是终身受用的技能,不管是成为工程师还是科学家),比如刷完PRML之后,把模型写一遍,然后找准你感兴趣的方向(NLP或者RS),找相关的老师做指导,、本科发高水平论文甚至顶会我想也不是不可能。之后申请北美的Master,然后专注领域内研究,毕业进Google或者Facebook从事相关工作,我想也和你本科进BAT的难度差不太多.
大二能开始刷PRML,难能可贵,坚持哦~
xingyi 深度学习
这么说,ICPC和真实工作内容差异比较大,性价比不高。如果硬要竞赛的话,按你的目标,不应该参加ICPC,而是KDDCUP。 本人弱渣,大学弄了ACM三年,现在做机器学习,很多知识点都忘记了,简历上已删除这项获奖经历(都怕被给问死)。当然,培养思维那又是另外一回事了。
但是如果给我重读一次大学母校的机会,那我依旧选择做ACM-ICPC。
本科软件工程专业 数据库技术、网络工程、嵌入式、软件设计这四个方向各有何特点,发展前景、就业前景如何?
数据库技术.
数据库是软件开发领域集大成者,它涵盖了编译原理,索引优化,虚拟机,缓存管理,文件系统,并发控制等等知识。涉及到的算法包括各种排序,索引结构(比如B-Tree),缓存策略,动态规划等等。作为一个学生,学习数据库是打基础的好途径。
数据库技术不会过时,只是慢慢进化,快50年前的理论到现在依然通用。
从就业角度来说,去公司做软件基本都要和数据库打交道,系统调优也多半是对数据库进行调优。
网络工程,我不是特别了解,但我相信没有数据库更通用。
嵌入式,这个是前几年火过的一个概念,问题是学出来没有什么好的工作机会。现在在Android,iPhone上开发程序大概就是前几年说的嵌入式。这个方向变得太快了。你学的东西很有可能马上过时。
软件设计是在实践中总结理解的,这个真的不应该算作一个方向。比如说你能通过写一个数据库,来获得一些软件设计的思想。
作者:哼哈二匠
链接:https://www.zhihu.com/question/20258426/answer/14514561
来源:知乎
著作权归作者所有,转载请联系作者获得授权。