机器学习框架学习笔记-初识

在学习scikit-learn以前容我作一点介绍python

scikit-learn(http://scikit-learn. org/stable/documentation(在这个网页上能够看到每一个算法的详细文档 )) 算法

是一个开源的项目 ,里面包含了目前最早进的机器学习算法 数据库

若是你想使用或者是学习这个框架的话
编程

Anaconda

请你下载Anaconda(www.anaconda.com/数组


Anaconda 是用于大规模数据处理、预测分析和科学计算的 Python 发行版。
浏览器

Anaconda 已经预先安装 好 NumPy、SciPy、matplotlib、pandas、IPython、Jupyter Notebook 和 scikit-learn。
bash

因此你能够直接下载使用。数据结构

打开以后咱们能够看到界面上面有不少的集成的工具框架


Jupyter Notebook

Jupyter Notebook 是能够在浏览器中运行代码的交互环境。
机器学习

简单的说就是一个编译器



打开以后的界面 (这个是你本地文件)

若是你想改变编辑器读取你的本地文件位置的话能够用下面的办法 

blog.csdn.net/slz0813/art…(更改jupyter-notebook默认workspace目录 )

下面就开始让咱们建立第一个程序吧!



建立第一个程序 





NumPy

NumPy 是 Python 科学计算的基础包之一。它的功能包括多维数组、高级数学函数(好比 线性代数运算和傅里叶变换),以及伪随机数生成器。




SciPy 

SciPy 是 Python 中用于科学计算的函数集合。它具备线性代数高级程序、数学函数优化、 信号处理、特殊数学函数和统计分布等多项功能。



matplotlib

matplotlib 是 Python 主要的科学绘图库,其功能为生成可发布的可视化内容,如折 线图、直方图、散点图等。将数据及各类分析可视化,可让你产生深入的理解。



pandas

pandas 是用于处理和分析数据的 Python 库。它基于一种叫做 DataFrame 的数据结构,这 种数据结构模仿了R 语言中的DataFrame。简单来讲,一个pandas DataFrame 是一张表 格,相似于Excel 表格。pandas 中包含大量用于修改表格和操做表格的方法,尤为是可 以像SQL 同样对表格进行查询和链接。


补充内容:

看到上面的内容以为仍是看不懂这个是在说什么的话,请看看补充内容。

NumPy、SciPy、matplotlib、pandas、IPython、Jupyter Notebook 和 scikit-learn做为python重要的库,下面对各个各个库进行详细的解释,这样方便理解记忆。


NumPy (Numerical Python的简称)是Python科学计算的基础包

它提供了如下功能(不限于此):
  1. 快速高效的多维数组对象ndarray。 
  2. 用于对数组执行元素级计算以及直接对数组执行数学运算的函数。 
  3. 用于读写硬盘上基于数组的数据集的工具。 
  4. 线性代数运算、傅里叶变换,以及随机数生成。 
  5. -成熟的C API, 用于Python插件和原生C、C++、Fortran代码访问NumPy的 数据结构和计算工具。 

除了为Python提供快速的数组处理能力,NumPy在数据分析方面还有另一个主要做用,即做为在算法和库之间传递数据的容器。对于数值型数据,NumPy数组在存储和处理数据时要比内置的Python数据结构高效得多。此外,由低级语言(好比C 和Fortran)编写的库能够直接操做NumPy数组中的数据,无需进行任何数据复制工做。所以,许多Python的数值计算工具要么使用NumPy数组做为主要的数据结构,要么能够与NumPy进行无缝交互操做。 

参考书籍:利用Python进行数据分析复制代码


pandas 是用于处理和分析数据的 Python 库

它提供了如下功能(不限于此):

  1. 有标签轴的数据结构,支持自动或清晰的数据对齐。这能够防止因为数据不对齐,或处理来源不一样的索引不一样的数据,所形成的错误。
  2.  集成时间序列功能。 
  3. 相同的数据结构用于处理时间序列数据和非时间序列数据。 
  4. 保存元数据的算术运算和压缩。 灵活处理缺失数据。 
  5. 合并和其它流行数据库(例如基于SQL的数据库)的关系操做。 

pandas兼具NumPy高性能的数组计算功能以及电子表格和关系型数据库(如 SQL)灵活的数据处理功能。它提供了复杂精细的索引功能,能更加便捷地完成重 塑、切片和切块、聚合以及选取数据子集等操做。

参考数据:利用Python进行数据分析复制代码


matplotlib是 Python 主要的科学绘图库

matplotlib是最流行的用于绘制图表和其它二维数据可视化的Python库。它最初由 John D.Hunter(JDH)建立,目前由一个庞大的开发团队维护。它很是适合建立出 版物上用的图表。


SciPy是一组专门解决科学计算中各类标准问题域的包的集合

它提供了如下功能(不限于此):

  1. scipy.integrate:数值积分例程和微分方程求解器。  
  2. scipy.linalg:扩展了由numpy.linalg提供的线性代数例程和矩阵分解功能。 
  3. scipy.optimize:函数优化器(最小化器)以及根查找算法。 
  4. scipy.signal:信号处理工具。 scipy.sparse:稀疏矩阵和稀疏线性系统求解器。 scipy.special:SPECFUN(这是一个实现了许多经常使用数学函数(如伽玛函数) 的Fortran库)的包装器。 
  5. scipy.stats:标准连续和离散几率分布(如密度函数、采样器、连续分布函数 等)、各类统计检验方法,以及更好的描述统计法。 


scikit-learn 

Scikit-learn(之前称为scikits.learn)是一个用于Python编程语言的免费软件机器学习库。 它具备各类分类,回归和聚类算法,包括支持向量机,随机森林,梯度加强,k -means和DBSCAN,旨在与Python数值和科学库NumPy和SciPy互操做。

它的子模块包括:

  1. 分类:SVM、近邻、随机森林、逻辑回归等等。 
  2. 回归:Lasso、岭回归等等。
  3. 聚类:k-均值、谱聚类等等。 
  4. 降维:PCA、特征选择、矩阵分解等等。 
  5. 选型:网格搜索、交叉验证、度量。 预处理:特征提取、标准化。
相关文章
相关标签/搜索