gpt4 book ai didi

algorithm - 使用神经网络进行数字识别的具体例子

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:05:10 25 4
gpt4 key购买 nike

我是 ANN 和阅读的非常(非常)初学者 this tutorial .作者在下面的 OCR 示例上解释了 ANN。

存在具有 8x8 网格且单元格相等的二值图像(单元格始终具有相同的大小)。每个数字都是使用网格的一些单元格形成的。每张图片都有一个数字 0-9

此外,假设所有经过训练的数字也具有相等的 8x8 网格(例如,经过训练的数字向量 4 = 已识别数字的向量 4)。

例如这是数字 4 的图像:
enter image description here

所以他说我们需要 64 个输入(每个网格单元一个输入)。此外,我们需要 10 个输出节点(因为我们有 10 个数字)。假设有一层隐藏节点。但我不明白这一切是如何产生结果的。

谁能说出我们需要多少个隐藏节点以及这些隐藏节点必须做什么?

附言我们不需要在这里做所有的帮助 OCR 处理——预处理、分割、呈现。我们已经有了长度为 64 的特征向量。

最佳答案

我们可以有任意数量的隐藏神经元。权重是与输入向量相乘的矩阵,因此层的输出可以是任意大小。在您的示例中,权重矩阵将具有以下大小。注意:我排除了非线性,例如sigmoid、tanh 或 relu,因为它们按元素操作并且不会改变形状。

output = output_weights * hidden_weights * input
10 x 1 10 x num_hid num_hid x 64 64 x 1

隐藏神经元的实际作用要微妙得多。在此应用程序中,您试图找到一个决策边界,将“看起来像 4 的 64 像素图像”的空间与“看起来像 3 的 64 像素图像”等的空间分开。单层神经网络(又名感知器)只能计算线性决策边界。更深的神经网络使其更灵活地模拟更复杂的决策边界。

为了获得更好的直觉,请尝试使用 Tensorflow web demo .您可以改变参数并查看添加更多层如何增加更多表现力,以及添加更多神经元如何改变准确性。

关于algorithm - 使用神经网络进行数字识别的具体例子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44827923/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com