Papers › On First-Order Meta-Learning Algorithms
On First-Order Meta-Learning Algorithms
Alex Nichol, Joshua Achiam, John Schulman
This paper considers meta-learning problems, where there is a distribution of tasks, and we would like to obtain an agent that performs well (i.e., learns quickly) when presented with a previously unseen task sampled from this distribution. We analyze a family of algorithms for learning a parameter initialization that can be fine-tuned quickly on a new task, using only first-order derivatives for the meta-learning updates. This family includes and generalizes first-order MAML, an approximation to MAML obtained by ignoring second-order derivatives. It also includes Reptile, a new algorithm that we introduce here, which works by repeatedly sampling a task, training on it, and moving the initialization towards the trained weights on that task. We expand on the results from Finn et al. showing that first-order meta-learning algorithms perform well on some well-established benchmarks for few-shot classification, and we provide theoretical analysis aimed at understanding why these algorithms work.
In Syntology Open this paper in Syntology's Atlas, the map of the papers in Syntology's graph and their citations.
For agents, Syntology's MCP tool lists every function and class Syntology harvested from this paper and whether it ran (how to connect): get_harvested_code_for_paper(arxiv_id="1803.02999")
Code
Syntology Ran 24 of 42 code samples harvested from 8 repositories linked to this paper; 18 have no recorded run. Of those that ran: 1 ran · honoured contract; 2 ran · violated contract; 14 ran · our draft was wrong; 4 ran · fixture could not drive it; 3 ran with no contract checked.
By repository: official repository: 10 samples from 1 repository, 8 ran; community (archive-listed): 32 samples from 7 repositories, 16 ran. The run record, sample by sample. “Ran” means executed on a synthesized input, not that the code is correct or reproduces the paper.
13 repositories listed; official and paper-mentioned ones first.
Repository list and official/mentioned flags are the archive's, frozen 2025-07-28. Reachability, where shown, is from one Syntology probe window (2026-09-16 to 2026-09-18); repositories not probed show nothing. GitHub stars are not tracked.
Code Syntology ran Syntology
42 samples harvested; 24 ran; 1 honoured the contract we drafted; 18 have no recorded run. Read from Syntology's graph 2026-09-24; that is when this build read the record, not when the samples ran.
Licence: 13 of the 42 samples are pointer only, meaning Syntology does not serve that copy's text. This page shows no code text for any sample; each one links to its file in the repository.
Harvested from 8 repositories linked to this paper, official or community; each sample names its own and says which. “Ran” means the sample executed on a synthesized input. It does not mean the output is correct, and nothing here reproduces the paper's results. “Honoured” and “violated” refer to a contract Syntology drafted from the code itself; “our draft was wrong” and “fixture could not drive it” are failures of Syntology's instrument, not of the code.
Each sample ends with its code_sha256, Syntology's identity for that exact code. An agent fetches the stored sample with Syntology's MCP tool get_code(code_sha256="…") (how to connect); click an identity to copy that call.
Repository labels, per sample. official repository: The archive marks this repository official for the paper. named in the paper: The archive records that the paper mentions this repository; it is not marked official. community (archive-listed): In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper. found in paper text by Syntology: Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted. community: Not in the archive's code links for this paper; a community repository Syntology harvested. Samples from a repository marked official are listed first. Licence labels name the repository's licence as recorded at harvest. “Pointer only” means Syntology does not serve that copy's text, for one of four reasons: no licence file was found; the licence was not identified; the licence is recorded as permissive but that copy's record is not marked cleared; or the licence is outside the permissive list Syntology serves text under (MIT, Apache-2.0, BSD and similar). Some licences outside that list permit redistribution, such as WTFPL, and GPL-3.0 under its conditions; they are simply not on the list. Hover a licence label for the reason. File links open the file on GitHub at the default branch, which may have changed since the harvest.
a9fca842e7dce3dc · report
8a4d810f710c7156 · report
d91fc29b93983a36 · report
4e38232a76ab2c21 · report
59c0d53cfcbb2398 · report
b6a6811d1b4f3cb1 · report
546a058c2eeefb61 · report
3880e32be4fd7c7f · report
12c044306a7432d7 · report
fc567dbf68a97f9c · report
8d746ce18ec482a7 · report
4c7e734776a0037f · report
e2090b8a7ed2f304 · report
634c4ae3d42d183d · report
5756a43251ee78a0 · report
5b32ff71531a63f4 · report
1aec86f12ed5bdbf · report
4119f639d71237d9 · report
874a035aef959ab0 · report
e1d757cc1d97469e · report
6898b2b8e89e013c · report
663789fdc8b48fc7 · report
1e9509d17fafd962 · report
ee6a21f2e9ccd76e · report
38ba8a7c486030e7 · report
ea9eecfceada7f03 · report
c2a3170df7df4870 · report
d215ca39171d7e6a · report
862a81450c933234 · report
e5b4fcff02414010 · report
ac866a5f88b92797 · report
b63cb25f52bfa440 · report
649f40959e38546d · report
9bc2cdc80cede326 · report
fdee3ec4c52c3c4e · report
97d6ee1a0025a4d4 · report
7c5446461cabc053 · report
a7a5b0bb081fdc90 · report
a2a852379817fd88 · report
6ccf8109b819b534 · report
9ad33249189e3716 · report
7ce7bf6a46593388 · report
Tasks
Results from the paper archive 2025-07-28
Ranks are positions in the archive's leaderboards as they stood at the 2025-07-28 snapshot. Results published since then are not among these rows, so a rank here is not a current standing.
Methods
Report a problem or propose a change · a person checks every report against the paper or source before anything changes; decisions are listed on /corrections