首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

自动微分技术

几乎所有机器学习算法在训练或预测时都归结为求解最优化问题,如果目标函数可导,在问题变为训练函数的驻点。通常情况下无法得到驻点的解析解,因此只能采用数值优化算法,如梯度下降法,牛顿法,拟牛顿法。这些数值优化算法都依赖于函数的一阶导数值或二阶导数值,包括梯度与Hessian矩阵。因此需要解决如何求一个复杂函数的导数问题,本文讲述的自动微分技术是解决此问题的一种通用方法。关于梯度、Hessian矩阵、雅克比矩阵,以及梯度下降法,牛顿法,拟牛顿法,各种反向传播算法的详细讲述可以阅读《机器学习与应用》,清华大学出版社,雷明著一书,或者SIGAI之前的公众号文章。对于这些内容,我们有非常清晰的讲述和推导。

03

Softmax和交叉熵的深度解析和Python实现

【导读】如果你稍微了解一点深度学习的知识或者看过深度学习的在线课程,你就一定知道最基础的多分类问题。当中,老师一定会告诉你在全连接层后面应该加上 Softmax 函数,如果正常情况下(不正常情况指的是类别超级多的时候)用交叉熵函数作为损失函数,你就一定可以得到一个让你基本满意的结果。而且,现在很多开源的深度学习框架,直接就把各种损失函数写好了(甚至在 Pytorch中 CrossEntropyLoss 已经把 Softmax函数集合进去了),你根本不用操心怎么去实现他们,但是你真的理解为什么要这么做吗?这篇小文就将告诉你:Softmax 是如何把 CNN 的输出转变成概率,以及交叉熵是如何为优化过程提供度量。为了让读者能够深入理解,我们将会用 Python 一一实现他们。

01
领券