机器学习 神经网络(2)
来源:zidea     阅读:856
牛牛兔源码
发布于 2018-11-25 22:51
查看主页

本次分享也是我个人通过学习一个国外的教程而总结的,在此向作者表示感谢!我们通过以小见大形式来进行分析。一切先从简单或者特例入手。而后在此基础上延伸和深入。

四个像素的图

我先从简单图形开始,这里的图形是由 4 个像素组成的。每个像素有着不同的灰度值。我们根据像素不同的灰度值进行分类。

分类图 第一类为 solid

将根据像素明暗不同进行分类,暂时分为四类。第一种情况为实色,即一律像素就是全白色。

第二类为 vertical

第二类为 vertical ,当四个像素中,有两个为白色并且纵向排列就是第二种情况。其余情况大家自己看一下吧,这里不做过多的解释,应该是一目了然。

第三种情况 diagonal第四种情况 horizonal

这里列出四种情况,但是实际情况还具体分析一下,图根据像素位置和灰白程度不同应该不仅仅是这四种。看下图就知道这里还有其余情况,不过下图中两种情况我们都归结为 horizontal? 水平分布。

用神经元来表示图像

这个由两行两列的四个像素笼统为是出神经元,每个神经元对应某一行某一列的一个像素。他包含值就是像素的灰度值。

每个像素的值为其灰度值

用 -1 到 1 区间的值来对应灰度值,黑色用 -1 而白色用 1 来表示。

将每个像素对应一个神经元

每一个神经元对应一个图的

这里神经元都会连接到下一层的神经元

像素对应的神经元,都会连接到下一层的神经元


我们将前一层神经元的输入,输入相求和得出该神经元。

我们将每条连接线附上加权值,将每个神经元的值乘上权重值后相加得出值作为下一个神经元的输入值。

每个神经元对应的像素的灰度值作为该神经元的激活值,每个神经元都是一个数值的容器。这个值作为下一层神经元的输入值,这里下一个神经元的激活值输入值的和。

压缩

我们需要将结果值控制或者者说压缩在-1 到 1 之间。这里我们通过 sigmoid 函数进行压缩 sigmoid 函数是 s 型。

sigmoid 曲线

我们看一看如何通过 sigmoid 函数来压缩函数的输出在 -1 和 1 之间。

当我们的 x值不断增大的时候,对应的 y 值将无限地趋近 1? 而无法达到 1。反之亦然。

免责声明:本文为用户发表,不代表网站立场,仅供参考,不构成引导等用途。 系统环境 服务器应用
相关推荐
链表应用--基于链表实现栈
Vue组件开发三板斧:prop、event、slot
利用死循环实现屡次输入的猜数案例
linux环境下安装mysql
全面理解 Nginx 究竟能做什么
首页
搜索
订单
购物车
我的