32、从零实现多层人工神经网络及TensorFlow加速训练

从零实现多层人工神经网络及TensorFlow加速训练

1. 手写数字分类的可视化与挑战

在进行多层人工神经网络的训练和优化之前,我们先对一些手写数字图像的分类情况进行了可视化。通过以下代码:

>>> ax[0].set_xticks([])
>>> ax[0].set_yticks([])
>>> plt.tight_layout()
>>> plt.show()

我们可以看到一个5×5的子图矩阵,其中子图标题中的第一个数字表示图的索引,第二个数字代表真实的类别标签(t),第三个数字代表预测的类别标签(p)。从图中可以发现,有些图像即使对于人类来说也很难正确分类。例如,子图8中的数字6看起来很像随意绘制的0,子图23中的数字8由于下部较窄且线条较粗,可能会被误认为是9。

2. 训练人工神经网络

在了解了神经网络的实际运行情况并通过代码对其工作原理有了基本认识后,我们深入探讨一些关键概念,如逻辑成本函数和用于学习权重的反向传播算法。

2.1 计算逻辑成本函数

我们实现的逻辑成本函数 _compute_cost 实际上很容易理解,它与逻辑回归中的成本函数相同:
[
J(\mathbf{w}) = -\sum_{i=1}^{n}[y^{[i]}\log(a^{[i]}) + (1 - y^{[i]})\log(1 - a^{[i]})]
]
其中,(a^{[i]}) 是数据集中第 (i) 个样本

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值