Machine Learning之Python篇

概述

教程

https://ljalphabeta.gitbooks.io/python-/content/

《Python机器学习》中文版

https://github.com/lawlite19/MachineLearning_Python

东南大学某研究生的github,包含大量ML算法示例。

https://github.com/lawlite19/DeepLearning_Python

上个哥们的DL示例

http://www.jianshu.com/p/eb9e3be977ed

Python数据分析之武林秘籍。这里包括了大量ML或DL的python工具包。

https://chrisalbon.com/

Chris Albon的个人主页。包含大量ML/DL相关的note。

Chris Albon, UC Davis博士。在肯尼亚工作多年,援非的IT人。著有《Machine Learning with Python Cookbook: Practical Solutions from Preprocessing to Deep Learning》。

https://store.chrisalbon.com/

Chris Albon写的ML卡片书。

https://github.com/CharlesPikachu/Games

一个python制作游戏的示例库,包括使用AI玩游戏(DQN等)

https://github.com/CharlesPikachu/AIGames

上个作者的另一个python+AI+游戏的代码库

https://github.com/HuberTRoy/leetCode

Python实现各种基础算法

Anaconda

Anaconda是一个科学计算方面的python发行版,下面提到的所有工具都可以通过Anaconda一站式安装。

官网:

https://www.anaconda.com/download/

基本命令:

conda update --all

conda update conda

conda update anaconda

Anaconda同时也支持多个Python版本的并存和切换。它的底层用到了virtualenv。这个功能在Ubuntu下意义不太大,因为后者的apt工具已经维护好了2.x和3.x两个分支,除非你想同时支持两个不同的3.x分支。但在Windows下,由于包管理器的缺位,这个问题是很难解决的。

创建一个virtualenv:

conda create -n python2 python=2.7

这条命令会在Anaconda/envs下创建一个python2文件夹。

将命令行环境切换到该版本:

activate python2

参考:

http://www.cnblogs.com/zhusleep/p/5616099.html

Anaconda安装更新库

https://segmentfault.com/a/1190000004020387

Python多版本切换工具-Pyenv\virtualenv及Anaconda科学计算环境的配置

http://www.jianshu.com/p/d2e15200ee9b

Anaconda多环境多版本python配置指导

virtualenv

安装:

pip3 install virtualenv

创建env:

virtualenv --no-site-packages venv

使用:

source venv/bin/activate

NumPy

NumPy是python语言所有数学计算库的基础。它主要提供了矩阵运算的功能。

官网:

http://www.numpy.org/

教程:

https://docs.scipy.org/doc/numpy-dev/user/quickstart.html

API参考:

https://docs.scipy.org/doc/numpy/reference/

quickstart中文版:

https://mp.weixin.qq.com/s/q0jSrxRRQAB7FUUqgD5H6A

文件存取

原始二进制文件:tofile()和fromfile()

NumPy专用的格式文件(.npy或.npz,它和原始二进制文件的区别在于:前者包含维度和类型信息,而后者只有数据本身):save()和load()

文本文件:savetxt()和loadtxt()

参考:

http://www.cnblogs.com/dmir/p/5009075.html

python:numpy(文件存取)

数据类型转换

类型转换:c = b.astype(int)

把A类型看做B类型,比如将一个float64的数,看做8个单字节的数:a.dtype = 'int8'

参考:

http://www.cnblogs.com/hhh5460/p/5129032.html

numpy数据类型dtype转换

参考

https://mp.weixin.qq.com/s/FVI3zEp4it-fd99-3MU9vA

从数组到矩阵的迹,NumPy常见使用大总结

https://www.machinelearningplus.com/101-numpy-exercises-python/

101 NumPy Exercises for Data Analysis。这里包含了101个和numpy有关的问题,并附有答案。

https://mp.weixin.qq.com/s/DiFTV29gvMlosoy2HaPQjw

用Python做图像处理(3)

https://mp.weixin.qq.com/s/qMiNGHHZMnPeFqXFz9c6rQ

numpy ndarray之内功心法,理解高维操作!

SciPy

SciPy提供了一些更高阶的数学运算库,比如:积分、插值、信号处理、傅立叶变换、矩阵特征值、统计计算等。

SciPy提供的功能主要仍局限于数学运算,而并未提升到算法的层面。这也是它和scikit-learn或其他高级库的差别所在。

官网:

http://www.scipy.org/

API参考:

https://docs.scipy.org/doc/scipy/reference/

Gaussian filter

w = 2int(truncatesigma + 0.5) + 1

参考:

https://stackoverflow.com/questions/25216382/gaussian-filter-in-scipy

Gaussian filter in scipy

Scikit-learn

Scikit-learn提供了常见的机器学习算法的实现。

官网:

http://scikit-learn.org/stable/index.html

教程:

http://scikit-learn.org/stable/user_guide.html

API参考:

http://scikit-learn.org/stable/tutorial/index.html

http://scikit-learn.org/stable/modules/classes.html

中文文档:

http://sklearn.apachecn.org

Matplotlib

Matplotlib是一个高阶的图形库,主要提供生成图表等数据可视化方面的功能。

官网:

http://matplotlib.org/

API参考:

http://matplotlib.org/1.5.3/api/index.html

参考:

https://mp.weixin.qq.com/s/mpj1QpWpnGm8117p3cEWZw

如何优雅而高效地使用Matplotlib实现数据可视化

https://mp.weixin.qq.com/s/LBrlXEhGYOx1aPFZzQcyTQ

5种快速易用的Python Matplotlib数据可视化方法

https://mp.weixin.qq.com/s/aBi1PTEumRs0frUpb_uYrA

用Python做图像处理(2)

https://mp.weixin.qq.com/s/3VgFKiUOFvtWmqg1BO9xGw

matplotlib–python的数据可视化

Pandas

Pandas是一个数据分析方面的工具库。它提供的Series(1-dimensional)和DataFrame(2-dimensional)数据结构,可以提供类似sql的数据操作和查询的功能。

官网:

http://pandas.pydata.org/

文档:

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

API参考:

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

参考:

http://www.cnblogs.com/chaosimple/p/4153083.html

十分钟搞定pandas

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

Pandas和SQL的比较

https://mp.weixin.qq.com/s/XIQ5EpQcYLxmRBuaTCZFzg

一行代码,Pandas秒变分布式,快速处理TB级数据

https://mp.weixin.qq.com/s/fXI5suCVna6fBxPnVyKevw

浅谈NumPy和Pandas库

https://mp.weixin.qq.com/s/1xHeXs9gM3LzEzCUz0jhXA

简单实用的pandas技巧:如何将内存占用降低90%

http://wiki.jikexueyuan.com/project/start-learning-python/311.html

python科学计算之Pandas使用

https://mp.weixin.qq.com/s/L95slIQ8so5IWpIpy7ZHEQ

23种Pandas核心操作,你需要过一遍吗?

https://mp.weixin.qq.com/s/CAddyz0qQt8SY56VOtcpJA

AI开发最大升级:Pandas与Scikit-Learn合并,新工作流程更简单强大!

mysql

http://www.runoob.com/python/python-mysql.html

python操作mysql数据库

chainer

chainer是一个日本公司Preferred Networks写的基于python的深度学习框架。

官网:

https://chainer.org/

代码:

https://github.com/chainer/chainer

Preferred Networks是日本目前最强的AI创业公司,估值已经超过20亿美元。在工业机器人领域具有很强的实力。

它推出的PaintsChainer是一个给黑白线稿上色的App。

官网:

https://github.com/pfnet/PaintsChainer

iPython

ipython是一个python的交互式 shell,比默认的python shell 好用得多,支持变量自动补全,自动缩进,支持 bash shell 命令,内置了许多很有用的功能和函数。

在较新的ipython版本中,添加了ipython notebook的功能,弥补了ipython shell下代码不易保存等缺点,并且在使用–pylab inline选项后,可以在代码执行后立即显示运行结果(包括图片,数据表格等),因此在数据分析中运用十分广泛。

sudo apt-get install ipython ipython-notebook

Jupyter

Jupyter是iPython的后继项目,它不仅支持python语言,还支持其他50多种交互式语言。成为目前最流行的交互式shell和数据文本交换格式。

官网:

https://jupyter.org/

安装:

pip install jupyter

运行:

jupyter notebook

参见:

https://mp.weixin.qq.com/s/UXlPhX3Vb2yqocpUH_3W5w

Jupyter项目的前世今生

https://mp.weixin.qq.com/s/aJRVh7BWOMq4KCoBMtLGGw

快速学习Jupyter Notebook

https://blog.csdn.net/u011493486/article/details/55001477

Jupyter中显示matplotlib的图片

https://www.cnblogs.com/nxld/p/6566380.html

Jupyter Notebook快速入门

TuShare

TuShare是一个免费、开源的python财经数据接口包。主要实现对股票等金融数据从数据采集、清洗加工 到 数据存储的过程,能够为金融分析人员提供快速、整洁、和多样的便于分析的数据,为他们在数据获取方面极大地减轻工作量,使他们更加专注于策略和模型的研究与实现上。

官网:

http://tushare.org/

skimage

skimage相当于python版本的OpenCV。

官网:

http://scikit-image.org/

参考:

https://buptldy.github.io/2016/03/31/2016-03-31-Skimage hog/

Compute the HOG descriptor by skimage

Numba

NumPy的一个高速版本,能完成前者大部分的功能。

官网:

http://numba.pydata.org/

参考:

https://mp.weixin.qq.com/s/5peMiGXNnviAjMP76tV3pw

Python高性能计算库——Numba

Face Recognition

这是一个人脸识别的软件包。

代码:

https://github.com/ageitgey/face_recognition

参考:

https://mp.weixin.qq.com/s/QcMsSsZY7TcNQ3G57p8eyQ

3行Python代码完成人脸识别

Luminoth

Luminoth是一个开源的计算机视觉工具包,目前支持目标探测和图像分类,但以后会有更多的扩展。该工具包在TensorFlow和Sonnet上用Python搭建而成。

代码:

https://github.com/tryolabs/luminoth

Tangent

Tangent是一个用于自动微分的源到源Python库。

官网:

https://github.com/google/tangent

参考:

https://mp.weixin.qq.com/s/CExdIdtUxZi4c2B39xdYJA

谷歌开源Tangent

PIL

PIL:Python Imaging Library,已经是Python平台事实上的图像处理标准库了。PIL功能非常强大,但API却非常简单易用。

官网:

http://pythonware.com/products/pil/

安装:

sudo apt install python-imaging

文档:

http://www.effbot.org/imagingbook/pil-index.htm

参考:

https://mp.weixin.qq.com/s/lJYzxehwo3K2APB2l_WeTA

用Python做图像处理(1)

VisPy

VisPy可以算的上是Matplotlib的威力加强版,它添加了对GPU、3D和大数据的支持。

官网:

http://vispy.org/

参考:

https://mp.weixin.qq.com/s/yduK_XKQ-qhiYTNl-YZMFg

利用Python实现卷积神经网络的可视化

Seaborn

Seaborn是另一个非常棒的Matplotlib的威力加强版,专注于统计绘图,并可无缝对接Pandas库。

官网:

https://seaborn.pydata.org

参考:

https://mp.weixin.qq.com/s/hPbTZHR2iDH4t1eQghNvUQ

数据可视化详解+代码演练

mlpy

mlpy是一个开源的ML库。只是它最近的一次更新,已经是2012年的事情了。

官网:

http://mlpy.sourceforge.net

Pyecharts

pyecharts是一个用于生成Echarts图表的类库。Echarts是百度开源的一个数据可视化JS库。

官网:

http://pyecharts.org/

参考:

https://mp.weixin.qq.com/s/3T594c4DzuRmPW5A4zu8Dg

Pyecharts:极其强大的Python数据可视化模块

ImageAI

ImageAI是一个CV方面的库,集成了大量的DL模型,其目标是使用数十行代码完成一个CV任务。

代码:

https://github.com/OlafenwaMoses/ImageAI

Machine Learning之Python篇(一)相关推荐

  1. Machine Learning之Python篇(二)

    文章目录 NumPy einsum pad Super Pandas Autograd Bokeh Chartify Plotly Yellowbrick mlpy PyFlux JAX ImageP ...

  2. Machine Learning with Python Cookbook 学习笔记 第9章

    Chapter 9. Dimensionality Reduction Using Feature Extraction 前言 本笔记是针对人工智能典型算法的课程中Machine Learning w ...

  3. sklearn自学指南(part1)--Machine Learning in Python

    学习笔记,仅供参考,有错必纠 自翻译+举一反三 scikit-learn(Machine Learning in Python) 预测数据分析的简单和有效的工具 每个人都可以访问,并可在各种上下文中重 ...

  4. fprom预测结果内容_预测模型之机器学习 Machine Learning结果解读篇

    原标题:预测模型之机器学习 Machine Learning结果解读篇 学友提问:对于机器学习出来的只有图形,我怎么解释呢?怎样才能在临床使用呢? 论文的实例:2013年发表在The American ...

  5. [导读]7 Steps to Mastering Machine Learning With Python

    Step 1: Basic Python Skills ▪  Python The Hard Way by Zed A. Shaw ▪  Google Developers Python Course ...

  6. Machine Learning with Python Cookbook 学习笔记 第8章

    Chapter 8. Handling Images 前言 本笔记是针对人工智能典型算法的课程中Machine Learning with Python Cookbook的学习笔记 学习的实战代码都放 ...

  7. Coursera | Applied Data Science with Python 专项课程 | Applied Machine Learning in Python

    本文为学习笔记,记录了由University of Michigan推出的Coursera专项课程--Applied Data Science with Python中Course Three: Ap ...

  8. Machine Learning with Python Cookbook 学习笔记 第6章

    Chapter 6. Handling Text 本笔记是针对人工智能典型算法的课程中Machine Learning with Python Cookbook的学习笔记 学习的实战代码都放在代码压缩 ...

  9. 基于Python的完全监督机器学习教程 Complete Supervised Machine Learning With Python

    这门由行业和学术领袖开设的课程是为那些希望在数据科学领域建立有价值的职业生涯的人开设的 你会学到: 监督学习和非监督学习的原理及其区别. 线性和逻辑回归,决策树,回归树,随机森林,判别分析,支持向量机 ...

最新文章

  1. NavigationController 已经洗干净了, 就等你来
  2. Odoo (OpenERP/TinyERP)-10.0 (Debian 8)
  3. ​Redis的各种“坑”,你知道多少?
  4. 深入Atlas系列:探究序列化与反序列化能力(下) - JavaScriptSerializer
  5. 01-maven build项目
  6. 一个简单的DDraw应用程序2
  7. 如何让机器像人一样多角度思考?
  8. python求解二次规划问题
  9. 485通讯温湿度传感器工作原理
  10. linux tuxedo查看服务进程数,Tuxedo 运行监控命令
  11. 麻雀虽小五脏俱全--一个小项目的总结
  12. 茶馆人物表(按字母顺序)
  13. java 开发模式详解_Java开发中的23种设计模式详解4
  14. WebRTC 源码分析
  15. php取FBOX数据,云平台制作(1)-OPC Client取数模块的制作
  16. recovery/removal time
  17. pads option选项卡下部分英文释义
  18. 微信开发手机在线调试
  19. heic是什么图片格式?怎么转成jpg
  20. 索泰显卡超频软件测试要多少时间,【索泰GTX1080评测】显卡超频性能测试-中关村在线...

热门文章

  1. DateTimePicker 日期时间选择器报错 Cannot read property ‘getHours‘ of undefined, 无法选中`[__ob_: observer__]`时做判断
  2. windows 10 家庭版 无法打开 gpedit.msc 解决方法
  3. acid四大特性_深入理解MySQL的ACID四大特性原理
  4. windows切换git账号
  5. 使用webpack或者gulp去除多余CSS
  6. 人工机器:Jetson Nano 安装Qt5
  7. 时序分析:HMM模型(状态空间)
  8. 如何给PDF文件交换页面?操作方法你知道吗?
  9. Algs4-1.4.42问题规模
  10. TreeView控件的展开与折叠