资讯专栏INFORMATION COLUMN

8步从Python白板到专家,从基础到深度学习

Zachary / 1375人阅读

摘要:去吧,参加一个在上正在举办的实时比赛吧试试你所学到的全部知识微软雅黑深度学习终于看到这个,兴奋吧现在,你已经学到了绝大多数关于机器学习的技术,是时候试试深度学习了。微软雅黑对于深度学习,我也是个新手,就请把这些建议当作参考吧。

如果你想做一个数据科学家,或者作为一个数据科学家你想扩展自己的工具和知识库,那么,你来对地方了。

这篇文章的目的,是给刚开始使用Python进行数据分析的人,指明一条全面的Python学习路径。这条路径提供了用Python进行数据分析的必要步骤的一个全面概述。如果你已经有了一些基础,或者不需要所有的内容,可以随意调整学习路径以适合自己,并让我们知道你是怎么改动的。

0热身运动

在开始学习之前,第一个需要回答的问题是

推荐这个30分钟的录像,它是DataRobot创始人Jeremy在2014年Python社区大会(PyCon)上的讲话,它能够让你了解Python有多有用。小编注:建议在Wi-Fi连接下观看。

1、设置你的计算机

既然你已经下定了决心,是时候设置你的计算机了。最简单的方法是直接从Continuum.io下载Anaconda,它含有你Python生涯中需要的绝大多数好东东 。

https://store.continuum.io/cshop/anaconda/

这样做的主要缺点是,即便有一些底层包已经有更新版本的时候,你还是需要等待Continuum更新Anaconda中的包。如果你只是刚刚开始,那这一点就不算是个问题。如果在安装时遇到任何困难,你可以在下面这个网站找到在不同操作系统下安装的详细指引。

http://www.datarobot.com/blog/getting-up-and-running-with-python/ 

2、学习基本知识

你应该从了解Python语言、库和数据结构的基础知识开始,这个来自Codecademy的教程是你开始学习的较佳选择之一。

http://www.codecademy.com/tracks/python

在学完这个教程后,你应该可以轻松地用Python写些小程序,并且对类和对象的含义也有了理解。

特别学习:Lists(列表),Tuples(元组),Dictionaries(字典),列表的内涵和字典的内涵。

完成作业:完成在HackerRank上的教程习题。这些作业应该能让你的大脑因Python而“燃烧”。

备用资源:如果交互式编程学习不适合你,你也可以看看这个Google上的Python课程。这个两天的课程,内容覆盖了随后会提到的一些内容。

https://developers.google.com/edu/python/。 

3、学习正则表达式

你将会大量使用它来进行数据清洗,特别是在处理文本数据。学习正则表达式的较好方法是完成这个课程

https://developers.google.com/edu/python/regular-expressions

并把这个“夹带”(当然不是考试的小抄,是速查表)放在随手可得的地方。

小编注:请上网站查看完整内容。

www.debuggex.com/cheatsheet/regex/python

完成“婴儿取名”练习

https://developers.google.com/edu/python/exercises/baby-names

如果想(gou)要(dan)更多的练习,请学习这个文本清理的课程。该课程将会在数据清理的不同步骤给你挑战。

http://www.analyticsvidhya.com/blog/2014/11/text-data-cleaning-steps-python/。

4、学习Python科学库

有趣之事,始于此处!这里,简要介绍不同的Python科学库——NumPy, SciPy, Matplotlib和Pandas。那么,让我们开始练习常用操作吧!

完整地练习NumPy操作课程,特别是NumPy的数组操作。这会建立一个好的基础,为将要面临的现实挑战做准备。

http://wiki.scipy.org/Tentative_NumPy_Tutorial

接下来,看看SciPy的课程。完整学习简介和基础知识部分,剩余部分可根据个人需要进行学习。

http://docs.scipy.org/doc/scipy/reference/tutorial/

如果你猜下一个是Matplotlib教程,那就错了!就我们目前的情况而言,它们太过全面了。事实上,把ipython笔记看到第68行(到animations)就基本可以了。

http://nbviewer.ipython.org/github/jrjohansson/scientific-python-lectures/blob/master/Lecture-4-Matplotlib.ipynb

 最后,我们来看Pandas。它为Python提供了数据帧(DataFrame)的功能,类似于R语言。你也需要在这上面多花时间好好练习。对于所有中等规模的数据分析来说,Panda将会成为最有效的工具。从这个短小的10分钟入门开始,了解一下Pandas。然后,... ...

http://pandas.pydata.org/pandas-docs/stable/10min.html 

然后,再看更详细的课程

http://www.gregreda.com/2013/10/26/intro-to-pandas-data-structures/。

你还可以看看“用Pandas进行探索性数据分析”(http://www.analyticsvidhya.com/blog/2014/09/data-munging-python-using-pandas-baby-steps-python/)以及“用Pandas进行数据整合”(http://www.analyticsvidhya.com/blog/2014/08/baby-steps-python-performing-exploratory-analysis-python/)两篇文章。

其它资源:

 如果你需要一本有关Pandas和NumPy的教材,推荐Wes McKinney著的《Python for Data Analysis》

 下面这个网站,还有很多的教程可作为Pandas的学习材料。

http://pandas.pydata.org/pandas-docs/stable/tutorials.html

完成来自哈佛大学CS109课程的作业。

http://nbviewer.ipython.org/github/cs109/2014/blob/master/homework/HW1.ipynb

小编注:回复 可视化 查看【数据科学之5个较佳Python库】,了解关于这些科学库的更多介绍和学习资源。

5、有效的数据可视化

学完这个来自CS109的课程,你可以跳过前面的两分钟,接来下的内容非常精彩!

http://cm.dce.harvard.edu/2015/01/14328/L03/screen_H264LargeTalkingHead-16x9.shtml

跟着课程完成下面课程作业

http://nbviewer.ipython.org/github/cs109/2014/blob/master/homework/HW2.ipynb

6、学习Scikit-learn和机器学习

现在,我们来到了整个过程的实质部分。Scikit-learn是在Python中对机器学习最有用的库。

学完来自哈佛大学2014年的CS109课程中第10讲到第18讲。你会全面了解机器学习,监督式学习算法(如回归、决策树、整体建模等)和非监督式学习算法(如聚类等)。切记,跟随每一讲,完成作业。

http://cs109.github.io/2014/pages/schedule.html

其它资源:

 如果有一本必读的书,那就是《Programming Collective Intelligence》,非常经典,仍然是关于这方面较好的书之一

 另外,如果你需要技术上更清晰的解释,可以选择Andrew Ng(这位大牛的课,不该不知道吧?)课程 ,用Python完成其中的习题。

https://www.coursera.org/course/ml

Scikit-lean的教程(这个不能忘)

试着完成Kaggle上的这个挑战

http://www.kaggle.com/c/data-science-london-scikit-learn

7、练习,练习,再练习

祝贺你,你做到了!现在,你已经拥有所需要的全部技能,只差练习了。哪里会有比在Kaggle上练习更好呢?上Kaggle与跟你一样的数据科学家一较高下。去吧,参加一个在Kaggle上正在举办的实时比赛吧!试试你所学到的全部知识!

http://www.kaggle.com/

8、深度学习

终于看到这个,兴奋吧?!现在,你已经学到了绝大多数关于机器学习的技术,是时候试试深度学习了。很有可能你已然知道什么是深度学习,万一仍然需要一个简要介绍,可以看看这个。

http://www.analyticsvidhya.com/blog/2014/06/deep-learning-attention/

对于深度学习,我也是个新手,就请把这些建议当作参考吧。最全面的资源在deeplearning.net上,在那里,你会找到所有的东西——讲座、数据集、挑战和教程。

http://deeplearning.net

如果想要了解神经网络的基本知识,试着学习Geoff Hinton(这个大牛,你应该也是知道的吧)的课程

https://www.coursera.org/course/neuralnets

篇外话:假如你需要面向大数据的Python库,请试试Pydoop和PyMongo。由于“大数据的学习路径”本身就是一个完整的话题,因此,本文并未涉及。

来源:

1. http://www.analyticsvidhya.com/learning-paths-data-science-business-analytics-business-intelligence-big-data/learning-path-data-science-python/

2. https://www.youtube.com/watch?v=CoxjADZHUQA【译者简介】

姚佳灵:家庭主妇,对数据处理和数据分析很感兴趣,正在学习Python,希望能和大家多交流。

康欣:博士,多年从事图像及数据处理和分析、计算机视觉、模式识别、机器学习、增强现实等领域的技术研究和创新应用,现为西门子中国研究院高级研究员。希望借此平台,与大数据分析爱好者以及专家学者交流、合作。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/4319.html

相关文章

  • 机器学习

    摘要:用离散信一文清晰讲解机器学习中梯度下降算法包括其变式算法无论是要解决现实生活中的难题,还是要创建一款新的软件产品,我们最终的目标都是使其达到最优状态。 提高驾驶技术:用GAN去除(爱情)动作片中的马赛克和衣服 作为一名久经片场的老司机,早就想写一些探讨驾驶技术的文章。这篇就介绍利用生成式对抗网络(GAN)的两个基本驾驶技能: 1) 去除(爱情)动作片中的马赛克 2) 给(爱情)动作片中...

    wums 评论0 收藏0
  • 【胡言乱语】开发工程师如何在互联网公司的业务流水线上打造核心竞争力?

    摘要:天真的幻想站不住脚以技术安身立命自从就读软件工程以来就曾是我一直追求的目标我相信这也是很多软件人的目标只是参加业务开发后的种种让我觉得这个信条在大部分业务开发中都只是一个天真的幻想打造技术专家不仅缺乏养成的环境也缺乏使用的机会拿自己来说我所 天真的幻想站不住脚 以技术安身立命,自从就读软件工程以来,就曾是我一直追求的目标,我相信这也是很多软件人的目标;只是参加业务开发后的种种让我觉得这...

    v1 评论0 收藏0
  • 重磅 | 完备的 AI 学习路线,最详细的资源整理!

    摘要:是你学习从入门到专家必备的学习路线和优质学习资源。的数学基础最主要是高等数学线性代数概率论与数理统计三门课程,这三门课程是本科必修的。其作为机器学习的入门和进阶资料非常适合。书籍介绍深度学习通常又被称为花书,深度学习领域最经典的畅销书。 showImg(https://segmentfault.com/img/remote/1460000019011569); 【导读】本文由知名开源平...

    荆兆峰 评论0 收藏0
  • 小白程序员一路晋升为大厂高级技术专家我看过哪些书籍?(建议收藏)

    摘要:大家好,我是冰河有句话叫做投资啥都不如投资自己的回报率高。马上就十一国庆假期了,给小伙伴们分享下,从小白程序员到大厂高级技术专家我看过哪些技术类书籍。 大家好,我是...

    sf_wangchong 评论0 收藏0

发表评论

0条评论

Zachary

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<