极简单bpnet对比极简单cnn

以前学英语,知道cnn是美国有线

后来卖牛奶,知道cnn是纯牛奶

再后来,回归了计算机,知道了ncc,相关系数,这个也非常有名,后来也被cnn盖住了风头!

计算机图形学,图像处理,用了很多先人制造的卷积核,比如高斯卷积核啊!lapulas卷积核!但从来没有人说是周文王八卦卷积核,也没人说是练字的九宫格!

后来bpnet出现了新名词-权重,就是这个weight,w1,w2等等之类!

然后就出现了cnn,眼睛往上一翻,看天,想了想,这个卷积核就是高斯,拉普拉斯卷积核吧!

但他们说不是,他们说这个卷积核是通过权重更新,自己生成的,不是先人预设的高斯,拉普拉斯等等卷积核!怎么回事呢?

原来,从第三幅图可以看出来,他这个卷积核真的是,通过梯度,自己更新的卷积核!

当你明白权重就是卷积核的那一瞬间!

世界突然眼前一亮,变成了新世界!

我们以前搞bpnet,权重更新和计算梯度不分开!只是强调,先用权重,后更新权重,不要搞反了!

自从出现了批处理和cnn,他们把权重更新和计算梯度分开了,也不说什么原因,好吧,我就跟着你,先用着!

在这里,我犯了错误!也不算!算是探索!

因为我不清楚cnn原理,我只是想用bpnet探索想象中的cnn,就用上面第三张图!

现在想来,很简单:最后一步彩色的更新,应该如下:

无论你用cnn还是bpnet:

//1,计算w【0】的梯度,第一层,偏差向前传播卷积核->delta卷积动作

//e偏导z1 *zI偏导w[0]

wcnn的偏差[0][0] = delta11*a0[0] + delta12*a0[1] + delta21*a0[3] + delta22*a0[4];//0,1,3,4

wcnn的偏差[0][1] = delta11*a0[1] + delta12*a0[2] + delta21*a0[4] + delta22*a0[5];//1,2,4,5

wcnn的偏差[0][2] = delta11*a0[3] + delta12*a0[4] + delta21*a0[6] + delta22*a0[7];//3,4,6,7

wcnn的偏差[0][3] = delta11*a0[4] + delta12*a0[5] + delta21*a0[7] + delta22*a0[8];//4,5,7,8


//w0,第一层的一个卷积核

for (int i = 0; i < 4; i++)

{

wcnn[0][i] = wcnn[0][i] - 常数a * wcnn的偏差[0][i];

}


但我一直在这上面尝试和犯错:

因为我在bpnet中把权重更新和梯度计算分开了,所以就进入了一种死循环:

当delta11作用a0[0],计算完,就在这种分开思路中很自然的抛弃了,最后,只剩下 delta22*a0[4],so:

wcnn的偏差[0][0] = delta11*a0[0] + delta12*a0[1] + delta21*a0[3] + delta22*a0[4];//0,1,3,4

变成了:

wcnn的偏差[0][0] = delta22*a0[4];

当然,网络仍然能正常运行,当我意识到上面的问题,我权重更新和梯度计算放在一起:也就是for循环中第一次:

wcnn的偏差[0][0] = delta11*a0[0];

wcnn[0][0] = wcnn[0][0] - 常数a * wcnn的偏差[0][0];

for循环中第二次:

wcnn的偏差[0][0] = delta12*a0[1] ;

wcnn[0][0] = wcnn[0][0] - 常数a * wcnn的偏差[0][0];

for循环中第三次:

wcnn的偏差[0][0] =delta21*a0[3] ;

wcnn[0][0] = wcnn[0][0] - 常数a * wcnn的偏差[0][0];

for循环中第四次:

wcnn的偏差[0][0]= delta22*a0[4];

wcnn[0][0] = wcnn[0][0] - 常数a * wcnn的偏差[0][0];

其实,上面四段,仍然是 wcnn[0][0] = wcnn[0][0] - 常数a( delta11*a0[0] + delta12*a0[1] + delta21*a0[3] + delta22*a0[4])

但我并不知道这是对的,甚至我认为,减了这么多次(在32*32的图像中), wcnn[0][0]减没了,出现问题

so,我取平均值,更新一次!然而,程序仍然跑的哗哗的,都是ok的!

我的评判标准,最后谁得分高?但也没看出什么子丑寅卯!一会这个好,一会那个好!

但我仍然怀疑这里有问题,直到看到cnn的数学原理推导!

实际也是我们复盘后这个最简单的bpnet和cnn所体现出来的问题!

其实有些问题很难懂!

但你必须反复熟练他,有一天,你自然会解开疑问和疙瘩!

有人说过kiss原则,

谈到用简单和笨方法,实际我们悄悄的用过了!但我们并不知道!

当我们化简到极简模式,bpnet与cnn除了第一层不同,剩下两层都一样,那么,很多问题就迎刃而解!而且你还收获了对称之美!

前天分析网络发现的直觉对称之美,

昨天发现有问题,推导之后,还是直觉的对称之美获胜!

很有意思!

就像我们开头看到的,卷积核,不是高斯,lapulas卷积核,最后发现,就是机器自生成的,仍然看到了高斯核和拉普拉斯卷积核!

苏轼有首诗,说看山不是山,最后又回归到,看山还是山!

前人在图像处理中发现卷积核,并使用卷积核,实际在人工智能上,仍然没变!只不过是让机器学会了而已!

有些问题看上去很复杂,你不停的简单化,他就变简单来了

顺便:我们提出一个疑问:

为什么在光学成像,缩小放大的唯一卷积核是高斯卷积核?

而为什么图像和意识(机器)识别结果之间,缩小放大可以有很多卷积核并存?而且人的智能和机器智能都已经验证了!

当初,他们说人眼成像并识别的物理结构中一定存在高斯卷积核,这是显然的了!

so,扩展一下,人眼识别,除了高斯卷积核,还有其他卷积核,所以,物理和意识,意识更显得量子化!物理更趋于唯一性!

相关推荐
tap.AI几秒前
Deepseek(九)多语言客服自动化:跨境电商中的多币种、多语种投诉实时处理
运维·人工智能·自动化
好奇龙猫6 分钟前
【人工智能学习-AI-MIT公开课第 20・21 概率推理】
人工智能·学习
实战项目8 分钟前
边缘计算在智慧物流中的实时跟踪应用
人工智能·边缘计算
绀目澄清10 分钟前
Unity 的AI Navigation 系统详细总结
人工智能·unity·游戏引擎
一招定胜负10 分钟前
图像形态学+边缘检测及CNN关联
人工智能·深度学习·cnn
dagouaofei11 分钟前
2026 年工作计划 PPT 制作方式对比:AI 与传统方法差异
人工智能·python·powerpoint
万行32 分钟前
机器学习&第五章生成式生成器
人工智能·python·算法·机器学习
独自破碎E33 分钟前
介绍一下Spring AI框架
java·人工智能·spring
laplace012334 分钟前
第三章 大语言模型基础
人工智能·语言模型·自然语言处理·agent·rag
Lun3866buzha44 分钟前
轮胎胎面花纹识别与分类:基于solo_r50_fpn模型的实现与优化
人工智能·分类·数据挖掘