购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.5 感知器

感知器是一种简单的算法,其输入向量(通常称为输入特征,简称为特征)为 x x 1 , x 2 , …, x m ,共 m 个值),输出为1(“是”)或0(“否”)。数学上,我们据此定义一个函数:

其中 w 是权重向量, wx 是点积 b 是偏置。 wx + b 实际上定义了一个边界超平面,由 w b 的值改变位置。

注意,超平面是一个子空间,其维数比它周围空间的维数少1。示例如图1-3所示。

图1-3 超平面示例

该算法简洁且行之有效。例如,给定三个输入特征,如红色、绿色和蓝色的数值,感知器可以尝试确定该颜色是否为白色。

需要注意的是,感知器无法表示“也许”结论。假设我们已经掌握了如何确定感知器的 w b ,那么它只能回答“是”(1)或“否”(0)。这就是所谓的“训练”过程,将在以下各节中讨论。

TensorFlow 2.0代码的第一个例子

在tf.keras中创建模型的方式有3种:序列(Sequential)API、功能(Functional)API和模型(Model)子类。在本章中,我们将使用最简单的Sequential(),在第2章中再讨论另外两个。Sequential()模型是神经网络层的线性管道(栈)。以下代码定义了一个含有10个人工神经元的单层模型,期望输入变量(特征)个数为784。请留意,该网络是稠密的(dense),意味着每层中的每个神经元都连接到上一层的所有神经元,以及下一层的所有神经元:

通过参数kernel_initializer,每个神经元都能用特定的权重值初始化。有多种参数值可供选择,常见如下:

完整的参数列表可访问线上文档:https://www.tensorflow.org/api_docs/python/tf/keras/initializers。 5FpIvK/T1GxVJIEwLVO+qNLru7ibkrAXpOMWu2YsVzSB3TaFpOunngs7QaWAE5bq

点击中间区域
呼出菜单
上一章
目录
下一章
×