
Keras
Keras er et kraftfuldt og brugervenligt open source API til avancerede neurale netværk, skrevet i Python og i stand til at køre ovenpå TensorFlow, CNTK eller Th...
Fastai er et open source dybdelæringsbibliotek bygget på PyTorch, designet til at demokratisere AI ved at gøre udvikling og udrulning af neurale netværk nemt og tilgængeligt.
Fastai-biblioteket er bygget oven på PyTorch-rammeværket og har til formål at gøre dybdelæring mere tilgængelig. Det tilbyder en højniveau-API, der abstraherer mange af de kompleksiteter, der er forbundet med dybdelæring, så brugerne kan fokusere på applikationsspecifikke opgaver frem for indviklede programmeringsdetaljer. Denne abstraktion opnås gennem et lagdelt API-design, der tilbyder både høj- og lavniveau-komponenter til forskellige dybdelæringsopgaver. Bibliotekets funktionalitet strækker sig fra vision og tekstbehandling til tabeldata og kollaborativ filtrering.
Fastai v2 repræsenterer en komplet omskrivning med fokus på hastighed, fleksibilitet og brugervenlighed. Det er bygget på grundlæggende biblioteker som fastcore og fastgpu, som understøtter Fastais højniveau-komponenter og er nyttige for mange programmører og datavidenskabsfolk.
Fastais lagdelte API er struktureret til at imødekomme forskellige brugerbehov – fra begyndere til avancerede forskere. Højniveau-API’et tilbyder færdige funktioner til træning af modeller på tværs af flere domæner, herunder vision, tekst, tabeldata og kollaborativ filtrering. Disse funktioner leveres med fornuftige standardindstillinger, der forenkler modelopbygningen. Mellemniveau-API’et tilbyder kernefunktioner til dybdelæring og databehandling, mens lavniveau-API’et tilbyder optimerede byggesten og fundament for specialudviklede modeller.
En nøglefunktion i Fastais lagdelte arkitektur er evnen til at udtrykke fælles underliggende mønstre i mange dybdelærings- og databehandlingsteknikker gennem adskilte abstraktioner. Dette muliggøres ved at udnytte Pythons dynamik og PyTorchs fleksibilitet, hvilket tillader balance mellem brugervenlighed, fleksibilitet og ydeevne.
Fastai tilbyder et gratis, massivt åbent onlinekursus (MOOC) med titlen “Practical Deep Learning for Coders”. Dette kursus giver praktisk erfaring med dybdelæring, hvor det eneste forudsatte er kendskab til Python. Det dækker forskellige dybdelæringsemner som billedklassifikation, naturlig sprogbehandling og generative adversarial networks (GANs) med fokus på virkelige anvendelser. Kurset suppleres af bogen “Deep Learning for Coders with Fastai and PyTorch”, der går i dybden med AI-applikationer uden at kræve en ph.d.
Fastais højniveau-API forenkler træningen af dybdelæringsmodeller ved at integrere arkitektur, data og optimering i et sammenhængende system. Den vælger automatisk passende tabsfunktioner og optimeringsalgoritmer, hvilket mindsker risikoen for brugerfejl. Denne API er særlig nyttig for begyndere og dem, der ønsker at anvende eksisterende dybdelæringsmetoder uden at fordybe sig i kompleksiteten i den underliggende kode.
En af Fastais mest fremtrædende funktioner er understøttelsen af transfer learning, som gør det muligt at træne modeller hurtigt og effektivt ved at udnytte prætrænede netværk. Fastai optimerer denne proces gennem teknikker som batch-normalisering, lagfrysning og differentierede læringsrater. Disse teknikker fremskynder læringen og forbedrer modelpræstationen på tværs af forskellige opgaver.
Data block API’et er et fleksibelt system til at definere databehandlings-pipelines. Det gør det muligt for brugere at angive datakilder, transformationer og indlæsning på en modulær måde. Denne API er afgørende for at håndtere komplekse datasæt og sikre, at data forberedes korrekt til modeltræning. Det giver en ensartet tilgang på tværs af domæner, hvilket gør det lettere at anvende dybdelæring på forskellige datatyper.
Fastai introducerer et nyt to-vejs callback-system, der giver hooks ind i træningssløjfen og muliggør dynamiske ændringer af data, modeller eller optimeringsalgoritmer til enhver tid under træningen. Dette system øger fleksibiliteten og tilpasningsmulighederne i træningsprocesserne, så innovative metoder kan implementeres med minimal kodeindsats.
Fastai er et open source-projekt, der hostes på GitHub og er licenseret under Apache License 2.0. Det nyder godt af et levende fællesskab af udviklere og forskere, som bidrager til den løbende udvikling og forbedring. Bibliotekets open source-natur sikrer, at brugerne har adgang til banebrydende teknikker og kan bidrage til dets udvikling. Fastais fællesskab er også en kilde til samarbejdslæring og support for brugere verden over.
Fastai forenkler udviklingen af computer vision-modeller med minimal kode. For eksempel kan en ImageNet-model finjusteres på et specifikt datasæt, såsom Oxford IIT Pets-datasættet, og opnå høj nøjagtighed med blot få linjer kode. Bibliotekets integration med PyTorch sikrer, at brugerne nemt kan udnytte de nyeste arkitekturer og teknikker.
Fastai er udstyret med værktøjer til naturlig sprogbehandling (NLP), hvilket muliggør opgaver som sentimentanalyse, tekstklassifikation og sprogmodellering. Bibliotekets integration med PyTorch muliggør brugen af moderne NLP-arkitekturer, hvilket gør det let at udvikle robuste sproglige modeller, der kan forstå og generere menneskesprog.
Fastai tilbyder komponenter til behandling af tabeldata og understøtter opgaver som regression og klassifikation. Dets data block API er især nyttigt til transformation og indlæsning af tabeldatasæt, hvilket sikrer, at data behandles effektivt og korrekt i forbindelse med modeltræning. Denne funktion er essentiel for applikationer inden for forretningsanalyse, sundhedssektoren og finans, hvor tabeldata er udbredt.
Kollaborativ filtrering er et andet område, hvor Fastai udmærker sig ved at tilbyde værktøjer til opbygning af anbefalingssystemer. Bibliotekets højniveau-API forenkler oprettelse og evaluering af kollaborative filtreringsmodeller, hvilket gør det lettere at udvikle personlige anbefalinger baseret på brugernes præferencer og adfærd.
Fastai understøtter udrulning af trænede modeller til produktionsmiljøer, så udviklere kan integrere AI-funktioner problemfrit i applikationer. Bibliotekets fokus på praktikalitet sikrer, at overvejelser om udrulning adresseres fra starten, hvilket muliggør effektive og skalerbare løsninger til virkelige anvendelser.
Fastai er et dybdelæringsbibliotek designet til at levere højniveau-komponenter til praktikere, så de hurtigt og nemt kan opnå resultater i verdensklasse inden for standard dybdelæringsdomæner. Samtidig tilbyder det lavniveau-komponenter til forskere, der ønsker at udvikle nye metoder uden at gå på kompromis med brugervenlighed, fleksibilitet eller ydeevne. Denne dobbelte kapabilitet opnås gennem en nøje struktureret arkitektur, der udnytter Pythons dynamik og PyTorchs fleksibilitet. Biblioteket introducerer flere innovative funktioner, herunder et type dispatch-system for Python, et GPU-optimeret computer vision-bibliotek, en optimizer der forenkler moderne optimeringsalgoritmer, og et nyt to-vejs callback-system. Fastai er blevet brugt med succes til at skabe et omfattende dybdelæringskursus, og det anvendes bredt i forskning, industri og undervisning. For flere detaljer kan du læse artiklen på arXiv.
Eksempel fra landbruget:
Inden for landbruget er Fastai effektivt blevet anvendt til at opbygge en klassifikationsmodel til genkendelse af plantesygdomme ved brug af et datasæt med billeder af æbleblade. Ved anvendelse af en prætrænet ResNet34-model med Fastai-rammeværket opnåede studiet en klassifikationsnøjagtighed på 93,765 %. Dette demonstrerer bibliotekets evne til at spare træningstid og forbedre modelpræstationen i praktiske applikationer. Du kan læse mere i studiet på arXiv.
Eksempel på modelkomprimering:
Derudover er Fastais callback-system blevet udnyttet i andre biblioteker såsom FasterAI, der fokuserer på komprimeringsteknikker som sparsificering og beskæring af neurale netværk. Dette viser Fastais alsidighed og lette integration med andre værktøjer til at udføre banebrydende teknikker effektivt. Detaljer om denne implementering findes i FasterAI-artiklen på arXiv.
For at begynde at bruge fastai kan du nemt installere det med enten conda eller pip. Sådan gør du:
conda install -c fastai fastai
pip install fastai
Derudover kan brugere udforske fastais officielle dokumentation og fællesskabsfora for fejlfinding af almindelige installationsproblemer eller for at finde løsninger på specifikke konfigurationer. Bibliotekets integration med Jupyter-notebooks og Google Colab øger dets anvendelighed ved at tilbyde et interaktivt miljø til eksperimenter og læring.
Højniveau-API’et i fastai er designet til brugervenlighed og hurtig udvikling. Det abstraherer meget af kompleksiteten, så brugerne kan fokusere på at opbygge og træne modeller med minimal kode. API’et er særligt gavnligt for hurtigt at prototype modeller og eksperimentere med idéer uden at gå i dybden med de lavniveau-detaljer, som PyTorch er baseret på.
1. Billedklassifikation
from fastai.vision.all import *
path = untar_data(URLs.PETS)
dls = ImageDataLoaders.from_name_re(
path=path,
fnames=get_image_files(path/"images"),
pat=r'/([^/]+)_\d+.jpg$',
item_tfms=RandomResizedCrop(450, min_scale=0.75),
batch_tfms=[*aug_transforms(size=224, max_warp=0.), Normalize.from_stats(*imagenet_stats)]
)
learn = cnn_learner(dls, resnet34, metrics=error_rate)
learn.fit_one_cycle(4)
Dette eksempel viser, hvordan man sætter en billedklassifikationsmodel op og træner den på Oxford IIT Pets-datasættet med fastais højniveau-API.
2. Tekst-sentimentanalyse
from fastai.text.all import *
path = untar_data(URLs.IMDB)
dls = TextDataLoaders.from_folder(path, valid='test')
learn = text_classifier_learner(dls, AWD_LSTM, drop_mult=0.5, metrics=accuracy)
learn.fine_tune(1)
Her bruges fastai til at opbygge en sentimentanalysemodel på IMDB-datasættet.
3. Tabeldata
from fastai.tabular.all import *
path = untar_data(URLs.ADULT_SAMPLE)
dls = TabularDataLoaders.from_csv(
path/'adult.csv', path=path, y_names="salary",
cat_names=['workclass', 'education', 'marital-status', 'occupation', 'relationship', 'race'],
cont_names=['age', 'fnlwgt', 'education-num'],
procs=[Categorify, FillMissing, Normalize]
)
learn = tabular_learner(dls, metrics=accuracy)
learn.fit_one_cycle(3)
Dette eksempel illustrerer brugen af fastai til tabeldata, specifikt Adult-datasættet.
Mellemniveau-API’et i fastai tilbyder flere tilpasningsmuligheder end højniveau-API’et og gør det muligt for brugere at ændre forskellige aspekter af træningsprocessen uden at dykke helt ned i de laveste detaljer. Det giver en balance mellem brugervenlighed og fleksibilitet og henvender sig til brugere, som har brug for mere kontrol over deres modeller, men stadig sætter pris på bekvemmeligheden ved foruddefinerede komponenter.
learn = cnn_learner(dls, resnet18, metrics=accuracy, cbs=[SaveModelCallback(monitor='accuracy')])
learn.fine_tune(2)
I dette eksempel bruges en callback til at gemme modellen med den bedste nøjagtighed under træningen, hvilket viser fleksibiliteten i mellemniveau-API’et.
For avancerede brugere og forskere, der har brug for fuld kontrol over deres modeller, giver fastais lavniveau-API adgang til de underliggende PyTorch-funktioner og optimerede byggesten. Dette niveau af API’et er tiltænkt dem, der ønsker at udfordre grænserne for dybdelæring ved at designe nye arkitekturer eller implementere brugerdefinerede træningsrutiner.
from fastai.data.all import *
pipe = Pipeline([PILImage.create, Resize(128), ToTensor])
img = pipe('path/to/image.jpg')
Denne kode viser, hvordan man opretter en brugerdefineret datapipeline med fastais lavniveau-API og anvender en række transformationer på et billede.
Fastai: A Layered API for Deep Learning
Forfattere: Jeremy Howard, Sylvain Gugger
Fastai er et dybdelæringsbibliotek designet til at lette hurtig prototypning og udrulning af dybdelæringsmodeller. Det opnår dette ved at tilbyde højniveau-komponenter til standard dybdelæringsopgaver, samtidig med at forskere kan dykke ned i lavniveau-komponenter for specialtilpassede løsninger. Denne artikel beskriver bibliotekets arkitektur, der udnytter Pythons dynamik og PyTorchs fleksibilitet til at skabe adskilte abstraktioner for dybdelæringsopgaver. Fastais innovationer inkluderer et type dispatch-system, et GPU-optimeret computer vision-bibliotek, et nyt optimizer-design og et to-vejs callback-system. Bibliotekets brugervenlighed og evne til at levere resultater i verdensklasse har gjort det populært i forskning, industri og undervisning. Læs mere
Microvasculature Segmentation in Human BioMolecular Atlas Program (HuBMAP)
Forfattere: Youssef Sultan, Yongqiang Wang, James Scanlon, Lisa D’lima
Dette studie anvender Fastai til billedsegmentering i Human BioMolecular Atlas Program (HuBMAP), med fokus på segmentering af mikrokarstrukturer i menneskenyrer. Metoden starter med en Fastai U-Net-model og udforsker alternative arkitekturer og dybe modeller for at forbedre segmenteringsnøjagtigheden. Arbejdet fremhæver Fastais evne til at fungere som et grundlæggende værktøj i medicinsk billedbehandling og giver indblik i avancerede segmenteringsteknikker og deres benchmarking mod basismodeller. Læs mere
Egglog Python: A Pythonic Library for E-graphs
Forfatter: Saul Shanabrook
Selvom denne artikel ikke direkte omhandler Fastai, introducerer den Python-bindings til egglog-biblioteket med fokus på integration af e-graph-teknikker i Python. Denne tilgang flugter med Fastais filosofi om at udnytte Pythons styrker til at fremme innovation inden for maskinlæring og videnskabelige beregninger. Den illustrerer, hvordan Pythoniske API’er kan fremme samarbejde og innovation på tværs af domæner og potentielt supplere Fastais alsidighed. [Læs mere](https://arxiv.org/abs/2404
Fastai er et omfattende, open source dybdelæringsbibliotek bygget oven på PyTorch. Det forenkler oprettelse og træning af neurale netværk gennem højniveau-API'er, understøtter vision, NLP, tabeldata og kollaborativ filtrering, og har til formål at demokratisere dybdelæring for brugere på alle niveauer.
Fastai blev udviklet af Jeremy Howard og Rachel Thomas som en del af en mission om at gøre dybdelæring tilgængelig og praktisk for alle.
Fastai tilbyder en lagdelt API med høj-, mellem- og lavniveau-komponenter, brugervenlige abstraktioner, understøttelse af transfer learning, en modulær datablock-API og et kraftfuldt callback-system. Det er open source og understøttes af et levende fællesskab.
Fastai bruges til computer vision, naturlig sprogbehandling (NLP), tabeldataanalyse, kollaborativ filtrering (anbefalingssystemer) og udrulning af modeller i produktion. Det er populært i forskning, industri og uddannelse.
Du kan installere Fastai via conda med 'conda install -c fastai fastai' eller via pip med 'pip install fastai'. Det fungerer også problemfrit i Google Colab og Jupyter-notebooks.
Ja, Fastai er fuldstændig open source under Apache License 2.0. Al software, forskning og kurser udgives gratis for at sikre global tilgængelighed.
Opdag, hvordan Fastais højniveau-API'er og open source-værktøjer kan accelerere dine AI-projekter og din læringsrejse. Prøv FlowHunt for problemfri AI-udvikling.
Keras er et kraftfuldt og brugervenligt open source API til avancerede neurale netværk, skrevet i Python og i stand til at køre ovenpå TensorFlow, CNTK eller Th...
AllenNLP er et robust open source-bibliotek til NLP-forskning, bygget på PyTorch af AI2. Det tilbyder modulære, udvidelige værktøjer, fortrænede modeller og nem...
Lås op for kraften i brugerdefinerede sprogmodeller med komponenten Custom OpenAI LLM i FlowHunt. Integrer problemfrit dine egne OpenAI-kompatible modeller—incl...