首页 » python机器学习 » python机器学习全文在线阅读

《python机器学习》13.1.2 初探Theano

关灯直达底部

本节中,我们将迈出学习Theano的第一步。根据系统的设置,通常可以使用pip安装Theano,请在命令行窗口中执行如下命令:

对于安装过程中可能出现的问题,建议读者通过如下链接:http://deeplearning.net/software/theano/install.html,了解关于系统和平台方面的具体建议。本章中的所有代码均可在CPU中运行;虽然GPU是可选的,但如果读者想体会Theano的真实性能,建议选配。如果读者拥有支持CUDA或者OpenCL的显卡,请参照相关最新教程http://deeplearning.net/software/theano/tutorial/using_gpu.html#using-gpu进行合理的配置。

张量是Theano的核心元素,Theano使用张量对符号数学表达式进行评估。张量可以看作是标量、向量、矩阵等的泛化。具体而言,标量可以定义为0阶张量,而向量和矩阵则可以分别定义为1阶张量和2阶张量,而在第三维上对矩阵的叠加则为3阶张量。作为热身,我们先通过Theano的tensor模块中的标量来计算一维数据样本点x的净输入z,其中权重为w1,偏置值为w0:

代码如下:

这种方法是不是简单直接?如果我们在Theano写代码,只须遵循三个步骤:定义符号(变量对象),编译代码,执行代码。初始化阶段,我们定义了三个符号:x1、w1和w0,用来计算z1。然后对函数net_input进行编译,计算出净输入z1。

不过,当我们开发基于Theano的代码时,有一个需要特别注意的细节:变量的类型(dtype)。无论如何,我们在使用整型或者浮点型数据时,需要考虑选择使用64位还是32位的表示方式,这将对代码性能产生极大的影响。我们将在下一节中对此进行更深入的讨论。