用python进行机器学习有哪些书籍可以推荐

用python进行机器学习有哪些书籍可以推荐

Python在科学计算领域,有两个重要的扩展模块:Numpy和Scipy。其中Numpy是一个用python实现的科学计算包。包括:

一个强大的N维数组对象Array;

比较成熟的(广播)函数库;

用于整合C/C++和Fortran代码的工具包;

实用的线性代数、傅里叶变换和随机数生成函数。

SciPy是一个开源的Python算法库和数学工具包,SciPy包含的模块有最优化、线性代数、积分、插值、特殊函数、快速傅里叶变换、信号处理和图像处理、常微分方程求解和其他科学与工程中常用的计算。其功能与软件MATLAB、Scilab和GNU Octave类似。

Numpy和Scipy常常结合着使用,Python大多数机器学习库都依赖于这两个模块,绘图和可视化依赖于matplotlib模块,matplotlib的风格与matlab类似。Python机器学习库非常多,而且大多数开源,主要有:

1. scikit-learn

scikit-learn 是一个基于SciPy和Numpy的开源机器学习模块,包括分类、回归、聚类系列算法,主要算法有SVM、逻辑回归、朴素贝叶斯、Kmeans、DBSCAN等,目前由INRI 资助,偶尔Google也资助一点。

常用Python机器学习库有哪些

Python作为一门理想的集成语言,将各种技术绑定在一起,除了为用户提供更方便的功能之外,还是一个理想的粘合平台,在开发人员与外部库的低层次集成人员之间搭建连接,以便用C、C++实现更高效的算法。

使用Python编程可以快速迁移代码并进行改动,无须花费过多的精力在修改代码与代码规范上。开发者在Python中封装了很多优秀的依赖库,可以直接拿来使用,常见的机器学习库如下:

1、Scikit-Learn

Scikit-Learn基于Numpy和Scipy,是专门为机器学习建造的一个Python模块,提供了大量用于数据挖掘和分析的工具,包括数据预处理、交叉验证、算法与可视化算法等一系列接口。

Scikit-Learn基本功能可分为六个部分:分类、回归、聚类、数据降维、模型选择、数据预处理。其中集成了大量分类、回归、聚类功能,包括支持向量机、逻辑回归、随机森林、朴素贝叶斯等。

2、Orange3

Orange3是一个基于组件的数据挖掘和机器学习软件套装,支持Python进行脚本开发。它包含一系列的数据可视化、检索、预处理和建模技术,具有一个良好的用户界面,同时也可以作为Python的一个模块使用。

用户可通过数据可视化进行数据分析,包含统计分布图、柱状图、散点图,以及更深层次的决策树、分层聚簇、热点图、MDS等,并可使用它自带的各类附加功能组件进行NLP、文本挖掘、构建网络分析等。

3、XGBoost

XGBoost是专注于梯度提升算法的机器学习函数库,因其优良的学习效果及高效的训练速度而获得广泛的关注。XGBoost支持并行处理,比起同样实现了梯度提升算法的Scikit-Learn库,其性能提升10倍以上。XGBoost可以处理回归、分类和排序等多种任务。

4、NuPIC

NuPIC是专注于时间序列的一个机器学习平台,其核心算法为HTM算法,相比于深度学习,其更为接近人类大脑的运行结构。HTM算法的理论依据主要是人脑中处理高级认知功能的新皮质部分的运行原理。NuPIC可用于预测以及异常检测,使用面非常广,仅要求输入时间序列即可。

5、Milk

Milk是Python中的一个机器学习工具包。Milk注重提升运行速度与降低内存占用,因此大部分对性能敏感的代码都是使用C++编写的,为了便利性在此基础上提供Python接口。重点提供监督分类方法,如SVMs、KNN、随机森林和决策树等。

1 Scrapy

2 Beautiful Soup

3 Python-Goose

4 NLTK — Natural Language Toolkit

5TextBlob: Simplified Text Processing

6MBSP for Python

7NumPy