
AllenNLP
AllenNLP är ett robust och omfattande open source-bibliotek för NLP-forskning, byggt på PyTorch av AI2. Det erbjuder modulära, utbyggbara verktyg, förtränade mo...
Fastai är ett djupinlärningsbibliotek med öppen källkod på PyTorch, utformat för att demokratisera AI genom att göra utveckling och distribution av neurala nätverk lätt och tillgänglig.
Fastai-biblioteket är byggt ovanpå PyTorch-ramverket och är avsett att göra djupinlärning mer tillgängligt. Det tillhandahåller ett hög-nivå API som abstraherar många av de komplexiteter som är förknippade med djupinlärning, så att användare kan fokusera på applikationsspecifika uppgifter istället för invecklade programmeringsdetaljer. Denna abstraktion uppnås genom en lagerbaserad API-design, som erbjuder både hög- och låg-nivåkomponenter för olika djupinlärningsuppgifter. Bibliotekets funktionalitet sträcker sig från bild- och textbehandling till tabulär data och kollaborativ filtrering.
Fastai v2 representerar en komplett omskrivning med syfte att förbättra hastighet, flexibilitet och användarvänlighet. Det är byggt på grundbibliotek som fastcore och fastgpu, vilka stöder de hög-nivå komponenterna i Fastai och är användbara för många programmerare och data scientists.
Fastais lagerbaserade API är strukturerat för att passa olika användarbehov – från nybörjare till avancerade forskare. Hög-nivå API:t erbjuder färdiga funktioner för att träna modeller inom flera områden, inklusive bild, text, tabulär data och kollaborativ filtrering. Dessa funktioner har rimliga standardvärden som förenklar modellbyggandet. Mellan-nivå API:t ger kärnmetoder för djupinlärning och databehandling, medan låg-nivå API:t erbjuder optimerade primitiva och grunder för anpassad modellutveckling.
En nyckelfunktion hos Fastais lagerarkitektur är dess förmåga att uttrycka gemensamma underliggande mönster bland många djupinlärnings- och databehandlingstekniker genom frikopplade abstraktioner. Detta möjliggörs genom Python:s dynamik och PyTorch:s flexibilitet, vilket ger en balans mellan användarvänlighet, flexibilitet och prestanda.
Fastai erbjuder en gratis, massiv öppen onlinekurs (MOOC) kallad ”Practical Deep Learning for Coders.” Kursen ger praktisk erfarenhet av djupinlärning och kräver endast Python-kunskaper som förkunskap. Den täcker olika djupinlärningsämnen såsom bildklassificering, naturlig språkbehandling och generativa adversariella nätverk (GANs), med fokus på verkliga tillämpningar. Kursen kompletteras av boken ”Deep Learning for Coders with Fastai and PyTorch,” som går på djupet i AI-applikationer utan att kräva en doktorsexamen.
Fastais hög-nivå API förenklar träningen av djupinlärningsmodeller genom att integrera arkitektur, data och optimering i ett sammanhängande system. Det väljer automatiskt lämpliga förlustfunktioner och optimeringsalgoritmer, vilket minskar risken för användarfel. Detta API är särskilt användbart för nybörjare och de som vill tillämpa befintliga djupinlärningsmetoder utan att behöva sätta sig in i kodens komplexitet.
En av Fastais mest framträdande funktioner är stödet för transfer learning, vilket gör det möjligt att träna modeller snabbt och effektivt genom att utnyttja förtränade nätverk. Fastai optimerar denna process genom tekniker som batch-normalisering, frysning av lager och differentierade inlärningshastigheter. Dessa tekniker påskyndar inlärningen och förbättrar modellernas prestanda i olika uppgifter.
Data block API:t är ett flexibelt system för att definiera databehandlingsflöden. Det gör att användare kan specificera datakällor, transformationer och inläsningsmekanismer på ett modulärt sätt. Detta API är avgörande för att hantera komplexa dataset och säkerställa att data är rätt förberedd för modellträning. Det ger ett enhetligt tillvägagångssätt över flera områden, vilket gör det enklare att tillämpa djupinlärning på olika typer av data.
Fastai introducerar ett nytt tvåvägs callback-system som ger krokar in i träningsloopen, vilket möjliggör dynamiska förändringar av data, modeller eller optimerare när som helst under träningen. Detta system ökar flexibiliteten och anpassningsmöjligheten i modellträningen, vilket gör det möjligt att implementera innovativa tillvägagångssätt med minimalt kodarbete.
Fastai är ett öppen källkodsprojekt som finns på GitHub, licensierat under Apache License 2.0. Det gynnas av en livlig community av utvecklare och forskare som bidrar till dess fortsatta utveckling och förbättring. Bibliotekets öppenhet säkerställer att användare har tillgång till den senaste tekniken och kan bidra till dess utveckling. Fastais community är också en källa till gemensamt lärande och stöd för användare över hela världen.
Fastai förenklar utvecklingen av datorseendemodeller med minimal kod. Till exempel kan en ImageNet-modell finjusteras på ett specifikt dataset, såsom Oxford IIT Pets-datasetet, med hög noggrannhet med bara några rader kod. Bibliotekets integration med PyTorch säkerställer att användare enkelt kan använda de senaste arkitekturerna och teknikerna.
Fastai är utrustat med verktyg för naturlig språkbehandling (NLP), vilket möjliggör uppgifter som sentimentanalys, textklassificering och språkmodellering. Bibliotekets integration med PyTorch gör det möjligt att använda moderna NLP-arkitekturer, vilket underlättar utvecklingen av språkmodeller som kan förstå och generera mänskligt språk.
Fastai tillhandahåller komponenter för hantering av tabulär data, med stöd för uppgifter som regression och klassificering. Dess data block API är särskilt användbart för transformation och inläsning av tabulära dataset, vilket säkerställer att data behandlas effektivt och korrekt inför modellträning. Denna funktion är viktig för tillämpningar inom affärsanalys, sjukvård och finans där tabulär data är vanligt förekommande.
Kollaborativ filtrering är ytterligare ett område där Fastai utmärker sig, med verktyg för att bygga rekommendationssystem. Bibliotekets hög-nivå API förenklar skapande och utvärdering av modeller för kollaborativ filtrering, vilket gör det enklare att utveckla personliga rekommendationer för användare baserat på deras preferenser och beteenden.
Fastai stöder distribution av tränade modeller till produktionsmiljöer, vilket gör det möjligt för utvecklare att sömlöst integrera AI-funktioner i applikationer. Bibliotekets fokus på praktisk användning säkerställer att distributionsaspekter tas upp redan från början, vilket möjliggör effektiva och skalbara lösningar för verkliga tillämpningar.
Fastai är ett djupinlärningsbibliotek utformat för att tillhandahålla hög-nivå komponenter så att praktiker snabbt och enkelt kan nå toppresultat inom standardområden för djupinlärning. Samtidigt erbjuder det låg-nivå komponenter för forskare som vill utveckla nya metoder utan att kompromissa med användarvänlighet, flexibilitet eller prestanda. Denna dubbla kapacitet uppnås genom en noggrant strukturerad arkitektur som utnyttjar Python:s dynamik och PyTorch:s flexibilitet. Biblioteket introducerar flera innovativa funktioner, inklusive ett typ-dispatchsystem för Python, ett GPU-optimerat datorseendebibliotek, en optimerare som förenklar moderna optimeringsalgoritmer och ett nytt tvåvägs callback-system. Fastai har framgångsrikt använts för att skapa en omfattande djupinlärningskurs och används flitigt inom forskning, industri och utbildning. För mer information kan du läsa artikeln på arXiv.
Exempel från jordbruk:
Inom jordbruket har Fastai effektivt använts för att bygga en klassificeringsmodell för igenkänning av växtsjukdomar med hjälp av ett dataset med bilder på äppelblad. Genom att använda en förtränad ResNet34-modell med Fastai-ramverket, uppnådde studien en klassificeringsnoggrannhet på 93,765%. Detta visar bibliotekets kapacitet att spara träningstid och förbättra modellprestanda i praktiska tillämpningar. Mer information finns i studien på arXiv.
Exempel på modellkomprimering:
Dessutom har Fastais callback-system utnyttjats i andra bibliotek som FasterAI, som fokuserar på komprimering av neurala nätverk, såsom glesning och beskärning. Detta visar Fastais mångsidighet och enkelhet att integrera med andra verktyg för att effektivt utföra den senaste tekniken. Detaljer om denna implementation finns i FasterAI-artikeln på arXiv.
För att komma igång med fastai kan du enkelt installera det med antingen conda eller pip. Så här gör du:
conda install -c fastai fastai
pip install fastai
Dessutom kan användare utforska fastais officiella dokumentation och communityforum för att felsöka vanliga installationsproblem eller för att söka lösningar på specifika konfigurationer. Bibliotekets integration med Jupyter-notebooks och Google Colab förbättrar dess användbarhet ytterligare genom att erbjuda en interaktiv miljö för experiment och lärande.
Hög-nivå API:t i fastai är utformat för användarvänlighet och snabb utveckling. Det abstraherar mycket av komplexiteten och gör det möjligt för användare att fokusera på att bygga och träna modeller med minimal kod. API:t är särskilt fördelaktigt för att snabbt skapa prototyper och iterera idéer utan att behöva gå in på låg-nivådets detaljer i det underliggande PyTorch-ramverket.
1. Bildklassificering
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)
Detta exempel visar hur man sätter upp och tränar en bildklassificerare på Oxford IIT Pets-datasetet med fastais hög-nivå API.
2. Text-sentimentanalys
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)
Här används fastai för att bygga en sentimentanalysmodell på IMDB-datasetet.
3. Tabulär data
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)
Detta exempel illustrerar hur fastai används för tabulär data, specifikt Adult-datasetet.
Mellan-nivå API:t i fastai erbjuder fler anpassningsmöjligheter än hög-nivå API:t och gör det möjligt för användare att ändra olika aspekter av träningsprocessen utan att behöva gå in på de allra lägsta detaljerna. Det ger en balans mellan användarvänlighet och flexibilitet, och är avsett för användare som behöver mer kontroll över sina modeller men ändå uppskattar bekvämligheten med fördefinierade komponenter.
learn = cnn_learner(dls, resnet18, metrics=accuracy, cbs=[SaveModelCallback(monitor='accuracy')])
learn.fine_tune(2)
I detta exempel används en callback för att spara modellen med bästa noggrannhet under träningen, vilket visar flexibiliteten i mellan-nivå API:t.
För avancerade användare och forskare som behöver full kontroll över sina modeller erbjuder fastais låg-nivå API tillgång till underliggande PyTorch-funktionalitet och optimerade primitiva. Denna nivå av API:t är avsedd för de som vill tänja på gränserna för djupinlärning genom att designa nya arkitekturer eller implementera egna träningsrutiner.
from fastai.data.all import *
pipe = Pipeline([PILImage.create, Resize(128), ToTensor])
img = pipe('path/to/image.jpg')
Denna kodrad visar hur man skapar en anpassad datapipeline med fastais låg-nivå API och applicerar en serie transformationer på en bild.
Fastai: Ett lagerbaserat API för djupinlärning
Författare: Jeremy Howard, Sylvain Gugger
Fastai är ett djupinlärningsbibliotek utformat för att underlätta snabb prototypning och distribution av djupinlärningsmodeller. Det uppnår detta genom att erbjuda hög-nivå komponenter för standarduppgifter inom djupinlärning samtidigt som forskare får möjlighet att gå in på låg-nivå för egna lösningar. Artikeln beskriver bibliotekets arkitektur, som utnyttjar Python:s dynamik och PyTorch:s flexibilitet för att skapa frikopplade abstraktioner för djupinlärningsuppgifter. Fastais innovationer inkluderar ett typ-dispatchsystem, ett GPU-optimerat datorseendebibliotek, en ny optimerardesign och ett tvåvägs callback-system, bland annat. Bibliotekets användarvänlighet och förmåga att ge toppresultat har gjort det populärt inom forskning, industri och utbildning. Läs mer
Microvasculature Segmentation in Human BioMolecular Atlas Program (HuBMAP)
Författare: Youssef Sultan, Yongqiang Wang, James Scanlon, Lisa D’lima
Denna studie använder Fastai för bildsegmentering inom Human BioMolecular Atlas Program (HuBMAP), med fokus på segmentering av mikrovaskulära strukturer i mänskliga njurar. Metodiken inleds med en Fastai U-Net-modell och utforskar alternativa arkitekturer och djupmodeller för att förbättra segmenteringsnoggrannheten. Arbetet belyser Fastais kapacitet att fungera som ett grundläggande verktyg inom medicinsk bildbehandling och ger insikt i avancerade segmenteringstekniker och deras benchmarking mot baslinjemodeller. Läs mer
Egglog Python: A Pythonic Library for E-graphs
Författare: Saul Shanabrook
Även om denna artikel inte handlar direkt om Fastai, introducerar den Python-bindningar för egglog-biblioteket och betonar integrationen av e-grafer i Python. Detta tillvägagångssätt ligger i linje med Fastais filosofi att utnyttja Python:s styrkor för att främja innovation inom maskininlärning och vetenskaplig databehandling. Det visar hur Pythoniska API:er kan underlätta samarbete och innovation över domäner, och potentiellt komplettera Fastais mångsidighet. [Läs mer](https://arxiv.org/abs/2404
Fastai är ett omfattande djupinlärningsbibliotek med öppen källkod byggt ovanpå PyTorch. Det förenklar skapande och träning av neurala nätverk genom hög-nivå API:er, stöder bildanalys, NLP, tabulär data och kollaborativ filtrering, och syftar till att demokratisera djupinlärning för användare på alla nivåer.
Fastai utvecklades av Jeremy Howard och Rachel Thomas som en del av ett uppdrag att göra djupinlärning tillgänglig och praktisk för alla.
Fastai erbjuder ett lagerbaserat API med hög-, mellan- och låg-nivåkomponenter, användarvänliga abstraktioner, stöd för transfer learning, ett modulärt datablok-API och ett kraftfullt callback-system. Det är öppen källkod och stöds av en livlig community.
Fastai används för bildanalys, naturlig språkbehandling (NLP), analys av tabulär data, kollaborativ filtrering (rekommendationssystem) och distribution av modeller till produktion. Det är populärt inom forskning, industri och utbildning.
Du kan installera Fastai via conda med 'conda install -c fastai fastai' eller via pip med 'pip install fastai'. Det fungerar också sömlöst i Google Colab och Jupyter-notebooks.
Ja, Fastai är helt öppen källkod under Apache License 2.0. All mjukvara, forskning och kurser släpps gratis för att säkerställa global tillgänglighet.
Upptäck hur Fastais hög-nivå API:er och verktyg med öppen källkod kan accelerera dina AI-projekt och din läranderesa. Prova FlowHunt för sömlös AI-utveckling.
AllenNLP är ett robust och omfattande open source-bibliotek för NLP-forskning, byggt på PyTorch av AI2. Det erbjuder modulära, utbyggbara verktyg, förtränade mo...
Lås upp kraften i anpassade språkmodeller med komponenten Anpassad OpenAI LLM i FlowHunt. Integrera sömlöst dina egna OpenAI-kompatibla modeller—inklusive JinaC...
PyTorch är ett öppen källkod maskininlärningsramverk utvecklat av Meta AI, känt för sin flexibilitet, dynamiska beräkningsgrafer, GPU-acceleration och sömlös in...