{"id":13512302,"url":"https://github.com/google-deepmind/learning-to-learn","last_synced_at":"2025-05-15T00:14:06.625Z","repository":{"id":41407124,"uuid":"75710587","full_name":"google-deepmind/learning-to-learn","owner":"google-deepmind","description":"Learning to Learn in TensorFlow","archived":false,"fork":false,"pushed_at":"2021-06-29T09:55:15.000Z","size":90,"stargazers_count":4060,"open_issues_count":15,"forks_count":603,"subscribers_count":196,"default_branch":"master","last_synced_at":"2025-04-13T21:34:06.945Z","etag":null,"topics":["artificial-intelligence","deep-learning","machine-learning","neural-networks"],"latest_commit_sha":null,"homepage":"https://arxiv.org/abs/1606.04474","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/google-deepmind.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-12-06T08:25:37.000Z","updated_at":"2025-04-11T14:52:46.000Z","dependencies_parsed_at":"2022-07-06T11:10:35.234Z","dependency_job_id":null,"html_url":"https://github.com/google-deepmind/learning-to-learn","commit_stats":null,"previous_names":["google-deepmind/learning-to-learn","deepmind/learning-to-learn"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google-deepmind%2Flearning-to-learn","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google-deepmind%2Flearning-to-learn/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google-deepmind%2Flearning-to-learn/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google-deepmind%2Flearning-to-learn/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/google-deepmind","download_url":"https://codeload.github.com/google-deepmind/learning-to-learn/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254249206,"owners_count":22039029,"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":["artificial-intelligence","deep-learning","machine-learning","neural-networks"],"created_at":"2024-08-01T03:01:42.499Z","updated_at":"2025-05-15T00:14:01.616Z","avatar_url":"https://github.com/google-deepmind.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"# [Learning to Learn](https://arxiv.org/abs/1606.04474) in TensorFlow\n\n\n## Dependencies\n\n* [TensorFlow \u003e=1.0](https://www.tensorflow.org/)\n* [Sonnet \u003e=1.0](https://github.com/deepmind/sonnet)\n\n\n## Training\n\n```\npython train.py --problem=mnist --save_path=./mnist\n```\n\nCommand-line flags:\n\n* `save_path`: If present, the optimizer will be saved to the specified path\n    every time the evaluation performance is improved.\n* `num_epochs`: Number of training epochs.\n* `log_period`: Epochs before mean performance and time is reported.\n* `evaluation_period`: Epochs before the optimizer is evaluated.\n* `evaluation_epochs`: Number of evaluation epochs.\n* `problem`: Problem to train on. See [Problems](#problems) section below.\n* `num_steps`: Number of optimization steps.\n* `unroll_length`: Number of unroll steps for the optimizer.\n* `learning_rate`: Learning rate.\n* `second_derivatives`: If `true`, the optimizer will try to compute second\n    derivatives through the loss function specified by the problem.\n\n\n## Evaluation\n\n```\npython evaluate.py --problem=mnist --optimizer=L2L --path=./mnist\n```\n\nCommand-line flags:\n\n* `optimizer`: `Adam` or `L2L`.\n* `path`: Path to saved optimizer, only relevant if using the `L2L` optimizer.\n* `learning_rate`: Learning rate, only relevant if using `Adam` optimizer.\n* `num_epochs`: Number of evaluation epochs.\n* `seed`: Seed for random number generation.\n* `problem`: Problem to evaluate on. See [Problems](#problems) section below.\n* `num_steps`: Number of optimization steps.\n\n\n## Problems\n\nThe training and evaluation scripts support the following problems (see\n`util.py` for more details):\n\n* `simple`: One-variable quadratic function.\n* `simple-multi`: Two-variable quadratic function, where one of the variables\n    is optimized using a learned optimizer and the other one using Adam.\n* `quadratic`: Batched ten-variable quadratic function.\n* `mnist`: Mnist classification using a two-layer fully connected network.\n* `cifar`: Cifar10 classification using a convolutional neural network.\n* `cifar-multi`: Cifar10 classification using a convolutional neural network,\n    where two independent learned optimizers are used. One to optimize\n    parameters from convolutional layers and the other one for parameters from\n    fully connected layers.\n\n\nNew problems can be implemented very easily. You can see in `train.py` that\nthe `meta_minimize` method from the `MetaOptimizer` class is given a function\nthat returns the TensorFlow operation that generates the loss function we want\nto minimize (see `problems.py` for an example).\n\nIt's important that all operations with Python side effects (e.g. queue\ncreation) must be done outside of the function passed to `meta_minimize`. The\n`cifar10` function in `problems.py` is a good example of a loss function that\nuses TensorFlow queues.\n\n\nDisclaimer: This is not an official Google product.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgoogle-deepmind%2Flearning-to-learn","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgoogle-deepmind%2Flearning-to-learn","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgoogle-deepmind%2Flearning-to-learn/lists"}