查看原文
其他

Python:常用机器学习框架

2016-07-14 guodongwe1991 机器学习算法与Python学习


科学计算 Python packages 一览 

加入您有了 Python 编程经验,并对机器学习有所了解。Python 有很多为机器学习提供便利的开源库。通常它们被称为Python科学库(scientific Python libraries),用以执行基本的数据科学任务(这里有一点程度主观色彩): 


▪ numpy - 主要用于N维数组 

▪ pandas - Python数据分析库,包含dataframe等结构 

▪ matplotlib - 2D绘图库,产出质量足以进行印刷的图 

▪ scikit-learn - 数据分析、数据挖掘任务使用的机器学习算法 


在你搞定Python基本编程,numpy ,pandas, matplotlib 后就可以利用scikit-learn实现机器学习算法了


下面是scikit-learn的入门教程。在进行下一个步骤之前,推荐做完下列全部教程。 

对于scikit-learn的整体介绍,它是Python最常用的通用机器学习库,包含knn最近邻算法: 
▪ An Introduction to scikit-learn 作者 Jake VanderPlas 

更深入更宽泛的介绍,包含一个新手项目,从头到尾使用一个著名的数据集: 
▪ Example Machine Learning Notebook 作者Randal Olson 

专注于scikit-learn中评估不同模型的策略,涉及训练集/测试集拆分: 
▪ Model Evaluation 作者 Kevin Markham 


Python机器学习主题 

在scikit-learn打下基础以后,我们可以探索更多有用的常见算法。让我们从最知名的机器学习算法之一,k-means聚类开始。对于无监督学习问题,k-means通常简单有效: 
▪ k-means Clustering 作者Jake VanderPlas 

接下来是分类,让我们看看史上最流行的分类方法之一,决策树: 
▪ Decision Trees via The Grimm Scientist 

分类之后,是连续数字变量的预测: 
▪ Linear Regression 作者 Jake VanderPlas 

通过逻辑斯蒂回归,我们可以用回归解决分类问题: 
▪ Logistic Regression 作者Kevin Markham 


Python高级机器学习 

接触过scikit-learn,现在让我们把注意力转向更高级的内容。首先是支持向量机,一个无需线性的分类器,它依赖复杂的数据转换,把数据投向高维空间。 
▪ Support Vector Machines 作者 Jake VanderPlas 

接下来是随机森林,一种集成分类器。下面的教程通过 Kaggle Titanic Competition讲解。 
▪ Kaggle Titanic Competition (with Random Forests) 作者 Donne Martin 

降维是一种减少问题涉及的变量数目的方法。PCA主成分分析是一种无监督学习降维的特殊形式: 
▪ Dimensionality Reduction作者 Jake VanderPlas 

通过使用Python和它的机器学习库,我们涵盖了一些最常用最知名的机器学习算法(knn最近邻,k-means聚类,支持向量机),了解了一种强有力的集成方法(随机森林),涉及了一些其他机器学习支持方案(降维,模型验证技巧)。在一些基础机器学习的技巧的帮助下,我们开始有了一个渐渐丰富的工具箱。 

在结束以前,让我们给工具箱增加一个需求很大的工具: Python深度学习 



到处都在深度学习!深度学习基于过去几十年的神经网络研究,但最近几年的发展大大增加了深度神经网络的能力和对于它的兴趣。如果你不熟悉深度学习,KDnuggets 有许多文章 ,详细介绍最近的进展、成果,以及对这项技术的赞誉。 


Theano 
Theano是我们关注的第一个Python深度学习库。根据作者所说: 

作为一个Python库,Theano让你可以有效定义、优化、评估包含多维数组的数学表达式。 


下面的Theano深度学习教程很长,但非常不错,描述详细,有大量评论: 
▪ Theano Deep Learning Tutorial 作者 Colin Raffel 

Caffe 
我们关注的另一个库是Caffe。根据它的作者所说: 

Caffe是一个深度学习框架。开发过程中时刻考虑着表达式、速度、模型。 它是由Berkeley Vision and Learning Center (BVLC) 和社区贡献者共同开发的。 

这个教程是本文的压轴。尽管上面列举了一些有趣的案例,没有那个比得上下面这个:用Caffe实现Google的 #DeepDream。希望你喜欢!理解这个教程以后,尽情玩乐,让你的处理器开始自己做梦吧。 
▪ Dreaming Deep with Caffe via Google's GitHub 


欢迎分享

转载请标明

(机器学习算法与Python学习)



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存