数据届Cosmo大赏第一名的包是谁?

数据届Cosmo大赏第一名的包是谁?

如果你要使用Python学习Machine Learning的话,Scikit Learn 无疑是最核心的工具了。它提供了非常多的监督学习和非监督学习的算法,而且它也是最简单最容易上手的机器学习工具包了。

Scikit Learn是基于软件工程的思想创建的,它的API的核心设计理念就是要易于上手且功能强大,方便工业界使用的同时,也适用于学界做研究。这种设计理念让Scikit Learn非常适合端到端的机器学习的项目,从学界的研究一直到产品的落地。

Scikit Learn是在很多Python常见的数据计算的工具包的基础上创建的,这就很容易将它们整合起来,在使用Scikit Learn分析建模的过程中直接调用NumPy Arrays或者pandas Dataframe等数据结构。

Scikit Learn 使用了如下这些工具包:

– NumPy: 数字运算和矩阵运算

– SciPy: 科学和数据运算

– Matplotlib: 数据可视化

– IPython: 交互式Python

– Sympy: 符号数学

– Pandas: 数据处理和分析

Scikit Learn主要聚焦于机器学习和分析建模,它并不精通数据导入,数据分析和数据可视化。所以,上面提到的各种工具包就派上用场了,尤其是Numpy。这些工具包都是相辅相成的。

Scikit Learn内置的算法有:

– Regression: 拟合线性与非线性模型

– Clustering: 无监督分类

– Decision Trees: 决策树的推导和修剪,解决分类问题与回归问题

– Neural Networks: 针对分类与回归问题的端对端的训练

– SVMs: 判定决策边界

– Naïve Bayes: 概率模型

除此之外,它还有由其他工具包提供的更方便高级的功能:

– 集成方法:Boosting, Bagging, Random Forest, Model voting and averaging

– 特征操作:Dimensionality reduction, feature selection, feature analysis

– 异常值检测:For detecting outliers and rejecting noise

– 模型挑选和检测:Cross-validation, Hyperparameter tuning, and metrics

为了让大家明白Scikit Learn有多容易上手,这里就为大家演示一个决策树分类器的调用流程。

用决策树解决分类和回归问题非常简单,只需要调用内置的tree模型就好了。首先将Scikit Learn工具包中自带的数据集引入进来,然后调用决策树分类器。每一步都只需要一行而已。然后,把数据集里的数值X和目标值Y都fit到分类器中,就可以得到你想要的决策树了。

Scikit Learn还可以使用graphviz工具包把得到的决策树绘制出来,这样一来,也方便了我们数据分析部门和其他部门进行交流,解释我们的模型。它还提供了很多参数,让使用者根据实际需求调节决策树的表现形式。

除此之外,Scikit Learn的官方文档也是不可多得的学习工具!每一个算法的参数都有清晰合理的命名和解释。而且,每一个模型都有详细的解释、样例及其源代码、模型的优缺点和适合使用的场景。

原文作者:George Seif

翻译作者:唐唐

美工编辑:Miya

校对审稿:卡里

原文链接:https://www.kdnuggets.com/2019/02/introduction-scikit-learn-gold-standard-python-machine-learning.html