{"id":26758513,"url":"https://github.com/wdevore/deuron8-go","last_synced_at":"2025-03-28T16:29:24.003Z","repository":{"id":57543178,"uuid":"236216265","full_name":"wdevore/Deuron8-Go","owner":"wdevore","description":"Deuron8 implemented in Go","archived":false,"fork":false,"pushed_at":"2021-08-20T01:54:38.000Z","size":442,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-06-20T08:17:23.112Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wdevore.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-01-25T19:07:18.000Z","updated_at":"2024-06-20T08:17:23.112Z","dependencies_parsed_at":"2022-08-27T18:50:32.861Z","dependency_job_id":null,"html_url":"https://github.com/wdevore/Deuron8-Go","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wdevore%2FDeuron8-Go","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wdevore%2FDeuron8-Go/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wdevore%2FDeuron8-Go/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wdevore%2FDeuron8-Go/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wdevore","download_url":"https://codeload.github.com/wdevore/Deuron8-Go/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246062220,"owners_count":20717579,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-03-28T16:29:20.708Z","updated_at":"2025-03-28T16:29:23.447Z","avatar_url":"https://github.com/wdevore.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Deuron 8 written in Go\n\n![Deuron](Deuron8-Go.png)\n\n# Simulation\nThe simulation makes two \"passes\" through the network for each\ntime step. Each step equals 10? microseconds.\n\nEach simulation step works on the previous input. Each component\nmaintains an internal *current-state* and *next-state*.\n\nThe first pass exercises the inputs on each neuron.\n\nThe second pass moves the results of the first pass to the neuron's output. Note: the output of one neuron is the input of another, except for stimulus.\n\n# Folders\n* Deuron8-Go\n    * api: the main api for the network approach\n    * config:\n    * examples:\n    * log:\n    * neuron_simulation: see folder [readme.md](neuron_simulation/readme.md)\n    * simulation:\n    * tests:\n    * tools:\n\n# Tasks\n## Synaptic properties\n\nAt the start of a simulation the model is configured according to the initializer choice. The model is then copied to the runtime and the simulation is started. Once the simulation is complete the runtime is copied back to the model. The model can then be saved to **synapses.json**\n\nTypes of initializations possible:\n* *Preset*: the synaptic properties are reset back to a set of Presets values from a fixed **synapsed_presets_*N*.json**.\n* *Current*: the synaptic properties are not changed but continue forward. Any changes made to the model are used in the next simulation.\n* *Random*: the synaptic properties are randomly changed prior to simulation. The only property currently supported is Weight.\n\n## Applications\n### Generators\nA generator program will create json files for synapses. It reads a configuration json file to drive the generator. The generated file can be used by the simulator as a preset.\n\n### Neuron simulator\nThis application simulates a single neuron.\nIt is located in the *neuron_simulation/app* folder\nExecuted as:\n```\ngo run .\n```\n\n## Notes:\n\n# Learning\nThe goal is to *try* and learn a pattern out of a Set. The Set size is 2 ot 3 patterns.\n\n* Synapse #2 properties may be a good representative for other synapses\n* Add two or more stimulus patterns\n\n# Short term plasticity (STP)\nSTD/STF ... Articles:\n* x\n\n# Memory retention\n* Add memory retention functionality. See **https://www.desmos.com/calculator/aj3e3r7ajf** for an equation.\n\nRetension can last for 10s ms to days or even permanent.\nMemory can be at the Soma or Synapse\n\n# Misc\nThe weights are typically the short term memory until learning **Effort** is increased.\nThe other parameters, for example Tao, are controlled by a Meta system (EA for example). They are the slower changing parms that represent the charateristics of the neuron but also represent information at a meta level.\n\nWe have two json files: A Preset that can't be saved over and a version that is overlayed at the end of a simulation.\n\nadd random property generators, for example, randomly generate weights centered around a fixed value with a mean variance. Zero is a typical center value.\nmaybe have a listbox that you choose a property then select a max variance and center value. There could be presets.\n\nEach time the sim starts we check if we use the fixed defaults, the current\nweights or random values.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwdevore%2Fdeuron8-go","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwdevore%2Fdeuron8-go","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwdevore%2Fdeuron8-go/lists"}