ViciousSquid/Dosidicus

Raise a neural network as a pet - a transparent cognitive sandbox where a digital squid learns, grows, and rewires itself via Hebbian learning & Neurogenesis

什么是Dosidicus?

Dosidicus electronicus是一个开源的、基于Python的模拟项目,让你养育一只大脑是微小且完全透明的神经网络的数字宠物鱿鱼。该项目定位为教育性神经工具和模拟游戏:你可以喂食、清洁和与鱿鱼互动,同时观察每个神经元放电、每个突触变化,以及学习过程中出现的新神经元。

核心概念

  • 八神经元初始大脑 – 七个“驱动力”(饥饿、好奇心等)加上一个感觉输入。网络仅在现有结构无法解决任务时才生成新神经元。
  • 生物启发式学习 – 赫布更新和脉冲时间依赖可塑性(STDP)用纯NumPy实现(见src/plasticity.py)。每次权重变化都会记录什么导致、为什么发生以及哪种经验触发了它。
  • 完整溯源 – 系统为每次突触修改和每个新创建的神经元记录人类可读的解释,因此你可以提出诸如“这个权重为什么从0.31变到0.47?”的问题。
  • 双记忆系统 – 短期和长期存储让鱿鱼能随时间保留经验。
  • 可扩展引擎(STRINg) – 一个自制的模拟核心,完全用NumPy构建,不依赖TensorFlow/PyTorch。同一引擎驱动GUI、无头训练器和测试套件。

使用方法

  1. 克隆并设置 – git clone … && python -m venv venv && pip install -r requirements.txt。
  2. 运行 – python main.py启动PyQt5窗口,你可以在其中与鱿鱼互动。
  3. Docker – 提供了GUI版本(需要X11/WSLg)和无头CLI训练器的预构建镜像,无头CLI训练器可以输出训练好的大脑JSON文件。
  4. 自定义 – Brain Designer维基页面解释了如何添加或删除神经元和行为;预置的大脑配置位于custom_brains/。
  5. 分享 – 保存的大脑文件可以导出并上传到SQUID‑EXCHANGE分支,以便他人探索你的生物的神经历史。

谁可能觉得有用?

  • 学生和爱好者 – 想要具体、直观地了解简单脉冲型学习规则如何产生自适应行为。
  • 研究人员 – 寻找轻量级、完全可观察的沙箱来原型化结构可塑性或信用分配的想法,而无需大型深度学习框架的开销。
  • 游戏设计师 – 对可以检查和调整的涌现式AI代理感兴趣。

仓库内容

  • src/ – STRINg引擎、可塑性算法、大脑设计工具、UI小部件和插件框架。
  • main.py – PyQt5 GUI的入口点。
  • headless/ – 无图形运行相同引擎的命令行训练器。
  • custom_brains/ – 示例网络配置。
  • 具有两个构建目标(gui和headless)的Dockerfile。
  • 涵盖宣言、引擎概述、大脑设计、STDP理论和变更日志的广泛维基(57页)。

TL;DR

Dosidicus是一个包装在可爱的虚拟宠物游戏中的透明神经网络沙箱。它让你实时观察一个小型脉冲网络的学习过程,检查每次权重变化,甚至生成新神经元,所有这些都基于简单的Python/NumPy代码库和可选的PyQt5 GUI。


以上所有信息直接取自仓库的README和链接的维基页面。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目