Epoch vs迭代训练神经网络时
在训练多层感知器时,时代与迭代有什么区别?
在神经网络术语中:
例如:如果您有1000个培训示例,并且您的批量大小为500,则需要2次迭代才能完成1个纪元。
FYI:权衡批次大小与训练神经网络的迭代次数
术语“批”是不明确的:有些人用它来指定整个训练集,有些人用它来指代一次前进/后退传球中训练实例的数量(就像我在这个答案中所做的那样)。 为了避免歧义,并明确批次对应于一次前进/后退过程中的训练示例数量,可以使用术语小批量 。
时代和迭代描述了不同的事情。
时代
一个时代描述了算法看到整个数据集的次数。 所以,每次算法已经看到数据集中的所有样本时,历元就已经完成。
迭代
迭代描述了一批数据通过算法的次数。 在神经网络的情况下,这意味着正向传球和反传球。 所以,每当你通过神经网络传递一批数据时,你就完成了一次迭代。
例
一个例子可能会使它更清晰。
假设您有一个包含10个示例(或样本)的数据集。 批量大小为2,并且您已指定您希望算法运行3个时期。
因此,在每个时代,你有5个批次(10/2 = 5)。 每个批次都通过算法,因此每个历元有5次迭代。 既然你已经指定了3个时期,你总共有15次迭代(5 * 3 = 15)进行训练。
许多神经网络训练算法涉及将整个数据集的多个呈现给神经网络。 通常,整个数据集的单个呈现被称为“时代”。 相比之下,一些算法一次只向一个案例提供数据给神经网络。
“迭代”是一个更为通用的术语,但是由于您与“时代”一起询问了这个术语,因此我假设您的来源是指将单个案例呈现给神经网络。
链接地址: http://www.djcxy.com/p/32069.html