Science Score: 64.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
✓Academic publication links
Links to: arxiv.org -
✓Committers with academic emails
13 of 118 committers (11.0%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.7%) to scientific vocabulary
Keywords
Keywords from Contributors
Repository
21st century AD
Basic Info
- Host: GitHub
- Owner: FluxML
- License: other
- Language: Julia
- Default Branch: master
- Homepage: https://fluxml.ai/Zygote.jl/
- Size: 3.92 MB
Statistics
- Stars: 1,540
- Watchers: 51
- Forks: 216
- Open Issues: 442
- Releases: 136
Topics
Metadata Files
README.md
] add Zygote
Zygote provides source-to-source automatic differentiation (AD) in Julia, and is the next-gen AD system for the Flux differentiable programming framework. For more details and benchmarks of Zygote's technique, see our paper. You may want to check out Flux for more interesting examples of Zygote usage; the documentation here focuses on internals and advanced AD usage.
Zygote supports Julia 1.6 onwards, but we highly recommend using Julia 1.8 or later.
```julia julia> using Zygote
julia> f(x) = 5x + 3
julia> f(10), f'(10) (53, 5.0)
julia> @codellvm f'(10) define i64 @"julia#625_38792"(i64) { top: ret i64 5 } ```
"Source-to-source" means that Zygote hooks into Julia's compiler, and generates the backwards pass for you – as if you had written it by hand.
Zygote supports the flexibility and dynamism of the Julia language, including control flow, recursion, closures, structs, dictionaries, and more. Mutation and exception handling are currently not supported.
```julia julia> fs = Dict("sin" => sin, "cos" => cos, "tan" => tan);
julia> gradient(x -> fsreadline(), 1) sin 0.5403023058681398 ```
Zygote benefits from using the ChainRules.jl ruleset.
Custom gradients can be defined by extending the ChainRulesCore.jl's rrule:
```julia julia> using ChainRulesCore
julia> add(a, b) = a + b
julia> function ChainRulesCore.rrule(::typeof(add), a, b) addpb(dy) = (NoTangent(), dy, dy) return add(a, b), addpb end ```
To support large machine learning models with many parameters, Zygote can differentiate implicitly-used parameters, as opposed to just function arguments.
```julia julia> W, b = rand(2, 3), rand(2);
julia> predict(x) = W*x .+ b;
julia> g = gradient(Params([W, b])) do sum(predict([1,2,3])) end Grads(...)
julia> g[W], gb ```
Owner
- Name: FluxML
- Login: FluxML
- Kind: organization
- Website: https://fluxml.ai
- Twitter: FluxML
- Repositories: 36
- Profile: https://github.com/FluxML
The Elegant Machine Learning Stack
Citation (CITATION.bib)
@article{Zygote.jl-2018,
author = {Michael Innes},
title = {Don't Unroll Adjoint: Differentiating SSA-Form Programs},
journal = {CoRR},
volume = {abs/1810.07951},
year = {2018},
url = {http://arxiv.org/abs/1810.07951},
archivePrefix = {arXiv},
eprint = {1810.07951},
timestamp = {Tue, 30 Oct 2018 20:39:56 +0100},
biburl = {https://dblp.org/rec/bib/journals/corr/abs-1810-07951},
bibsource = {dblp computer science bibliography, https://dblp.org}
}
GitHub Events
Total
- Create event: 28
- Commit comment event: 25
- Release event: 15
- Issues event: 32
- Watch event: 62
- Delete event: 13
- Issue comment event: 151
- Push event: 150
- Pull request review comment event: 14
- Pull request review event: 37
- Pull request event: 54
- Fork event: 10
Last Year
- Create event: 28
- Commit comment event: 25
- Release event: 15
- Issues event: 32
- Watch event: 62
- Delete event: 13
- Issue comment event: 151
- Push event: 150
- Pull request review comment event: 14
- Pull request review event: 37
- Pull request event: 54
- Fork event: 10
Committers
Last synced: 9 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Mike J Innes | m****s@g****m | 614 |
| Michael Abbott | 3****t | 134 |
| Carlo Lucibello | c****o@g****m | 123 |
| Lyndon White | l****e@i****k | 93 |
| Dhairya Gandhi | d****a@j****m | 92 |
| Will Tebbutt | w****1@m****k | 75 |
| Brian Chen | T****r | 71 |
| Seth Axen | s****n@g****m | 63 |
| Michael Abbott | me@e****k | 41 |
| Dhairya Gandhi | d****a@j****m | 38 |
| Miha Zgubic | m****c@i****k | 34 |
| lxvm | l****o@v****m | 31 |
| Christopher Rackauckas | a****s@c****m | 29 |
| David Widmann | d****b@d****e | 28 |
| Simeon Schaub | s****9@g****m | 22 |
| github-actions[bot] | 4****] | 21 |
| cossio | j****z@g****m | 21 |
| mohamed82008 | m****8@g****m | 19 |
| Matěj Račinský | m****y@a****m | 17 |
| wt | w****t@i****k | 16 |
| dsweber2 | d****2@g****m | 15 |
| Roger-luo | h****r@q****m | 14 |
| Sebastian | s****r@m****e | 14 |
| Jun Tian | t****p@g****m | 13 |
| Paul | p****l@p****g | 13 |
| marius | m****a@g****m | 11 |
| lassepe | l****s@m****g | 11 |
| Elliot Saba | s****t@g****m | 10 |
| Jordi Bolibar | j****r@g****m | 10 |
| Yingbo Ma | m****5@g****m | 10 |
| and 88 more... | ||
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 160
- Total pull requests: 142
- Average time to close issues: 7 months
- Average time to close pull requests: 7 months
- Total issue authors: 119
- Total pull request authors: 51
- Average comments per issue: 4.2
- Average comments per pull request: 4.62
- Merged pull requests: 91
- Bot issues: 0
- Bot pull requests: 8
Past Year
- Issues: 27
- Pull requests: 45
- Average time to close issues: 4 days
- Average time to close pull requests: 8 days
- Issue authors: 21
- Pull request authors: 15
- Average comments per issue: 1.15
- Average comments per pull request: 2.16
- Merged pull requests: 37
- Bot issues: 0
- Bot pull requests: 5
Top Authors
Issue Authors
- CarloLucibello (12)
- mcabbott (4)
- simsurace (3)
- ToucheSir (3)
- jarroyoe (3)
- ChrisRackauckas (3)
- bicycle1885 (3)
- juliohm (2)
- pxl-th (2)
- LilithHafner (2)
- leonardogalliano (2)
- lxvm (2)
- mrazomej (2)
- Red-Portal (2)
- benedict-96 (2)
Pull Request Authors
- ToucheSir (32)
- DhairyaLGandhi (15)
- mcabbott (13)
- github-actions[bot] (11)
- pxl-th (7)
- CarloLucibello (6)
- lxvm (6)
- BioTurboNick (6)
- Pangoraw (5)
- serenity4 (4)
- oxinabox (3)
- devmotion (3)
- vpuri3 (3)
- NAThompson (2)
- tej2612 (2)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- julia 4,353 total
- Total dependent packages: 180
- Total dependent repositories: 6
- Total versions: 137
juliahub.com: Zygote
21st century AD
- Homepage: https://fluxml.ai/Zygote.jl/
- Documentation: https://docs.juliahub.com/General/Zygote/stable/
- License: MIT
-
Latest release: 0.7.10
published 9 months ago