小编Min*_*ker的帖子

神经网络:输入层由什么组成?

最终编辑:清理问题并接受runDOSrun的答案。IVlad的性能同样好,user3760780的性能也非常有用。我建议阅读所有这三个以及评论。TLDR的答案是,可能性1或多或少是正确的,但我的措辞很差。

神经网络中输入层由什么组成?该层做什么?

神经网络在这里是一个类似的问题:输入层是否包含神经元?但是那里的答案并没有消除我的困惑。

就像上面问题中的发布者一样,我对Internet关于基本前馈网络的输入层不得不说的许多矛盾说法感到困惑。

我将跳过指向矛盾的教程和文章的链接,并列出我可以看到的三种可能性。哪一个(如果有)是正确的?

  1. 输入层将数据直接传递到第一隐藏层,在此将数据乘以第一隐藏层的权重。
  2. 输入层在传递数据之前先通过激活函数传递数据。然后将数据乘以第一个隐藏层的权重。
  3. 输入层具有自己的权重,可以乘以输入数据。然后,输入层将数据传递给激活函数,然后再传递给激活层。然后将数据乘以第一个隐藏层的权重。

谢谢!

编辑1:这是一张图片和一个示例,进一步说明。

machine-learning neural-network

6
推荐指数
2
解决办法
8123
查看次数

Julia println() 不打印/行为不一致

这可能是一个初学者问题,但我在文档或基本教程中找不到任何相关内容。我正在使用 Julia 1.4.2(这是最新的稳定版本),并且按照文档/教程中的建议,使用带有 Juno 的 Atom 编辑器。这是在 Ubuntu 18.04 上。

我的最小可重现示例:

function main()
    b = 300000
    println(b)
    println(b, " asdf")
end

main()
Run Code Online (Sandbox Code Playgroud)

似乎有时会输出,如预期的那样,

300000
300000 asdf
Run Code Online (Sandbox Code Playgroud)

但它通常只输出

300000 asdf
Run Code Online (Sandbox Code Playgroud)

当 Julia 停止时,后一个“错误”输出似乎最常发生,我单击“全部运行”,这将启动 Julia 并运行脚本。这里发生了什么?如果这是一个微不足道的初学者错误,我深表歉意。谢谢。

julia atom-editor juno-ide

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

对象修改是否创建新对象?

我对C++中的对象生命周期有点困惑.假设我有以下代码.首先,我创建指针MyObject(第1行).然后我创建一个对象并将指针指向它(第2行).然后我修改对象,并将指针指向结果对象(第3行).最后,我删除了对象,以便避免内存泄漏(第4行).

MyClass * MyObject;
MyObject= new MyClass(x, y); 
*MyObject= MyObject-> ModifyObject(z);
delete MyObject;
Run Code Online (Sandbox Code Playgroud)

第2行的原始对象是否仅在第3行进行了修改?(这意味着上面的代码是安全的).或者是第3行创建的第二个对象,这意味着第2行的第一个对象永远不会被删除,从而造成内存泄漏?

编辑:这是ModifyObject(z)的样子

MyClass MyClass::ModifyObject(int z) {
    int a = z;
    int b = z;
    return MyClass(a, b);
}
Run Code Online (Sandbox Code Playgroud)

c++ oop object delete-operator

2
推荐指数
1
解决办法
64
查看次数