[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-81023":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":17,"stars30d":17,"stars90d":16,"forks30d":16,"starsTrendScore":16,"compositeScore":18,"rankGlobal":10,"rankLanguage":10,"license":19,"archived":20,"fork":20,"defaultBranch":21,"hasWiki":22,"hasPages":22,"topics":23,"createdAt":10,"pushedAt":10,"updatedAt":24,"readmeContent":25,"aiSummary":26,"trendingCount":16,"starSnapshotCount":16,"syncStatus":17,"lastSyncTime":27,"discoverSource":28},81023,"hinton-problems","cybertronai\u002Fhinton-problems","cybertronai","53 implementations of synthetic learning problems from Geoffrey Hinton's experimental papers (1981-2022). Pure numpy, laptop-runnable, paper-comparison metrics per stub.","https:\u002F\u002Fcybertronai.github.io\u002Fhinton-problems\u002F",null,"Python",31,4,29,3,0,2,2.1,"The Unlicense",false,"main",true,[],"2026-06-12 02:04:09","# Hinton Problems\n\nA reproducible-baseline catalog of the synthetic learning problems that appear in Geoffrey Hinton's experimental papers from 1981 through 2022 — implemented in pure numpy, runnable on a laptop CPU, with paper-comparison metrics per stub.\n\n- **GitHub**: https:\u002F\u002Fgithub.com\u002Fcybertronai\u002Fhinton-problems\n- **Site**: https:\u002F\u002Fcybertronai.github.io\u002Fhinton-problems\u002F\n- **Catalog**: [RESULTS.md](RESULTS.md)\n- **Visual tour**: [VISUAL_TOUR.md](VISUAL_TOUR.md)\n- **Build notes**: [BUILD_NOTES.md](BUILD_NOTES.md)\n- **Status**: 55 of 55 stubs implemented (PRs #32–#41 + DBN + DBM add-ons)\n- **Build cost \u002F token math**: ~661M tokens across 63 sessions (lead + 62 subagent dispatches), 93.5% cache_read. The harness \"~800k\" was context-window utilisation, not cumulative consumption. Breakdown: [BUILD_NOTES.md § Token consumption](BUILD_NOTES.md) + [issue #56](https:\u002F\u002Fgithub.com\u002Fcybertronai\u002Fhinton-problems\u002Fissues\u002F56).\n- **Companion**: [`schmidhuber-problems`](https:\u002F\u002Fgithub.com\u002Fcybertronai\u002Fschmidhuber-problems) — algorithmic-lineage counterpart (58 stubs)\n\n## Introduction\n\n> The field has standardized on backprop by the end of the '80s, and Hinton gives a sample of problems that were used at the time. In the last 20 years, we have transitioned to GPUs, and the math has changed considerably. Instead of being bottlenecked by arithmetic, the shrinking of transistors means that arithmetic is essentially free, and all of the work comes from data movement. **Backprop is inefficient in terms of \"commute to compute ratio\"** because it requires fetching all of the activations for each gradient add.\n>\n> So a natural experiment would be to redo key experiments of this time with a focus on data movement. The first step is to get a baseline — to establish the list of problems which are famous (made by Hinton), reasonable to implement, and easy to run\u002Freproduce.\n>\n> — Yaroslav, [issue #1](https:\u002F\u002Fgithub.com\u002Fcybertronai\u002Fhinton-problems\u002Fissues\u002F1#issuecomment-4363088986) (Sutro Group)\n\nThis repository **is that baseline**. v1 shipped 53 implemented stubs covering the lineage from the shifter (1986), bars (1995), MultiMNIST (2017), Constellations (2019), Ellipse World (2022), and the Forward-Forward suite (2022). The current catalog has 54 implemented stubs: those 53 v1 stubs plus the DBN add-on. The site also keeps the pre-existing 4-2-4 encoder worked example as a problem chapter. Each stub is a self-contained folder with model + train + eval + visualization + animated GIF, all in numpy, all runnable in \u003C5 min per seed on an M-series laptop.\n\nThe next step ([#45 v2](https:\u002F\u002Fgithub.com\u002Fcybertronai\u002Fhinton-problems\u002Fissues\u002F45)) instruments the v1 baselines with [ByteDMD](https:\u002F\u002Fgithub.com\u002Fcybertronai\u002FByteDMD) — Yaroslav's data-movement cost tracer — to measure the actual \"commute\" each algorithm pays.\n\n## What's here\n\n| 27 reproduce paper claims | 27 partial reproductions | 1 non-replication |\n| :---: | :---: | :---: |\n| full or qualitative match | algorithm works, paper-config gap documented | gap analysed in 3 causes |\n\nPure numpy + matplotlib throughout. Every stub runs on a laptop CPU. Each problem lives in its own folder with `\u003Cslug>.py` (model + train + eval), `README.md`, `make_\u003Cslug>_gif.py`, `visualize_\u003Cslug>.py`, an animated `\u003Cslug>.gif`, and a `viz\u002F` folder of training curves and weight visualizations.\n\n## Development\n\nThis repository includes a minimal Nix development shell with Python and\nNumPy:\n\n```bash\nnix develop\npython v2-bytedmd\u002Fvalidate_implementations.py\npython v2-bytedmd\u002Ftotal_cost_comparison.py\n```\n\nOr run one command directly:\n\n```bash\nnix develop -c python v2-bytedmd\u002Fvalidate_implementations.py\n```\n\n## Visual tour\n\n| ![encoder-4-2-4](encoder-4-2-4\u002Fencoder.gif) | ![spline-images-factorial-vq](spline-images-factorial-vq\u002Fspline_images_factorial_vq.gif) |\n| :---: | :---: |\n| [`encoder-4-2-4`](encoder-4-2-4\u002F) — Ackley\u002FHinton\u002FSejnowski 1985, the worked example. Bipartite RBM, 2-bit code emerges. | [`spline-images-factorial-vq`](spline-images-factorial-vq\u002F) — Hinton\u002FZemel 1994, factorial VQ wins 3× over standard 24-VQ baseline. |\n| ![ellipse-world](ellipse-world\u002Fellipse_world.gif) | ![ff-recurrent-mnist](ff-recurrent-mnist\u002Fff_recurrent_mnist.gif) |\n| [`ellipse-world`](ellipse-world\u002F) — Culp\u002FSabour\u002FHinton 2022, eGLOM islands form across iterations (5-class, 92.2%). | [`ff-recurrent-mnist`](ff-recurrent-mnist\u002F) — Hinton 2022, top-down recurrent Forward-Forward. |\n\nFor the long-form picture-first walk through **all current problem chapters** — the 54 implemented stubs plus the worked example, organized by year, with notes on what each visualization is meant to show — see [`VISUAL_TOUR.md`](VISUAL_TOUR.md).\n\n## Catalog\n\nEach table shows the current result per problem: the worked example, 53 v1 stubs, and the DBN add-on. Full per-stub metrics (compile-time, GIF size, headline numbers) are in [`RESULTS.md`](RESULTS.md).\n\n**Reproduces?** legend: `yes` = matches paper qualitatively or quantitatively; `partial` = method works, paper number not fully reached (gap documented in stub README); `no` = paper claim does not replicate.\n\n### 1980s — Connectionist foundations\n\n**Ackley, Hinton & Sejnowski (1985)** — A learning algorithm for Boltzmann machines\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [encoder-4-2-4](encoder-4-2-4\u002F) ★ | yes (CD-k variant) | n\u002Fa (worked example) | ~1s |\n| [encoder-3-parity](encoder-3-parity\u002F) | yes (KL = log 2 visible-only; RBM drops to 0.10) | ~50 min | 0.04s + 1.3s |\n| [encoder-4-3-4](encoder-4-3-4\u002F) | yes (60% error-correcting rate \u002F 30 seeds) | ~3 hr | 2.3s |\n| [encoder-8-3-8](encoder-8-3-8\u002F) | **yes (16\u002F20 = exact paper parity)** | ~2 hr | ~20s\u002Fseed |\n| [encoder-40-10-40](encoder-40-10-40\u002F) | yes (exceeds paper: 100% vs 98.6%) | ~1.5 hr | 6s |\n\n**Rumelhart, Hinton & Williams (1986)** — Learning internal representations by error propagation\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [xor](xor\u002F) | yes (qualitative) | 6.4 min | 0.3s |\n| [n-bit-parity](n-bit-parity\u002F) | yes (qualitative; thermometer code partial) | 30 min | 0.20s |\n| [encoder-backprop-8-3-8](encoder-backprop-8-3-8\u002F) | yes (70% strict 8\u002F8 distinct codes) | ~10 min | 0.6s |\n| [distributed-to-local-bottleneck](distributed-to-local-bottleneck\u002F) | yes (graded values 0.007\u002F0.167\u002F0.553\u002F0.971) | 75 min | 0.082s |\n| [symmetry](symmetry\u002F) | yes (1 : 1.994 : 3.969 weight ratio) | 12.8 min | 0.4s |\n| [binary-addition](binary-addition\u002F) | yes (qualitatively; 4-3-3 succeeds, 4-2-3 stuck) | ~2 hr | 44s |\n| [negation](negation\u002F) | yes (4-6-3 deviation justified) | 25 min | 0.10s |\n| [t-c-discrimination](t-c-discrimination\u002F) | yes (all 3 detector families emerge) | 30 min | 0.69s |\n| [recurrent-shift-register](recurrent-shift-register\u002F) | yes (89 sweeps N=3, 121 sweeps N=5) | 25 min | 0.9s \u002F 1.1s |\n| [sequence-lookup-25](sequence-lookup-25\u002F) | yes (4-5\u002F5 held-out generalization) | 70 min | 0.20s \u002F 5.78s |\n\n**Hinton (1986)** — Distributed representations of concepts\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [family-trees](family-trees\u002F) | yes (3\u002F4 best, 1.9\u002F4 mean — matches paper) | ~1 hr | 2.1s |\n\n**Hinton & Sejnowski (1986)** — Learning and relearning in Boltzmann machines\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [shifter](shifter\u002F) | yes (92.3% recognition; position-pair detectors) | 30 min | 14s |\n| [grapheme-sememe](grapheme-sememe\u002F) | yes (qualitative; +6.7pp spontaneous recovery) | 70 min | 1.7s |\n\n**Plaut & Hinton (1987)** — Learning sets of filters using back-propagation\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [riser-spectrogram](riser-spectrogram\u002F) | yes (98.08% net vs 98.90% Bayes; gap +0.83pp) | ~7 min | 0.91s |\n\n**Hinton & Plaut (1987)** — Using fast weights to deblur old memories\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [fast-weights-rehearsal](fast-weights-rehearsal\u002F) | yes (rehearsed-subset recovery +22pp \u002F 30 seeds) | 25 min | 0.14s |\n\n### 1990s — Unsupervised learning, mixtures, the Helmholtz machine\n\n**Jacobs, Jordan, Nowlan & Hinton (1991)** — Adaptive mixtures of local experts\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [vowel-mixture-experts](vowel-mixture-experts\u002F) | partial (MoE 92.8% \u002F MLP 90.1%; gate partitions vowels) | 70 min | 0.09s |\n\n**Becker & Hinton (1992)** — A self-organizing neural network that discovers surfaces in random-dot stereograms\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [random-dot-stereograms](random-dot-stereograms\u002F) | yes (Imax 1.18 nats; disparity readout 0.74) | ~1 hr | 6.1s |\n\n**Nowlan & Hinton (1992)** — Simplifying neural networks by soft weight-sharing\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [sunspots](sunspots\u002F) | yes (MoG ≤ decay ≤ vanilla; weight peaks at 0 + 0.27) | ~1 hr | 5s |\n\n**Hinton & Zemel (1994)** — Autoencoders, MDL and Helmholtz free energy\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [spline-images-factorial-vq](spline-images-factorial-vq\u002F) | yes (factorial wins 3× over 24-VQ baseline) | ~1 hr | ~5s |\n\n**Zemel & Hinton (1995)** — Learning population codes by minimizing description length\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [dipole-position](dipole-position\u002F) | partial (R² = 0.81; supervised warm-up needed) | ~3 hr | 2s |\n| [dipole-3d-constraint](dipole-3d-constraint\u002F) | yes (qualitatively; 3 dims emerge) | ~1 hr | 11s |\n| [dipole-what-where](dipole-what-where\u002F) | partial (perpendicular manifolds, lin-sep 0.58) | ~1 hr | 2s |\n\n**Dayan, Hinton, Neal & Zemel (1995)** — The Helmholtz machine\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [helmholtz-shifter](helmholtz-shifter\u002F) | partial (3 of 4 layer-3 units shift-selective; n_top=4) | 75 min | 209s |\n\n**Hinton, Dayan, Frey & Neal (1995)** — The wake-sleep algorithm\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [bars](bars\u002F) | partial (KL = 0.451 bits vs paper 0.10) | 70 min | 222s |\n\n### 2000s — Products of experts, contrastive divergence, deep belief nets\n\n**Hinton (2000)** — Training products of experts by minimizing contrastive divergence\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [bars-rbm](bars-rbm\u002F) | yes (7\u002F8 bars at purity ≥0.5; 8\u002F8 with n_hidden=16) | ~30 min | 1.5s |\n\n**Hinton, Osindero & Teh (2006)** — A fast learning algorithm for deep belief nets\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [dbn-mnist](dbn-mnist\u002F) | partial (3.23% w\u002Fo up-down vs paper 1.25% w\u002F up-down; 6.04% on 10k subset) | ~1 hr | 5s \u002F 30s |\n\n**Salakhutdinov & Hinton (2009)** — Deep Boltzmann Machines\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [dbm-mnist](dbm-mnist\u002F) | partial (4.88% w\u002Fo discriminative fine-tuning vs paper 0.95% with; 7.83% on 10k subset) | ~1.5 hr | 9s \u002F 45s |\n\n**Memisevic & Hinton (2007)** — Unsupervised learning of image transformations\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [transforming-pairs](transforming-pairs\u002F) | partial (axis-selective transformation detectors) | ~1 hr | 2s |\n\n**Sutskever & Hinton (2007)** — Multilevel distributed representations for high-dimensional sequences\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [bouncing-balls-2](bouncing-balls-2\u002F) | partial (rollout MSE between baselines) | 75 min | 6.2s |\n\n**Sutskever, Hinton & Taylor (2008)** — The recurrent temporal RBM\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [bouncing-balls-3](bouncing-balls-3\u002F) | partial (CD-1 recon 0.005; rollout 0.13) | ~1 hr | 3.4s |\n\n### 2010s — Capsules, distillation, attention\n\n**Hinton, Krizhevsky & Wang (2011)** — Transforming auto-encoders\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [transforming-autoencoders](transforming-autoencoders\u002F) | yes (R²(dx)=0.78, R²(dy)=0.67) | ~30 min | 100s |\n\n**Tang, Salakhutdinov & Hinton (2012)** — Deep Lambertian Networks\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [deep-lambertian-spheres](deep-lambertian-spheres\u002F) | yes (normal angular err 27°; albedo 7× baseline) | ~50 min | 33s |\n\n**Sutskever, Martens, Dahl & Hinton (2013)** — On the importance of initialization and momentum\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [rnn-pathological](rnn-pathological\u002F) | yes (3 of 4 tasks; ortho beats random init) | 2.5 hr | 42s |\n\n**Hinton, Vinyals & Dean (2015)** — Distilling the knowledge in a neural network\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [distillation-mnist-omitted-3](distillation-mnist-omitted-3\u002F) | yes (97.82% on digit-3 post-correction; paper 98.6%) | 40 min | 121.8s |\n\n**Eslami, Heess, Weber, Tassa, Szepesvari, Kavukcuoglu & Hinton (2016)** — Attend, Infer, Repeat\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [air-multimnist](air-multimnist\u002F) | partial (count 79.7%; reconstructions blurry) | ~50 min | 6s |\n| [air-3d-primitives](air-3d-primitives\u002F) | partial (1-prim 88.8%; 3-prim count 81%) | ~50 min | 11.7s |\n\n**Ba, Hinton, Mnih, Leibo & Ionescu (2016)** — Using fast weights to attend to the recent past\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [fast-weights-associative-retrieval](fast-weights-associative-retrieval\u002F) | partial (architecture verified; 38% retrieval) | ~3 hr | 293s |\n| [multi-level-glimpse-mnist](multi-level-glimpse-mnist\u002F) | partial (82.46% vs paper 90%+) | ~1 hr | 1199s |\n| [catch-game](catch-game\u002F) | partial (FW 33.9% vs vanilla 11.4%; 91% at size=10) | ~2 hr | ~50s |\n\n**Sabour, Frosst & Hinton (2017)** — Dynamic routing between capsules\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [affnist](affnist\u002F) | **no** (gap wrong sign: −2% vs paper +13%) | ~3 hr | 4 min |\n| [multimnist-capsnet](multimnist-capsnet\u002F) | partial (48.6% vs target 80%; 22× chance) | ~3 hr | 395s |\n\n**Hinton, Sabour & Frosst (2018)** — Matrix capsules with EM routing\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [smallnorb-novel-viewpoint](smallnorb-novel-viewpoint\u002F) | yes qualitatively (caps 0.726 vs CNN 0.696 held-out) | ~1 hr | 10s |\n\n**Kosiorek, Sabour, Teh & Hinton (2019)** — Stacked capsule autoencoders\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [constellations](constellations\u002F) | yes (per-point recovery 86.9% best \u002F 84% mean) | ~75 min | 25s |\n\n### 2020s — Subclass distillation, GLOM, Forward-Forward\n\n**Müller, Kornblith & Hinton (2020)** — Subclass distillation\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [mnist-2x5-subclass](mnist-2x5-subclass\u002F) | partial (subclass recovery 82.88% best \u002F 73.87% mean) | ~50 min | 13s |\n\n**Sabour, Tagliasacchi, Yazdani, Hinton & Fleet (2021)** — Unsupervised part representation by flow capsules\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [geo-flow-capsules](geo-flow-capsules\u002F) | yes (mean IoU 0.764 \u002F chance 0.20) | ~8 min | 43s |\n\n**Culp, Sabour & Hinton (2022)** — Testing GLOM's ability to infer wholes from ambiguous parts\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [ellipse-world](ellipse-world\u002F) | yes (92.2% on 5-class; islands form +0.117) | ~1 hr | 9s |\n\n**Hinton (2022)** — The forward-forward algorithm: some preliminary investigations\n\n| Problem | Reproduces? | Implementation | Run wallclock |\n|---|---|---:|---:|\n| [ff-hybrid-mnist](ff-hybrid-mnist\u002F) | partial (5.21% test err vs paper 1.37%) | ~75 min | 492s |\n| [ff-label-in-input](ff-label-in-input\u002F) | partial (3.60% vs paper 1.36%) | ~1 hr | 66s |\n| [ff-recurrent-mnist](ff-recurrent-mnist\u002F) | partial (10.66% vs paper 1.31%) | ~1 hr | 216s |\n| [ff-cifar-locally-connected](ff-cifar-locally-connected\u002F) | partial (FF 22.78% \u002F BP 38.31%) | ~3 hr | 150s |\n| [ff-aesop-sequences](ff-aesop-sequences\u002F) | yes (TF 53% \u002F SG 34%; baselines 3-20%) | ~12 min | 131s |\n\n## Structure\n\n```\nproblem-folder\u002F\n├── README.md                  source paper, problem, results, deviations\n├── \u003Cslug>.py                  dataset + model + train + eval\n├── visualize_\u003Cslug>.py        training curves + weight viz\n├── make_\u003Cslug>_gif.py         animated GIF\n├── \u003Cslug>.gif                 committed animation\n└── viz\u002F                       committed PNGs\n```\n\n## Roadmap\n\n- [**#45 v2: ByteDMD instrumentation**](https:\u002F\u002Fgithub.com\u002Fcybertronai\u002Fhinton-problems\u002Fissues\u002F45) — measure data-movement cost per stub on these baselines (the actual research goal)\n- [**#46 v1.5: paper-scale reruns**](https:\u002F\u002Fgithub.com\u002Fcybertronai\u002Fhinton-problems\u002Fissues\u002F46) — close the 25 v1 partial reproductions on Modal\u002FGPU\n- See `Open questions \u002F next experiments` section in each stub README for stub-specific follow-ups\n\n## Contributing\n\nImplementations follow the [v1 spec](https:\u002F\u002Fgithub.com\u002Fcybertronai\u002Fhinton-problems\u002Fissues\u002F1):\n\n- Each stub fills in `\u003Cslug>.py` (model + train + eval), an 8-section `README.md`, `make_\u003Cslug>_gif.py`, `visualize_\u003Cslug>.py`, an animated `\u003Cslug>.gif`, and `viz\u002F` PNGs.\n- Acceptance: reproduces in \u003C5 min on a laptop; final accuracy with seed in Results table; GIF illustrates problem AND learning dynamics; \"Deviations from the original\" section honest; at least one open question.\n- v1 metrics in PR body: `\"Paper reports X; we got Y. Reproduces: yes\u002Fno.\"` + run wallclock + implementation wallclock.\n\nThe v1.5 reruns ([#46](https:\u002F\u002Fgithub.com\u002Fcybertronai\u002Fhinton-problems\u002Fissues\u002F46)) and v2 ByteDMD work ([#45](https:\u002F\u002Fgithub.com\u002Fcybertronai\u002Fhinton-problems\u002Fissues\u002F45)) welcome contributions.\n\n## License\n\nThe hinton-problems source and documentation are released into the public domain under the [Unlicense](LICENSE).\n","该项目是对Geoffrey Hinton从1981年至2022年实验论文中提出的53个合成学习问题的实现。它使用纯numpy编写，可以在普通笔记本电脑上运行，并为每个问题提供了与原论文对比的评估指标。项目的核心功能包括对Hinton经典问题的复现、自包含的问题文件夹（包含模型训练、评估和可视化），以及支持快速验证和重现结果的能力。适用于机器学习研究者、学生及爱好者在没有高性能计算资源的情况下探索和理解深度学习算法的历史演变及其基础问题。","2026-06-11 04:03:13","CREATED_QUERY"]