"Routes TensorFlow 1.x learning-to-learn meta-optimizer,
Scanned 9/8/2026
Install to Claude Code
npx -y skills add VectorSpaceLab/AREX-Skill --skill learning-to-learn --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Learning To Learn?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/vectorspacelab-learning-to-learn)More formats (shields.io, HTML) on the badges page.
---
name: learning-to-learn
description: "Routes TensorFlow 1.x learning-to-learn meta-optimizer,
optimizer-network, problem-factory, training, and evaluation workflows."
disable-model-invocation: true
metadata:
disco-role: operating
license: Apache 2.0
---
# learning-to-learn
Use this repo skill when a task is about Google's TensorFlow implementation of **Learning to Learn by Gradient Descent by Gradient Descent**: learned optimizers, optimizer RNNs, built-in optimizee problems, or the training/evaluation scripts.
## Before doing runtime work
This is a legacy TensorFlow 1.x / Sonnet 1.x repository with root-level Python modules, not an installable package. For runtime checks, use a checkout/source tree that contains the root modules and a compatible Python environment.
Minimal dependency surface:
```bash
python -m pip install "tensorflow==1.15.*" "dm-sonnet==1.*" dill mock nose-parameterized "protobuf<3.20"
```
Minimal source-tree import check:
```bash
python -c "import tensorflow as tf, sonnet; import meta, networks, problems, preprocess, util; print(tf.__version__)"
```
If TensorFlow 2.x is installed or `tensorflow.contrib` is missing, stop and switch to a TensorFlow 1.x-compatible environment before debugging repo code.
## Route by task
| Task intent | Read |
| --- | --- |
| Build or debug `MetaOptimizer`, `meta_loss`, `meta_minimize`, returned ops, variable interception, `net_assignments`, second derivatives, or `.l2l` save/load | [`sub-skills/meta-optimizer-api/SKILL.md`](sub-skills/meta-optimizer-api/SKILL.md) |
| Choose/configure optimizer networks such as `CoordinateWiseDeepLSTM`, `KernelDeepLSTM`, `Sgd`, `Adam`, initializers, preprocessing, or network serialization | [`sub-skills/optimizer-networks/SKILL.md`](sub-skills/optimizer-networks/SKILL.md) |
| Choose built-in problems, inspect `util.get_config`, handle MNIST/CIFAR data side effects, or author custom optimizee loss factories | [`sub-skills/problem-factories/SKILL.md`](sub-skills/problem-factories/SKILL.md) |
| Run or adapt training/evaluation command workflows, tiny CPU smokes, saved optimizer directories, Adam-vs-L2L evaluation, or CLI flag behavior | [`sub-skills/training-evaluation/SKILL.md`](sub-skills/training-evaluation/SKILL.md) |
## Shared references and helpers
- [Overview](references/overview.md) maps the repository architecture and how modules cooperate.
- [Troubleshooting](references/troubleshooting.md) covers cross-cutting install/import, TensorFlow/Sonnet, data, and source-tree issues.
- [Repository provenance](references/repo-provenance.md) records the source snapshot used to create this skill.
- [Environment checker](scripts/check_l2l_environment.py) validates imports and optionally performs a tiny source-module graph smoke against a local checkout.
## Operating rules
1. Keep `make_loss` functions side-effect-light; perform dataset downloads, queue setup, and other Python side effects outside the function passed to `MetaOptimizer` when possible.
2. Treat `simple`, `simple-multi`, and `quadratic` as the safe CPU problem family for smoke checks.
3. Treat `mnist`, `cifar`, and `cifar-multi` as data-backed workflows that may download/cache data or create queues.
4. Use bundled helper scripts to generate/validate commands instead of relying on memory for flags or paths.
5. Do not assume a `.l2l` file is a TensorFlow checkpoint; it is a pickle payload loaded by `networks.factory(..., net_path=...)`.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!