数据科学家之路 - 个人学习历程和入门规划

本文分为两部分:第一部分介绍我学习的过程,第二部分介绍对新人的指导规划

个人反思

总览下我的学习过程,我的学习过程分为一些几个阶段:

         (1)2017年7月以前 : 没有来学校之前,意识到自己以后开始由java转python,所以花了20天左右的时间,每天三个小时学习python语言,主要看的是小甲鱼的python视频,看了50集视频,外加做了15课的作业

          平台在这里:https://fishc.com.cn/forum-173-1.html       另外我有我同学给我的鱼C至尊会员号,需要的话可以跟我要。

          总结:python语言基本理论会的的差不多了

         (2)2017年7月4号 - 8月22号:提前来到学校,老师给我安排了一个数据收集的任务,做的事情就是下面我的简历里写的那样,基本每个平台写四天,写完之后去找老师汇报,在这个过程中练会了两个技能:python数据爬取和python基本语法。

            数据爬取也就是爬虫那些东西,同时练会了python常用的容器的使用,基本通过这一个月的工程锻炼把python语法练熟了。

           在机器学习方面,将(深度学习基础介绍-机器学习(Python))系列视频看到7.4节,每节课整理成笔记,因为算法太难了,写了才能真正吸收,有利于以后回顾,笔记就类似下面这样(其实就是大量照写加心得)。

                此外有挑选的看了《机器学习实战》中的以下章节:k-邻近、决策树、朴素贝叶斯、logistic回归、Adaboost元算法、回归、k-均值、PCA降维,这样有挑选看的,每章代码一点点琢磨看通运行调通,并将k-邻近、决策树、朴素贝叶斯、logistic回归代码写三遍(一遍抄写、二遍有点感觉的抄写、三遍自己写不懂的回看)。

                 总结:通过工程锻炼学会python的基本使用,学会了数据爬取,机器学习方面学会了浅层理论(不会推导),知道了一些算法的实现思想,如何用python不掉包实现基本机器学习算法。

               (3)2017年9月1号 -  2017年12月:此时期是最快的长进期,老师出国三个月,这三个月里最开始想打机器学习比赛来锻炼自己,所以在天池平台试了试,结果发现自己好垃圾,根本没这个实力,除了会点理论,拿点数据给我我都不知道怎么训练一个算法,怎么去写一个解决问题的简单的基线,所以开始沉淀学习,花了两个月时间看了一个视频和一本书,学了一本笔记。

                视频是(1——七月算法培训__三月机器学习在线班)从第一课学到第12课+14、15、16课,基本每节课两个多小时,简单的课每节基本上看两天,难的看4或者五天,比如当初学支持向量机,是花一天时间反复看视频,看了4遍左右,一天多时间找资料,看博客,看论文,看书,最后发现《统计学习方法》解释的最清楚,就按照那上面的理解透了,最后花了一天多时间打笔记,仅这一算法写了15页笔记。

                 书主要看的是《统计学习方法》,基本算是一本书看透了,从感知机开始到隐马模型,最后一章条件随机场没看,因为感觉没用到(最近发现,nlp里面要用到条件随机场,又学了一遍,这本书算是看完了),算是把机器学习的大部分算法的原理理解的差不多了。

                 一本笔记(主要依靠视频和书每个算法推导下来的),算是把整个机器学习的理论给推导下来了,笔记本的体系包括  数学基底(常用的优化学、微积分、概率论、线性代数)、线性回归、逻辑回归、梯度下降、最大熵模型、决策树、聚类算法(k-means聚类、层级聚类、密度聚类)、随机森林、GBDT、竞赛神器XGBoost、Adaboost、贝叶斯网络、支持向量机、EM算法、隐马模型

                 此外有一门讲的非常好的课,会一个个介绍机器学习算法,并编程介绍怎么实现(如果提前看了 《机器学习实战》,会觉得课程很轻松,不然真的是 这门课一半以上人都听不懂),这门是研一上学期贾老师的机器学习 课程。

                    总结:通过一个个机器算法理论的学习,最主要的是树立了自信,知道了每个算法怎么过来的,而不是刚开始时候感觉会点东西,但是又感觉什么都不会,并且看着自己写的笔记,能很快在面试前重新掌握这个算法(找工作时候别人很看重你对推导过程的理解)

                (3)2017年12月- 寒假:这段时间因为老师回国了,老师让学习深度学习方面的知识,并在学会后做成ppt跟老师交流,所以我们开始了学习深度学习的过程,这段时间学习的成果就是给你们的5个ppt,我们当时分别学习了:DNN(深度神经网络)、CNN(卷积神经网络)、RNN(循环神经网络)、迁移学习、强化学习理论,并学习了一个多月的深度学习框架Tensorflow, 我们当时是这样的,一个多星期学习DNN,将DNN原理、推导过程、外加一个案例做成第一个ppt,一个多星期学习CNN,将CNN原理、推导过程、常用CNN网络做成第二个ppt,依次下来完成5个ppt,并在做案例过程中学习对tensorflow框架的使用。

                 视频看的是:          (DL_11月深度学习班)、(12-python视频 神经网络 Tensorflow 模块 视频教程 (带源码))、(TensorFlow框架案例实战)、(迁移学习)、(12.July在线-生成对抗网络)

                    书籍没咋地看,看了本《tensorflow实战》

                总结:一个多月时间学习了深度学习常用算法的理论,掌握了深度学习框架Tensorflow,并在做ppt过程中把整个深度学习常用的算法理解透了。

                 (4)2018年3月开始 -4月初:下学期生活,开始时候跟你师姐一起每天都在学习Tensorflow框架,看了很多书,其中看完了《Tensorflow技术解析与实战》(强烈推荐)、《神经网络和深度学习》、看并敲代码看了三分之二的《Tensorflow机器学习实战指南》,以及《Tensorflow实战》,就这些吧,一直在练习Tensorflow框架的使用,这样的生活持续到清明节。

                 总结:这段时间主要是迫切想锻炼工程能力,收获是对Tensorflow用的更熟练了。

                 (5)2018年清明节-2018年6月:老师让打KDD CUP比赛,KDD CUP2018任务是预测未来48小时的空气质量,但是感觉自己除了会点算法什么都不懂哎,就在QQ群里问谁想打比赛,结果一呼百应,来了5个人一起,外加本校的一个、和你师姐,组成8人队伍打比赛,之后一个月里面,开始看资料、问人怎么去打数据挖掘竞赛,从基本的数据处理开始(慢慢的其他人都不靠谱,在群里不怎么回应了、我和你师姐就撑起队伍,emm....因为是老师要求的不敢放弃)一点点的整理清洗数据、自己造特征,用pandas做数据整理将数据转成模型的结构,一个多月时间,尝试了时空残差网络、GBDT、XGBoost各种模型方案,每天早上7点来提交结果,下午三点等待线上分数和排名变化,这样经过一个多月时间直到比赛结束,得到最后很一般的排名80/4200,顺便有一个还行的简历内容。

   

                   认真打一个比赛真的非常锻炼人,经过这次比赛,我主要是学会了一种技能:有了给你一些数据,你能直到怎么对这些数据做处理、让模型跑出好的结果的工程能力。  说着简单,里面却是包含了非常多的东西,包括数据预处理,怎么组织数据、怎么处理异常数据、怎么做数据变换、怎么有效整理存储数据、怎么选模型、怎么跑模型、怎么调和融合模型得到好的效果,并且认识了好多大佬,交了一些名校的朋友,增长了很多见识,算是融进数据科学这个圈子里了。

           视频看的是:   (10-Kaggle课程 )

            书看的是:《利用python进行数据分析》

           此外研一下学期有门讲的非常好的课,名字叫大数据重建方法,专门讲pandas、numpy、matplotlib这些做数据处理需要的东西,你们可以学习下。

           总结:这段时间最大的收获就是打了一场顶级数据挖掘赛事,通过这个过程锻炼了工程能力,学会了应对真实世界不干净、复杂数据的处理方法,掌握了怎么利用机器学习知识和深度学习知识解决实际问题的流程, 使得之前学习的理论基础切实的学以致用,感受到人工智能的强用途,并为自己的简历填色。

                  (6)2018年6月-至今:将之前打的比赛写成论文,给老师做用强化学习应用于路径规划的事情,做了个国网问答的项目,打kaggle上的赛事,为自己简历积攒点内容,就这些把,码太多,手有点累。

        

          总结:6个阶段把,慢慢来吧,祝你们好运!

猜你喜欢

转载自blog.csdn.net/maqunfi/article/details/82389485
今日推荐