"新神经 "是MetaTrader 5平台的一个开源神经网络引擎项目。 - 页 5 123456789101112...100 新评论 TheXpert 2011.10.19 10:44 #41 雷纳特。没有 "安全系统 "DLLs。 我不坚持:)没有所以没有。 Mykola Demko 2011.10.19 14:12 #42 我建议用递归代替循环来制作一个通用网络。建立网络的全部意义在于创建一个拓扑图。拓扑图是一个二维表,上面写着哪个点与哪个点相连。使用这样的图,人们可以写出经典的拓扑结构,或者在图形拓扑编辑器的帮助下创建自己的拓扑。解释代码的图表 第12页//+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ class Mem { double m; public: Mem(void){}; ~Mem(void){}; void set(double m_){m=m_;}; double get(){return(m);}; }; //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ class ObjMem { public: ObjMem *prev;// предыдущий Mem *obj; // объект памяти ObjMem *next;// последующий ObjMem *side;// боковой ObjMem(void){obj=new Mem();}; ~ObjMem(void){delete obj;}; void ListPrev(ObjMem *obj){prev=obj;}; void ListNext(ObjMem *obj){next=obj;}; }; //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ class NeuroBase { public: ObjMem *in[];// входы ObjMem *wg[];// веса ObjMem *zo[];// задержка Mem *ou; // выход NeuroBase(void){ou=new Mem();}; ~NeuroBase(void){delete ou;}; void ExportMem_In(Mem *ex,int i){in[i].obj=ex;}; void ExportMem_Wg(Mem *ex,int i){wg[i].obj=ex;}; void ExportMem_Zo(Mem *ex){zo[0].obj=ex;}; Mem *ImportMem_In(int i){return(in[i].obj);}; Mem *ImportMem_Wg(int i){return(wg[i].obj);}; Mem *ImportMem_Zo(int i){return(zo[i].obj);}; virtual void work(){/* вызов суммирования перемноженных пар*/}; virtual void training(){/* вызов расчёта ошибки*/}; }; //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ class Net { NeuroBase *n[]; public: Net(void){}; ~Net(void){}; void direct(); // прямой ход void revers(); // обратный ход void topology();// создание топологии }; //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ void Net::topology() { /* создаём массив нейронов связываем массив в список создаём связные списки нейновесов и боковые пары создаём связывание входов и выходов создаём связывание входов и операторов задержки (если нужно) связывем веса нейронов с внешним массивом связываем выходы последнего слоя с внешним массивом связываем входы первогого слоя с внешним массивом */ } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ void Net::direct() { // вызов расчёта нейронов от первого до последнего } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ void Net::revers() { // вызов расчёта нейронов от последнего до первого } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ Mykola Demko 2011.10.19 14:24 #43 链接到神经元内的列表,神经元和链接输入和输出避免了创建学习算法的问题(以及工作流程问题),网络本身会知道在哪里分配什么。 TheXpert 2011.10.19 14:59 #44 雷纳特。 顺便说一下,我强烈反对你的内部命名和编码标准。 --- 2011.10.19 15:04 #45 TheXpert。 顺便说一下,我强烈反对你的内部命名和编码标准。这里没有选择。每个人都有自己的标准和既定原则(我的也和元老级的引文不同)。但元引号标准并不是现有的最差的。因此,为了确保没有人因为他们的损失而受到伤害,我们将不得不使用一个单一的标准。在这种情况下,它将是来自元引号。 TheXpert 2011.10.19 15:05 #46 sergeev: 在这种情况下,它将是来自元引号。 我可以张贴我的;)? --- 2011.10.19 15:06 #47 Urain。我建议用递归代替循环来制作一个通用网络。建立网络的全部意义在于创建一个拓扑图。拓扑图是一个二维表,上面写着哪个点与哪个点相连。使用这样的图,将有可能写出经典的拓扑结构,或使用图形化的拓扑编辑器创建自己的拓扑。二维阵列是否足以满足各种拓扑结构和视觉理解? TheXpert 2011.10.19 15:21 #48 sergeev:一个二维阵列是否足以满足各种拓扑结构和视觉理解? 不。 Mykola Demko 2011.10.19 15:29 #49 sergeev:二维阵列是否足以满足各种拓扑结构和视觉理解?对于拓扑结构的加密来说,是的,对于视觉理解来说,只有专家才能做到,最好是一个图形内核,它能从视觉感知中正确地做出一个地图。从本质上讲,地图是一个由 "从哪里来 "和 "到哪里去 "两个单元组成的一维数组结构,加上地图头应该包含多少个神经元、每个神经元有什么类型、哪个神经元有多少权重、什么延迟运算符等级等信息。所以为了充分的视觉理解二维是不够的,最好有一个二维的结构数组,这样你就可以写下每个输入的类型、权重、运算符的延迟等级和连接,以及来自延迟单元的链接。一般来说,"和来自延迟单元的链接 "是不必要的,它们与输入相连,这样输入的链接也会存储有延迟的链接信息。 TheXpert 2011.10.19 15:34 #50 谁能给我提供一个在线绘图工具的建议,用于绘制图表和狗屎? 123456789101112...100 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
没有 "安全系统 "DLLs。
我建议用递归代替循环来制作一个通用网络。建立网络的全部意义在于创建一个拓扑图。
拓扑图是一个二维表,上面写着哪个点与哪个点相连。使用这样的图,人们可以写出经典的拓扑结构,或者在图形拓扑编辑器的帮助下创建自己的拓扑。
解释代码的图表 第12页
链接到神经元内的列表,神经元和链接输入和输出避免了创建学习算法的问题(以及工作流程问题),网络本身会知道在哪里分配什么。
顺便说一下,我强烈反对你的内部命名和编码标准。
这里没有选择。每个人都有自己的标准和既定原则(我的也和元老级的引文不同)。
但元引号标准并不是现有的最差的。因此,为了确保没有人因为他们的损失而受到伤害,我们将不得不使用一个单一的标准。在这种情况下,它将是来自元引号。
我建议用递归代替循环来制作一个通用网络。建立网络的全部意义在于创建一个拓扑图。
拓扑图是一个二维表,上面写着哪个点与哪个点相连。使用这样的图,将有可能写出经典的拓扑结构,或使用图形化的拓扑编辑器创建自己的拓扑。
二维阵列是否足以满足各种拓扑结构和视觉理解?
一个二维阵列是否足以满足各种拓扑结构和视觉理解?
二维阵列是否足以满足各种拓扑结构和视觉理解?
对于拓扑结构的加密来说,是的,对于视觉理解来说,只有专家才能做到,最好是一个图形内核,它能从视觉感知中正确地做出一个地图。
从本质上讲,地图是一个由 "从哪里来 "和 "到哪里去 "两个单元组成的一维数组结构,加上地图头应该包含多少个神经元、每个神经元有什么类型、哪个神经元有多少权重、什么延迟运算符等级等信息。
所以为了充分的视觉理解二维是不够的,最好有一个二维的结构数组,这样你就可以写下每个输入的类型、权重、运算符的延迟等级和连接,以及来自延迟单元的链接。
一般来说,"和来自延迟单元的链接 "是不必要的,它们与输入相连,这样输入的链接也会存储有延迟的链接信息。