눈사태 웹사이트 | 시작하기 | 예 | 튜토리얼 | API 문서 | 종이 | 지저귀다
Avalanche 는 지속적인 학습 알고리즘의 빠른 프로토타이핑, 교육 및 재현 가능한 평가를 위한 공유 및 협업 오픈 소스(MIT 라이선스) 코드베이스를 제공한다는 고유한 목표를 가지고 ContinualAI 내에서 탄생한 Pytorch 기반 의 엔드 투 엔드 연속 학습 라이브러리 입니다.
️ 지속적인 학습 기준을 찾고 계십니까? Avalanche를 기반으로 한 CL-Baseline 자매 프로젝트에서는 실험 에 직접 사용할 수 있는 중요한 논문 결과를 재현합니다!
Avalanche는 여러 가지 방법으로 지속적인 학습 연구자에게 도움이 될 수 있습니다.
라이브러리는 네 가지 주요 모듈로 구성됩니다.
Avalanche는 벤치마크, 알고리즘, 평가 지표 등을 한 곳에서 찾을 수 있는 재현 가능한 지속적인 학습 연구 및 개발을 위한 엔드투엔드 라이브러리 의 첫 번째 실험입니다.
함께 만들어 볼까요??? 멋진 타는 것! ?
Avalanche 사용을 시작하는 방법을 아래에서 확인하세요! ?
import torch
from torch . nn import CrossEntropyLoss
from torch . optim import SGD
from avalanche . benchmarks . classic import PermutedMNIST
from avalanche . models import SimpleMLP
from avalanche . training import Naive
# Config
device = torch . device ( "cuda:0" if torch . cuda . is_available () else "cpu" )
# model
model = SimpleMLP ( num_classes = 10 )
# CL Benchmark Creation
perm_mnist = PermutedMNIST ( n_experiences = 3 )
train_stream = perm_mnist . train_stream
test_stream = perm_mnist . test_stream
# Prepare for training & testing
optimizer = SGD ( model . parameters (), lr = 0.001 , momentum = 0.9 )
criterion = CrossEntropyLoss ()
# Continual learning strategy
cl_strategy = Naive (
model , optimizer , criterion , train_mb_size = 32 , train_epochs = 2 ,
eval_mb_size = 32 , device = device )
# train and test loop over the stream of experiences
results = []
for train_exp in train_stream :
cl_strategy . train ( train_exp )
results . append ( cl_strategy . eval ( test_stream ))
Avalanche는 지속적인 개발의 프레임워크입니다. ContinualAI 커뮤니티와 활동적인 회원들의 지원 덕분에 우리는 연구 커뮤니티의 요구에 따라 기능을 빠르게 확장하고 유용성을 개선하고 있습니다!
현재 Avalanche는 베타 버전 입니다. 우리는 지속적인 학습 연구를 위한 최고의 도구가 되는 여러 가지 벤치마크 , 전략 및 지표를 지원합니다! ?
pip install avalanche-lib
실행하여 Avalanche를 설치할 수 있습니다.
그러면 핵심 Avalanche 패키지가 설치됩니다. 더 많은 기능을 활성화하려면 추가 패키지와 함께 Avalanche를 설치할 수 있습니다.
Avalanche를 설치하는 데 사용할 수 있는 다양한 방법에 대한 자세한 가이드는 여기를 참조하세요.
우리는 처음에는 새로운 도구를 배우는 것이 어려울 수 있다는 것을 알고 있습니다. 이것이 바로 우리가 도중에 도움이 될 리소스 세트를 통해 Avalanche를 최대한 쉽게 배울 수 있도록 만든 이유입니다. 예를 들어, Avalanche에 대한 기본 사항과 연구 프로젝트에서 이를 사용하는 방법을 배울 수 있는 5분 가이드로 시작할 수 있습니다.
또한 코드에 직접 연결하여 사용할 수 있는 다양한 예제 및 스니펫 세트도 준비했습니다.
이 두 섹션을 완료하면 이미 초능력을 느끼게 될 것입니다 ⚡. 이것이 바로 Avalanche의 모든 측면을 자세히 다루고 귀하를 진정한 지속적인 학습자로 만들어 줄 심층 튜토리얼도 만든 이유입니다! ??
연구 프로젝트에서 Avalanche를 사용하는 경우 JMLR-MLOSS 논문(https://jmlr.org/papers/v24/23-0130.html)을 인용하는 것을 잊지 마십시오. 이는 기계 학습 커뮤니티에서 Avalanche를 더 잘 알리고 궁극적으로 모두를 위한 더 나은 도구를 만드는 데 도움이 될 것입니다.
@article{JMLR:v24:23-0130,
author = {Antonio Carta and Lorenzo Pellegrini and Andrea Cossu and Hamed Hemati and Vincenzo Lomonaco},
title = {Avalanche: A PyTorch Library for Deep Continual Learning},
journal = {Journal of Machine Learning Research},
year = {2023},
volume = {24},
number = {363},
pages = {1--6},
url = {http://jmlr.org/papers/v24/23-0130.html}
}
이전 CLVision @ CVPR2021 워크숍 문서인 "Avalanche: 지속적인 학습을 위한 엔드투엔드 라이브러리"를 인용할 수도 있습니다.
@InProceedings{lomonaco2021avalanche,
title={Avalanche: an End-to-End Library for Continual Learning},
author={Vincenzo Lomonaco and Lorenzo Pellegrini and Andrea Cossu and Antonio Carta and Gabriele Graffieti and Tyler L. Hayes and Matthias De Lange and Marc Masana and Jary Pomponi and Gido van de Ven and Martin Mundt and Qi She and Keiland Cooper and Jeremy Forest and Eden Belouadah and Simone Calderara and German I. Parisi and Fabio Cuzzolin and Andreas Tolias and Simone Scardapane and Luca Antiga and Subutai Amhad and Adrian Popescu and Christopher Kanan and Joost van de Weijer and Tinne Tuytelaars and Davide Bacciu and Davide Maltoni},
booktitle={Proceedings of IEEE Conference on Computer Vision and Pattern Recognition},
series={2nd Continual Learning in Computer Vision Workshop},
year={2021}
}
Avalanche 는 비영리 연구 조직이자 AI를 위한 지속적인 학습에 대한 최대 공개 커뮤니티인 ContinualAI의 대표적인 오픈 소스 협업 프로젝트입니다.
질문이 있으신가요? 문제를 보고하고 싶으신가요? 아니면 단순히 새로운 기능을 요청하고 싶으신가요? 질문 및 문제 센터를 확인하세요. Avalanche를 직접 개선하고 싶나요? 기여 방법에 대한 간단한 규칙을 따르십시오.
Avalanche 프로젝트는 공동 연구 팀인 ContinualAI Lab에 의해 유지 관리되며 전 세계 주요 지속적인 학습 이해 관계자의 연구 네트워크인 ContinualAI Research(CLAIR) 컨소시엄 유닛에서 광범위하게 사용됩니다.
우리는 ContinualAI Lab에 기꺼이 참여할 새로운 멋진 회원을 항상 찾고 있습니다. 우리와 우리 활동에 대해 더 자세히 알고 싶으면 공식 웹사이트를 확인하거나 우리에게 연락하세요.
Avalanche 팀과 이를 훌륭하게 만든 모든 사람들에 대해 자세히 알아보세요!