首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使这种神经网络训练功能更快

如何使这种神经网络训练功能更快
EN

Stack Overflow用户
提问于 2013-01-30 18:45:23
回答 2查看 316关注 0票数 1

变量输入是锯齿数组,即90 x 600。

理想的也是90 x 1的锯齿数组

代码语言:javascript
复制
BeginTraining()
{
    FeedforwardNetwork network = new FeedforwardNetwork();
    network.AddLayer(new FeedforwardLayer(600));
    network.AddLayer(new FeedforwardLayer(1000));
    network.AddLayer(new FeedforwardLayer(90));
    network.Reset();

    // train the neural network
    Train train = new  HeatonResearchNeural.Feedforward.Train.Backpropagation.Backpropagation(network, input, ideal,
                0.7, 0.9);

    int epoch = 1;

    do
    {
        lblNoEpochs.Text= epoch.ToString();
        lblNoEpochs.Update();
        train.Iteration();
        lblPcError.Text = train.Error.ToString();
        lblPcError.Update();
        epoch++;
    } while((epoch < 5000) && (train.Error > 0.001));

        // test the neural network
        for (int i = 0; i < input.Length; i++)
        {
            //testing code
        }

每个时期至少需要5分钟。

如何减少这段时间?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-01-31 11:11:12

我认为真正的问题是-- do/while能并行吗?

据我所知,训练波是相互依赖的,所以下一波取决于前一波的结果。因此,排序绝对是必须的。

所以我想答案是--这不可能更快。

票数 1
EN

Stack Overflow用户

发布于 2013-01-30 19:08:01

在我看来,你可以:

  1. Run a profiler
  2. Find弄清楚什么是slow
  3. Optimize

根据需要重复。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14602108

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档