"新神经 "是MetaTrader 5平台的一个开源神经网络引擎项目。 - 页 73 1...666768697071727374757677787980...100 新评论 Mykola Demko 2011.11.29 19:21 #721 yu-sha: 预处理程序正是为了这个目的无论你有2个还是100个神经元,文件看起来都一样。好吧,没有人阻止你用图形来做 - 只要写一个GUI并使用它。好吧,我们不要砍掉肩膀,让我们用清晰的线条把它摆出来。这并不是说对其他人也一样,但对我来说,我上面阐述的加载方式在加载算法上是很明显的。读取一个字符串,初始化3个层类型对象。 我们读取第一行,然后调用第一层对象,构建层类型输入,初始化 2个神经元阵列。读取第二行,然后调用第二个对象层,构建层类型mlp,初始化2个神经元的数组。读取第三行,然后调用第二层对象,构建mlp层类型,初始化神经元阵列为1。由于层数为3,我们在第三条线上完成构建,并分配连接。要做到这一点,我们通过表并调用所需的神经元,如果表包含1,则告诉它们链接。该算法在xml中如何工作?ZS和主要的优点是,由于连接表是二进制的,所以它是完全可绑定的。 8个神经元的表适合于一个ulong。诚然,一般来说,进入森林越远的游击队越厚实,有大量神经元的尺寸计算为 X=N*N/8 其中N是神经元的数量。X是字节数。 Serj 2011.11.29 19:22 #722 劣势XML语法是多余的。[8]一个XML文档的大小明显大于相同数据的二进制表示。在粗略的估计中,这个系数的值被认为是1个数量级(10的系数)。XML文档的大小明显大于其他基于文本的数据传输格式(如JSON[4]、YAML、协议缓冲区)的文档,尤其是为特定使用情况优化的数据格式。XML冗余会影响应用程序的效率。储存、处理和传输数据的成本增加。XML包含元数据(关于字段名、类名、结构嵌套),同时,XML被定位为一种开放的系统通信语言。当在系统之间传输大量相同类型(相同结构)的对象时,重复传输元数据是没有意义的,尽管它包含在XML描述的每个实例中。对于大量的任务,你不需要XML语法的全部力量,可以使用更简单、更有效的解决方案。 对剽窃行为表示歉意。 yu-sha 2011.11.29 19:30 #723 我建议将XML作为存储配置、网络、设置的标准。而且只在初始化/存储阶段需要。在工作流程的过程中,甚至在学习过程中,不存在XML的问题她.人。 对剽窃行为表示歉意。是的,但由于某些原因,像甲骨文、微软这样的怪兽......。咬紧牙关把他们的 "二进制"(通常是商业)标准推开,转而采用开放标准减去10MBytes的XML对现代计算机来说是没有问题的100MBytes的MS Word .docx文件并不令人生畏?如果问题是从XML文件中下载一个网络,那么在这样的硬件上进行训练是根本不现实的--任务的复杂性是不可比拟的。 Mykola Demko 2011.11.29 19:39 #724 yu-sha:我建议将XML作为存储配置、网络、设置的标准。而且只在初始化/存储阶段需要。在工作流程的过程中,甚至在学习阶段更是如此,这不是关于XML考虑一下:你的文件在xml中是916字节,在二进制表示中是64字节,即使你不点击头。7个标题变量+每个表1个=8个ulong*8字节=64个 yu-sha 2011.11.29 19:42 #725 Urain。看,你的xml文件是916字节,而二进制表示是64字节,即使你不点击头。7个标题变量+每个表1个=8个ulong*8字节=64个为了打开论坛的这个页面,我在互联网上至少抽了一百多KB。现在是2012年,我已经很久没有使用字节 这样的测量单位了))P.S.我只是提出了我的方法--由公众来决定。 Serj 2011.11.29 19:42 #726 于 莎。我建议将XML作为存储配置、网络、设置的标准。而且只在初始化/存储阶段需要。在工作流程的过程中,甚至在培训的过程中,这与XML无关。为了优化网络结构,有必要(临时)改变神经元和连接的数量。 有可能做到这一点吗?如果你不介意,请对你的代码进行评论,如果没有任何评论,要理解别人的代码可能需要太长时间。谢谢你。 yu-sha 2011.11.29 19:45 #727 her.human: 为了优化网络的结构,有必要(即时)改变神经元和连接的数量。 是否有可能做到这一点?如果不难,请对你的代码进行评论,你知道,没有评论的话,理解别人的代码需要太长时间。谢谢你。这是一个培训问题。潜在地,这是可能的,但我还没有在实践中使用。通常,在学习过程中,网络结构不会发生变化--只有适应性参数会发生变化。你对问题的定义已经是一个元水平了,要训练一个架构师来改变网络结构,这样产生的网络在学习上会比别人更成功。代码 "按原样 "发布--为我自己做的,像往常一样,很匆忙,所以请原谅我。从好的方面来说,在整个项目 完成后,那里的一切都应该由骨头来重建。 Mykola Demko 2011.11.29 19:56 #728 yu-sha: 我下载了至少一百个字节来打开论坛的这个页面。现在是2012年,我已经很久没有使用字节 这样的测量单位了))P.S.我只是提供了我的版本--由公众来决定。让我们做一个实验,为1000个神经元创建一个xml加载器,每个神经元有100个链接,并公布文件大小,结构随便你。我可以直接用膝盖计算出我的变体有多少空间,1000*1000/8=~125KB,而你的不能,所以我无法比较...如果你的版本会有可接受的尺寸,为什么不呢。 yu-sha 2011.11.29 19:58 #729 Urain。不是这个问题,内存,在GPU上将很难实现对象逻辑的扭曲,我有一个相当好的想法,如何实现NS,作为一个复杂的对象的互动,其中有GPU计算的功能(这是关于微观层面),但我无法想象这个复杂的对象代码那些整个NS如何滑到GPU作为几个FF的不同集权(宏观层面)?这个问题是反问句,尽管如果有人提出,我不介意听听。这就是为什么选择了CUDA而不是更常见的OpenCL的原因。CUDA代码是面向对象的,你可以通过比特传递在CPU上生成的一个对象有一些微妙的问题,但都可以得到解决 Mykola Demko 2011.11.29 20:01 #730 yu-sha:这就是为什么选择CUDA而不是更常见的OpenCL的原因。CUDA中的代码是面向对象的,你可以将CPU上形成的对象进行比特传递有一些微妙的问题,但所有这些问题都可以得到解决 我不是这方面的专家,我相信你,这将是好事。 1...666768697071727374757677787980...100 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
预处理程序正是为了这个目的
无论你有2个还是100个神经元,文件看起来都一样。
好吧,没有人阻止你用图形来做 - 只要写一个GUI并使用它。
好吧,我们不要砍掉肩膀,让我们用清晰的线条把它摆出来。这并不是说对其他人也一样,但对我来说,我上面阐述的加载方式在加载算法上是很明显的。
读取一个字符串,初始化3个层类型对象。
我们读取第一行,然后调用第一层对象,构建层类型输入,初始化 2个神经元阵列。
读取第二行,然后调用第二个对象层,构建层类型mlp,初始化2个神经元的数组。
读取第三行,然后调用第二层对象,构建mlp层类型,初始化神经元阵列为1。
由于层数为3,我们在第三条线上完成构建,并分配连接。
要做到这一点,我们通过表并调用所需的神经元,如果表包含1,则告诉它们链接。
该算法在xml中如何工作?
ZS和主要的优点是,由于连接表是二进制的,所以它是完全可绑定的。 8个神经元的表适合于一个ulong。诚然,一般来说,进入森林越远的游击队越厚实,有大量神经元的尺寸计算为
X=N*N/8
其中N是神经元的数量。
X是字节数。
劣势
我建议将XML作为存储配置、网络、设置的标准。
而且只在初始化/存储阶段需要。
在工作流程的过程中,甚至在学习过程中,不存在XML的问题
对剽窃行为表示歉意。
是的,但由于某些原因,像甲骨文、微软这样的怪兽......。咬紧牙关把他们的 "二进制"(通常是商业)标准推开,转而采用开放标准
减去10MBytes的XML对现代计算机来说是没有问题的
100MBytes的MS Word .docx文件并不令人生畏?
如果问题是从XML文件中下载一个网络,那么在这样的硬件上进行训练是根本不现实的--任务的复杂性是不可比拟的。
我建议将XML作为存储配置、网络、设置的标准。
而且只在初始化/存储阶段需要。
在工作流程的过程中,甚至在学习阶段更是如此,这不是关于XML
考虑一下:你的文件在xml中是916字节,在二进制表示中是64字节,即使你不点击头。
7个标题变量+每个表1个=8个ulong*8字节=64个
看,你的xml文件是916字节,而二进制表示是64字节,即使你不点击头。
7个标题变量+每个表1个=8个ulong*8字节=64个
为了打开论坛的这个页面,我在互联网上至少抽了一百多KB。
现在是2012年,我已经很久没有使用字节 这样的测量单位了))
P.S.
我只是提出了我的方法--由公众来决定。
我建议将XML作为存储配置、网络、设置的标准。
而且只在初始化/存储阶段需要。
在工作流程的过程中,甚至在培训的过程中,这与XML无关。
为了优化网络结构,有必要(临时)改变神经元和连接的数量。
有可能做到这一点吗?
如果你不介意,请对你的代码进行评论,如果没有任何评论,要理解别人的代码可能需要太长时间。谢谢你。
为了优化网络的结构,有必要(即时)改变神经元和连接的数量。
是否有可能做到这一点?
如果不难,请对你的代码进行评论,你知道,没有评论的话,理解别人的代码需要太长时间。谢谢你。
这是一个培训问题。潜在地,这是可能的,但我还没有在实践中使用。
通常,在学习过程中,网络结构不会发生变化--只有适应性参数会发生变化。
你对问题的定义已经是一个元水平了,要训练一个架构师来改变网络结构,这样产生的网络在学习上会比别人更成功。
代码 "按原样 "发布--为我自己做的,像往常一样,很匆忙,所以请原谅我。
从好的方面来说,在整个项目 完成后,那里的一切都应该由骨头来重建。
我下载了至少一百个字节来打开论坛的这个页面。
现在是2012年,我已经很久没有使用字节 这样的测量单位了))
P.S.
我只是提供了我的版本--由公众来决定。
让我们做一个实验,为1000个神经元创建一个xml加载器,每个神经元有100个链接,并公布文件大小,结构随便你。
我可以直接用膝盖计算出我的变体有多少空间,1000*1000/8=~125KB,而你的不能,所以我无法比较...
如果你的版本会有可接受的尺寸,为什么不呢。
不是这个问题,内存,在GPU上将很难实现对象逻辑的扭曲,我有一个相当好的想法,如何实现NS,作为一个复杂的对象的互动,其中有GPU计算的功能(这是关于微观层面),但我无法想象这个复杂的对象代码那些整个NS如何滑到GPU作为几个FF的不同集权(宏观层面)?
这个问题是反问句,尽管如果有人提出,我不介意听听。
这就是为什么选择了CUDA而不是更常见的OpenCL的原因。
CUDA代码是面向对象的,你可以通过比特传递在CPU上生成的一个对象
有一些微妙的问题,但都可以得到解决
这就是为什么选择CUDA而不是更常见的OpenCL的原因。
CUDA中的代码是面向对象的,你可以将CPU上形成的对象进行比特传递
有一些微妙的问题,但所有这些问题都可以得到解决