我觉得大家说的都比较偏重于传统的CS方向,比如软件开发类。
我想抛砖引玉,谈谈如果想走机器学习或者数据科学方向可以做些什么准备。
当然,我并不是想劝大家都来做机器学习…但如果这个方向是你的兴趣,在大学时打好基础可以先人一步!这个推荐是以像我自己一样的普通人为前提而假设,少量条件特别好的同学可以自己摸索更有“个性”的路。
我想从从三个方向来说: a. 知识积累 b. 经验积累 c. 素养积累1. 知识学习:1.1. 掌握好必备的数学基础,其实简单说在大学程度主要是三门课: a. 微积分 b. 线性代数. c.概率与统计。
如果学有余力,还可以看看优化方向的东西,但这个不是强求。
1.2. 掌握好一些基础的计算机核心课程,比如数据库,并行运算,离散数学(暂且把它放到计算机这一栏里面)。
至于编程方面的技巧,我倒觉得不是需要做到特别厉害。
如果能力有限的话,可以放低对操作系统,计算机结构这种比较偏底层的课程。
人生要学会抓大放小,不要苛求自己样样精通。
1.3. 学好Python,了解Python上的编程习惯(PEP8)和语法糖。
同时可以多了解一些Python对应的数据科学/机器学习的工具库,比如pandas, numpy,scipy,sklearn等。
即使将来你不做机器学习,胶水语言Python的知识还是可以有很大的帮助。
选择Python的另一个原因是大部分深度学习框架,Tensorflow/Theano/Keras/Pytorch等都是基于或有Python接口。
1.4. 开始学习基础的机器学习,比较推荐的方法是: a. 观看Andrew Ng 在Coursera上的机器学习课程 b. 同时开始阅读基础的机器学习书籍(比如《集体编程智慧》《Python机器学习》《Introduction to Statistical Learning》等)。
这个阶段,最重要的就是不要贪多嚼不烂。
如果你浏览知乎,会发现大家都说你必须读Elements of Statistical Learning, PRML之类的大部头。
我承认阅读这样的书会有帮助,但不大适合一开始直接阅读,因为有可能会让你“从入门到放弃”。
在你有了一定的基础知识后,你已经知道自己需要接着做什么了,我希望把选择权交还给你,而不是推荐成堆的课程和书籍。
当然,如果你希望继续深入的话,中文可以阅读周志华老师的《机器学习》和李航老师的《统计学习基础》,英文可以入手《Elements of Statistical Learning》和《Deep Learning》。
在这个阶段,重点要形成成体系的知识脉络,切记贪多嚼不烂,切记!1.5. 学好英语,至少打下阅读和听力的基础。
虽然人工智能领域中国现在已经做得很不错,但主流的书籍、期刊和会议,资料都是英文的。
我们可以接受翻译版,但最好的方法还是自己有能力直接阅读。
即使你将来不做机器学习,英文阅读能力还是会有很大的帮助。
2. 实践经历:2.1. 尝试尽早接触科研,进实验室。
一般来说,大三的时候你应该已经有了基本的机器学习知识,尽管还比较浅。
这个时候可以向老师/学长/学姐毛遂自荐进实验室,即使是无偿劳动和做基本的苦力活。
进实验室有两个明显的好处:a. 对某个小方向会有比较深入的了解。
一般实验室做纯理论的不大需要本科生,做机器视觉或者自然语言处理(NLP)等小方向的比较需要本科生,所以这是很好的深入了解一个方向的机会。
b. 补充了研究经历也可以明白自己是否适合这个领域。
如果运气好的话,你也有可能成为论文的作者之一,甚至可以去开会(公款旅游顺道见一下业内大佬)。
这对于继续深造和去国外继续学习都很有帮助,有科研经历和论文是很大的筹码,对于找工作来说也绝对有利无害。
2.2. 如果对科研的兴趣一般,可以尝试尽早实习。
大部分我们从书上看到的方法其实或多或少都是理想模型,甚至很多都比较过时了。
举例,现在大部分教科书里神经网络的激活函数还是sigmoid,而工业界早就不用sigmoid了。
机器学习的新手最大的门槛就是学了很多知识,却没有使用和检验的机会,而尽早实习可以给你更直观的感受,防止只有一身屠龙之技。
2.3. 可能科研和实习机会有时候可遇不可求,这时候就要自己找项目来做,用兴趣来驱动项目。
比较好的方法包括参加Kaggle竞赛,天池竞赛,或者将机器学习运用于自己感兴趣的事情上。
我曾看到知乎上有用机器学习判定红楼梦后40回是否曹雪芹所写,且不说文章是否严谨,但这就是用兴趣推动实践的很好的例子。
3. 社科人文:3.1. 机器学习作为一个变化飞速的领域,要有自己的“坚持”和“品味”。
举个简单的例子,现在的深度学习大放光彩需要归功于一批科学家在神经网络低谷时的坚持。
但同时,即使只说机器学习,也不要相信只有深度学习最好,不能固执。
如果对机器学习感兴趣,就不要今天觉得网络安全好,明天觉得人机互动(HCI)最有前途。
追逐热点往往到手的都是泡沫。
3.2. 多读不同领域的书,比如社科类、经济类、人文类。
因为数据科学的起点是以数据为基础,终点提取见解提供反馈。
而见解不像数字一样一眼就可以看出高低大小,而需要阅历来多角度分析。
很多人觉得计算机学科的人读数学看论文就够了,实则不然,科学总会和社会有交织。
举个例子,是否该将人工智能应用于军事就是最近知乎上很火的问题,但回答这个问题就需要你有足够的非计算机知识储备,科技没有善恶,而人有。
3.3. 放低身段,多和别人交流。
其实这一点有一点牵强,但我发现做机器学习的小伙伴一般都很有性格,很多也比较内向(包括我自己),这可能适用于大部分理工科的朋友。
即便如此,我还是建议大家稍微放开一些,因为以数据为导向的工作大部分都要求互动,比如数据分析师、数据科学家等。
4. 写在最后:科技日新月异,追逐热点是好的。
但就像我刚刚提到的,在这个浮躁的时代,不管选择什么方向最重要的就是独立思考的能力,和去伪存真的勇气。
如果一件事情不能证实,不能证伪,那就必须存疑。
大学不仅是最美好的时光,更是培养良好科学素养的关键时光。
因此,看了这么多过来人分享经验后,我最希望的是你既不要急着全盘接受,也不要因为不对胃口全盘否定。
慢下来,好好想想,这大概才是做科学工作的正确态度。
愿你有所收获!ʕ•ᴥ•ʔ
- 夏天的风 姑娘 老男孩 理想三旬 月半小夜曲 生日快乐 其实 那些年 光阴的故事 少年 后来遇见他 那女孩对我说 世界这么大还是遇见你 火红的萨日朗 想见你想见你想见你 冬眠 关键词 芒种 往后余生 关山酒 年轮说 小镇姑娘 烟雨行舟 记念 你笑起来真好看 来自天堂的魔鬼 学猫叫 你的酒馆对我打了烊 不仅仅是喜欢 浪人琵琶 卡路里 带你去旅行 红昭愿 纸短情长 最美的期待 体面 小跳蛙 悬溺 侧脸 山楂树之恋 我的名字 失眠飞行 有可能的夜晚 追光者 请先说你好 流浪 东西 星球坠落 我的将军啊 烟火里的尘埃 答案 心如止水 我们不一样 嘴巴嘟嘟 晴天 成都 告白气球 南山南 女儿情 天空之城
报歉!评论已关闭。