小编And*_*Wei的帖子

任务并行不稳定,有时使用100%CPU

我目前正在测试Parallel for C#.通常它工作正常,使用并行比正常的foreach循环更快.但是,有时(如5次中的1次),我的CPU将达到100%的使用率,导致并行任务非常慢.我的CPU设置为i5-4570,内存为8gb.有谁知道为什么会出现这个问题?

以下是我用来测试功能的代码

            // Using normal foreach
            ConcurrentBag<int> resultData = new ConcurrentBag<int>();
            Stopwatch sw = new Stopwatch();
            sw.Start();
            foreach (var item in testData)
            {
                if (item.Equals(1))
                {
                    resultData.Add(item);
                }
            }
            Console.WriteLine("Normal ForEach " + sw.ElapsedMilliseconds);

            // Using list parallel for
            resultData = new ConcurrentBag<int>();
            sw.Restart();
            System.Threading.Tasks.Parallel.For(0, testData.Count() - 1, (i, loopState) =>
            {
                int data = testData[i];
                if (data.Equals(1))
                {
                    resultData.Add(data);
                }
            });
            Console.WriteLine("List Parallel For " + sw.ElapsedMilliseconds);

            // Using list parallel foreach
            //resultData.Clear();
            resultData = new ConcurrentBag<int>(); …
Run Code Online (Sandbox Code Playgroud)

c# parallel-processing cpu-usage

9
推荐指数
2
解决办法
4659
查看次数

DDPG(Deep Deterministic Policy Gradients),actor是如何更新的?

我目前正在尝试在 Keras 中实现 DDPG。我知道如何更新评论家网络(普通 DQN 算法),但我目前坚持更新演员网络,它使用等式:

方程

因此,为了将演员网络 wrt 的损失减少到其权重 dJ/dtheta,它使用链式法则来获得 dQ/da(来自评论家网络)* da/dtheta(来自演员网络)。

这看起来不错,但我无法理解如何从这两个网络中推导出梯度。有人可以向我解释这部分吗?

reinforcement-learning keras

5
推荐指数
1
解决办法
2013
查看次数

Keras多类语义分割标签

对于语义细分,通常最后一层是

output = Conv2D(num_classes, (1, 1), activation='softmax')

我的问题是,我该如何准备标签?例如,如果我要识别10个类,每个类都有不同的颜色。对于每个标签图像,是否需要对一种特定颜色应用蒙版,将其转换为灰度图像,以便可以与模型输出中的1个滤镜进行比较?还是有一种方法可以传递一张完整的RGB图片作为标签?

deep-learning conv-neural-network keras

5
推荐指数
1
解决办法
1553
查看次数