{"id":483001,"date":"2026-06-09T12:54:03","date_gmt":"2026-06-09T12:54:03","guid":{"rendered":"https:\/\/savepearlharbor.com\/?p=483001"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=483001","title":{"rendered":"\u041d\u0435\u0439\u0440\u043e\u043d\u043d\u044b\u0435 \u0441\u0435\u0442\u0438 \u043d\u0435\u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043e\u0440\u0438\u0435\u043d\u0442\u0430\u0446\u0438\u0438"},"content":{"rendered":"<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<blockquote>\n<p>\u0421\u0442\u0430\u0442\u044c\u044f \u043f\u0440\u0438\u0437\u0432\u0430\u043d\u0430 \u043f\u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044f \u0441 \u0442\u0435\u043c, \u043a\u0430\u043a \u0431\u0438\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u044b \u043c\u043e\u0433\u0443\u0442 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c\u0441\u044f \u043f\u0440\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0438\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u0438\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u043b\u043b\u0435\u043a\u0442\u0430 (AGI). \u0421\u0442\u0430\u0442\u044c\u044f \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0430 \u043c\u043d\u043e\u0439 \u0438 \u0440\u0430\u043d\u0435\u0435 \u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0430\u0441\u044c \u043d\u0430 LOR. \u0412\u044b\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u044e \u0435\u0451 \u0437\u0434\u0435\u0441\u044c \u0434\u043b\u044f \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u043e\u0445\u0432\u0430\u0442\u0430 \u0438 \u043e\u0431\u043c\u0435\u043d\u0430 \u043e\u043f\u044b\u0442\u043e\u043c \u0441 \u0445\u0430\u0431\u0440\u043e\u0432\u0447\u0430\u043d\u0430\u043c\u0438.<\/p>\n<\/blockquote>\n<p>\u0414\u043b\u044f \u043e\u043f\u0440\u0430\u0432\u0434\u0430\u043d\u0438\u044f \u043a\u043b\u0438\u043a\u0431\u0435\u0439\u0442\u043d\u043e\u0433\u043e \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0430 \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043a\u0440\u0430\u0442\u043a\u043e \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u044b\u0435 \u0441\u0435\u0442\u0438. \u0418\u0445 \u043c\u043e\u0436\u043d\u043e \u043a\u043b\u0430\u0441\u0441\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e \u0442\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<\/p>\n<ul>\n<li>\n<p>\u0422\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438 \u0441\u043b\u043e\u0436\u043d\u044b\u0435 \u2014 \u0431\u0438\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043c\u043e\u0437\u0433\u0438<\/p>\n<\/li>\n<li>\n<p>\u0422\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u0440\u043e\u0441\u0442\u044b\u0435 \u2014 \u0438\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u044b\u0435 \u0441\u0435\u0442\u0438 (\u043e\u0442 \u043f\u0440\u043e\u0441\u0442\u044b\u0445 \u0441\u0432\u0435\u0440\u0442\u043e\u0447\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439 \u0434\u043e Transformers \u0438 Mamba \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440)<\/p>\n<\/li>\n<\/ul>\n<p>\u041a\u0430\u0436\u0434\u044b\u0439 \u0442\u0438\u043f \u043e\u0431\u043b\u0430\u0434\u0430\u0435\u0442 \u0441\u0432\u043e\u0438\u043c\u0438 \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430\u043c\u0438 \u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u0430\u043c\u0438.<\/p>\n<p>\u0411\u0438\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043c\u043e\u0437\u0433\u0438 \u043e\u0431\u043b\u0430\u0434\u0430\u044e\u0442 \u0441\u0430\u043c\u043e\u0441\u043e\u0437\u043d\u0430\u043d\u0438\u0435\u043c, \u043e\u043f\u044b\u0442\u043e\u043c, \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0439 \u043f\u0430\u043c\u044f\u0442\u044c\u044e \u0438 \u043a\u0430\u0440\u0442\u0438\u043d\u043e\u0439 \u043c\u0438\u0440\u0430, \u043d\u043e \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u0435 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u0433\u043e\u0434\u044b, \u0443\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435 \u0438\u0437\u0443\u0447\u0435\u043d\u043d\u043e\u0433\u043e \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0430 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u043e, \u0430 \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043c\u0430\u043b\u044b.<\/p>\n<p>\u0418\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u0441\u0435\u0442\u0438 \u043e\u0431\u0443\u0447\u0430\u044e\u0442\u0441\u044f \u0431\u044b\u0441\u0442\u0440\u043e, \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u044b \u043e\u043f\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0438\u043c \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u043e\u043c \u0438 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e \u0430\u043f\u043f\u0440\u043e\u043a\u0441\u0438\u043c\u0438\u0440\u0443\u044e\u0442 \u0437\u0430\u0434\u0430\u0447\u0438, \u043d\u043e \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0441\u0430\u043c\u043e\u0441\u043e\u0437\u043d\u0430\u043d\u0438\u0435 \u0438 \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u043e\u043d\u0438 \u0434\u0435\u043b\u0430\u044e\u0442.<\/p>\n<p>\u041e\u0447\u0435\u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f AGI \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430 \u043e\u0431\u043e\u0438\u0445 \u0442\u0438\u043f\u043e\u0432 \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439. \u0412 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d \u0438\u043c\u0435\u043d\u043d\u043e \u0442\u0430\u043a\u043e\u0439 \u043f\u043e\u0434\u0445\u043e\u0434: \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043d\u0435\u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0435\u0442\u0438, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0441\u043e\u0447\u0435\u0442\u0430\u0435\u0442 \u0434\u043e\u0441\u0442\u043e\u0438\u043d\u0441\u0442\u0432\u0430 \u0431\u0438\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0438 \u0438\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c. \u041d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u0435\u0442\u0430\u043b\u0438 \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u043d\u043e \u0443\u043f\u0440\u043e\u0449\u0435\u043d\u044b, \u043d\u043e \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u044c \u043c\u0435\u0442\u043e\u0434\u0430 \u043d\u0435 \u0441\u0442\u0440\u0430\u0434\u0430\u0435\u0442, \u0447\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044e \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u0435\u0433\u043e \u043d\u0430 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430\u0445 \u0438\u043b\u0438 \u0432\u0438\u0434\u0435\u043e\u043a\u0430\u0440\u0442\u0430\u0445, \u0432\u044b\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445 \u0437\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u0434\u0435\u0441\u044f\u0442\u0438\u043b\u0435\u0442\u0438\u0435.<\/p>\n<p>\u0414\u043b\u044f \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u044f\u0437\u044b\u043a, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0439 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0435 \u043f\u0440\u0438\u0445\u043e\u0434\u044f \u0432 \u0441\u043e\u0437\u043d\u0430\u043d\u0438\u0435: Python (v3.10.14). \u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0430 \u0434\u043b\u044f \u0433\u0438\u0431\u043a\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u044b\u043c\u0438 \u0441\u0435\u0442\u044f\u043c\u0438 \u0432\u044b\u0431\u0435\u0440\u0435\u043c torch (v2.8.0), \u0430 \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0433\u0440\u0430\u0444\u043e\u0432 &#8212; networkx (v3.3). \u0422\u043e\u0447\u043d\u044b\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b: \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u043a\u043e\u0434 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0438 \u043d\u0430 \u0441\u043e\u0441\u0435\u0434\u043d\u0438\u0445 \u0432\u0435\u0440\u0441\u0438\u044f\u0445 \u044d\u0442\u0438\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a.<\/p>\n<p>\u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u044d\u0442\u0430\u043b\u043e\u043d\u0430 \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0440\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0432\u0430\u043d\u0438\u0435 \u0446\u0438\u0444\u0440 \u0438\u0437 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 MNIST. \u0414\u0430\u0442\u0430\u0441\u0435\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 70000 \u0440\u0430\u0437\u043c\u0435\u0447\u0435\u043d\u043d\u044b\u0445 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u0446\u0438\u0444\u0440 (0\u20119) \u0432 \u043e\u0442\u0442\u0435\u043d\u043a\u0430\u0445 \u0441\u0435\u0440\u043e\u0433\u043e, \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c 28\u044528 px, \u043e\u0431\u0449\u0438\u0439 \u043e\u0431\u044a\u0451\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e 12\u041c\u0411.<\/p>\n<p>\u041f\u0440\u043e\u0441\u0442\u044b\u0435 \u0442\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u0438 \u0438\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0442 \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c \u043e\u0442 80% \u0434\u043e 98%. \u0421\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0441\u0435\u0442\u0438, \u201c\u0437\u0430\u0442\u043e\u0447\u0435\u043d\u043d\u044b\u0435\u201d \u043f\u043e\u0434 \u0437\u0430\u0434\u0430\u0447\u0443, \u0434\u043e\u0441\u0442\u0438\u0433\u0430\u044e\u0442 99+% [<a href=\"https:\/\/arxiv.org\/abs\/2501.15547\" rel=\"noopener noreferrer nofollow\">1<\/a>].<\/p>\n<p>\u0421\u043b\u043e\u0436\u043d\u0430\u044f \u0442\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u044f (\u0447\u0435\u043b\u043e\u0432\u0435\u0447\u0435\u0441\u043a\u0438\u0439 \u043c\u043e\u0437\u0433) \u0432 \u0441\u0440\u0435\u0434\u043d\u0435\u043c \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u0443\u0435\u0442 \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c ~99.5\u201199.7% (\u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u0440\u0438\u0431\u043b\u0438\u0437\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0434\u0435\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u043d\u0430 \u043b\u044e\u0434\u044f\u0445 \u043f\u043e\u043a\u0430 \u0447\u0442\u043e \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u044b \u043d\u0435 \u0431\u044b\u043b\u0438).<\/p>\n<p>\u0414\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u043d\u0435\u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b \u0432\u043e\u0437\u044c\u043c\u0451\u043c \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043e\u0431\u0440\u0430\u0437\u0446\u0430 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0437\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u0440\u044b \u0433\u043e\u043b\u043e\u0432\u043d\u043e\u0433\u043e \u043c\u043e\u0437\u0433\u0430, \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u043d\u0443\u044e \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0432 \u0437\u0430\u0442\u044b\u043b\u043e\u0447\u043d\u044b\u0445 \u0434\u043e\u043b\u044f\u0445 \u043f\u043e\u043b\u0443\u0448\u0430\u0440\u0438\u0439. \u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b \u0437\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u0440\u044b \u0433\u043e\u043b\u043e\u0432\u043d\u043e\u0433\u043e \u043c\u043e\u0437\u0433\u0430:<\/p>\n<ul>\n<li>\n<p>\u041a\u043e\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0435 \u0441\u0442\u043e\u043b\u0431\u044b (\u043a\u043e\u043b\u043e\u043d\u043a\u0438) &#8212; \u0431\u0430\u0437\u043e\u0432\u044b\u0435 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f (~80\u2011120 \u043d\u0435\u0439\u0440\u043e\u043d\u043e\u0432), \u043f\u0440\u043e\u0445\u043e\u0434\u044f\u0449\u0438\u0435 \u0432\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u043e \u0447\u0435\u0440\u0435\u0437 \u0432\u0441\u0435 \u0441\u043b\u043e\u0438 \u043a\u043e\u0440\u044b [<a href=\"https:\/\/journals.plos.org\/ploscompbiol\/article?id=10.1371%2Fjournal.pcbi.1012036\" rel=\"noopener noreferrer nofollow\">2<\/a>]. \u0414\u0430\u043d\u043d\u044b\u0435 \u043a\u043e\u043b\u043e\u043d\u043a\u0438 \u043e\u0431\u0440\u0430\u0437\u0443\u044e\u0442 \u043c\u043e\u0434\u0443\u043b\u0438 &#8212; \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u0431\u043b\u043e\u043a\u0438, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0435 \u043f\u043e\u043b\u043d\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u043d\u0435\u0439\u0440\u043e\u043d\u043e\u0432 \u0434\u043b\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432\u0441\u0435\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u043e\u0440\u0438\u0435\u043d\u0442\u0430\u0446\u0438\u0439 \u043b\u0438\u043d\u0438\u0439 \u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0442 \u043e\u0431\u043e\u0438\u0445 \u0433\u043b\u0430\u0437 \u0432 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0435 \u043f\u043e\u043b\u044f \u0437\u0440\u0435\u043d\u0438\u044f [<a href=\"https:\/\/www.nature.com\/articles\/s41467-025-56780-3\" rel=\"noopener noreferrer nofollow\">3<\/a>].<\/p>\n<\/li>\n<li>\n<p>\u0421\u0432\u044f\u0437\u0438 \u043c\u0435\u0436\u0434\u0443 \u043a\u043e\u043b\u043e\u043d\u043a\u0430\u043c\u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u043f\u043e Small\u2011World \u0442\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u0438 [<a href=\"https:\/\/arxiv.org\/html\/2502.20411v2\" rel=\"noopener noreferrer nofollow\">4<\/a>]. \u042d\u0442\u0430 \u0442\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u044f \u0432 \u0432\u0438\u0434\u0435 \u0433\u0440\u0430\u0444\u0430 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u0432\u044b\u0441\u043e\u043a\u0443\u044e \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u044c \u043f\u0440\u0438 \u043d\u0438\u0437\u043a\u043e\u043c \u044d\u043d\u0435\u0440\u0433\u043e\u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0438 \u043c\u043e\u0437\u0433\u0430 [<a href=\"https:\/\/www.frontiersin.org\/journals\/systems-neuroscience\/articles\/10.3389\/fnsys.2025.1590743\/full\" rel=\"noopener noreferrer nofollow\">5<\/a>].<\/p>\n<\/li>\n<li>\n<p>\u0412\u043d\u0443\u0442\u0440\u0438 \u043a\u043e\u043b\u043e\u043d\u043a\u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u0442\u0441\u044f \u0447\u0435\u0440\u0435\u0437 \u0432\u043e\u0437\u0431\u0443\u0436\u0434\u0430\u044e\u0449\u0438\u0435 \u0438 \u0442\u043e\u0440\u043c\u043e\u0437\u044f\u0449\u0438\u0435 \u043f\u0443\u0442\u0438, \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043d\u0435\u0439\u0440\u043e\u043d\u0430\u043c\u0438 [<a href=\"https:\/\/www.nature.com\/articles\/s41598-025-03408-7\" rel=\"noopener noreferrer nofollow\">6<\/a>]. \u0411\u0430\u043b\u0430\u043d\u0441 \u0432\u043e\u0437\u0431\u0443\u0436\u0434\u0435\u043d\u0438\u044f\u2011\u0442\u043e\u0440\u043c\u043e\u0436\u0435\u043d\u0438\u044f (E\u2011I Balance) \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0444\u0443\u043d\u0434\u0430\u043c\u0435\u043d\u0442\u043e\u043c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0438 \u043f\u043e\u043c\u0435\u0445\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0439 \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u043e\u0439 \u0441\u0435\u043b\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438.<\/p>\n<\/li>\n<li>\n<p>\u041f\u043b\u0430\u0441\u0442\u0438\u0447\u043d\u043e\u0441\u0442\u044c \u0425\u0435\u0431\u0431\u0430 &#8212; \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u0441\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043d\u0435\u0439\u0440\u043e\u043d\u044b \u0443\u0441\u0438\u043b\u0438\u0432\u0430\u044e\u0442 \u0441\u0432\u043e\u0438 \u0441\u0438\u043d\u0430\u043f\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0441\u0432\u044f\u0437\u0438 [<a href=\"https:\/\/www.biorxiv.org\/content\/10.1101\/2025.11.07.687160v1.full.pdf\" rel=\"noopener noreferrer nofollow\">7<\/a>]. \u0422\u0430\u043a\u0430\u044f \u0441\u0438\u043d\u0430\u043f\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043f\u043b\u0430\u0441\u0442\u0438\u0447\u043d\u043e\u0441\u0442\u044c \u043b\u0435\u0436\u0438\u0442 \u0432 \u043e\u0441\u043d\u043e\u0432\u0435 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u0438 \u043d\u0430\u043a\u043e\u043f\u043b\u0435\u043d\u0438\u0438 \u043e\u043f\u044b\u0442\u0430 [<a href=\"https:\/\/arxiv.org\/pdf\/2406.04733\" rel=\"noopener noreferrer nofollow\">8<\/a>], \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043a\u0430\u043a \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e &#8212; \u0441\u044b\u043d \u043e\u0448\u0438\u0431\u043e\u043a \u0442\u0440\u0443\u0434\u043d\u044b\u0445.<\/p>\n<\/li>\n<li>\n<p>\u0412\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 \u043d\u0435\u0439\u0440\u043e\u043d\u0430\u043c\u0438 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043b\u0438\u043d\u0435\u0439\u043d\u043e, \u043d\u043e \u0438 \u0440\u0435\u043a\u0443\u0440\u0440\u0435\u043d\u0442\u043d\u043e [<a href=\"https:\/\/www.sciencedirect.com\/science\/article\/pii\/S1053811925001594\" rel=\"noopener noreferrer nofollow\">9<\/a>], \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442\u044c \u043f\u043e \u0432\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u043c \u043a\u043e\u043b\u043e\u043d\u043a\u0430\u043c \u043a\u0430\u043a \u0441\u0432\u0435\u0440\u0445\u0443\u2011\u0432\u043d\u0438\u0437, \u0442\u0430\u043a \u0438 \u0441\u043d\u0438\u0437\u0443\u2011\u0432\u0432\u0435\u0440\u0445 [<a href=\"https:\/\/pubmed.ncbi.nlm.nih.gov\/40208884\/\" rel=\"noopener noreferrer nofollow\">10<\/a>].<\/p>\n<\/li>\n<\/ul>\n<p>\u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u044d\u0442\u0443 \u0431\u0438\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0443 \u043d\u0430 \u0431\u0430\u0437\u0435 \u0438\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439 \u0441 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u043c \u0438\u0445 \u0433\u043b\u0430\u0432\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430 &#8212; \u0431\u044b\u0441\u0442\u0440\u043e\u0433\u043e \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u0437\u0430 \u0441\u0447\u0435\u0442 \u0433\u0440\u0430\u0434\u0438\u0435\u043d\u0442\u043e\u0432 \u0438 \u0431\u0430\u0442\u0447\u0435\u0439. \u041f\u043e\u0439\u0434\u0435\u043c \u043e \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u043a \u0441\u043b\u043e\u0436\u043d\u043e\u043c\u0443: \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u0444\u0430\u0439\u043b \u043f\u043e\u0434 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435\u043c <a href=\"http:\/\/brain.py\" rel=\"noopener noreferrer nofollow\"><code>brain.py<\/code><\/a> \u0438 \u0438\u043c\u043f\u043e\u0440\u0442\u0438\u0440\u0443\u0435\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u043f\u0430\u043a\u0435\u0442\u044b:<\/p>\n<pre><code class=\"python\">#!\/usr\/bin\/env python3import torchfrom torch import nnimport torch.nn.functional as Fimport networkx as nximport math<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:87px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043a\u043b\u0430\u0441\u0441 \u043a\u043e\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0441\u0442\u043e\u043b\u0431\u0430 \u0434\u043b\u044f \u043c\u043e\u0434\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043a\u043e\u043b\u043e\u043d\u043e\u043a \u043d\u0435\u0439\u0440\u043e\u043d\u043e\u0432 \u0432 \u043a\u043e\u0440\u0435 \u043c\u043e\u0437\u0433\u0430 \u0441 \u0431\u0430\u043b\u0430\u043d\u0441\u043e\u043c \u0432\u043e\u0437\u0431\u0443\u0436\u0434\u0435\u043d\u0438\u044f \u0438 \u0442\u043e\u0440\u043c\u043e\u0436\u0435\u043d\u0438\u044f.<\/p>\n<p>\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b:<\/p>\n<ol>\n<li>\n<p><code>fc_exc<\/code> &#8212; \u043b\u0438\u043d\u0435\u0439\u043d\u044b\u0439 \u0441\u043b\u043e\u0439 \u0434\u043b\u044f \u0432\u043e\u0437\u0431\u0443\u0436\u0434\u0430\u044e\u0449\u0438\u0445 \u043d\u0435\u0439\u0440\u043e\u043d\u043e\u0432. \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Kaiming Normal \u0438 \u0431\u0443\u0434\u0435\u043c \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u043e\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0441\u0438\u0433\u043d\u0430\u043b\u044b \u0447\u0435\u0440\u0435\u0437 ReLU \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u044e<\/p>\n<\/li>\n<li>\n<p><code>fc_inh<\/code> &#8212; \u043b\u0438\u043d\u0435\u0439\u043d\u044b\u0439 \u0441\u043b\u043e\u0439 \u0434\u043b\u044f \u0442\u043e\u0440\u043c\u043e\u0437\u044f\u0449\u0438\u0445 \u043d\u0435\u0439\u0440\u043e\u043d\u043e\u0432 \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Xavier Uniform\u0438 \u0431\u0443\u0434\u0435\u043c \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Sigmoid \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u0438<\/p>\n<\/li>\n<li>\n<p><code>e_i_ratio<\/code> &#8212; \u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442 \u0431\u0430\u043b\u0430\u043d\u0441\u0430 \u0432 \u0432\u0438\u0434\u0435 \u0441\u043e\u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044f \u0432\u043e\u0437\u0431\u0443\u0436\u0434\u0430\u044e\u0449\u0438\u0445 \u0438 \u0442\u043e\u0440\u043c\u043e\u0437\u044f\u0449\u0438\u0445 \u043d\u0435\u0439\u0440\u043e\u043d\u043e\u0432<\/p>\n<\/li>\n<li>\n<p><code>dropout<\/code> &#8212; \u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0449\u0438\u0439 \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0442\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0442\u044c dropout \u0441\u043b\u043e\u044e \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u043f\u0435\u0440\u0435\u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f<\/p>\n<\/li>\n<\/ol>\n<p>\u0423\u0447\u0442\u0435\u043c \u0442\u043e \u0447\u0442\u043e, \u0432 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u0440\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e 80 \u043f\u0440\u043e\u0446\u0435\u043d\u0442\u043e\u0432 \u043d\u0435\u0439\u0440\u043e\u043d\u043e\u0432 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0432\u043e\u0437\u0431\u0443\u0436\u0434\u0430\u044e\u0449\u0438\u043c\u0438 \u043f\u0438\u0440\u0430\u043c\u0438\u0434\u0430\u043b\u044c\u043d\u044b\u043c\u0438, \u0430 \u043e\u043a\u043e\u043b\u043e 20 \u043f\u0440\u043e\u0446\u0435\u043d\u0442\u043e\u0432 \u0442\u043e\u0440\u043c\u043e\u0437\u043d\u044b\u043c\u0438 \u043d\u0435\u0439\u0440\u043e\u043d\u0430\u043c\u0438. \u0422\u043e\u0440\u043c\u043e\u0437\u043d\u044b\u0435 \u043d\u0435\u0439\u0440\u043e\u043d\u044b \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u044e\u0442 \u043e\u0431\u0449\u0443\u044e \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u044c \u0441\u0435\u0442\u0438 \u0438 \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0449\u0430\u044e\u0442 \u0435\u0451 \u0447\u0440\u0435\u0437\u043c\u0435\u0440\u043d\u043e\u0435 \u0432\u043e\u0437\u0431\u0443\u0436\u0434\u0435\u043d\u0438\u0435. \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0438 \u043f\u0440\u043e\u0435\u043a\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u0441\u043b\u043e\u0439, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u0441\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c\u0441\u044f \u0441 \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044f\u043c\u0438, \u043a\u043e\u0433\u0434\u0430 \u0440\u0430\u0437\u043c\u0435\u0440\u043d\u043e\u0441\u0442\u0438 \u0432\u0445\u043e\u0434\u0430 \u0438 \u0432\u044b\u0445\u043e\u0434\u0430 \u043d\u0435 \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u044e\u0442.<\/p>\n<pre><code class=\"python\">class Column(nn.Module):    def __init__(self, in_feat: int, out_feat: int, e_i_ratio: float = 0.8, dropout: float = 0.1):        super().__init__()        self.fc_exc = nn.Linear(in_feat, out_feat, bias=False)        self.fc_inh = nn.Linear(in_feat, out_feat, bias=False)        self.norm = nn.LayerNorm(out_feat)        self.dropout = nn.Dropout(dropout)        self.e_i_ratio = e_i_ratio        nn.init.kaiming_normal_(self.fc_exc.weight, nonlinearity='relu')        nn.init.xavier_uniform_(self.fc_inh.weight)        self.use_projection = (in_feat != out_feat)        if self.use_projection:            self.projection = nn.Linear(in_feat, out_feat, bias=False)    def forward(self, x):        exc = F.relu(self.fc_exc(x))        inh = torch.sigmoid(self.fc_inh(x))        out = exc * (1.0 - self.e_i_ratio * inh)        if self.use_projection:            out = out + self.projection(x)        out = self.norm(out)        out = self.dropout(out)        return out<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u042d\u0442\u043e \u0431\u0430\u0437\u0430 \u043d\u0430\u0448\u0438\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439. \u0412\u0441\u044f \u043a\u043e\u0440\u0430 \u0433\u043e\u043b\u043e\u0432\u043d\u043e\u0433\u043e \u043c\u043e\u0437\u0433\u0430 \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0430 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0438\u0437 300\u043c\u043b\u043d \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0445 \u043a\u043e\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0445 \u043a\u043e\u043b\u043e\u043d\u043e\u043a (\u0443\u043f\u0440\u043e\u0449\u0435\u043d\u043d\u043e).<\/p>\n<p>\u0421\u0432\u044f\u0437\u044c \u043c\u0435\u0436\u0434\u0443 \u0442\u0430\u043a\u0438\u043c\u0438 \u043a\u043e\u043b\u043e\u043d\u043a\u0430\u043c\u0438 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0433\u0440\u0430\u0444\u0430 \u0442\u0438\u043f\u0430 Small-World. \u0421\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043c\u0430\u0442\u0440\u0438\u0446\u0443 \u0441\u043c\u0435\u0436\u043d\u043e\u0441\u0442\u0438 \u0433\u0440\u0430\u0444\u0430 \u043f\u043e Small-World \u043c\u043e\u0434\u0435\u043b\u0438 \u0423\u043e\u0442\u0442\u0441\u0430-\u0421\u0442\u0440\u043e\u0433\u0430\u0442\u0446\u0430 (Watts-Strogatz) \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u0430\u043a\u0435\u0442\u0430 networkx:<\/p>\n<p>\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b:<\/p>\n<ol>\n<li>\n<p><code>num_nodes<\/code> &#8212; \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u0432\u044f\u0437\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u043a\u043e\u043b\u043e\u043d\u043e\u043a<\/p>\n<\/li>\n<li>\n<p><code>k<\/code> &#8212; \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0431\u043b\u0438\u0436\u0430\u0439\u0448\u0438\u0445 \u0441\u043e\u0441\u0435\u0434\u0435\u0439 \u0432 \u043a\u043e\u043b\u044c\u0446\u0435 \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u0431\u0443\u0434\u0435\u0442 \u0441\u0432\u044f\u0437\u0430\u043d\u0430 \u043a\u043e\u043b\u043e\u043d\u043a\u0430<\/p>\n<\/li>\n<li>\n<p><code>p<\/code> &#8212; \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u043d\u0438\u044f \u0441\u0432\u044f\u0437\u0438<\/p>\n<\/li>\n<\/ol>\n<p>\u0421\u0442\u0440\u043e\u0438\u043c \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e\u0435 \u043a\u043e\u043b\u044c\u0446\u043e, \u043a\u0430\u0436\u0434\u0430\u044f \u043a\u043e\u043b\u043e\u043d\u043a\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0430 \u0441 k\/2 \u0441\u043e\u0441\u0435\u0434\u044f\u043c\u0438 \u0441\u043b\u0435\u0432\u0430 \u0438 \u0441\u043f\u0440\u0430\u0432\u0430. \u0421 \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u044c\u044e p \u043a\u0430\u0436\u0434\u0430\u044f \u0441\u0432\u044f\u0437\u044c \u0437\u0430\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u043d\u0430 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u0443\u044e (\u0441 \u0434\u0430\u043b\u044c\u043d\u0438\u043c \u0443\u0437\u043b\u043e\u043c). \u0422\u0430\u043a\u043e\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0442 \u0447\u0430\u0441\u0442\u044b\u0435 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0435 \u0441\u0432\u044f\u0437\u0438 \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0441\u0435\u0434\u043d\u0438\u043c\u0438 \u043e\u0431\u043b\u0430\u0441\u0442\u044f\u043c\u0438 \u0438 \u0440\u0435\u0434\u043a\u0438\u0435 \u0434\u0430\u043b\u044c\u043d\u0438\u0435 \u0441\u0432\u044f\u0437\u0438 \u043c\u0435\u0436\u0434\u0443 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u043c\u0438 \u0440\u0435\u0433\u0438\u043e\u043d\u0430\u043c\u0438.<\/p>\n<pre><code class=\"python\">def make_small_world(num_nodes: int, k: int = 4, p: float = 0.1) -&gt; torch.Tensor:    G = nx.watts_strogatz_graph(num_nodes, k, p)    adj = torch.zeros(num_nodes, num_nodes, dtype=torch.float32)    for i, j in G.edges():        adj[i, j] = 1.0        adj[j, i] = 1.0    return adj<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u042d\u0442\u043e \u043d\u0430\u0448\u0430 \u0442\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u044f \u0441\u0432\u044f\u0437\u0435\u0439 \u043c\u0435\u0436\u0434\u0443 \u043a\u043e\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u043a\u043e\u043b\u043e\u043d\u043a\u0430\u043c\u0438 \u0432\u043d\u0443\u0442\u0440\u0438 \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u043e\u0439 \u0441\u0435\u0442\u0438.<\/p>\n<p>\u041e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c\u044b\u0435 \u0441\u0438\u0433\u043d\u0430\u043b\u044b \u0438\u0437 \u0433\u0440\u0430\u0444\u0430 \u0431\u0443\u0434\u0435\u043c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u0432\u044b\u0447\u0438\u0441\u043b\u044f\u044e\u0449\u0435\u0433\u043e \u0432\u0435\u0441\u0430 \u0432\u0430\u0436\u043d\u043e\u0441\u0442\u0438 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 \u043e\u0442 \u0441\u043e\u0441\u0435\u0434\u043d\u0438\u0445 \u043a\u043e\u043b\u043e\u043d\u043e\u043a. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043a\u0430\u0436\u0434\u0430\u044f \u043a\u043e\u043b\u043e\u043d\u043a\u0430 \u0431\u0443\u0434\u0435\u0442 \u0441\u0430\u043c\u0430 \u0440\u0435\u0448\u0430\u0442\u044c, \u043a\u0430\u043a\u0438\u0435 \u0441\u043e\u0441\u0435\u0434\u0438 \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0440\u0435\u043b\u0435\u0432\u0430\u043d\u0442\u043d\u044b \u0434\u043b\u044f \u0435\u0451 \u0442\u0435\u043a\u0443\u0449\u0435\u0433\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0438 \u0443\u0441\u0438\u043b\u0438\u0432\u0430\u0442\u044c \u0438\u0445 \u0441\u0438\u0433\u043d\u0430\u043b\u044b.<\/p>\n<pre><code class=\"python\">class AttentionGate(nn.Module):    def __init__(self, dim: int):        super().__init__()        self.query = nn.Linear(dim, dim, bias=False)        self.key = nn.Linear(dim, dim, bias=False)        self.scale = math.sqrt(dim)        def forward(self, center: torch.Tensor, neighbors: torch.Tensor, adj_mask: torch.Tensor):        q = self.query(center).unsqueeze(1)        k = self.key(neighbors)        scores = torch.bmm(q, k.transpose(1, 2)) \/ self.scale        scores = scores.squeeze(1)        scores = scores.masked_fill(adj_mask.unsqueeze(0) == 0, -1e9)        weights = F.softmax(scores, dim=-1)        return weights<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u042d\u0442\u043e \u043d\u0430\u0448 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u044f.<\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u0432\u0441\u0435 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b \u0434\u043b\u044f \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043c\u0435\u0437\u043e\u043a\u043e\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u0443\u044e \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u0443\u044e \u0441\u0435\u0442\u044c.<\/p>\n<p>\u0421\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043c\u0430\u0441\u0441\u0438\u0432 \u043a\u043e\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0445 \u043a\u043e\u043b\u043e\u043d\u043e\u043a, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Small-World \u0433\u0440\u0430\u0444\u0430 \u0438 \u0431\u0443\u0434\u0435\u043c \u043e\u0431\u0443\u0447\u0430\u0442\u044c \u0435\u0433\u043e \u0432\u0435\u0441\u0430 \u0441\u0432\u044f\u0437\u0435\u0439 (adj_weight) \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0425\u0435\u0431\u0431\u0430, \u0430 \u0432\u0435\u0441\u0430 \u043d\u0435\u0439\u0440\u043e\u043d\u043e\u0432 \u0432\u043d\u0443\u0442\u0440\u0438 \u043a\u043e\u043b\u043e\u043d\u043e\u043a \u0431\u0443\u0434\u0435\u043c \u043e\u0431\u0443\u0447\u0430\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043c\u0435\u0442\u043e\u0434\u0430 \u0433\u0440\u0430\u0434\u0438\u0435\u043d\u0442\u043d\u043e\u0433\u043e \u0441\u043f\u0443\u0441\u043a\u0430. \u041a\u0430\u0436\u0434\u0430\u044f \u043a\u043e\u043b\u043e\u043d\u043a\u0430 \u0431\u0443\u0434\u0435\u0442 \u0441\u043b\u0443\u0448\u0430\u0442\u044c \u0441\u0432\u043e\u0438\u0445 \u0441\u043e\u0441\u0435\u0434\u0435\u0439, \u0430 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442\u044c, \u043e\u0442 \u043a\u043e\u0433\u043e \u0431\u0440\u0430\u0442\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e. \u041a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438 (decay_factor) \u0431\u0443\u0434\u0435\u0442 \u0441\u043b\u0435\u0434\u0438\u0442\u044c \u0437\u0430 \u0442\u0435\u043c \u0447\u0442\u043e\u0431\u044b \u0441\u0438\u0433\u043d\u0430\u043b\u044b \u043d\u0435 \u0437\u0430\u0442\u0443\u0445\u0430\u043b\u0438 \u0438 \u043d\u0435 \u201c\u0432\u0437\u0440\u044b\u0432\u0430\u043b\u0438\u201d \u0441\u0435\u0442\u044c.<\/p>\n<pre><code class=\"python\">class BrainNetwork(nn.Module):    def __init__(self,                 num_columns: int = 64,                 in_dim: int = 784,                 col_out: int = 128,                 top_out: int = 10,                 graph_k: int = 8,                 graph_p: float = 0.15,                 message_iters: int = 4,                 plasticity_lr: float = 5e-5,                 use_attention: bool = True,                 e_i_ratio: float = 0.8,                 dropout: float = 0.1):        super().__init__()        self.num_columns = num_columns        self.message_iters = message_iters        self.plasticity_lr = plasticity_lr        self.use_attention = use_attention        self.columns = nn.ModuleList([Column(in_dim, col_out, e_i_ratio=e_i_ratio, dropout=dropout) for _ in range(num_columns)])        if use_attention:            self.attention_gates = nn.ModuleList([AttentionGate(col_out) for _ in range(num_columns)])        adj_struct = make_small_world(num_columns, k=graph_k, p=graph_p)        self.register_buffer('adj_struct', adj_struct)        self.adj_weight = nn.Parameter(torch.randn(num_columns, num_columns) * 0.1)        self.register_buffer('activity_avg', torch.ones(num_columns))        self.homeostatic_rate = 0.01        self.intermediate = nn.Sequential(            nn.Linear(col_out, col_out),            nn.ReLU(),            nn.Dropout(dropout),            nn.LayerNorm(col_out)        )        self.top_fc = nn.Linear(col_out, top_out)    def _homeostatic_scaling(self, activations: torch.Tensor):        current_activity = activations.mean(dim=(0, 2))        with torch.no_grad():            self.activity_avg = (1 - self.homeostatic_rate) * self.activity_avg + self.homeostatic_rate * current_activity        scale = 1.0 \/ (self.activity_avg.unsqueeze(0).unsqueeze(2) + 1e-6)        return activations * scale.detach()    def _column_activations(self, x):        pre = torch.stack([col(x) for col in self.columns], dim=1)        w = torch.sigmoid(self.adj_weight)        adj = self.adj_struct * w        post = pre.clone()        decay_factor = 0.9        for iter_idx in range(self.message_iters):            if self.use_attention:                new_post = []                for col_idx in range(self.num_columns):                    center = post[:, col_idx, :]                    adj_mask = adj[col_idx]                    attn_weights = self.attention_gates[col_idx](                        center, post, adj_mask                    )                    neigh_msg = torch.einsum('bc,bcd-&gt;bd', attn_weights, post)                    new_col = F.relu(post[:, col_idx, :] + 0.2 * neigh_msg)                    new_post.append(new_col)                post = torch.stack(new_post, dim=1)            else:                neigh_msg = torch.einsum('ij,bjd-&gt;bid', adj, post)                post = F.relu(post + 0.2 * neigh_msg)            post = decay_factor * post + (1 - decay_factor) * pre        post = self._homeostatic_scaling(post)        return pre, post    def _hebb_update(self, pre_acts: torch.Tensor, post_acts: torch.Tensor):        pre = F.normalize(pre_acts.mean(dim=(0, 2)), dim=0)        post = F.normalize(post_acts.mean(dim=(0, 2)), dim=0)        delta_corr = torch.ger(pre, post)        delta_anti = -0.1 * torch.ger(post, post)        delta = delta_corr + delta_anti        delta = delta * self.adj_struct        with torch.no_grad():            self.adj_weight += self.plasticity_lr * delta            self.adj_weight.data = torch.tanh(self.adj_weight.data)    def forward(self, x):        _, post = self._column_activations(x)        pooled = torch.mean(post, dim=1)        features = self.intermediate(pooled)        logits = self.top_fc(features)        return logits    def training_step(self, batch):        x, y = batch        pre, post = self._column_activations(x)        pooled = torch.mean(post, dim=1)        features = self.intermediate(pooled)        logits = self.top_fc(features)        loss = F.cross_entropy(logits, y)        loss.backward()        self._hebb_update(pre.detach(), post.detach())        return loss<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041c\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u043d\u0435\u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u0443\u044e \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u0432\u0441\u0435\u0433\u043e \u0437\u0430 \u043f\u043e\u043b\u0442\u043e\u0440\u044b \u0441\u043e\u0442\u043d\u0438 \u0441\u0442\u0440\u043e\u043a \u043a\u043e\u0434\u0430 \u043d\u0435 \u0441\u0430\u043c\u043e\u0433\u043e \u0445\u043e\u0440\u043e\u0448\u0435\u0433\u043e \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0430. \u0412 \u043d\u0435\u0439 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0430\u043d\u0430\u043b\u043e\u0433\u0438 \u0431\u0438\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u043c\u043e\u0437\u0433\u0430, \u043d\u043e \u0438 \u0441\u0430\u043c\u043e \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432 \u0434\u0432\u0443\u0445 \u0440\u0435\u0436\u0438\u043c\u0430\u0445 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e:<\/p>\n<ul>\n<li>\n<p>Unsupervised (Hebbian): \u0430\u0434\u0430\u043f\u0442\u0438\u0440\u0443\u0435\u0442 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0433\u0440\u0430\u0444\u0430 \u0441\u0432\u044f\u0437\u0435\u0439. \u0422\u0430\u043a \u043e\u0431\u0443\u0447\u0430\u044e\u0442\u0441\u044f \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0431\u0438\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043c\u043e\u0437\u0433\u0430.<\/p>\n<\/li>\n<li>\n<p>Supervised (Backprop): \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u0443\u0435\u0442 \u0432\u0435\u0441\u0430 \u043a\u043e\u043b\u043e\u043d\u043e\u043a \u0438 \u043a\u043b\u0430\u0441\u0441\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u0430. \u0422\u0430\u043a \u043e\u0431\u0443\u0447\u0430\u044e\u0442\u0441\u044f \u0438\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u044b\u0435 \u0441\u0435\u0442\u0438.<\/p>\n<\/li>\n<\/ul>\n<p>\u041f\u0440\u0438\u0448\u043b\u043e \u0432\u0440\u0435\u043c\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u043f\u043e\u043b\u0443\u0447\u0438\u0432\u0448\u0443\u044e\u0441\u044f \u0441\u0435\u0442\u044c \u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435. \u0421\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u0432\u0442\u043e\u0440\u043e\u0439 \u0444\u0430\u0439\u043b \u043f\u043e\u0434 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435\u043c <a href=\"http:\/\/train.py\" rel=\"noopener noreferrer nofollow\"><code>train.py<\/code><\/a><\/p>\n<p>\u0412 \u043d\u0435\u043c \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043d\u0438\u0447\u0435\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0433\u043e \u043f\u043e\u0442\u043e\u043c\u0443 \u043e\u0431\u043e\u0439\u0434\u0435\u043c\u0441\u044f \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f\u043c\u0438 \u043f\u0440\u044f\u043c\u043e \u0432 \u043a\u043e\u0434\u0435:<\/p>\n<pre><code class=\"python\">#!\/usr\/bin\/env python3import torchfrom torchvision import datasets, transformsfrom torch.utils.data import DataLoaderfrom brain import BrainNetworkbatch_size = 128 # \u0440\u0430\u0437\u043c\u0435\u0440 \u0431\u0430\u0442\u0447\u0430, \u0434\u043b\u044f \u0440\u0430\u0441\u0447\u0435\u0442\u043e\u0432 \u043d\u0430 CPU \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u0435 \u0434\u043e 16-32epochs = 10 # \u043a\u043e\u043b\u0438\u0447\u0441\u0442\u0432\u043e \u044d\u043f\u043e\u0445learning_rate = 1e-3 # \u0448\u0430\u0433 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044fweight_decay = 1e-5 # L2-\u0440\u0435\u0433\u0443\u043b\u044f\u0440\u0438\u0437\u0430\u0446\u0438\u044f \u0432\u0435\u0441\u043e\u0432# \u0433\u0438\u043f\u0435\u0440\u043c\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043c\u043e\u0434\u0435\u043b\u0438hyperparams = {    \"num_columns\": 64, # \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043a\u043e\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0445 \u043a\u043e\u043b\u043e\u043d\u043e\u043a    \"in_dim\": 784,    \"col_out\": 128,    \"top_out\": 10,    \"graph_k\": 8,    \"graph_p\": 0.15,    \"message_iters\": 4,    \"plasticity_lr\": 5e-5}# \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c \u0434\u0430\u0442\u0430\u0441\u0435\u0442, \u043f\u0440\u0438 \u043f\u0435\u0440\u0432\u043e\u043c \u0437\u0430\u043f\u0443\u0441\u043a \u0435\u043e\u043d \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0441\u043a\u0430\u0447\u0430\u0435\u0442\u0441\u044ftransform = transforms.Compose([transforms.ToTensor(), transforms.Lambda(lambda x: x.view(-1))])train_set = datasets.MNIST(root='.', train=True, download=True, transform=transform)test_set  = datasets.MNIST(root='.', train=False, download=True, transform=transform)train_loader = DataLoader(train_set, batch_size=batch_size, shuffle=True)test_loader  = DataLoader(test_set , batch_size=batch_size, shuffle=False)# \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u043c\u043e\u0434\u0435\u043b\u044cdevice = torch.device('cuda' if torch.cuda.is_available() else 'cpu')model = BrainNetwork(**hyperparams).to(device)optimizer = torch.optim.AdamW(model.parameters(), lr=learning_rate, weight_decay=weight_decay)scheduler = torch.optim.lr_scheduler.CosineAnnealingLR(optimizer, T_max=len(train_loader)*12)# \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u043c \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u0435for epoch in range(1, epochs+1):    model.train()    for batch_idx, (x, y) in enumerate(train_loader, start=1):        x, y = x.to(device), y.to(device)        optimizer.zero_grad()        loss = model.training_step((x, y))        optimizer.step()        scheduler.step()        # \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u044b\u0432\u043e\u0434\u0438\u043c \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0443        if batch_idx % 100 == 0:            model.eval()            correct = total = 0            with torch.no_grad():                for x, y in test_loader:                    x, y = x.to(device), y.to(device)                    logits = model(x)                    preds = logits.argmax(dim=1)                    correct += (preds == y).sum().item()                    total += y.size(0)            acc = correct \/ total            print(f'Epoch {epoch:02d} [{batch_idx}\/{len(train_loader)}] Loss={loss.item():.4f} Test Accuracy={acc*100:.2f}%')# \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442state = {    \"epoch\": epoch,    \"model_state_dict\": model.state_dict(),    \"optimizer_state_dict\": optimizer.state_dict(),    \"loss\": loss.item(),    \"hyperparams\": hyperparams}torch.save(state, \"brain.pth\")<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u043c 64 \u043a\u043e\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0435 \u043a\u043e\u043b\u043e\u043d\u043a\u0438 \u043d\u0430 10 \u044d\u043f\u043e\u0445\u0430\u0445 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f: <code>python <\/code><a href=\"http:\/\/train.py\" rel=\"noopener noreferrer nofollow\"><code>train.py<\/code><\/a><\/p>\n<p>\u041a\u0430\u0436\u0434\u044b\u0435 100 \u0448\u0430\u0433\u043e\u0432 \u0431\u0443\u0434\u0443\u0442 \u0432\u044b\u0432\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u0434\u0430\u043d\u043d\u044b\u0435 \u043e \u0442\u0435\u043a\u0443\u0449\u0435\u043c \u0443\u0440\u043e\u0432\u043d\u0435 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f:<\/p>\n<pre><code>Epoch 01 [100\/469] Loss=0.2053 Test Accuracy=92.43%Epoch 01 [200\/469] Loss=0.1944 Test Accuracy=95.60%Epoch 01 [300\/469] Loss=0.0724 Test Accuracy=95.94%Epoch 01 [400\/469] Loss=0.1135 Test Accuracy=95.75%Epoch 02 [100\/469] Loss=0.0689 Test Accuracy=97.23%Epoch 02 [200\/469] Loss=0.0824 Test Accuracy=97.19%Epoch 02 [300\/469] Loss=0.0323 Test Accuracy=97.47%Epoch 02 [400\/469] Loss=0.0722 Test Accuracy=97.45%Epoch 03 [100\/469] Loss=0.0831 Test Accuracy=96.70%Epoch 03 [200\/469] Loss=0.0265 Test Accuracy=97.62%Epoch 03 [300\/469] Loss=0.0633 Test Accuracy=97.89%Epoch 03 [400\/469] Loss=0.0287 Test Accuracy=98.07%Epoch 04 [100\/469] Loss=0.0363 Test Accuracy=97.98%Epoch 04 [200\/469] Loss=0.0259 Test Accuracy=97.99%Epoch 04 [300\/469] Loss=0.0197 Test Accuracy=97.74%Epoch 04 [400\/469] Loss=0.0046 Test Accuracy=97.90%Epoch 05 [100\/469] Loss=0.0247 Test Accuracy=98.14%Epoch 05 [200\/469] Loss=0.0222 Test Accuracy=98.08%Epoch 05 [300\/469] Loss=0.0089 Test Accuracy=98.15%Epoch 05 [400\/469] Loss=0.0594 Test Accuracy=98.04%Epoch 06 [100\/469] Loss=0.0078 Test Accuracy=98.19%Epoch 06 [200\/469] Loss=0.0132 Test Accuracy=98.06%Epoch 06 [300\/469] Loss=0.0037 Test Accuracy=98.27%Epoch 06 [400\/469] Loss=0.0076 Test Accuracy=98.33%Epoch 07 [100\/469] Loss=0.0061 Test Accuracy=98.55%Epoch 07 [200\/469] Loss=0.0014 Test Accuracy=98.52%Epoch 07 [300\/469] Loss=0.0015 Test Accuracy=98.48%Epoch 07 [400\/469] Loss=0.0014 Test Accuracy=98.47%Epoch 08 [100\/469] Loss=0.0024 Test Accuracy=98.55%Epoch 08 [200\/469] Loss=0.0003 Test Accuracy=98.49%Epoch 08 [300\/469] Loss=0.0002 Test Accuracy=98.51%Epoch 08 [400\/469] Loss=0.0081 Test Accuracy=98.52%Epoch 09 [100\/469] Loss=0.0009 Test Accuracy=98.58%Epoch 09 [200\/469] Loss=0.0005 Test Accuracy=98.60%Epoch 09 [300\/469] Loss=0.0004 Test Accuracy=98.61%Epoch 09 [400\/469] Loss=0.0004 Test Accuracy=98.66%Epoch 10 [100\/469] Loss=0.0003 Test Accuracy=98.71%Epoch 10 [200\/469] Loss=0.0002 Test Accuracy=98.73%Epoch 10 [300\/469] Loss=0.0003 Test Accuracy=98.72%Epoch 10 [400\/469] Loss=0.0002 Test Accuracy=98.73%<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041e\u0431\u0443\u0447\u0435\u043d\u0438\u0435 \u043d\u0430 \u0432\u0438\u0434\u0435\u043e\u043a\u0430\u0440\u0442\u0435 \u043f\u043e\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043b\u043e \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e 3Gb \u0432\u0438\u0434\u0435\u043e\u043f\u0430\u043c\u044f\u0442\u0438 \u0438 \u0437\u0430\u043d\u044f\u043b\u043e 30 \u043c\u0438\u043d\u0443\u0442. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: 98.73% \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u0438 \u043d\u0430 \u0442\u0435\u0441\u0442\u043e\u0432\u044b\u0445 \u043e\u0431\u0440\u0430\u0437\u0446\u0430\u0445. \u041e\u0442\u043b\u0438\u0447\u043d\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439. \u0416\u0435\u043b\u0430\u044e\u0449\u0438\u0435 \u043c\u043e\u0433\u0443\u0442 \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u043e\u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e\u043c \u043a\u043e\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0445 \u043a\u043e\u043b\u043e\u043d \u0438 \u044d\u043f\u043e\u0445 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044f \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u0438 99+%<\/p>\n<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u0435 \u0431\u044b\u043b\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u0438 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0430 \u043d\u0435\u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u043d\u0435\u0439\u0440\u043e\u0441\u0435\u0442\u0435\u0432\u0430\u044f \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430, \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u043d\u0430 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0430\u0445 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u043a\u043e\u0440\u044b \u0433\u043e\u043b\u043e\u0432\u043d\u043e\u0433\u043e \u043c\u043e\u0437\u0433\u0430 \u043c\u043b\u0435\u043a\u043e\u043f\u0438\u0442\u0430\u044e\u0449\u0438\u0445. \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442, \u0447\u0442\u043e \u043a\u043b\u044e\u0447\u0435\u0432\u044b\u0435 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u044b \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0431\u0438\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043c\u043e\u0437\u0433\u0430, \u0442\u0430\u043a\u0438\u0435 \u043a\u0430\u043a \u043c\u043e\u0434\u0443\u043b\u044c\u043d\u0430\u044f \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430, \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043d\u0430\u044f \u043f\u043b\u0430\u0441\u0442\u0438\u0447\u043d\u043e\u0441\u0442\u044c \u0438 \u0431\u0430\u043b\u0430\u043d\u0441 \u043c\u0435\u0436\u0434\u0443 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u0438 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u043d\u043e\u0441\u0442\u044c\u044e, \u043c\u043e\u0433\u0443\u0442 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0432 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u043c \u043c\u0430\u0448\u0438\u043d\u043d\u043e\u043c \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u0438.<\/p>\n<p>\u041c\u043e\u0434\u0435\u043b\u044c \u043f\u0440\u043e\u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043b\u0430 \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c 98.73% \u043d\u0430 \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0439 \u0432\u044b\u0431\u043e\u0440\u043a\u0435 MNIST \u043f\u043e\u0441\u043b\u0435 10 \u044d\u043f\u043e\u0445 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f, \u0447\u0442\u043e \u0441\u043e\u043f\u043e\u0441\u0442\u0430\u0432\u0438\u043c\u043e \u0441 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u043c\u0438 \u043b\u0443\u0447\u0448\u0438\u0445 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0433\u043b\u0443\u0431\u043e\u043a\u0438\u0445 \u0441\u0432\u0435\u0440\u0442\u043e\u0447\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439 \u043d\u0430 \u0442\u043e\u043c \u0436\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0435 \u044d\u043f\u043e\u0445, \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0438\u0430\u043b\u044c\u043d\u043e \u0438\u043d\u0443\u044e \u043f\u0430\u0440\u0430\u0434\u0438\u0433\u043c\u0443 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f.<\/p>\n<p>\u0412 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u043c\u0435\u043d\u044f\u043b\u0438\u0441\u044c \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u043c\u043e\u0434\u0443\u043b\u0435\u0439 (\u043a\u043e\u043b\u043e\u043d\u043e\u043a), \u043d\u043e \u0438 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0441\u0430\u043c\u043e\u0439 \u0441\u0435\u0442\u0438, \u0442\u043e \u0435\u0441\u0442\u044c \u0441\u0432\u044f\u0437\u0438 \u043c\u0435\u0436\u0434\u0443 \u043c\u043e\u0434\u0443\u043b\u044f\u043c\u0438. \u041a\u043e\u043b\u043e\u043d\u043a\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043b\u0438\u0441\u044c \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u043f\u0440\u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u043f\u043e\u0445\u043e\u0436\u0438\u0445 \u0434\u0430\u043d\u043d\u044b\u0445, \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0443\u043a\u0440\u0435\u043f\u043b\u044f\u043b\u0438 \u0441\u0432\u044f\u0437\u0438 \u0434\u0440\u0443\u0433 \u0441 \u0434\u0440\u0443\u0433\u043e\u043c \u0438 \u043e\u0431\u0440\u0430\u0437\u043e\u0432\u044b\u0432\u0430\u043b\u0438 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0433\u0440\u0443\u043f\u043f\u044b. \u042d\u0442\u043e \u043f\u043e\u0445\u043e\u0436\u0435 \u043d\u0430 \u0442\u043e, \u043a\u0430\u043a \u0443\u0441\u0442\u0440\u043e\u0435\u043d \u0431\u0438\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043c\u043e\u0437\u0433: \u0442\u0430\u043c \u043d\u0435\u0439\u0440\u043e\u043d\u044b \u0442\u043e\u0436\u0435 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u044f\u044e\u0442\u0441\u044f \u0432 \u0433\u0440\u0443\u043f\u043f\u044b \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0445 \u0437\u0430\u0434\u0430\u0447.<\/p>\n<p>\u0422\u0435\u043a\u0443\u0449\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0441 64 \u043a\u043e\u043b\u043e\u043d\u043a\u0430\u043c\u0438 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0430 \u0434\u043e \u0441\u043e\u0442\u0435\u043d \u0438\u043b\u0438 \u0442\u044b\u0441\u044f\u0447 \u043c\u043e\u0434\u0443\u043b\u0435\u0439 \u0434\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0431\u043e\u043b\u0435\u0435 \u0441\u043b\u043e\u0436\u043d\u044b\u0445 \u0437\u0430\u0434\u0430\u0447, \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u043c\u0430\u043b\u043e\u0433\u043e \u043c\u0438\u0440\u0430 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0442 \u0441\u0443\u0431\u043a\u0432\u0430\u0434\u0440\u0430\u0442\u0438\u0447\u043d\u044b\u0439 \u0440\u043e\u0441\u0442 \u0447\u0438\u0441\u043b\u0430 \u0441\u0432\u044f\u0437\u0435\u0439, \u0447\u0442\u043e \u043a\u0440\u0438\u0442\u0438\u0447\u043d\u043e \u0434\u043b\u044f \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438.<\/p>\n<p>\u041d\u0435\u0441\u043c\u043e\u0442\u0440\u044f \u043d\u0430 \u043e\u0442\u043b\u0438\u0447\u043d\u044b\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u044d\u0442\u0430 \u043c\u043e\u0434\u0435\u043b\u044c \u043b\u0438\u0448\u044c \u043e\u0441\u043d\u043e\u0432\u0430, \u0431\u0430\u0437\u0430 \u0434\u043b\u044f \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0430 \u043a \u0431\u043e\u043b\u0435\u0435 \u201c\u0431\u0438\u043e\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u043c\u201d \u0438\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u044b\u043c \u0441\u0435\u0442\u044f\u043c \u043a\u043b\u0430\u0441\u0441\u0430 \u201c\u0411\u043e\u043b\u044c\u043d\u043e\u0439 \u0423\u0431\u043b\u044e\u0434\u043e\u043a\u201d, \u0443 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0432\u043e\u043e\u0431\u0449\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u044b\u0435 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u044b \u043c\u0430\u0448\u0438\u043d\u043d\u043e\u0433\u043e \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f, \u0442\u0430\u043a\u0438\u0435 \u043a\u0430\u043a \u0433\u0440\u0430\u0434\u0438\u0435\u043d\u0442\u044b, \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0435 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u043e\u0448\u0438\u0431\u043a\u0438 \u0438 \u0431\u0430\u0442\u0447\u0438\u043d\u0433. \u041d\u043e \u043e\u0431 \u044d\u0442\u043e\u043c \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0440\u0430\u0437.<\/p>\n<p>References<\/p>\n<ol>\n<li>\n<p><a href=\"https:\/\/arxiv.org\/abs\/2501.15547\" rel=\"noopener noreferrer nofollow\">Isong et al., Building Efficient Lightweight CNN Models, arXiv (2025)<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/journals.plos.org\/ploscompbiol\/article?id=10.1371%2Fjournal.pcbi.1012036\" rel=\"noopener noreferrer nofollow\">G. Moreni et al., Cell-type-specific firing patterns in a V1 cortical column model, PLoS Computational Biology (2025)<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/www.nature.com\/articles\/s41467-025-56780-3\" rel=\"noopener noreferrer nofollow\">P. Goltstein et al., A column-like organization for ocular dominance in mouse visual cortex, Nature (2025)<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/arxiv.org\/html\/2502.20411v2\" rel=\"noopener noreferrer nofollow\">M. Ghader at al., Backpropagation-free Spiking Neural Networks with the Forward-Forward Algorithm, arXiv (2025)<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/www.frontiersin.org\/journals\/systems-neuroscience\/articles\/10.3389\/fnsys.2025.1590743\/full\" rel=\"noopener noreferrer nofollow\">Y. A. Sugimoto et al., Network structure influences self-organized criticality in small-world brain networks, Frontiers in Systems Neuroscience (2025)<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/www.nature.com\/articles\/s41598-025-03408-7\" rel=\"noopener noreferrer nofollow\">J. Kilgore et al., Biologically-informed excitatory and inhibitory ratio for robust spiking neural network training, Nature (2025)<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/www.biorxiv.org\/content\/10.1101\/2025.11.07.687160v1.full.pdf\" rel=\"noopener noreferrer nofollow\">I. Ahokainen et al., A unified model of short- and long-term plasticity, bioRxiv (2025)<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/arxiv.org\/pdf\/2406.04733\" rel=\"noopener noreferrer nofollow\">N. Ravichandran et al., Unsupervised representation learning with Hebbian synaptic and structural plasticity in brain-like networks (2025)<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/www.sciencedirect.com\/science\/article\/pii\/S1053811925001594\" rel=\"noopener noreferrer nofollow\">R. Zhang et al., Dynamic grouping of ongoing activity in V1 hypercolumns, NeuroImage (2025)<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/pubmed.ncbi.nlm.nih.gov\/40208884\/\" rel=\"noopener noreferrer nofollow\">J. Trajkovic et al., Top-down and bottom-up interactions rely on nested brain oscillations to shape rhythmic visual attention sampling, Pubmed (2025)<\/a><\/p>\n<\/li>\n<\/ol>\n<\/div>\n<p>\u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/1045518\/\">https:\/\/habr.com\/ru\/articles\/1045518\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u0421\u0442\u0430\u0442\u044c\u044f \u043f\u0440\u0438\u0437\u0432\u0430\u043d\u0430 \u043f\u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044f \u0441 \u0442\u0435\u043c, \u043a\u0430\u043a \u0431\u0438\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u044b \u043c\u043e\u0433\u0443\u0442 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c\u0441\u044f \u043f\u0440\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0438\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u0438\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u043b\u043b\u0435\u043a\u0442\u0430 (AGI). \u0421\u0442\u0430\u0442\u044c\u044f \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0430 \u043c\u043d\u043e\u0439 \u0438 \u0440\u0430\u043d\u0435\u0435 \u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0430\u0441\u044c \u043d\u0430 LOR. \u0412\u044b\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u044e \u0435\u0451 \u0437\u0434\u0435\u0441\u044c \u0434\u043b\u044f \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u043e\u0445\u0432\u0430\u0442\u0430 \u0438 \u043e\u0431\u043c\u0435\u043d\u0430 \u043e\u043f\u044b\u0442\u043e\u043c \u0441 \u0445\u0430\u0431\u0440\u043e\u0432\u0447\u0430\u043d\u0430\u043c\u0438.\u0414\u043b\u044f \u043e\u043f\u0440\u0430\u0432\u0434\u0430\u043d\u0438\u044f \u043a\u043b\u0438\u043a\u0431\u0435\u0439\u0442\u043d\u043e\u0433\u043e \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0430 \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043a\u0440\u0430\u0442\u043a\u043e \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u044b\u0435 \u0441\u0435\u0442\u0438. \u0418\u0445 \u043c\u043e\u0436\u043d\u043e \u043a\u043b\u0430\u0441\u0441\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e \u0442\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:\u0422\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438 \u0441\u043b\u043e\u0436\u043d\u044b\u0435 \u2014 \u0431\u0438\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043c\u043e\u0437\u0433\u0438\u0422\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u0440\u043e\u0441\u0442\u044b\u0435 \u2014 \u0438\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u044b\u0435 \u0441\u0435\u0442\u0438 (\u043e\u0442 \u043f\u0440\u043e\u0441\u0442\u044b\u0445 \u0441\u0432\u0435\u0440\u0442\u043e\u0447\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439 \u0434\u043e Transformers \u0438 Mamba \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440)\u041a\u0430\u0436\u0434\u044b\u0439 \u0442\u0438\u043f \u043e\u0431\u043b\u0430\u0434\u0430\u0435\u0442 \u0441\u0432\u043e\u0438\u043c\u0438 \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430\u043c\u0438 \u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u0430\u043c\u0438.\u0411\u0438\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043c\u043e\u0437\u0433\u0438 \u043e\u0431\u043b\u0430\u0434\u0430\u044e\u0442 \u0441\u0430\u043c\u043e\u0441\u043e\u0437\u043d\u0430\u043d\u0438\u0435\u043c, \u043e\u043f\u044b\u0442\u043e\u043c, \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0439 \u043f\u0430\u043c\u044f\u0442\u044c\u044e \u0438 \u043a\u0430\u0440\u0442\u0438\u043d\u043e\u0439 \u043c\u0438\u0440\u0430, \u043d\u043e \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u0435 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u0433\u043e\u0434\u044b, \u0443\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435 \u0438\u0437\u0443\u0447\u0435\u043d\u043d\u043e\u0433\u043e \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0430 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u043e, \u0430 \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043c\u0430\u043b\u044b.\u0418\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u0441\u0435\u0442\u0438 \u043e\u0431\u0443\u0447\u0430\u044e\u0442\u0441\u044f \u0431\u044b\u0441\u0442\u0440\u043e, \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u044b \u043e\u043f\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0438\u043c \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u043e\u043c \u0438 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e \u0430\u043f\u043f\u0440\u043e\u043a\u0441\u0438\u043c\u0438\u0440\u0443\u044e\u0442 \u0437\u0430\u0434\u0430\u0447\u0438, \u043d\u043e \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0441\u0430\u043c\u043e\u0441\u043e\u0437\u043d\u0430\u043d\u0438\u0435 \u0438 \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u043e\u043d\u0438 \u0434\u0435\u043b\u0430\u044e\u0442.\u041e\u0447\u0435\u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f AGI \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430 \u043e\u0431\u043e\u0438\u0445 \u0442\u0438\u043f\u043e\u0432 \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439. \u0412 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d \u0438\u043c\u0435\u043d\u043d\u043e \u0442\u0430\u043a\u043e\u0439 \u043f\u043e\u0434\u0445\u043e\u0434: \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043d\u0435\u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0435\u0442\u0438, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0441\u043e\u0447\u0435\u0442\u0430\u0435\u0442 \u0434\u043e\u0441\u0442\u043e\u0438\u043d\u0441\u0442\u0432\u0430 \u0431\u0438\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0438 \u0438\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c. \u041d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u0435\u0442\u0430\u043b\u0438 \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u043d\u043e \u0443\u043f\u0440\u043e\u0449\u0435\u043d\u044b, \u043d\u043e \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u044c \u043c\u0435\u0442\u043e\u0434\u0430 \u043d\u0435 \u0441\u0442\u0440\u0430\u0434\u0430\u0435\u0442, \u0447\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044e \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u0435\u0433\u043e \u043d\u0430 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430\u0445 \u0438\u043b\u0438 \u0432\u0438\u0434\u0435\u043e\u043a\u0430\u0440\u0442\u0430\u0445, \u0432\u044b\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445 \u0437\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u0434\u0435\u0441\u044f\u0442\u0438\u043b\u0435\u0442\u0438\u0435.\u0414\u043b\u044f \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u044f\u0437\u044b\u043a, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0439 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0435 \u043f\u0440\u0438\u0445\u043e\u0434\u044f \u0432 \u0441\u043e\u0437\u043d\u0430\u043d\u0438\u0435: Python (v3.10.14). \u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0430 \u0434\u043b\u044f \u0433\u0438\u0431\u043a\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u044b\u043c\u0438 \u0441\u0435\u0442\u044f\u043c\u0438 \u0432\u044b\u0431\u0435\u0440\u0435\u043c torch (v2.8.0), \u0430 \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0433\u0440\u0430\u0444\u043e\u0432 &#8212; networkx (v3.3). \u0422\u043e\u0447\u043d\u044b\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b: \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u043a\u043e\u0434 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0438 \u043d\u0430 \u0441\u043e\u0441\u0435\u0434\u043d\u0438\u0445 \u0432\u0435\u0440\u0441\u0438\u044f\u0445 \u044d\u0442\u0438\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a.\u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u044d\u0442\u0430\u043b\u043e\u043d\u0430 \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0440\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0432\u0430\u043d\u0438\u0435 \u0446\u0438\u0444\u0440 \u0438\u0437 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430 MNIST. \u0414\u0430\u0442\u0430\u0441\u0435\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 70000 \u0440\u0430\u0437\u043c\u0435\u0447\u0435\u043d\u043d\u044b\u0445 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u0446\u0438\u0444\u0440 (0\u20119) \u0432 \u043e\u0442\u0442\u0435\u043d\u043a\u0430\u0445 \u0441\u0435\u0440\u043e\u0433\u043e, \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c 28\u044528 px, \u043e\u0431\u0449\u0438\u0439 \u043e\u0431\u044a\u0451\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e 12\u041c\u0411.\u041f\u0440\u043e\u0441\u0442\u044b\u0435 \u0442\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u0438 \u0438\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0442 \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c \u043e\u0442 80% \u0434\u043e 98%. \u0421\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0441\u0435\u0442\u0438, \u201c\u0437\u0430\u0442\u043e\u0447\u0435\u043d\u043d\u044b\u0435\u201d \u043f\u043e\u0434 \u0437\u0430\u0434\u0430\u0447\u0443, \u0434\u043e\u0441\u0442\u0438\u0433\u0430\u044e\u0442 99+% [1].\u0421\u043b\u043e\u0436\u043d\u0430\u044f \u0442\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u044f (\u0447\u0435\u043b\u043e\u0432\u0435\u0447\u0435\u0441\u043a\u0438\u0439 \u043c\u043e\u0437\u0433) \u0432 \u0441\u0440\u0435\u0434\u043d\u0435\u043c \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u0443\u0435\u0442 \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c ~99.5\u201199.7% (\u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u0440\u0438\u0431\u043b\u0438\u0437\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0434\u0435\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u043d\u0430 \u043b\u044e\u0434\u044f\u0445 \u043f\u043e\u043a\u0430 \u0447\u0442\u043e \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u044b \u043d\u0435 \u0431\u044b\u043b\u0438).\u0414\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u043d\u0435\u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b \u0432\u043e\u0437\u044c\u043c\u0451\u043c \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043e\u0431\u0440\u0430\u0437\u0446\u0430 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0437\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u0440\u044b \u0433\u043e\u043b\u043e\u0432\u043d\u043e\u0433\u043e \u043c\u043e\u0437\u0433\u0430, \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u043d\u0443\u044e \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0432 \u0437\u0430\u0442\u044b\u043b\u043e\u0447\u043d\u044b\u0445 \u0434\u043e\u043b\u044f\u0445 \u043f\u043e\u043b\u0443\u0448\u0430\u0440\u0438\u0439. \u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b \u0437\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u0440\u044b \u0433\u043e\u043b\u043e\u0432\u043d\u043e\u0433\u043e \u043c\u043e\u0437\u0433\u0430:\u041a\u043e\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0435 \u0441\u0442\u043e\u043b\u0431\u044b (\u043a\u043e\u043b\u043e\u043d\u043a\u0438) &#8212; \u0431\u0430\u0437\u043e\u0432\u044b\u0435 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f (~80\u2011120 \u043d\u0435\u0439\u0440\u043e\u043d\u043e\u0432), \u043f\u0440\u043e\u0445\u043e\u0434\u044f\u0449\u0438\u0435 \u0432\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u043e \u0447\u0435\u0440\u0435\u0437 \u0432\u0441\u0435 \u0441\u043b\u043e\u0438 \u043a\u043e\u0440\u044b [2]. \u0414\u0430\u043d\u043d\u044b\u0435 \u043a\u043e\u043b\u043e\u043d\u043a\u0438 \u043e\u0431\u0440\u0430\u0437\u0443\u044e\u0442 \u043c\u043e\u0434\u0443\u043b\u0438 &#8212; \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u0431\u043b\u043e\u043a\u0438, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0435 \u043f\u043e\u043b\u043d\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u043d\u0435\u0439\u0440\u043e\u043d\u043e\u0432 \u0434\u043b\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432\u0441\u0435\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u043e\u0440\u0438\u0435\u043d\u0442\u0430\u0446\u0438\u0439 \u043b\u0438\u043d\u0438\u0439 \u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0442 \u043e\u0431\u043e\u0438\u0445 \u0433\u043b\u0430\u0437 \u0432 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0435 \u043f\u043e\u043b\u044f \u0437\u0440\u0435\u043d\u0438\u044f [3].\u0421\u0432\u044f\u0437\u0438 \u043c\u0435\u0436\u0434\u0443 \u043a\u043e\u043b\u043e\u043d\u043a\u0430\u043c\u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u043f\u043e Small\u2011World \u0442\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u0438 [4]. \u042d\u0442\u0430 \u0442\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u044f \u0432 \u0432\u0438\u0434\u0435 \u0433\u0440\u0430\u0444\u0430 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u0432\u044b\u0441\u043e\u043a\u0443\u044e \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u044c \u043f\u0440\u0438 \u043d\u0438\u0437\u043a\u043e\u043c \u044d\u043d\u0435\u0440\u0433\u043e\u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0438 \u043c\u043e\u0437\u0433\u0430 [5].\u0412\u043d\u0443\u0442\u0440\u0438 \u043a\u043e\u043b\u043e\u043d\u043a\u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u0442\u0441\u044f \u0447\u0435\u0440\u0435\u0437 \u0432\u043e\u0437\u0431\u0443\u0436\u0434\u0430\u044e\u0449\u0438\u0435 \u0438 \u0442\u043e\u0440\u043c\u043e\u0437\u044f\u0449\u0438\u0435 \u043f\u0443\u0442\u0438, \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043d\u0435\u0439\u0440\u043e\u043d\u0430\u043c\u0438 [6]. \u0411\u0430\u043b\u0430\u043d\u0441 \u0432\u043e\u0437\u0431\u0443\u0436\u0434\u0435\u043d\u0438\u044f\u2011\u0442\u043e\u0440\u043c\u043e\u0436\u0435\u043d\u0438\u044f (E\u2011I Balance) \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0444\u0443\u043d\u0434\u0430\u043c\u0435\u043d\u0442\u043e\u043c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0438 \u043f\u043e\u043c\u0435\u0445\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0439 \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u043e\u0439 \u0441\u0435\u043b\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438.\u041f\u043b\u0430\u0441\u0442\u0438\u0447\u043d\u043e\u0441\u0442\u044c \u0425\u0435\u0431\u0431\u0430 &#8212; \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u0441\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043d\u0435\u0439\u0440\u043e\u043d\u044b \u0443\u0441\u0438\u043b\u0438\u0432\u0430\u044e\u0442 \u0441\u0432\u043e\u0438 \u0441\u0438\u043d\u0430\u043f\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0441\u0432\u044f\u0437\u0438 [7]. \u0422\u0430\u043a\u0430\u044f \u0441\u0438\u043d\u0430\u043f\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043f\u043b\u0430\u0441\u0442\u0438\u0447\u043d\u043e\u0441\u0442\u044c \u043b\u0435\u0436\u0438\u0442 \u0432 \u043e\u0441\u043d\u043e\u0432\u0435 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u0438 \u043d\u0430\u043a\u043e\u043f\u043b\u0435\u043d\u0438\u0438 \u043e\u043f\u044b\u0442\u0430 [8], \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043a\u0430\u043a \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e &#8212; \u0441\u044b\u043d \u043e\u0448\u0438\u0431\u043e\u043a \u0442\u0440\u0443\u0434\u043d\u044b\u0445.\u0412\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 \u043d\u0435\u0439\u0440\u043e\u043d\u0430\u043c\u0438 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043b\u0438\u043d\u0435\u0439\u043d\u043e, \u043d\u043e \u0438 \u0440\u0435\u043a\u0443\u0440\u0440\u0435\u043d\u0442\u043d\u043e [9], \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442\u044c \u043f\u043e \u0432\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u043c \u043a\u043e\u043b\u043e\u043d\u043a\u0430\u043c \u043a\u0430\u043a \u0441\u0432\u0435\u0440\u0445\u0443\u2011\u0432\u043d\u0438\u0437, \u0442\u0430\u043a \u0438 \u0441\u043d\u0438\u0437\u0443\u2011\u0432\u0432\u0435\u0440\u0445 [10].\u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u044d\u0442\u0443 \u0431\u0438\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0443 \u043d\u0430 \u0431\u0430\u0437\u0435 \u0438\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439 \u0441 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u043c \u0438\u0445 \u0433\u043b\u0430\u0432\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430 &#8212; \u0431\u044b\u0441\u0442\u0440\u043e\u0433\u043e \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u0437\u0430 \u0441\u0447\u0435\u0442 \u0433\u0440\u0430\u0434\u0438\u0435\u043d\u0442\u043e\u0432 \u0438 \u0431\u0430\u0442\u0447\u0435\u0439. \u041f\u043e\u0439\u0434\u0435\u043c \u043e \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u043a \u0441\u043b\u043e\u0436\u043d\u043e\u043c\u0443: \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u0444\u0430\u0439\u043b \u043f\u043e\u0434 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435\u043c brain.py \u0438 \u0438\u043c\u043f\u043e\u0440\u0442\u0438\u0440\u0443\u0435\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u043f\u0430\u043a\u0435\u0442\u044b:#!\/usr\/bin\/env python3import torchfrom torch import nnimport torch.nn.functional as Fimport networkx as nximport math\u0422\u0435\u043f\u0435\u0440\u044c \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043a\u043b\u0430\u0441\u0441 \u043a\u043e\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0441\u0442\u043e\u043b\u0431\u0430 \u0434\u043b\u044f \u043c\u043e\u0434\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043a\u043e\u043b\u043e\u043d\u043e\u043a \u043d\u0435\u0439\u0440\u043e\u043d\u043e\u0432 \u0432 \u043a\u043e\u0440\u0435 \u043c\u043e\u0437\u0433\u0430 \u0441 \u0431\u0430\u043b\u0430\u043d\u0441\u043e\u043c \u0432\u043e\u0437\u0431\u0443\u0436\u0434\u0435\u043d\u0438\u044f \u0438 \u0442\u043e\u0440\u043c\u043e\u0436\u0435\u043d\u0438\u044f.\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b:fc_exc &#8212; \u043b\u0438\u043d\u0435\u0439\u043d\u044b\u0439 \u0441\u043b\u043e\u0439 \u0434\u043b\u044f \u0432\u043e\u0437\u0431\u0443\u0436\u0434\u0430\u044e\u0449\u0438\u0445 \u043d\u0435\u0439\u0440\u043e\u043d\u043e\u0432. \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Kaiming Normal \u0438 \u0431\u0443\u0434\u0435\u043c \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u043e\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0441\u0438\u0433\u043d\u0430\u043b\u044b \u0447\u0435\u0440\u0435\u0437 ReLU \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u044efc_inh &#8212; \u043b\u0438\u043d\u0435\u0439\u043d\u044b\u0439 \u0441\u043b\u043e\u0439 \u0434\u043b\u044f \u0442\u043e\u0440\u043c\u043e\u0437\u044f\u0449\u0438\u0445 \u043d\u0435\u0439\u0440\u043e\u043d\u043e\u0432 \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Xavier Uniform\u0438 \u0431\u0443\u0434\u0435\u043c \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Sigmoid \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u0438e_i_ratio &#8212; \u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442 \u0431\u0430\u043b\u0430\u043d\u0441\u0430 \u0432 \u0432\u0438\u0434\u0435 \u0441\u043e\u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044f \u0432\u043e\u0437\u0431\u0443\u0436\u0434\u0430\u044e\u0449\u0438\u0445 \u0438 \u0442\u043e\u0440\u043c\u043e\u0437\u044f\u0449\u0438\u0445 \u043d\u0435\u0439\u0440\u043e\u043d\u043e\u0432dropout &#8212; \u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0449\u0438\u0439 \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0442\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0442\u044c dropout \u0441\u043b\u043e\u044e \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u043f\u0435\u0440\u0435\u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f\u0423\u0447\u0442\u0435\u043c \u0442\u043e \u0447\u0442\u043e, \u0432 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u0440\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e 80 \u043f\u0440\u043e\u0446\u0435\u043d\u0442\u043e\u0432 \u043d\u0435\u0439\u0440\u043e\u043d\u043e\u0432 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0432\u043e\u0437\u0431\u0443\u0436\u0434\u0430\u044e\u0449\u0438\u043c\u0438 \u043f\u0438\u0440\u0430\u043c\u0438\u0434\u0430\u043b\u044c\u043d\u044b\u043c\u0438, \u0430 \u043e\u043a\u043e\u043b\u043e 20 \u043f\u0440\u043e\u0446\u0435\u043d\u0442\u043e\u0432 \u0442\u043e\u0440\u043c\u043e\u0437\u043d\u044b\u043c\u0438 \u043d\u0435\u0439\u0440\u043e\u043d\u0430\u043c\u0438. \u0422\u043e\u0440\u043c\u043e\u0437\u043d\u044b\u0435 \u043d\u0435\u0439\u0440\u043e\u043d\u044b \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u044e\u0442 \u043e\u0431\u0449\u0443\u044e \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u044c \u0441\u0435\u0442\u0438 \u0438 \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0449\u0430\u044e\u0442 \u0435\u0451 \u0447\u0440\u0435\u0437\u043c\u0435\u0440\u043d\u043e\u0435 \u0432\u043e\u0437\u0431\u0443\u0436\u0434\u0435\u043d\u0438\u0435. \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0438 \u043f\u0440\u043e\u0435\u043a\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u0441\u043b\u043e\u0439, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u0441\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c\u0441\u044f \u0441 \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044f\u043c\u0438, \u043a\u043e\u0433\u0434\u0430 \u0440\u0430\u0437\u043c\u0435\u0440\u043d\u043e\u0441\u0442\u0438 \u0432\u0445\u043e\u0434\u0430 \u0438 \u0432\u044b\u0445\u043e\u0434\u0430 \u043d\u0435 \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u044e\u0442.class Column(nn.Module):    def __init__(self, in_feat: int, out_feat: int, e_i_ratio: float = 0.8, dropout: float = 0.1):        super().__init__()        self.fc_exc = nn.Linear(in_feat, out_feat, bias=False)        self.fc_inh = nn.Linear(in_feat, out_feat, bias=False)        self.norm = nn.LayerNorm(out_feat)        self.dropout = nn.Dropout(dropout)        self.e_i_ratio = e_i_ratio        nn.init.kaiming_normal_(self.fc_exc.weight, nonlinearity=&#8217;relu&#8217;)        nn.init.xavier_uniform_(self.fc_inh.weight)        self.use_projection = (in_feat != out_feat)        if self.use_projection:            self.projection = nn.Linear(in_feat, out_feat, bias=False)    def forward(self, x):        exc = F.relu(self.fc_exc(x))        inh = torch.sigmoid(self.fc_inh(x))        out = exc * (1.0 &#8212; self.e_i_ratio * inh)        if self.use_projection:            out = out + self.projection(x)        out = self.norm(out)        out = self.dropout(out)        return out\u042d\u0442\u043e \u0431\u0430\u0437\u0430 \u043d\u0430\u0448\u0438\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439. \u0412\u0441\u044f \u043a\u043e\u0440\u0430 \u0433\u043e\u043b\u043e\u0432\u043d\u043e\u0433\u043e \u043c\u043e\u0437\u0433\u0430 \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0430 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0438\u0437 300\u043c\u043b\u043d \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0445 \u043a\u043e\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0445 \u043a\u043e\u043b\u043e\u043d\u043e\u043a (\u0443\u043f\u0440\u043e\u0449\u0435\u043d\u043d\u043e).\u0421\u0432\u044f\u0437\u044c \u043c\u0435\u0436\u0434\u0443 \u0442\u0430\u043a\u0438\u043c\u0438 \u043a\u043e\u043b\u043e\u043d\u043a\u0430\u043c\u0438 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0433\u0440\u0430\u0444\u0430 \u0442\u0438\u043f\u0430 Small-World. \u0421\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043c\u0430\u0442\u0440\u0438\u0446\u0443 \u0441\u043c\u0435\u0436\u043d\u043e\u0441\u0442\u0438 \u0433\u0440\u0430\u0444\u0430 \u043f\u043e Small-World \u043c\u043e\u0434\u0435\u043b\u0438 \u0423\u043e\u0442\u0442\u0441\u0430-\u0421\u0442\u0440\u043e\u0433\u0430\u0442\u0446\u0430 (Watts-Strogatz) \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u0430\u043a\u0435\u0442\u0430 networkx:\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b:num_nodes &#8212; \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u0432\u044f\u0437\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u043a\u043e\u043b\u043e\u043d\u043e\u043ak &#8212; \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0431\u043b\u0438\u0436\u0430\u0439\u0448\u0438\u0445 \u0441\u043e\u0441\u0435\u0434\u0435\u0439 \u0432 \u043a\u043e\u043b\u044c\u0446\u0435 \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u0431\u0443\u0434\u0435\u0442 \u0441\u0432\u044f\u0437\u0430\u043d\u0430 \u043a\u043e\u043b\u043e\u043d\u043a\u0430p &#8212; \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u043d\u0438\u044f \u0441\u0432\u044f\u0437\u0438\u0421\u0442\u0440\u043e\u0438\u043c \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e\u0435 \u043a\u043e\u043b\u044c\u0446\u043e, \u043a\u0430\u0436\u0434\u0430\u044f \u043a\u043e\u043b\u043e\u043d\u043a\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0430 \u0441 k\/2 \u0441\u043e\u0441\u0435\u0434\u044f\u043c\u0438 \u0441\u043b\u0435\u0432\u0430 \u0438 \u0441\u043f\u0440\u0430\u0432\u0430. \u0421 \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u044c\u044e p \u043a\u0430\u0436\u0434\u0430\u044f \u0441\u0432\u044f\u0437\u044c \u0437\u0430\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u043d\u0430 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u0443\u044e (\u0441 \u0434\u0430\u043b\u044c\u043d\u0438\u043c \u0443\u0437\u043b\u043e\u043c). \u0422\u0430\u043a\u043e\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0442 \u0447\u0430\u0441\u0442\u044b\u0435 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0435 \u0441\u0432\u044f\u0437\u0438 \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0441\u0435\u0434\u043d\u0438\u043c\u0438 \u043e\u0431\u043b\u0430\u0441\u0442\u044f\u043c\u0438 \u0438 \u0440\u0435\u0434\u043a\u0438\u0435 \u0434\u0430\u043b\u044c\u043d\u0438\u0435 \u0441\u0432\u044f\u0437\u0438 \u043c\u0435\u0436\u0434\u0443 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u043c\u0438 \u0440\u0435\u0433\u0438\u043e\u043d\u0430\u043c\u0438.def make_small_world(num_nodes: int, k: int = 4, p: float = 0.1) -&gt; torch.Tensor:    G = nx.watts_strogatz_graph(num_nodes, k, p)    adj = torch.zeros(num_nodes, num_nodes, dtype=torch.float32)    for i, j in G.edges():        adj[i, j] = 1.0        adj[j, i] = 1.0    return adj\u042d\u0442\u043e \u043d\u0430\u0448\u0430 \u0442\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u044f \u0441\u0432\u044f\u0437\u0435\u0439 \u043c\u0435\u0436\u0434\u0443 \u043a\u043e\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u043a\u043e\u043b\u043e\u043d\u043a\u0430\u043c\u0438 \u0432\u043d\u0443\u0442\u0440\u0438 \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u043e\u0439 \u0441\u0435\u0442\u0438.\u041e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c\u044b\u0435 \u0441\u0438\u0433\u043d\u0430\u043b\u044b \u0438\u0437 \u0433\u0440\u0430\u0444\u0430 \u0431\u0443\u0434\u0435\u043c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u0432\u044b\u0447\u0438\u0441\u043b\u044f\u044e\u0449\u0435\u0433\u043e \u0432\u0435\u0441\u0430 \u0432\u0430\u0436\u043d\u043e\u0441\u0442\u0438 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 \u043e\u0442 \u0441\u043e\u0441\u0435\u0434\u043d\u0438\u0445 \u043a\u043e\u043b\u043e\u043d\u043e\u043a. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043a\u0430\u0436\u0434\u0430\u044f \u043a\u043e\u043b\u043e\u043d\u043a\u0430 \u0431\u0443\u0434\u0435\u0442 \u0441\u0430\u043c\u0430 \u0440\u0435\u0448\u0430\u0442\u044c, \u043a\u0430\u043a\u0438\u0435 \u0441\u043e\u0441\u0435\u0434\u0438 \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0440\u0435\u043b\u0435\u0432\u0430\u043d\u0442\u043d\u044b \u0434\u043b\u044f \u0435\u0451 \u0442\u0435\u043a\u0443\u0449\u0435\u0433\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0438 \u0443\u0441\u0438\u043b\u0438\u0432\u0430\u0442\u044c \u0438\u0445 \u0441\u0438\u0433\u043d\u0430\u043b\u044b.class AttentionGate(nn.Module):    def __init__(self, dim: int):        super().__init__()        self.query = nn.Linear(dim, dim, bias=False)        self.key = nn.Linear(dim, dim, bias=False)        self.scale = math.sqrt(dim)        def forward(self, center: torch.Tensor, neighbors: torch.Tensor, adj_mask: torch.Tensor):        q = self.query(center).unsqueeze(1)        k = self.key(neighbors)        scores = torch.bmm(q, k.transpose(1, 2)) \/ self.scale        scores = scores.squeeze(1)        scores = scores.masked_fill(adj_mask.unsqueeze(0) == 0, -1e9)        weights = F.softmax(scores, dim=-1)        return weights\u042d\u0442\u043e \u043d\u0430\u0448 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u044f.\u0422\u0435\u043f\u0435\u0440\u044c \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u0432\u0441\u0435 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b \u0434\u043b\u044f \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043c\u0435\u0437\u043e\u043a\u043e\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u0443\u044e \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u0443\u044e \u0441\u0435\u0442\u044c.\u0421\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043c\u0430\u0441\u0441\u0438\u0432 \u043a\u043e\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0445 \u043a\u043e\u043b\u043e\u043d\u043e\u043a, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Small-World \u0433\u0440\u0430\u0444\u0430 \u0438 \u0431\u0443\u0434\u0435\u043c \u043e\u0431\u0443\u0447\u0430\u0442\u044c \u0435\u0433\u043e \u0432\u0435\u0441\u0430 \u0441\u0432\u044f\u0437\u0435\u0439 (adj_weight) \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0425\u0435\u0431\u0431\u0430, \u0430 \u0432\u0435\u0441\u0430 \u043d\u0435\u0439\u0440\u043e\u043d\u043e\u0432 \u0432\u043d\u0443\u0442\u0440\u0438 \u043a\u043e\u043b\u043e\u043d\u043e\u043a \u0431\u0443\u0434\u0435\u043c \u043e\u0431\u0443\u0447\u0430\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043c\u0435\u0442\u043e\u0434\u0430 \u0433\u0440\u0430\u0434\u0438\u0435\u043d\u0442\u043d\u043e\u0433\u043e \u0441\u043f\u0443\u0441\u043a\u0430. \u041a\u0430\u0436\u0434\u0430\u044f \u043a\u043e\u043b\u043e\u043d\u043a\u0430 \u0431\u0443\u0434\u0435\u0442 \u0441\u043b\u0443\u0448\u0430\u0442\u044c \u0441\u0432\u043e\u0438\u0445 \u0441\u043e\u0441\u0435\u0434\u0435\u0439, \u0430 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442\u044c, \u043e\u0442 \u043a\u043e\u0433\u043e \u0431\u0440\u0430\u0442\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e. \u041a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438 (decay_factor) \u0431\u0443\u0434\u0435\u0442 \u0441\u043b\u0435\u0434\u0438\u0442\u044c \u0437\u0430 \u0442\u0435\u043c \u0447\u0442\u043e\u0431\u044b \u0441\u0438\u0433\u043d\u0430\u043b\u044b \u043d\u0435 \u0437\u0430\u0442\u0443\u0445\u0430\u043b\u0438 \u0438 \u043d\u0435 \u201c\u0432\u0437\u0440\u044b\u0432\u0430\u043b\u0438\u201d \u0441\u0435\u0442\u044c.class BrainNetwork(nn.Module):    def __init__(self,                 num_columns: int = 64,                 in_dim: int = 784,                 col_out: int = 128,                 top_out: int = 10,                 graph_k: int = 8,                 graph_p: float = 0.15,                 message_iters: int = 4,                 plasticity_lr: float = 5e-5,                 use_attention: bool = True,                 e_i_ratio: float = 0.8,                 dropout: float = 0.1):        super().__init__()        self.num_columns = num_columns        self.message_iters = message_iters        self.plasticity_lr = plasticity_lr        self.use_attention = use_attention        self.columns = nn.ModuleList([Column(in_dim, col_out, e_i_ratio=e_i_ratio, dropout=dropout) for _ in range(num_columns)])        if use_attention:            self.attention_gates = nn.ModuleList([AttentionGate(col_out) for _ in range(num_columns)])        adj_struct = make_small_world(num_columns, k=graph_k, p=graph_p)        self.register_buffer(&#8216;adj_struct&#8217;, adj_struct)        self.adj_weight = nn.Parameter(torch.randn(num_columns, num_columns) * 0.1)        self.register_buffer(&#8216;activity_avg&#8217;, torch.ones(num_columns))        self.homeostatic_rate = 0.01        self.intermediate = nn.Sequential(&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-483001","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/483001","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=483001"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/483001\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=483001"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=483001"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=483001"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}