当前位置:   article > 正文

从零开始掌握Python机器学习:七步教程 基础篇_python 机器学习

python 机器学习

前言

「开始」往往是最难的,尤其是当选择太多的时候,一个人往往很难下定决定做出选择。本教程的目的是帮助几乎没有 Python
机器学习背景的新手成长为知识渊博的实践者,而且这个过程中仅需要使用免费的材料和资源即可。

第一步

基本 Python 技能

如果我们打算利用 Python 来执行机器学习,那么对 Python 有一些基本的了解就是至关重要的。

首先,你需要安装 Python。因为我们后面会用到科学计算和机器学习软件包,所以我建议你安装 Anaconda。其也包含了 iPython Notebook,这是一个用在我们许多教程中的交互式环境。我推荐安装 Python 2.7。

在这里插入图片描述

如果你不懂编程,我建议你从下面的免费在线书籍开始学习,然后再进入后续的材料:

Learn Python the Hard Way,作者 Zed A.

点击:Learn Python the Hard Way

谷歌开发者 Python 课程(推荐)

点击:http://suo.im/toMzq

Python 科学计算入门

点击:http://suo.im/2cXycM

在 Y 分钟内学会 X(X=Python)

点击:Learn python in Y Minutes

Python 文档

点击:Welcome to Python.org

第二步

机器学习基础技巧

机器学习算法的深度了解超过了本文探讨的范围,它通常需要你将非常大量的时间投入到更加学术的课程中去,或者至少是你自己要进行高强度的自学训练。

好消息是,对实践来说,你并不需要获得机器学习博士般的理论理解——就想要成为一个高效的程序员并不必要进行计算机科学理论的学习。

吴恩达的机器学习课程

点击:Machine Learning - Stanford University | Coursera

吴恩达课程的非官方笔记

点击:Machine Learning - complete course notes

Tom Mitchell 的机器学习课程

点击:Machine Learning

目前你不需要所有的笔记和视频。一个有效地方法是当你觉得合适时,直接去看下面特定的练习题,参考上述备注和视频恰当的部分,

第三步

科学计算 Python 软件包概述

好了,我们已经掌握了 Python 编程并对机器学习有了一定的了解。而在 Python 之外,还有一些常用于执行实际机器学习的开源软件库。广义上讲,有很多所谓的科学 Python 库(scientific Python libraries)可用于执行基本的机器学习任务(这方面的判断肯定有些主观性):

numpy——主要对其 N 维数组对象有用 NumPy - NumPy

pandas——Python 数据分析库,包括数据框架(dataframes)等结构 Python Data Analysis
Library

matplotlib——一个 2D 绘图库,可产生出版物质量的图表 Python plotting - Matplotlib 2.0.0
documentation

scikit-learn——用于数据分析和数据挖掘人物的机器学习算法 scikit-learn: machine learning in
Python

Scipy Lecture Notes,来自 Gaël Varoquaux、Emmanuelle Gouillart 和 Olav
Vahtras:Scipy Lecture Notes

这个 pandas 教程也很不错:10 Minutes to Pandas:10 Minutes to pandas

在本教程的后面你还会看到一些其它的软件包,比如基于 matplotlib 的数据可视化库 Seaborn。前面提到的软件包只是 Python 机器学习中常用的一些核心库的一部分,但是理解它们应该能让你在后面遇到其它软件包时不至于感到困惑。

下面就开始动手吧!

第四步

使用 Python 学习机器学习

首先检查一下准备情况

  • Python:就绪
  • 机器学习基本材料:就绪
  • Numpy:就绪
  • Pandas:就绪
  • Matplotlib:就绪

现在是时候使用 Python 机器学习标准库 scikit-learn 来实现机器学习算法了。

在这里插入图片描述

scikit-learn 流程图

下面许多的教程和训练都是使用 iPython (Jupyter) Notebook 完成的,iPython Notebook 是执行 Python 语句的交互式环境。iPython Notebook 可以很方便地在网上找到或下载到你的本地计算机。

来自斯坦福的 iPython Notebook 概览:IPython Tutorial

下面是一篇是对 scikit-learn 简介的文章,scikit-learn 是 Python 最常用的通用机器学习库,其覆盖了 K 近邻算法:

Jake VanderPlas 写的 scikit-learn

简介:Jupyter Notebook Viewer

Randal Olson 的机器学习案例笔记

点击:Jupyter Notebook Viewer

Kevin Markham 的模型评估

点击: justmarkham/scikit-learn-videos

第五步

Python 上实现机器学习的基本算法

在有了 scikit-learn 的基本知识后,我们可以进一步探索那些更加通用和实用的算法。我们从非常出名的 K 均值聚类(k-means clustering)算法开始,它是一种非常简单和高效的方法,能很好地解决非监督学习问题:

Jake VanderPlas 写的 scikit-learn 简介

点击:Jupyter Notebook Viewer

下面的会更加深入、扩展的一篇简介,包括了从著名的数据库开始完成一个项目:

Randal Olson 的机器学习案例笔记

点击:Jupyter Notebook Viewer

下一篇关注于在 scikit-learn 上评估不同模型的策略,包括训练集/测试集的分割方法:

Kevin Markham 的模型评估

点击: justmarkham/scikit-learn-videos

第六步

Python 上实现进阶机器学习算法

我们已经熟悉了 scikit-learn,现在我们可以了解一下更高级的算法了。首先就是支持向量机,它是一种依赖于将数据转换映射到高维空间的非线性分类器。

  • 支持向量机:jakevdp/sklearn_pycon2015
    随后,我们可以通过 Kaggle Titanic 竞赛检查学习作为集成分类器的随机森林:

  • Kaggle Titanic 竞赛(使用随机森林):Jupyter Notebook Viewer
    降维算法经常用于减少在问题中所使用的变量。主成份分析法就是非监督降维算法的一个特殊形式:

  • 降维算法:jakevdp/sklearn_pycon2015
    我们会进一步学习新的必要工具。

第七步

Python 深度学习

在这里插入图片描述

神经网络包含很多层

深度学习无处不在,如果你对神经网络还不熟悉,KDnuggets 有很多文章详细介绍了最近深度学习大量的创新、成就和赞许。

最后一步并不打算把所有类型的深度学习评论一遍,而是在 2 个先进的当代 Python 深度学习库中探究几个简单的网络实现。对于有兴趣深挖深度学习的读者,我建议从下面这些免费的在线书籍开始:

  • 神经网络与深度学习,作者 Michael Nielsen:Neural networks and deep learning

1.Theano

链接:Welcome - Theano 0.8.2 documentation

Theano 是我们讲到的第一个 Python 深度学习库。看看 Theano 作者怎么说:

Theano 是一个 Python 库,它可以使你有效地定义、优化和评估包含多维数组的数学表达式。

下面关于运用 Theano 学习深度学习的入门教程有点长,但是足够好,描述生动,评价很高:

  • Theano 深度学习教程,作者 Colin Raffel:Jupyter Notebook Viewer

2.Caffe

链接:Caffe | Deep Learning Framework

另一个我们将测试驱动的库是 Caffe。再一次,让我们从作者开始:

Caffe 是一个深度学习框架,由表达、速度和模块性建构,Bwekeley 视觉与学习中心和社区工作者共同开发了 Caf fe。

这个教程是本篇文章中最好的一个。我们已经学习了上面几个有趣的样例,但没有一个可与下面这个样例相竞争,其可通过 Caffe 实现谷歌的 DeepDream。这个相当精彩!掌握教程之后,可以尝试使你的处理器自如运行,就当作是娱乐。

  • 通过 Caffe 实现谷歌 DeepDream:google/deepdream

我并没有保证说这会很快或容易,但是如果你投入了时间并完成了上面的 7 个步骤,你将在理解大量机器学习算法以及通过流行的库(包括一些在目前深度学习研究领域最前沿的库)在 Python 中实现算法方面变得很擅长。

关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。在这里插入图片描述

二、Python必备开发工具

在这里插入图片描述

三、精品Python学习书籍

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
在这里插入图片描述

四、Python视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
在这里插入图片描述
在这里插入图片描述

五、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
在这里插入图片描述

六、Python练习题

检查学习结果。
在这里插入图片描述

七、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述
在这里插入图片描述

这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/340622
推荐阅读
相关标签
  

闽ICP备14008679号