Sklearn库和TensorFlow框架

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/gdkyxy2013/article/details/81157254

        声明:代码的运行环境为Python3。Python3与Python2在一些细节上会有所不同,希望广大读者注意。本博客以代码为主,代码中会有详细的注释。相关文章将会发布在我的个人博客专栏《Python从入门到机器学习》,欢迎大家关注。下面开始我们的第六讲:Sklearn库和TensorFlow框架。

目录

一、Python机器学习基础之Python的基本语法(一)

二、Python机器学习基础之Python的基本语法(二)

三、Python机器学习基础之Numpy库的使用

四、Python机器学习基础之Pandas库的使用

五、Python机器学习基础之Matplotlib库的使用

六、Sklearn库和TensorFlow框架

七、Python两种方式加载文件内容

       本文主要对Sklearn库和TensorFlow框架进行介绍,Sklearn库中封装了大量的算法,如:分类、回归、聚类等等。它跟TensorFlow框架都是机器学习中至关重要的一环。

一、Sklearn库

        Sklearn是Python中的一个非常重要的机器学习库,在Sklearn库中不仅封装了大量的机器学习算法,它还内置了数据集,节省了获取和整理数据的时间。下面将简单介绍一下Sklearn库中常用的算法。

1、无监督学习算法

算法

说明

cluster

聚类

decomposition

因子分解

mixture

高斯混合模型

neural_network

无监督的神经网络

covariance

协方差估计

2、监督学习算法

算法

说明

tree

决策树

svm

支持向量机

neighbors

近邻算法

linear_model

广义线性模型

neural_network

神经网络

kernel_ridge

岭回归

naive_bayes

朴素贝叶斯

cross_decomposition

交叉分解

3、数据变换

算法

说明

feature_extraction

特征提取

feature_selection

特征选择

preprocessing

预处理

           注意:以上的每个模型中都包含着多个算法,使用某算法时,直接导入需要的包即可。例如:

from sklearn.linear_model import logistic

二、TensorFlow框架的基本使用

          TensorFlow是一个编程系统,使用图来表示计算任务。图中的节点被称之为op(operation的缩写)。一个op获得0个或多个tensor,执行计算并产生0个或多个tensor。每个 tensor是一个类型化的多维数组。在Python语言中,返回的tensor是NumPy中的ndarray对象。下面我们就对TensorFlow如何使用进行简单的介绍。

1、常量变量的定义

# 导入需要的包
import tensorflow as tf

#常量的定义
cl = tf.constant(9)

# 变量的定义
bl = tf.Variable(tf.zeros(2, 2))

# 变量要想使用,需要执行以下代码
init = tf.initialize_all_variables()

       如上例所示,调用TensorFlow中的constant()方法可以定义一个常量,调用Variable()方法可以定义一个变量。这里需要注意的是,变量定义完之后如果想要使用的话还要执行上例中的最后一条代码。

2、占位符的使用

       占位符常用于变量定义时,定义变量需要初始化,但是有些变量在定义的时候是不知道他们的值的,这个时候就可以使用占位符来代替,定义方法如下。

# 占位符
zwf = tf.placeholder(tf.int16, [None, 88])

        placeholder()方法可以定义一个占位符。上例中定义的占位符指定了zwf这个变量的类型和大小。

3、图的使用

       就像上面所说的那样,在TensorFlow中,要实现具体的运算,如最基本的加减乘除,我们不能直接定义几个变量进行运算,要使用图来表示计算任务。一个TensorFlow图描述了计算的过程。为了进行计算, 图必须在session里被启动,session运行整个计算过程。

a = tf.Variable(5)
b = tf.Variable(5)
c = a * b

init = tf.initialize_all_variables()
with tf.Session() as sess:
    sess.run(init)
    print(sess.run(c))

        输出结果:

25

       上例中的sess.run()是执行操作,session创建使用完之后要释放。如果使用占位符的话,需要使用run()方法中的feed_dict参数为其赋值。
        注意:要先执行初始化变量操作再执行相应的运算。

你们在此过程中遇到了什么问题,欢迎留言,让我看看你们都遇到了哪些问题。

猜你喜欢

转载自blog.csdn.net/gdkyxy2013/article/details/81157254