手机浏览器扫描二维码访问
“平均情况o(nlogn),最坏情况通过随机化避免,但理论上仍是o(n2)。
空间复杂度,迭代版本是o(logn)的栈空间”
。
林晨顿了顿,“在实际工程中,如果数据量极大,我会考虑结合内省排序——当递归深度超过某个阈值时,切换到堆排序,保证最坏情况也是o(nlogn)。
这是c++StL里sort函数的实现思路”
。
又是一阵沉默,然后面试官说:“可以。
下一题,用你理解的方式,讲解神经网络的反向传播原理”
。
林晨精神一振。
这才是他闭关六个月啃透的核心。
他没有直接说公式,而是从场景切入:“假设我们在训练一个识别猫图片的网络。
前向传播时,输入一张图片,网络逐层计算,最后输出一个概率值——比如0.8,表示网络认为这张图有80%可能是猫”
。
“但标签告诉我们,这其实是一张狗的照片,标签是0。
那么网络就犯错了,误差是0.8”
。
“反向传播要解决的,就是‘这个误差,应该如何分摊给网络中的每一个参数,让它们知道该往哪个方向调整’”
。
林晨拿起手边的笔和纸,对着摄像头简单画了个三层网络示意图:“核心是链式法则。
误差从输出层开始,先计算输出层权重对误差的梯度——‘如果我微调这个权重,误差会变化多少’。
然后这个梯度会向后传递,成为前一层的‘误差信号’”
。
“一层层往回传,就像涟漪反推。
每一层都回答两个问题:第一,我的权重该怎么调;第二,我应该给我的前一层传递什么样的误差信号”
。
他刻意避免陷入数学符号的海洋,而是用比喻:“可以想象成一家公司出了生产事故。
总经理问责部门经理,部门经理问责组长,组长问责一线员工。
每一层都要明确:自己该负多少责任,以及下属该负多少责任。
反向传播就是那个‘责任追溯算法’”
。
面试官突然插话:“那梯度消失和爆炸呢”
?
“这正是链式法则的副作用”
。
林晨立刻接上,“梯度在反向传递时,每一层都要乘以该层的激活函数导数等因子。
如果这些因子长期小于1,梯度越往前传就越小,直到消失——深层网络的前几层几乎得不到有效更新信号,这就是梯度消失。
...
TXT下载,最新章节,无错,番外...
...
TXT下载,最新章节,无错,番外...
TXT下载,最新章节,无错,番外...
穿越当晚,新婚洞房。云绾宁被墨晔那狗男人凌虐的死去活来,后被抛之后院,禁足整整四年!本以为,这四年她过的很艰难。肯定变成了个又老又丑的黄脸婆!但看着她身子各位书友要是觉得神医毒妃腹黑宝宝还不错的话请不要忘记向您QQ群和微博里的朋友推荐哦!1w3452453977...