人工智能/模式识别/机器学习精华专题

很深的学习(sigmoid neuron)

2018-07-27  本文已影响1人  大汪小喵

理论知识英文见 :http://neuralnetworksanddeeplearning.com/chap1.html

第三节 sigmoid neurons

上一节我们聊到了P模,我们学习到了如何运用P模进行人生伴侣的选择。我们学习到了权重(weight)和门槛(threshold),总之,请凭空设想一个超级大的安检机器,然后接着设想我们把对象放到了机器的运输带上面,再接着设想安检人员就是我们自己、我们的朋友以及我们的长辈,这台安检机器负责接收安检人员的所有指令(权重和门槛),OK,剩下的就是,请耐心等待最终结果。

但是,如果安检进行到一半,某一个安检人员的权重和门槛变了呢?例如,我们会经常听到“其实身高也没有那么重要”;或者“我对长相的要求降低了”等等。

让我们来详细分析一下这个事情,让我们把找对象这个问题抽象到P模的一个识别问题,详情如下(注意bias就是变形了的threshold):

For example, the inputs to the network might be the raw pixel data from a scanned, handwritten image of a digit. And we'd like the network to learn weights and biases so that the output from the network correctly classifies the digit.

我们再来看看如果让P模完成这个任务会产生怎样的结果:

In fact, a small change in the weights or bias of any single perceptron in the network can sometimes cause the output of that perceptron to completely flip, say from 0 to 1. That flip may then cause the behaviour of the rest of the network to completely change in some very complicated way.

这就好比我们的条件降低了多少,我们就要求对方回头多少,这个这个,在P模这里确实无法实现。

P模的任务处理结果是颠覆性的,“是”变为“不是”,“不是”变为“是”。更为可怕的是,整个系统也变得异常复杂而没有理智了。

困难写尽,只是为了突出它----“sigmoid neuron”。

让我们暂且称“sigmoid neuron”其为“sn”模,s模最厉害的地方就是它能够平衡weights、bias和最终输出结果的变化。原文如下:

We can overcome this problem by introducing a new type of artificial neuron called a sigmoid neuron. Sigmoid neurons are similar to perceptrons, but modified so that small changes in their weights and bias cause only a small change in their output. That's the crucial fact which will allow a network of sigmoid neurons to learn.

如果用数学来解释,我们可以发现一个线性关系如下:

Δoutput is a linear function of the changes Δwj and  in the weights and bias.

S模公示

S模还有一个优势,那就是它能够克服p模是就是是不是就是不是的缺点,s模的输入值和输出值都是介于0到1之间的一个数,即S模给出的最终意见仅仅是一个导向意见。

Just like a perceptron, the sigmoid neuron has inputs, x1,x2,…x1,x2,…. But instead of being just 0 or 1, these inputs can also take on any values between 0and 1. So, for instance, 0.638…0.638… is a valid input for a sigmoid neuron. Also just like a perceptron, the sigmoid neuron has weights for each input, w1,w2,…w1,w2,…, and an overall bias, b. But the output is not 0 or 1. 

作者提出,对于“导向”我们也可以建立一套规则来使得“导向”服务于我们的工作,举例如下:

But in practice we can set up a convention to deal with this, for example, by deciding to interpret any output of at least 0.5 as indicating a "9", and any output less than 0.5 as indicating "not a 9". 

上一篇下一篇

猜你喜欢

热点阅读