Suz*_*ioc 4 matlab artificial-intelligence machine-learning neural-network
假设我有非常大的火车设置,以便Matlab在训练时挂起或没有足够的内存来保持火车组.
是否可以将训练集分成几部分并按部分训练网络?
是否可以一次一个样本(逐个)训练网络?
小智 5
您可以手动将数据集分成批次并一个接一个地训练它们:
for bn = 1:num_batches
inputs = <get batch bn inputs>;
targets = <get batch bn targets>;
net = train(net, inputs, targets);
end
Run Code Online (Sandbox Code Playgroud)
虽然批量大小应该大于1,但无论如何应该减少记忆消耗的训练.
在trainlm训练算法的情况下,net.efficiency.memoryReduction优化可以提供帮助.而不是默认trainlm算法,你可以尝试更少的内存消耗trainrp.有关训练算法的详细信息,请查看matlab文档页面.我假设您正在使用相应的matlab工具箱进行神经网络.
关于一次训练一个样本,您可以尝试使用谷歌搜索随机梯度下降算法.但是,看起来它不是工具箱中默认的训练算法集.
| 归档时间: |
|
| 查看次数: |
2805 次 |
| 最近记录: |