scikit-learn——快速入门

scikit-learn——快速入门

sklearn 快速入门html

环境:python

  • ubuntu 12.04, 64 bits
  • python 2.7
  • sklearn 0.14

好几个月没有发博客了,平时的笔记都随意记在印象笔记中。如今闲着有空,把 sklearn 的基本模型学一学。实际上 scikit-learn 的学习材料很是很是齐全,建议英文好的同窗直接看官方文档git

准备

sklearn 快速入门的官方文档在这里。这个文档主要描述机器学习的概念,以及如何加载数据训练模型保存模型github

这里提供另一个更加详细的材料,这份材料基于ipython notebook,能够在浏览器里运行代码,功能强大,演示效果很是好,github下载地址。若是电脑上没有安装git,请参考这篇博客进行设置。ubuntu

  • 将材料下载到本地:
    git clone git@github.com:jakevdp/sklearn_pycon2013.git
  • 安装 ipython-notebook
    sudo easy_install "ipython>=0.13" jinja2 "tornado>=3.1.0" pyzmq
    sudo apt-get install ipython-notebook
  • 打开材料
    cd PATH/TO/sklearn_pycon2013/notebook
    ipython notebook --pylab inline

    --pylab inline 参数可使 notebook 在浏览器里面直接画图效果数组

数据

sklearn 中的数据通常存放为二维数组,形状为 [n_samples, n_feartures]。好比著名的 iris 数据集(鸢尾花)包含了三种类别的花(target),共 150 组数据(samples),每组数据由 4 个特征组成,具体来讲就是:萼片的长度、萼片的宽度、花瓣的长度、花瓣的宽度。那么,iris 数据集的 data 就由 150*4 的二维数组组成。浏览器

sklearn 提供了不少数据集,一类比较小,直接打包在库中,能够经过 datasets.load_ + Tab 来查看,另外一类比较大,须要下载,能够经过 datasets.fetch_ + Tab 查看,下载的目录能够经过sklearn.datasets.get_data_home()查看。机器学习

更详细的信息请参考 notebook 中的 02_sklearn_data.ipynb 文件。tornado

接口

建立一个机器学习的模型很简单:学习

from sklearn.linear_model import LinearRegression
model = LinearRegression()
print model

全部模型提供的接口有:

  • model.fit(): 实际上就是训练,对于监督模型来讲是 fit(X, y),对于非监督模型是 fit(X)。

监督模型提供:

  • model.predict(X_new): 判别新样本
  • model.predict_proba(X_new): 某些模型能够输出几率,好比 LR,上一个输出的就是几率最大的 target
  • model.score(): 得分越高,fit 越好

非监督模型提供:

  • model.transform(): 从数据中学到新的“基空间”。
  • model.fit_transform(): 从数据中学到新的基并将这个数据按照这组“基”进行转换。

下面这个图展现了这些接口在机器学习模型中的位置:

 

更多信息请查看 ipython notebook 文档中的内容。

相关文章
相关标签/搜索